Skip to content
Merged
Show file tree
Hide file tree
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 Sep 23, 2025
6de6656
removing unneeded changes to server/ and tools/ packages
jumyhre Sep 24, 2025
be18766
PR fixes: Removes layerInfo.json, disables layer-check step with an e…
jumyhre Sep 25, 2025
f8f1432
undoing assert tagging changes
jumyhre Sep 25, 2025
f3acd7a
Setting build-common and test-tools pipelines to use most recent buil…
jumyhre Sep 29, 2025
04c554e
Updating benchmark tool pipeline to use newer build tools, adds tagNa…
jumyhre Sep 29, 2025
8ee48b6
Updates pipelines to use npm version concurrent with node 20 (npm 10)…
jumyhre Sep 30, 2025
4909a02
Updating two more pipelines to use most recent build-tools
jumyhre Sep 30, 2025
bc430b0
Updates protocol-definitions to use build-tools 0.55.0,updates typete…
jumyhre Sep 30, 2025
066ec1f
removing unneeded flags from tsconfigs in common-interfaces and tool-…
jumyhre Sep 30, 2025
ceed675
Undoing linter error and unwanted changes to error type
jumyhre Sep 30, 2025
a13435e
removing this is ISegment from merge-tree sources
jumyhre Sep 30, 2025
c0fec6d
Reverting telemetry-utils typetest version to 1.3.1, disabling tool-u…
jumyhre Oct 1, 2025
45b6fb8
Disabling type tests in tool-utils, removing typetest gen file
jumyhre Oct 1, 2025
ba6188f
Adding comments to disabled end to end tests
jumyhre Oct 1, 2025
9e93107
updating lockfile
jumyhre Oct 1, 2025
7ec3179
Updating common-utils build pipeline to latest build tools version
jumyhre Oct 1, 2025
ccaf42d
Updating eslint-config-fluid package lockfile to npm 10
jumyhre Oct 1, 2025
bfc99b3
Updates bundle stat scripts to use flub, adds danger dep
jumyhre Oct 1, 2025
d43ff41
adds continueOnError to run bundle size task of build steps (similar …
jumyhre Oct 1, 2025
ca06624
Updating repo-policy-check pipeline to use node 20.15.1 + npm 10
jumyhre Oct 1, 2025
123e0fa
Using repo-policy-check pipeline from main, without layer check
jumyhre Oct 1, 2025
63fae83
removing build-tools sources and associated build pipeline
jumyhre Oct 2, 2025
227dfe7
removing CG steps - the LTS pipeline wasnt doing that, main's CG chec…
jumyhre Oct 2, 2025
bfd06a4
Reverting error type change in propertyTemplate
jumyhre Oct 10, 2025
9298bee
reverting all changes to common directory
jumyhre Oct 10, 2025
da53be3
reverting danger dependency
jumyhre Oct 10, 2025
bcd97e5
updating all pipeline scripts to npm 10, removing some unneeded npm i…
jumyhre Oct 10, 2025
fec4c52
restoring packageManagerInstallCommand to pipelines
jumyhre Oct 10, 2025
df0fda2
removing new typetest files from common
jumyhre Oct 10, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 0 additions & 1 deletion .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@
/packages/utils/telemetry-utils/ @microsoft/fluid-cr-telemetry
/server/ @microsoft/fluid-cr-server
/tools/ @microsoft/fluid-cr-infra
/tools/pipelines/build-azure.yml @microsoft/fluid-cr-framework

# PUBLIC API REPORTS
# All packages are assumed to have public APIs unless defined otherwise in the sections below.
Expand Down
2 changes: 1 addition & 1 deletion .github/actions-labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@
- BREAKING.md

dependencies:
- lerna-package-lock.json
- pnpm-lock.yaml
- package-lock.json

documentation:
Expand Down
10 changes: 10 additions & 0 deletions .npmrc
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
2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
18
20
1 change: 1 addition & 0 deletions .releaseGroup
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.
2 changes: 1 addition & 1 deletion api-report/merge-tree.api.md
Original file line number Diff line number Diff line change
Expand Up @@ -219,7 +219,7 @@ export class Client {
// (undocumented)
walkSegments<TClientData>(handler: ISegmentAction<TClientData>, start: number | undefined, end: number | undefined, accum: TClientData, splitRange?: boolean): void;
// (undocumented)
walkSegments<undefined>(handler: ISegmentAction<undefined>, start?: number, end?: number, accum?: undefined, splitRange?: boolean): void;
walkSegments(handler: ISegmentAction<undefined>, start?: number, end?: number, accum?: undefined, splitRange?: boolean): void;
}

// @public (undocumented)
Expand Down
116 changes: 0 additions & 116 deletions azure/package.json

This file was deleted.

2 changes: 1 addition & 1 deletion azure/packages/azure-client/.eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
*/

module.exports = {
extends: [require.resolve("@fluidframework/eslint-config-fluid/strict"), "prettier"],
extends: [require.resolve("@fluidframework/eslint-config-fluid"), "prettier"],
plugins: ["eslint-plugin-jsdoc"],
parserOptions: {
project: ["./tsconfig.json", "./src/test/tsconfig.json"],
Expand Down
49 changes: 25 additions & 24 deletions azure/packages/azure-client/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -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",
Copy link
Contributor

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/node back to 14 at the same time as bumping node to 20?

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 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:

packages/common/driver-definitions build:compile: [build:esnext]                       ~
packages/common/driver-definitions build:compile: [build:esnext]
packages/common/driver-definitions build:compile: [build:esnext] ../../../node_modules/.pnpm/@[email protected]/node_modules/@types/node/http2.d.ts:1177:21 - error TS1005: ',' expected.
packages/common/driver-definitions build:compile: [build:esnext]
packages/common/driver-definitions build:compile: [build:esnext] 1177             listener: (
packages/common/driver-definitions build:compile: [build:esnext]                          ~
packages/common/driver-definitions build:compile: [build:esnext]
packages/common/driver-definitions build:compile: [build:esnext] ../../../node_modules/.pnpm/@[email protected]/node_modules/@types/node/http2.d.ts:1180:22 - error TS1109: Expression expected.
packages/common/driver-definitions build:compile: [build:esnext]
packages/common/driver-definitions build:compile: [build:esnext] 1180             ) => void,
packages/common/driver-definitions build:compile: [build:esnext]                           ~
packages/common/driver-definitions build:compile: [build:esnext]
packages/common/driver-definitions build:compile: [build:esnext] ../../../node_modules/.pnpm/@[email protected]/node_modules/@types/node/http2.d.ts:1181:10 - error TS1005: ';' expected.
packages/common/driver-definitions build:compile: [build:esnext]
packages/common/driver-definitions build:compile: [build:esnext] 1181         ): this;
packages/common/driver-definitions build:compile: [build:esnext]               ~
packages/common/driver-definitions build:compile: [build:esnext]
packages/common/driver-definitions build:compile: [build:esnext] ../../../node_modules/.pnpm/@[email protected]/node_modules/@types/node/http2.d.ts:1183:18 - error TS1005: ',' expected.
packages/common/driver-definitions build:compile: [build:esnext]
packages/common/driver-definitions build:compile: [build:esnext] 1183             event: "stream",
packages/common/driver-definitions build:compile: [build:esnext]                       ~
packages/common/driver-definitions build:compile: [build:esnext]
packages/common/driver-definitions build:compile: [build:esnext] ../../../node_modules/.pnpm/@[email protected]/node_modules/@types/node/http2.d.ts:1184:21 - error TS1005: ',' expected.
packages/common/driver-definitions build:compile: [build:esnext]
packages/common/driver-definitions build:compile: [build:esnext] 1184             listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void,
packages/common/driver-definitions build:compile: [build:esnext]                          ~
packages/common/driver-definitions build:compile: [build:esnext]
packages/common/driver-definitions build:compile: [build:esnext] 
[... continues on...]                                                                         

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.

Copy link
Contributor Author

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:

.../data-objects/multiview/interface build:compile: ../../../../node_modules/.pnpm/@[email protected]/node_modules/@types/node/http2.d.ts:1185:10 - error TS1005: ';' expected.
.../data-objects/multiview/interface build:compile: 1185         ): this;
.../data-objects/multiview/interface build:compile:               ~
.../data-objects/multiview/interface build:compile: ../../../../node_modules/.pnpm/@[email protected]/node_modules/@types/node/http2.d.ts:1186:17 - error TS1005: ',' expected.
.../data-objects/multiview/interface build:compile: 1186         on(event: string | symbol, listener: (...args: any[]) => void): this;
.../data-objects/multiview/interface build:compile:                      ~
.../data-objects/multiview/interface build:compile: ../../../../node_modules/.pnpm/@[email protected]/node_modules/@types/node/http2.d.ts:1186:44 - error TS1005: ',' expected.
.../data-objects/multiview/interface build:compile: 1186         on(event: string | symbol, listener: (...args: any[]) => void): this;
.../data-objects/multiview/interface build:compile:                                                 ~
.../data-objects/multiview/interface build:compile: ../../../../node_modules/.pnpm/@[email protected]/node_modules/@types/node/http2.d.ts:1186:70 - error TS1109: Expression expected.
.../data-objects/multiview/interface build:compile: 1186         on(event: string | symbol, listener: (...args: any[]) => void): this;
.../data-objects/multiview/interface build:compile:                                                                           ~
.../data-objects/multiview/interface build:compile: ../../../../node_modules/.pnpm/@[email protected]/node_modules/@types/node/http2.d.ts:1186:71 - error TS1005: ';' expected.
.../data-objects/multiview/interface build:compile: 1186         on(event: string | symbol, listener: (...args: any[]) => void): this;
.../data-objects/multiview/interface build:compile:                                                                            ~

"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"
}
}
Loading
Loading