From fa1ff9ba17b3da1624fb2400adcce39d12fca37e Mon Sep 17 00:00:00 2001 From: Jackson Harper Date: Wed, 5 Jul 2023 10:16:30 -0700 Subject: [PATCH 1/3] Upgrade node to 18.16 --- packages/api/Dockerfile | 4 ++-- packages/api/Dockerfile-test | 2 +- packages/api/package.json | 4 ++-- packages/api/src/elastic/highlights.ts | 4 ++-- packages/api/src/elastic/labels.ts | 8 +++---- packages/api/src/elastic/pages.ts | 10 ++++---- packages/appreader/package.json | 4 ++-- packages/content-fetch/Dockerfile | 24 ++++++++++---------- packages/content-fetch/Dockerfile-gcf | 24 ++++++++++---------- packages/cypress/package.json | 4 ++-- packages/db/Dockerfile | 2 +- packages/import-handler/Dockerfile | 2 +- packages/import-handler/Dockerfile-collector | 2 +- packages/inbound-email-handler/Dockerfile | 2 +- packages/pdf-handler/Dockerfile | 2 +- packages/rule-handler/Dockerfile | 2 +- packages/text-to-speech/Dockerfile | 2 +- packages/thumbnail-handler/Dockerfile | 2 +- packages/web/Dockerfile | 4 ++-- packages/web/package.json | 2 +- 20 files changed, 55 insertions(+), 55 deletions(-) diff --git a/packages/api/Dockerfile b/packages/api/Dockerfile index ec19ab524..1a8254361 100644 --- a/packages/api/Dockerfile +++ b/packages/api/Dockerfile @@ -1,4 +1,4 @@ -FROM node:14.18-alpine as builder +FROM node:18.16-alpine as builder WORKDIR /app @@ -32,7 +32,7 @@ RUN rm -rf /app/packages/api/node_modules RUN rm -rf /app/node_modules RUN yarn install --pure-lockfile --production -FROM node:14.18-alpine as runner +FROM node:18.16-alpine as runner WORKDIR /app diff --git a/packages/api/Dockerfile-test b/packages/api/Dockerfile-test index bdeb25b6d..053375d5e 100644 --- a/packages/api/Dockerfile-test +++ b/packages/api/Dockerfile-test @@ -1,4 +1,4 @@ -FROM node:14.18-alpine +FROM node:18.16-alpine WORKDIR /app diff --git a/packages/api/package.json b/packages/api/package.json index a1a042dc3..3d4deb34d 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -145,10 +145,10 @@ "ts-node-dev": "^1.1.8" }, "engines": { - "node": "14.18.x" + "node": "18.16.1" }, "volta": { - "node": "14.18.1", + "node": "18.16.1", "yarn": "1.22.18" } } diff --git a/packages/api/src/elastic/highlights.ts b/packages/api/src/elastic/highlights.ts index 440e49baa..f2d04d58b 100644 --- a/packages/api/src/elastic/highlights.ts +++ b/packages/api/src/elastic/highlights.ts @@ -1,4 +1,4 @@ -import { ResponseError } from '@elastic/elasticsearch/lib/errors' +import { errors } from '@elastic/elasticsearch' import { EntityType } from '../datalayer/pubsub' import { SortBy, SortOrder, SortParams } from '../utils/search' import { client, INDEX_ALIAS } from './index' @@ -49,7 +49,7 @@ export const addHighlightToPage = async ( return true } catch (e) { if ( - e instanceof ResponseError && + e instanceof errors.ResponseError && e.message === 'document_missing_exception' ) { console.log('page has been deleted', id) diff --git a/packages/api/src/elastic/labels.ts b/packages/api/src/elastic/labels.ts index cafaf01e0..e1035679b 100644 --- a/packages/api/src/elastic/labels.ts +++ b/packages/api/src/elastic/labels.ts @@ -1,4 +1,4 @@ -import { ResponseError } from '@elastic/elasticsearch/lib/errors' +import { errors } from '@elastic/elasticsearch' import { EntityType } from '../datalayer/pubsub' import { client, INDEX_ALIAS } from './index' import { Label, PageContext } from './types' @@ -43,7 +43,7 @@ export const addLabelInPage = async ( return true } catch (e) { if ( - e instanceof ResponseError && + e instanceof errors.ResponseError && e.message === 'document_missing_exception' ) { console.log('page has been deleted', pageId) @@ -92,7 +92,7 @@ export const updateLabelsInPage = async ( return true } catch (e) { if ( - e instanceof ResponseError && + e instanceof errors.ResponseError && e.message === 'document_missing_exception' ) { console.log('page has been deleted', pageId) @@ -321,7 +321,7 @@ export const setLabelsForHighlight = async ( return true } catch (e) { if ( - e instanceof ResponseError && + e instanceof errors.ResponseError && e.message === 'document_missing_exception' ) { console.log('highlight has been deleted', highlightId) diff --git a/packages/api/src/elastic/pages.ts b/packages/api/src/elastic/pages.ts index 5e919efeb..978f19401 100644 --- a/packages/api/src/elastic/pages.ts +++ b/packages/api/src/elastic/pages.ts @@ -1,4 +1,4 @@ -import { ResponseError } from '@elastic/elasticsearch/lib/errors' +import { errors } from '@elastic/elasticsearch' import { BuiltQuery, ESBuilder, esBuilder } from 'elastic-ts' import { EntityType } from '../datalayer/pubsub' import { BulkActionType } from '../generated/graphql' @@ -458,7 +458,7 @@ export const updatePage = async ( return true } catch (e) { if ( - e instanceof ResponseError && + e instanceof errors.ResponseError && e.message === 'document_missing_exception' ) { console.log('page has been deleted', id) @@ -483,7 +483,7 @@ export const deletePage = async ( return body.deleted !== 0 } catch (e) { if ( - e instanceof ResponseError && + e instanceof errors.ResponseError && e.message === 'document_missing_exception' ) { console.log('page has been deleted', id) @@ -549,7 +549,7 @@ export const getPageById = async (id: string): Promise => { id: body._id as string, } as Page } catch (e) { - if (e instanceof ResponseError && e.statusCode === 404) { + if (e instanceof errors.ResponseError && e.statusCode === 404) { console.log('page has been deleted', id) return undefined } @@ -683,7 +683,7 @@ export const searchPages = async ( response.body.hits.total.value, ] } catch (e) { - if (e instanceof ResponseError) { + if (e instanceof errors.ResponseError) { // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access console.error('failed to search pages in elastic', e.meta.body.error) return undefined diff --git a/packages/appreader/package.json b/packages/appreader/package.json index 1869db0d8..00cf01662 100644 --- a/packages/appreader/package.json +++ b/packages/appreader/package.json @@ -32,7 +32,7 @@ "webpack-dev-server": "^4.7.4" }, "volta": { - "node": "14.18.0", + "node": "18.16.0", "yarn": "1.22.10" } -} +} \ No newline at end of file diff --git a/packages/content-fetch/Dockerfile b/packages/content-fetch/Dockerfile index 1c5f4830f..181251e82 100644 --- a/packages/content-fetch/Dockerfile +++ b/packages/content-fetch/Dockerfile @@ -1,18 +1,18 @@ -FROM node:14.18-alpine +FROM node:18.16-alpine # Installs latest Chromium (92) package. RUN apk add --no-cache \ - chromium \ - nss \ - freetype \ - harfbuzz \ - ca-certificates \ - ttf-freefont \ - nodejs \ - yarn \ - g++ \ - make \ - python3 + chromium \ + nss \ + freetype \ + harfbuzz \ + ca-certificates \ + ttf-freefont \ + nodejs \ + yarn \ + g++ \ + make \ + python3 # Add user so we don't need --no-sandbox. RUN addgroup -S pptruser && adduser -S -g pptruser pptruser \ diff --git a/packages/content-fetch/Dockerfile-gcf b/packages/content-fetch/Dockerfile-gcf index 67a4e8ee1..ca87e30a7 100644 --- a/packages/content-fetch/Dockerfile-gcf +++ b/packages/content-fetch/Dockerfile-gcf @@ -1,18 +1,18 @@ -FROM node:14.18-alpine +FROM node:18.16-alpine # Installs latest Chromium (92) package. RUN apk add --no-cache \ - chromium \ - nss \ - freetype \ - harfbuzz \ - ca-certificates \ - ttf-freefont \ - nodejs \ - yarn \ - g++ \ - make \ - python3 + chromium \ + nss \ + freetype \ + harfbuzz \ + ca-certificates \ + ttf-freefont \ + nodejs \ + yarn \ + g++ \ + make \ + python3 # Add user so we don't need --no-sandbox. RUN addgroup -S pptruser && adduser -S -g pptruser pptruser \ diff --git a/packages/cypress/package.json b/packages/cypress/package.json index f13495814..47d5818a8 100644 --- a/packages/cypress/package.json +++ b/packages/cypress/package.json @@ -11,7 +11,7 @@ }, "devDependencies": {}, "volta": { - "node": "14.18.0", + "node": "18.16.1", "yarn": "1.22.10" } -} +} \ No newline at end of file diff --git a/packages/db/Dockerfile b/packages/db/Dockerfile index d41c16f9a..bdfe5df16 100644 --- a/packages/db/Dockerfile +++ b/packages/db/Dockerfile @@ -1,4 +1,4 @@ -FROM node:14.18-alpine +FROM node:18.16-alpine WORKDIR /app diff --git a/packages/import-handler/Dockerfile b/packages/import-handler/Dockerfile index f1e4d0dd2..9fc10597d 100644 --- a/packages/import-handler/Dockerfile +++ b/packages/import-handler/Dockerfile @@ -1,4 +1,4 @@ -FROM node:14.18-alpine +FROM node:18.16-alpine WORKDIR /app diff --git a/packages/import-handler/Dockerfile-collector b/packages/import-handler/Dockerfile-collector index fba468482..8a30021ec 100644 --- a/packages/import-handler/Dockerfile-collector +++ b/packages/import-handler/Dockerfile-collector @@ -1,4 +1,4 @@ -FROM node:14.18-alpine +FROM node:18.16-alpine WORKDIR /app diff --git a/packages/inbound-email-handler/Dockerfile b/packages/inbound-email-handler/Dockerfile index 364c786bc..f7bfa1cfa 100644 --- a/packages/inbound-email-handler/Dockerfile +++ b/packages/inbound-email-handler/Dockerfile @@ -1,4 +1,4 @@ -FROM node:14.18-alpine +FROM node:18.16-alpine # Run everything after as non-privileged user. WORKDIR /app diff --git a/packages/pdf-handler/Dockerfile b/packages/pdf-handler/Dockerfile index 0666d57e5..5cbdb9214 100644 --- a/packages/pdf-handler/Dockerfile +++ b/packages/pdf-handler/Dockerfile @@ -1,4 +1,4 @@ -FROM node:14.18-alpine +FROM node:18.16-alpine # Run everything after as non-privileged user. WORKDIR /app diff --git a/packages/rule-handler/Dockerfile b/packages/rule-handler/Dockerfile index f0abbcc56..a4d84a92b 100644 --- a/packages/rule-handler/Dockerfile +++ b/packages/rule-handler/Dockerfile @@ -1,4 +1,4 @@ -FROM node:14.18-alpine +FROM node:18.16-alpine # Run everything after as non-privileged user. WORKDIR /app diff --git a/packages/text-to-speech/Dockerfile b/packages/text-to-speech/Dockerfile index 0ef7fe540..4e526392a 100644 --- a/packages/text-to-speech/Dockerfile +++ b/packages/text-to-speech/Dockerfile @@ -1,4 +1,4 @@ -FROM node:14.18-alpine +FROM node:18.16-alpine # Run everything after as non-privileged user. WORKDIR /app diff --git a/packages/thumbnail-handler/Dockerfile b/packages/thumbnail-handler/Dockerfile index 1ba49d688..f28b55ea7 100644 --- a/packages/thumbnail-handler/Dockerfile +++ b/packages/thumbnail-handler/Dockerfile @@ -1,4 +1,4 @@ -FROM node:14.18-alpine +FROM node:18.16-alpine # Run everything after as non-privileged user. WORKDIR /app diff --git a/packages/web/Dockerfile b/packages/web/Dockerfile index 9e3cebd28..249bc5259 100644 --- a/packages/web/Dockerfile +++ b/packages/web/Dockerfile @@ -1,7 +1,7 @@ # Note this docker file is meant for local testing # and not for production. -FROM node:14.18-alpine as builder +FROM node:18.16-alpine as builder ENV NODE_OPTIONS=--max-old-space-size=8192 ARG APP_ENV ARG BASE_URL @@ -30,7 +30,7 @@ RUN echo "module.exports = {}" > ./packages/web/next.config.js RUN yarn workspace @omnivore/web build -FROM node:14.18-alpine as runner +FROM node:18.16-alpine as runner ENV NODE_ENV production ENV PORT=8080 ENV NEXT_TELEMETRY_DISABLED 1 diff --git a/packages/web/package.json b/packages/web/package.json index 992f4cae6..d4d48ae10 100644 --- a/packages/web/package.json +++ b/packages/web/package.json @@ -105,7 +105,7 @@ "storybook-addon-next-router": "^3.1.1" }, "volta": { - "node": "14.18.0", + "node": "18.16.1", "yarn": "1.22.10" } } From 0efb5e4d7789c67b24e4bc31b2db32701891fe03 Mon Sep 17 00:00:00 2001 From: Jackson Harper Date: Wed, 5 Jul 2023 10:30:24 -0700 Subject: [PATCH 2/3] Update node version in github runner --- .github/workflows/run-tests.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/run-tests.yaml b/.github/workflows/run-tests.yaml index 08bc418cb..a17c2067a 100644 --- a/.github/workflows/run-tests.yaml +++ b/.github/workflows/run-tests.yaml @@ -64,7 +64,7 @@ jobs: - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v2 with: - node-version: 14.18 + node-version: 18.16 - name: Get yarn cache directory path id: yarn-cache-dir-path run: echo "::set-output name=dir::$(source ~/.nvm/nvm.sh && yarn cache dir)" From 6fd550fa6cfb151d2f8efd747026546d878a8965 Mon Sep 17 00:00:00 2001 From: Hongbo Wu Date: Mon, 24 Jul 2023 21:15:31 +0800 Subject: [PATCH 3/3] delete chai/required-should from import statements --- package.json | 2 +- packages/api/package.json | 2 +- .../api/test/services/create_content_display_report.test.ts | 1 - packages/api/test/services/create_page_save_request.test.ts | 1 - packages/api/test/services/create_user.test.ts | 1 - packages/api/test/services/labels.test.ts | 1 - packages/api/test/services/save_email.test.ts | 1 - packages/api/test/services/save_newsletter_email.test.ts | 1 - packages/api/test/utils/helper.test.ts | 1 - packages/api/test/utils/parser.test.ts | 1 - packages/api/test/utils/search.test.ts | 1 - packages/api/test/utils/uploads.test.ts | 1 - 12 files changed, 2 insertions(+), 12 deletions(-) diff --git a/package.json b/package.json index 07e1d89cb..de5c1658e 100644 --- a/package.json +++ b/package.json @@ -36,7 +36,7 @@ "typescript": "^4.4.3" }, "volta": { - "node": "14.18.1", + "node": "18.16.1", "yarn": "1.22.19" }, "dependencies": {} diff --git a/packages/api/package.json b/packages/api/package.json index 3d4deb34d..671a445cd 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -149,6 +149,6 @@ }, "volta": { "node": "18.16.1", - "yarn": "1.22.18" + "yarn": "1.22.19" } } diff --git a/packages/api/test/services/create_content_display_report.test.ts b/packages/api/test/services/create_content_display_report.test.ts index 375d5f6a4..6bf30d488 100644 --- a/packages/api/test/services/create_content_display_report.test.ts +++ b/packages/api/test/services/create_content_display_report.test.ts @@ -1,6 +1,5 @@ import 'mocha' import chai, { expect } from 'chai' -import 'chai/register-should' import { createTestUser, deleteTestUser } from '../db' import sinonChai from 'sinon-chai' import sinon from 'sinon' diff --git a/packages/api/test/services/create_page_save_request.test.ts b/packages/api/test/services/create_page_save_request.test.ts index 53e8da8cc..0164e20c4 100644 --- a/packages/api/test/services/create_page_save_request.test.ts +++ b/packages/api/test/services/create_page_save_request.test.ts @@ -1,6 +1,5 @@ import 'mocha' import { expect } from 'chai' -import 'chai/register-should' import { validateUrl } from '../../src/services/create_page_save_request' describe('validateUrl', () => { diff --git a/packages/api/test/services/create_user.test.ts b/packages/api/test/services/create_user.test.ts index 4458723c9..12e8fe9c7 100644 --- a/packages/api/test/services/create_user.test.ts +++ b/packages/api/test/services/create_user.test.ts @@ -1,6 +1,5 @@ import 'mocha' import chai, { expect } from 'chai' -import 'chai/register-should' import { createTestUser, createUserWithoutProfile, diff --git a/packages/api/test/services/labels.test.ts b/packages/api/test/services/labels.test.ts index 3afc6dd84..89d9e92c6 100644 --- a/packages/api/test/services/labels.test.ts +++ b/packages/api/test/services/labels.test.ts @@ -1,6 +1,5 @@ import 'mocha' import { expect } from 'chai' -import 'chai/register-should' import { createTestLabel, createTestLink, diff --git a/packages/api/test/services/save_email.test.ts b/packages/api/test/services/save_email.test.ts index a7cc8cfd9..e58425d80 100644 --- a/packages/api/test/services/save_email.test.ts +++ b/packages/api/test/services/save_email.test.ts @@ -1,6 +1,5 @@ import 'mocha' import { expect } from 'chai' -import 'chai/register-should' import { createTestUser, deleteTestUser } from '../db' import { SaveContext, saveEmail } from '../../src/services/save_email' import { createPubSubClient } from '../../src/datalayer/pubsub' diff --git a/packages/api/test/services/save_newsletter_email.test.ts b/packages/api/test/services/save_newsletter_email.test.ts index 28df95624..af7a0f217 100644 --- a/packages/api/test/services/save_newsletter_email.test.ts +++ b/packages/api/test/services/save_newsletter_email.test.ts @@ -1,5 +1,4 @@ import { expect } from 'chai' -import 'chai/register-should' import 'mocha' import nock from 'nock' import { createPubSubClient } from '../../src/datalayer/pubsub' diff --git a/packages/api/test/utils/helper.test.ts b/packages/api/test/utils/helper.test.ts index d02173a75..9cb5796f0 100644 --- a/packages/api/test/utils/helper.test.ts +++ b/packages/api/test/utils/helper.test.ts @@ -1,6 +1,5 @@ import 'mocha' import { expect } from 'chai' -import 'chai/register-should' import { validatedDate } from '../../src/utils/helpers' describe('validatedDate', () => { diff --git a/packages/api/test/utils/parser.test.ts b/packages/api/test/utils/parser.test.ts index 34900d830..eb5961107 100644 --- a/packages/api/test/utils/parser.test.ts +++ b/packages/api/test/utils/parser.test.ts @@ -1,7 +1,6 @@ import 'mocha' import * as chai from 'chai' import { expect } from 'chai' -import 'chai/register-should' import fs from 'fs' import { getTitleFromEmailSubject, diff --git a/packages/api/test/utils/search.test.ts b/packages/api/test/utils/search.test.ts index 7b0fae299..6ad4e7a24 100644 --- a/packages/api/test/utils/search.test.ts +++ b/packages/api/test/utils/search.test.ts @@ -1,6 +1,5 @@ import 'mocha' import { expect } from 'chai' -import 'chai/register-should' import { InFilter, parseSearchQuery, ReadFilter } from '../../src/utils/search' import { PageType } from '../../src/generated/graphql' diff --git a/packages/api/test/utils/uploads.test.ts b/packages/api/test/utils/uploads.test.ts index a953191b9..193e2454a 100644 --- a/packages/api/test/utils/uploads.test.ts +++ b/packages/api/test/utils/uploads.test.ts @@ -1,6 +1,5 @@ import 'mocha' import { expect } from 'chai' -import 'chai/register-should' import { contentReaderForPage } from '../../src/utils/uploads' import { ContentReader, PageType } from '../../src/generated/graphql'