From cb9a9295dc09519adcf8c64b2a5e12707009bd38 Mon Sep 17 00:00:00 2001 From: Dev Singh Date: Sat, 8 Nov 2025 23:02:08 -0600 Subject: [PATCH 1/5] Update playwright test config --- playwright.config.ts | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/playwright.config.ts b/playwright.config.ts index 6610300d..be027e02 100644 --- a/playwright.config.ts +++ b/playwright.config.ts @@ -3,13 +3,11 @@ import { defineConfig, devices } from '@playwright/test'; export default defineConfig({ testDir: './tests/e2e/', /* Run tests in files in parallel */ - fullyParallel: false, + fullyParallel: true, /* Fail the build on CI if you accidentally left test.only in the source code. */ forbidOnly: !!process.env.CI, /* Retry on CI only */ retries: process.env.CI ? 2 : 0, - /* Opt out of parallel tests on CI. */ - workers: process.env.CI ? 1 : undefined, /* Reporter to use. See https://playwright.dev/docs/test-reporters */ reporter: process.env.CI ? 'github' : 'html', /* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */ From 71977aea3d7cfa977ae74c5d866d0bced1e727e6 Mon Sep 17 00:00:00 2001 From: Dev Singh Date: Sat, 8 Nov 2025 23:24:29 -0600 Subject: [PATCH 2/5] Fix documentation site tests --- tests/e2e/docs.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/e2e/docs.spec.ts b/tests/e2e/docs.spec.ts index 8071ca5b..e5bbcfc8 100644 --- a/tests/e2e/docs.spec.ts +++ b/tests/e2e/docs.spec.ts @@ -28,7 +28,7 @@ describe("Docs tests", () => { page.getByRole("heading", { name: "ACM @ UIUC Core API" }), ).toBeDefined(); await page - .getByRole("link", { name: "Retrieve calendar events with" }) + .getByRole("button", { name: "Retrieve calendar events with" }) .click(); await page .getByRole("button", { name: "Test Request (get /api/v1/events)" }) From 65524e6bedda0237179663895fe44ebe6e697396 Mon Sep 17 00:00:00 2001 From: Dev Singh Date: Sat, 8 Nov 2025 23:44:58 -0600 Subject: [PATCH 3/5] Use yarn directly instead of conversion to npm lock This keeps the hash of the output the same --- Makefile | 7 ++++--- package.json | 6 ++---- yarn.lock | 56 ++-------------------------------------------------- 3 files changed, 8 insertions(+), 61 deletions(-) diff --git a/Makefile b/Makefile index 0db44cb9..dea5d7e7 100644 --- a/Makefile +++ b/Makefile @@ -6,7 +6,8 @@ current_active_region = "us-east-2" src_directory_root = src/ dist_ui_directory_root = dist_ui/ integration_test_directory_root = tests/live_integration/ -npm_install_params = --omit=dev --target_arch=arm64 --target_platform=linux --target_libc=glibc --cpu arm64 --os linux --arch=arm64 +yarn_install_params = --production --frozen-lockfile +yarn_env = npm_config_arch=arm64 npm_config_platform=linux npm_config_libc=glibc GIT_HASH := $(shell git rev-parse --short HEAD) .PHONY: clean @@ -32,13 +33,13 @@ build: src/ cp -r src/api/resources/ dist/api/resources rm -rf dist/lambda/sqs docker run --rm -v "$(shell pwd)/dist/lambda":/var/task public.ecr.aws/sam/build-nodejs22.x:latest \ - sh -c "npm install $(npm_install_params) && \ + sh -c "npm i -g yarn && $(yarn_env) yarn $(yarn_install_params) && \ rm -rf node_modules/aws-crt/dist/bin/{darwin*,linux-x64*,linux-arm64-musl} && \ rm -rf node_modules/argon2/prebuilds/{darwin*,freebsd*,linux-arm,linux-x64*,win32-x64*} && \ rm -rf node_modules/argon2/prebuilds/linux-arm64/argon2.armv8.musl.node" docker run --rm -v "$(shell pwd)/dist/sqsConsumer":/var/task public.ecr.aws/sam/build-nodejs22.x:latest \ - sh -c "npm install $(npm_install_params) && \ + sh -c "npm i -g yarn && $(yarn_env) yarn $(yarn_install_params) && \ rm -rf node_modules/aws-crt/dist/bin/{darwin*,linux-x64*,linux-arm64-musl} && \ rm -rf node_modules/argon2/prebuilds/{darwin*,freebsd*,linux-arm,linux-x64*,win32-x64*} && \ rm -rf node_modules/argon2/prebuilds/linux-arm64/argon2.armv8.musl.node" diff --git a/package.json b/package.json index 76c4862e..24ef4207 100644 --- a/package.json +++ b/package.json @@ -16,8 +16,7 @@ "build": "concurrently --names 'api,ui,archival,linkryEdge' 'yarn workspace infra-core-api run build' 'yarn workspace infra-core-ui run build' 'yarn workspace infra-core-archival run build' 'yarn workspace infra-core-linkry-edge run build'", "postbuild": "node src/api/createLambdaPackage.js && yarn lockfile-manage", "dev": "cross-env DISABLE_AUDIT_LOG=true concurrently --names 'api,ui' 'yarn workspace infra-core-api run dev' 'yarn workspace infra-core-ui run dev'", - "lockfile-manage": "synp --with-workspace --source-file yarn.lock", - "postlockfile-manage": "cp package-lock.json dist/lambda/ && cp package-lock.json dist/sqsConsumer/ && cp src/api/package.lambda.json dist/lambda/package.json && cp src/api/package.lambda.json dist/sqsConsumer/package.json && rm package-lock.json", + "lockfile-manage": "cp src/api/package.lambda.json dist/lambda/package.json && cp src/api/package.lambda.json dist/sqsConsumer/package.json && cp yarn.lock dist/lambda/ && cp yarn.lock dist/sqsConsumer/", "prettier": "yarn workspaces run prettier && prettier --check tests/**/*.ts", "prettier:write": "yarn workspaces run prettier:write && prettier --write tests/**/*.ts", "lint": "yarn workspaces run lint", @@ -83,7 +82,6 @@ "stylelint": "^16.23.1", "stylelint-config-standard-scss": "^15.0.1", "supertest": "^7.1.4", - "synp": "^1.9.14", "tsx": "^4.20.4", "typescript": "^5.9.2", "typescript-eslint": "^8.40.0", @@ -95,4 +93,4 @@ "pdfjs-dist": "^4.8.69", "form-data": "^4.0.4" } -} \ No newline at end of file +} diff --git a/yarn.lock b/yarn.lock index 3a8f610c..39f4a1e6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4154,11 +4154,6 @@ resolved "https://registry.yarnpkg.com/@vladfrangu/async_event_emitter/-/async_event_emitter-2.4.6.tgz#508b6c45b03f917112a9008180b308ba0e4d1805" integrity sha512-RaI5qZo6D2CVS6sTHFKg1v5Ohq/+Bo2LZ5gzUEwZ/WkHhwtGTCB/sVLw8ijOkAUxasZ+WshN/Rzj4ywsABJ5ZA== -"@yarnpkg/lockfile@^1.1.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31" - integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ== - "@zxing/browser@0.0.7": version "0.0.7" resolved "https://registry.yarnpkg.com/@zxing/browser/-/browser-0.0.7.tgz#5fa7680a867b660f48d3288fdf63e0174ad531c7" @@ -4866,11 +4861,6 @@ colorette@^2.0.7: resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a" integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w== -colors@1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" - integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== - combined-stream@^1.0.8: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" @@ -4878,16 +4868,6 @@ combined-stream@^1.0.8: dependencies: delayed-stream "~1.0.0" -commander@^2.11.0: - version "2.20.3" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" - integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== - -commander@^7.2.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" - integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== - commist@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/commist/-/commist-1.1.0.tgz#17811ec6978f6c15ee4de80c45c9beb77cee35d5" @@ -5427,11 +5407,6 @@ env-paths@^2.2.1: resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== -eol@^0.10.0: - version "0.10.0" - resolved "https://registry.yarnpkg.com/eol/-/eol-0.10.0.tgz#51b35c6b9aa0329a26d102b6ddc454be8654739b" - integrity sha512-+w3ktYrOphcIqC1XKmhQYvM+o2uxgQFiimL7B6JPZJlWVxf7Lno9e/JWLPIgbHo7DoZ+b7jsf/NzrUcNe6ZTZQ== - error-ex@^1.3.1: version "1.3.2" resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" @@ -7602,7 +7577,7 @@ lodash.truncate@^4.4.2: resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" integrity sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw== -lodash@4.17.21, lodash@^4.17.14, lodash@^4.17.19, lodash@^4.17.21: +lodash@^4.17.14, lodash@^4.17.19, lodash@^4.17.21: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -7953,13 +7928,6 @@ nise@^6.0.0: just-extend "^6.2.0" path-to-regexp "^8.1.0" -nmtree@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/nmtree/-/nmtree-1.0.6.tgz#953e057ad545e9e627f1275bd25fea4e92c1cf63" - integrity sha512-SUPCoyX5w/lOT6wD/PZEymR+J899984tYEOYjuDqQlIOeX5NSb1MEsCcT0az+dhZD0MLAj5hGBZEpKQxuDdniA== - dependencies: - commander "^2.11.0" - node-addon-api@^8.5.0: version "8.5.0" resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-8.5.0.tgz#c91b2d7682fa457d2e1c388150f0dff9aafb8f3f" @@ -9211,7 +9179,7 @@ semver@^6.1.2, semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.5.3, semver@^7.5.4, semver@^7.6.0, semver@^7.6.2, semver@^7.6.3, semver@^7.7.1: +semver@^7.5.3, semver@^7.5.4, semver@^7.6.0, semver@^7.6.2, semver@^7.7.1: version "7.7.3" resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.3.tgz#4b5f4143d007633a8dc671cd0a6ef9147b8bb946" integrity sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q== @@ -9404,11 +9372,6 @@ sonic-boom@^4.0.1: dependencies: atomic-sleep "^1.0.0" -sort-object-keys@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/sort-object-keys/-/sort-object-keys-1.1.3.tgz#bff833fe85cab147b34742e45863453c1e190b45" - integrity sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg== - source-map-js@^1.0.1, source-map-js@^1.2.0, source-map-js@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" @@ -9871,21 +9834,6 @@ synckit@^0.11.7: dependencies: "@pkgr/core" "^0.2.4" -synp@^1.9.14: - version "1.9.14" - resolved "https://registry.yarnpkg.com/synp/-/synp-1.9.14.tgz#1feb222d273f6092c6c264746277e95655c60717" - integrity sha512-0e4u7KtrCrMqvuXvDN4nnHSEQbPlONtJuoolRWzut0PfuT2mEOvIFnYFHEpn5YPIOv7S5Ubher0b04jmYRQOzQ== - dependencies: - "@yarnpkg/lockfile" "^1.1.0" - colors "1.4.0" - commander "^7.2.0" - eol "^0.10.0" - fast-glob "^3.3.2" - lodash "4.17.21" - nmtree "^1.0.6" - semver "^7.6.3" - sort-object-keys "^1.1.3" - tabbable@^6.0.0: version "6.2.0" resolved "https://registry.yarnpkg.com/tabbable/-/tabbable-6.2.0.tgz#732fb62bc0175cfcec257330be187dcfba1f3b97" From 72cfb1f367f6551d9c4791676394c99f7708de76 Mon Sep 17 00:00:00 2001 From: Dev Singh Date: Sat, 8 Nov 2025 23:49:13 -0600 Subject: [PATCH 4/5] address fastify deprecation warning --- src/api/index.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/api/index.ts b/src/api/index.ts index 9fb1d6a3..bb6e78ac 100644 --- a/src/api/index.ts +++ b/src/api/index.ts @@ -91,8 +91,10 @@ async function init(prettyPrint: boolean = false, initClients: boolean = true) { level: process.env.LOG_LEVEL || "info", transport, }, - ignoreTrailingSlash: true, - ignoreDuplicateSlashes: true, + routerOptions: { + ignoreTrailingSlash: true, + ignoreDuplicateSlashes: true, + }, disableRequestLogging: true, genReqId: (request) => { const header = request.headers["x-apigateway-event"]; From 56c920bf4bc4a94bfa0a3b05ef1517be7abc8f8f Mon Sep 17 00:00:00 2001 From: Dev Singh Date: Sat, 8 Nov 2025 23:49:40 -0600 Subject: [PATCH 5/5] Fix devel server issue --- Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile b/Makefile index dea5d7e7..d507d565 100644 --- a/Makefile +++ b/Makefile @@ -45,6 +45,7 @@ build: src/ rm -rf node_modules/argon2/prebuilds/linux-arm64/argon2.armv8.musl.node" local: + mkdir -p dist_devel/ VITE_BUILD_HASH=$(GIT_HASH) yarn run dev deploy_prod: