-
Notifications
You must be signed in to change notification settings - Fork 558
Replacing Lerna with pnpm on LTS #25537
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
30 commits
Select commit
Hold shift + click to select a range
c9ea65f
Replaces lerna for client packages in the LTS branch with pnpm.
jumyhre 6de6656
removing unneeded changes to server/ and tools/ packages
jumyhre be18766
PR fixes: Removes layerInfo.json, disables layer-check step with an e…
jumyhre f8f1432
undoing assert tagging changes
jumyhre f3acd7a
Setting build-common and test-tools pipelines to use most recent buil…
jumyhre 04c554e
Updating benchmark tool pipeline to use newer build tools, adds tagNa…
jumyhre 8ee48b6
Updates pipelines to use npm version concurrent with node 20 (npm 10)…
jumyhre 4909a02
Updating two more pipelines to use most recent build-tools
jumyhre bc430b0
Updates protocol-definitions to use build-tools 0.55.0,updates typete…
jumyhre 066ec1f
removing unneeded flags from tsconfigs in common-interfaces and tool-…
jumyhre ceed675
Undoing linter error and unwanted changes to error type
jumyhre a13435e
removing this is ISegment from merge-tree sources
jumyhre c0fec6d
Reverting telemetry-utils typetest version to 1.3.1, disabling tool-u…
jumyhre 45b6fb8
Disabling type tests in tool-utils, removing typetest gen file
jumyhre ba6188f
Adding comments to disabled end to end tests
jumyhre 9e93107
updating lockfile
jumyhre 7ec3179
Updating common-utils build pipeline to latest build tools version
jumyhre ccaf42d
Updating eslint-config-fluid package lockfile to npm 10
jumyhre bfc99b3
Updates bundle stat scripts to use flub, adds danger dep
jumyhre d43ff41
adds continueOnError to run bundle size task of build steps (similar …
jumyhre ca06624
Updating repo-policy-check pipeline to use node 20.15.1 + npm 10
jumyhre 123e0fa
Using repo-policy-check pipeline from main, without layer check
jumyhre 63fae83
removing build-tools sources and associated build pipeline
jumyhre 227dfe7
removing CG steps - the LTS pipeline wasnt doing that, main's CG chec…
jumyhre bfd06a4
Reverting error type change in propertyTemplate
jumyhre 9298bee
reverting all changes to common directory
jumyhre da53be3
reverting danger dependency
jumyhre bcd97e5
updating all pipeline scripts to npm 10, removing some unneeded npm i…
jumyhre fec4c52
restoring packageManagerInstallCommand to pipelines
jumyhre df0fda2
removing new typetest files from common
jumyhre File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| engine-strict=true | ||
|
|
||
| # Temporary, because otherwise pnpm fails due to peer dependencies not being satisfied | ||
| # with our current dependency graph. (copied from main repo, PR 13554) | ||
| strict-peer-dependencies=false | ||
|
|
||
| # Disable pnpm update notifications since we use corepack to install package managers | ||
| update-notifier=false | ||
|
|
||
| link-workspace-packages=true |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1 +1 @@ | ||
| 18 | ||
| 20 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| The presence of this file in a directory indicates it is the root of a release group. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -39,56 +39,57 @@ | |
| "test:realsvc:local:run": "mocha --unhandled-rejections=strict --recursive dist/test/**/*.spec.js --exit --timeout 10000", | ||
| "test:realsvc:tinylicious": "start-server-and-test start:tinylicious:test 7070 test:realsvc:local:run", | ||
| "tsc": "tsc", | ||
| "typetests:gen": "flub generate typetests --generate --dir .", | ||
| "typetests:gen": "flub generate typetests --dir . -v", | ||
| "typetests:prepare": "flub generate typetests --prepare --dir . --pin" | ||
| }, | ||
| "dependencies": { | ||
| "@fluidframework/common-definitions": "^0.20.1", | ||
| "@fluidframework/common-utils": "^1.1.1", | ||
| "@fluidframework/container-definitions": "^1.4.0", | ||
| "@fluidframework/container-loader": "^1.4.0", | ||
| "@fluidframework/core-interfaces": "^1.4.0", | ||
| "@fluidframework/driver-definitions": "^1.4.0", | ||
| "@fluidframework/driver-utils": "^1.4.0", | ||
| "@fluidframework/fluid-static": "^1.4.0", | ||
| "@fluidframework/map": "^1.4.0", | ||
| "@fluidframework/container-definitions": "workspace:~", | ||
| "@fluidframework/container-loader": "workspace:~", | ||
| "@fluidframework/core-interfaces": "workspace:~", | ||
| "@fluidframework/driver-definitions": "workspace:~", | ||
| "@fluidframework/driver-utils": "workspace:~", | ||
| "@fluidframework/fluid-static": "workspace:~", | ||
| "@fluidframework/map": "workspace:~", | ||
| "@fluidframework/protocol-definitions": "^1.0.0", | ||
| "@fluidframework/routerlicious-driver": "^1.4.0", | ||
| "@fluidframework/runtime-utils": "^1.4.0", | ||
| "@fluidframework/routerlicious-driver": "workspace:~", | ||
| "@fluidframework/runtime-utils": "workspace:~", | ||
| "@fluidframework/server-services-client": "^0.1036.5002", | ||
| "axios": "^0.28.0", | ||
| "uuid": "^8.3.1" | ||
| }, | ||
| "devDependencies": { | ||
| "@fluid-tools/build-cli": "^0.10.0", | ||
| "@fluidframework/aqueduct": "^1.4.0", | ||
| "@fluid-tools/build-cli": "^0.55.0", | ||
| "@fluidframework/aqueduct": "workspace:~", | ||
| "@fluidframework/azure-client-previous": "npm:@fluidframework/[email protected]", | ||
| "@fluidframework/azure-local-service": "^1.2.0", | ||
| "@fluidframework/azure-local-service": "workspace:~", | ||
| "@fluidframework/build-common": "^1.2.0", | ||
| "@fluidframework/build-tools": "^0.10.0", | ||
| "@fluidframework/counter": "^1.4.0", | ||
| "@fluidframework/eslint-config-fluid": "^2.0.0", | ||
| "@fluidframework/test-client-utils": "1.4.0", | ||
| "@fluidframework/test-utils": "^1.4.0", | ||
| "@microsoft/api-extractor": "^7.34.4", | ||
| "@fluidframework/build-tools": "^0.55.0", | ||
| "@fluidframework/counter": "workspace:~", | ||
| "@fluidframework/eslint-config-fluid": "^0.28.2000", | ||
| "@fluidframework/test-client-utils": "workspace:~", | ||
| "@fluidframework/test-utils": "workspace:~", | ||
| "@microsoft/api-extractor": "~7.34.4", | ||
| "@types/mocha": "^9.1.1", | ||
| "@types/node": "^18.15.3", | ||
| "@types/node": "^14.18.0", | ||
| "concurrently": "^7.6.0", | ||
| "copyfiles": "^2.4.1", | ||
| "cross-env": "^7.0.3", | ||
| "eslint": "~8.6.0", | ||
| "eslint": "~8.55.0", | ||
| "eslint-config-prettier": "~8.5.0", | ||
| "eslint-plugin-jsdoc": "~39.3.0", | ||
| "eslint-plugin-jsdoc": "~46.8.2", | ||
| "mocha": "^10.2.0", | ||
| "prettier": "~2.6.2", | ||
| "rimraf": "^2.6.2", | ||
| "start-server-and-test": "^1.11.7", | ||
| "typescript": "~4.5.5" | ||
| }, | ||
| "peerDependencies": { | ||
| "fluid-framework": "^1.4.0" | ||
| "fluid-framework": "workspace:~" | ||
| }, | ||
| "typeValidation": { | ||
| "broken": {} | ||
| "broken": {}, | ||
| "entrypoint": "public" | ||
| } | ||
| } | ||
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why did we have to downgrade
@types/nodeback to 14 at the same time as bumping node to 20?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The types/node change was easily my least favorite change. I tried using a node types file that matched the version of node we're using now. Doing so raised tons of compilation errors in other packages -- which weren't actual errors -- inside the types definitions of that node version. Here's a snippet of the output I get when I change this one package back to using 18.15.3:
The d.ts files are fine, so it shouldnt be throwing errors. I spent a lot of investigation trying to figure this out. I tried to work around it by adding skip lib check options to typescript compilation, but that still didnt work (?!). At this point I looked at main for any inspiration and found main was also using node types from an old version (main's min node is 20.15.1, but most packages use [email protected], and I also spotted this comment in main's package.json: "@types/node is ignored because it is usually not needed by packages, and if it is, then the package will hit a compilation failure.".
At this point I'd been banging my head against a wall on this issue for a couple days and timeboxed it - it looked like main wasn't in an ideal state either, setting everything to node 14.18.0 "worked", so that's how we got here. It's not exactly ideal, I agree.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
and note that these errors-which-arent-actually-errors will show up regardless of the version of types/node I use. Trying a more recent types/node for node 20 throws the same stuff: