Skip to content

Migrate yarn to pnpm#109

Merged
Kevin-Chant merged 7 commits intomainfrom
kc/pnpm
Mar 12, 2026
Merged

Migrate yarn to pnpm#109
Kevin-Chant merged 7 commits intomainfrom
kc/pnpm

Conversation

@Kevin-Chant
Copy link
Copy Markdown
Collaborator

@Kevin-Chant Kevin-Chant commented Mar 5, 2026

Description

Migrates all uses of yarn to pnpm to bring us to parity with our other repos

⚠️ This repo requires node v22 to run locally since spdy doesn't work with v24. It looks like there's a drop-in replacement with http2-express-bridge but I'm leaving that for a separate PR

Testing

  • pnpm build succeeds
  • github ci on PR succeeds
  • local dev proxy works appropriately
  • local build/start proxy works appropriately
  • docker build/run proxy works appropriately

run: |
# Linting
yarn lint
# Temporarily disabled due to code drift while this script wasn't running
Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

This workflow has been broken for ages so it hasn't been linting the files. I'm fixing lint issues in a separate branch and then we can re-enable this.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Copy link
Copy Markdown
Collaborator

@tzjames tzjames left a comment

Choose a reason for hiding this comment

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

Looks good other than the script runner for prod.

package.json Outdated
Comment on lines +21 to +22
"start": "pnpm --filter @growthbook/proxy start",
"start:with-tracing": "pnpm --filter @growthbook/proxy start:with-tracing",
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

We seemed to have memory leaks using pnpm on prod. It is kind of not meant for that. We ended up going with pm2 for growthbook, I'd suggest we do that here too.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Good suggestion. I borrowed the setup from the main repo, but didn't use the ecosystem.config in the dockerfile. Lmk if you think anything there should change.
I did test both the pnpm start and docker run entrypoints which worked fine

@Kevin-Chant Kevin-Chant requested a review from tzjames March 10, 2026 07:48
@Kevin-Chant Kevin-Chant removed the request for review from bryce-fitzsimons March 11, 2026 03:37
@Kevin-Chant Kevin-Chant merged commit 9a8099b into main Mar 12, 2026
1 check passed
@Kevin-Chant Kevin-Chant deleted the kc/pnpm branch March 12, 2026 04:57
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.

3 participants