Skip to content

upgraded yarn to add release age min and added min to npm#4231

Open
wavehassman wants to merge 4 commits into
developfrom
yarn-4.11-release-age-min
Open

upgraded yarn to add release age min and added min to npm#4231
wavehassman wants to merge 4 commits into
developfrom
yarn-4.11-release-age-min

Conversation

@wavehassman
Copy link
Copy Markdown
Contributor

@wavehassman wavehassman commented May 23, 2026

Changes

Upgrades Yarn from 3.2.1 to 4.15.0 with a 3-day minimum package release age enforced in both Yarn and npm as a supply chain security measure, updates Dockerfiles for compatibility, and migrates Prisma config from package.json to prisma.config.ts to resolve a deprecation warning ahead of Prisma 7.

Slack messages still work and uploading documents

Checklist

It can be helpful to check the Checks and Files changed tabs.
Please review the contributor guide and reach out to your Tech Lead if anything is unclear.
Please request reviewers and ping on slack only after you've gone through this whole checklist.

  • All commits are tagged with the ticket number
  • No linting errors / newline at end of file warnings
  • All code follows repository-configured prettier formatting
  • No merge conflicts
  • All checks passing
  • Screenshots of UI changes (see Screenshots section)
  • Remove any non-applicable sections of this template
  • Assign the PR to yourself
  • No yarn.lock changes (unless dependencies have changed)
  • Request reviewers & ping on Slack
  • PR is linked to the ticket (fill in the closes line below)

@wavehassman wavehassman self-assigned this May 23, 2026
Copy link
Copy Markdown
Contributor

@chpy04 chpy04 left a comment

Choose a reason for hiding this comment

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

We technically are fully es modules, although the only reason we switched from common js on the frontend was bc my deployment pipeline broke and I couldn't figure out what the issue was so I did that instead so maybe its fine. If the cjs works fine its good w me but other comments should be addressed

Comment thread src/backend/Dockerfile
@@ -1,16 +1,16 @@
# TO BE RUN FROM DOCKER COMPOSE. DO NOT RUN MANUALLY AS CONTEXT IS NOT SET CORRECTLY
FROM platformatic/node-caged:25-slim
RUN npm install -g yarn
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

The reason that we install yarn before copying everything over is because of docker caching, so we ideally want the yarn installation to be as early as possible to leverage caching as much as possible, specifically before copying backend and shared bc those change a lot

Comment thread src/backend/Dockerfile
RUN npm install -g corepack --force && corepack enable && yarn install

RUN echo DATABASE_URL=\"postgresql://postgres:docker@database:5432/nerpm?schema=public\" > ./src/backend/.env
RUN echo NODE_ENV=development >> ./src/backend/.env
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

If you are changing this dockerfile you will almost certainly need to change the development one to keep the development env working as well

Comment thread src/frontend/Dockerfile
@@ -1,15 +1,16 @@
# TO BE RUN FROM DOCKER COMPOSE. DO NOT RUN MANUALLY AS CONTEXT IS NOT SET CORRECTLY
FROM node:20 AS builder
FROM node:22 AS builder
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

we really ought to be on the same version of node for the frontend and backend, although I must have missed this when Raphael added the caged node 25. Bc you are already doing dependency work, can you upgrade one to 25 or downgrade one to 22 (idc which ideally 25 but if you run into problems 22 is fine)

Comment thread .dockerignore
# Lock files (keep package.json though)
package-lock.json
yarn.lock
.yarnrc.yml
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Why do we need these? I would have thought the releases folder would contain everything we need

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