Skip to content

Commit

Permalink
migrate to node v18
Browse files Browse the repository at this point in the history
  • Loading branch information
tom2drum committed Feb 22, 2023
1 parent b74df3e commit 817eeb3
Show file tree
Hide file tree
Showing 8 changed files with 343 additions and 209 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/linters.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 16
node-version: 18
cache: 'yarn'
- name: Install dependencies
run: yarn install --frozen-lockfile
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/unit-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: 16
node-version: 18
cache: 'yarn'
- name: Install dependencies
run: yarn install --frozen-lockfile
Expand All @@ -34,7 +34,7 @@ jobs:
lfs: 'true'
- uses: actions/setup-node@v3
with:
node-version: 16
node-version: 18
cache: 'yarn'
- name: Install dependencies
run: yarn install --frozen-lockfile
Expand Down
2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
16
18
6 changes: 3 additions & 3 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Install dependencies only when needed
FROM node:16-alpine AS deps
FROM node:18-alpine AS deps
# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed.
RUN apk add --no-cache libc6-compat
WORKDIR /app
Expand All @@ -10,7 +10,7 @@ RUN apk add git
RUN yarn --frozen-lockfile

# Rebuild the source code only when needed
FROM node:16-alpine AS builder
FROM node:18-alpine AS builder
WORKDIR /app
COPY --from=deps /app/node_modules ./node_modules
COPY . .
Expand All @@ -33,7 +33,7 @@ ENV NEXT_PUBLIC_GIT_COMMIT_SHA=$GIT_COMMIT_SHA
RUN yarn build

# Production image, copy all the files and run next
FROM node:16-alpine AS runner
FROM node:18-alpine AS runner
WORKDIR /app

ENV NODE_ENV production
Expand Down
8 changes: 4 additions & 4 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"private": true,
"homepage": "https://github.com/blockscout/frontend#readme",
"engines": {
"node": "16",
"node": "18",
"npm": "8"
},
"scripts": {
Expand All @@ -24,7 +24,7 @@
"format-svg": "./node_modules/.bin/svgo -r ./icons",
"test:pw": "./playwright/make-envs-script.sh && NODE_OPTIONS=\"--max-old-space-size=4096\" playwright test -c playwright-ct.config.ts",
"test:pw:local": "export NODE_PATH=$(pwd)/node_modules && yarn test:pw",
"test:pw:docker": "docker run --rm --network host -v $(pwd):/work/ -w /work/ -it mcr.microsoft.com/playwright:v1.28.0-focal ./playwright/run-tests.sh",
"test:pw:docker": "docker run --rm --network host -v $(pwd):/work/ -w /work/ -it mcr.microsoft.com/playwright:v1.31.0-focal ./playwright/run-tests.sh",
"test:jest": "jest",
"test:jest:watch": "jest --watch"
},
Expand Down Expand Up @@ -75,7 +75,7 @@
"wagmi": "^0.10.6"
},
"devDependencies": {
"@playwright/experimental-ct-react": "^1.28.0",
"@playwright/experimental-ct-react": "1.31.0",
"@svgr/webpack": "^6.5.1",
"@testing-library/react": "^13.4.0",
"@types/d3": "^7.4.0",
Expand Down Expand Up @@ -105,7 +105,7 @@
"lint-staged": ">=10",
"mockdate": "^3.0.5",
"next-transpile-modules": "^10.0.0",
"playwright": "^1.28.0",
"playwright": "1.31.0",
"svgo": "^2.8.0",
"ts-jest": "^29.0.3",
"ts-node": "^10.9.1",
Expand Down
7 changes: 6 additions & 1 deletion pages/search-results.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,12 @@ export const getServerSideProps: GetServerSideProps<Props> = async({ req, res, r
try {
const q = String(query.q);
const url = buildUrlNode('search_check_redirect', undefined, { q });
const redirectsResponse = await fetchFactory(req)(url);
const redirectsResponse = await fetchFactory(req)(url, {
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore:next-line timeout property exist for AbortSignal since Node.js 17 - https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal
// but @types/node has not updated their types yet, see issue https://github.com/DefinitelyTyped/DefinitelyTyped/issues/60868
signal: AbortSignal.timeout(1_000),
});
const payload = await redirectsResponse.json() as SearchRedirectResult;

if (!payload || typeof payload !== 'object' || !payload.redirect) {
Expand Down
6 changes: 3 additions & 3 deletions playwright-ct.config.ts
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
import type { PlaywrightTestConfig } from '@playwright/experimental-ct-react';
import { devices } from '@playwright/experimental-ct-react';
import { devices, defineConfig } from '@playwright/experimental-ct-react';
import react from '@vitejs/plugin-react';
import svgr from 'vite-plugin-svgr';
import tsconfigPaths from 'vite-tsconfig-paths';

/**
* See https://playwright.dev/docs/test-configuration.
*/
const config: PlaywrightTestConfig = {
const config: PlaywrightTestConfig = defineConfig({
testDir: './',

testMatch: /.*\.pw\.tsx/,
Expand Down Expand Up @@ -112,6 +112,6 @@ const config: PlaywrightTestConfig = {
},
},
],
};
});

export default config;
Loading

0 comments on commit 817eeb3

Please sign in to comment.