Skip to content

Conversation

@IDisposable
Copy link
Contributor

@IDisposable IDisposable commented Oct 1, 2025

Now runs on Node 22.22.0

Package From To Notes
@aws-sdk/client-s3 3.654.0 3.978.0
@prisma/client 5.13.0 6.19.2
@tsconfig/node22 22.0.0 22.0.5
@types/cors 2.8.17 2.8.19
@types/node 20.12.10 25.1.0
@types/ws 8.5.10 8.18.1
cookie-session 2.1.0 2.1.1
cors 2.8.5 2.8.6
dotenv 16.4.7 17.2.3
express 5 5.2.1
helmet 7.1.0 8.1.0
http-proxy-middleware 3.0.0 3.0.5
jose 5.2.4 6.1.3
lru-cache 11.2.2 11.2.5
openid-client 5.6.5 6.8.1
prisma 5.1.13 6.19.2
semver 7.6.3 7.7.3
typescript 5.4.5 5.9.3
ws 8.17.0 8.19.0
@types/lru-cache 7.10.9 deleted
@types/semver 7.5.8 7.7.1
prettier 3.2.5 3.6.2

This also required major updates to oidc.ts and auth.ts, so updated the way the JWT Token was being managed to only validate and extract ONCE per request.

Upgraded the Dockerfile to use node:22.22.0-alpine base image

Added indexes to the database schema for better performance

** NEED TO GENERATE THE MIGRATION **

@IDisposable
Copy link
Contributor Author

Rebased.

@IDisposable IDisposable force-pushed the chore/packages branch 3 times, most recently from 0d457a0 to 0e77fc8 Compare January 29, 2026 08:51
Update dockerfile for correct node version.

Update package for openid-client

This essentially required reconstructing the oidc.go and auth.go files following the 6.x examples. While doing that, resolved some performance problems by only validating and parsing the session-stored JWT token once in the authenticated path and inserting the resulting sub (subject) into the request object for access in the next endpoint. This greatly simplifies the parts that expect an authenticated endpoint.

Added indexes for database performance.
Can't get the migration to generate!
@IDisposable
Copy link
Contributor Author

@adamshiervani I can't seem to get the docker compose up to give me a viable database connection... so I haven't created the migration.

const JWKS_URL = new URL("https://www.googleapis.com/oauth2/v3/certs")
const JWKS = jose.createRemoteJWKSet(JWKS_URL);
const verificationOptions = {
//algorithms: ['RS256'],
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The example shows S256 but really should be RS256... until I can test I can't be sure which is right.

@adamshiervani
Copy link
Contributor

adamshiervani commented Jan 30, 2026

Latest dev contains Readme and DX improvements. It should be more straightforward now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants