Skip to content
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

Update client deps #22709

Merged
merged 6 commits into from
Oct 2, 2024
Merged

Conversation

CraigMacomber
Copy link
Contributor

@CraigMacomber CraigMacomber commented Oct 2, 2024

Description

Update client dependencies, holding back socket.io-client to avoid socketio/socket.io#5202.

Makes type tests target ~ version, to avoid duplicating previous package versions:
pnpm exec flub typetests -g client --exact "~2.3.0"

Reviewer Guidance

The review process is outlined on this wiki page.

@github-actions github-actions bot added area: driver Driver related issues area: odsp-driver dependencies Pull requests that update a dependency file base: main PRs targeted against main branch labels Oct 2, 2024
Copy link
Contributor

@Abe27342 Abe27342 left a comment

Choose a reason for hiding this comment

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

looks mostly good, but there are a number of FF packages in pnpm-lock on version 2.3.0 as well as 2.3.1 (@fluidframework/tree is one such package). Even with pnpm's dep tree structure, seems like that could cause some strange issues.

Copy link
Member

@tylerbutler tylerbutler left a comment

Choose a reason for hiding this comment

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

Thanks for doing this! It would be nice to also update the package.json files eventually too, but not critical. Maybe we need to consider some per-release maintenance tasks that we do regularly.

@CraigMacomber
Copy link
Contributor Author

Thanks for doing this! It would be nice to also update the package.json files eventually too, but not critical. Maybe we need to consider some per-release maintenance tasks that we do regularly.

Updating the minimum supported version in our package.json files to remove support for older versions of packages seems like it could be a breaking change for prod deps in some cases, so in general I think we should probably leave them alone. Updating them for dev deps would be ok though.

@tylerbutler
Copy link
Member

looks mostly good, but there are a number of FF packages in pnpm-lock on version 2.3.0 as well as 2.3.1 (@fluidframework/tree is one such package). Even with pnpm's dep tree structure, seems like that could cause some strange issues.

@CraigMacomber flub modify lockfile that @alexvy86 wrote might be useful: https://github.com/microsoft/FluidFramework/blob/main/build-tools/packages/build-cli/docs/modify.md#flub-modify-lockfile

@CraigMacomber
Copy link
Contributor Author

looks mostly good, but there are a number of FF packages in pnpm-lock on version 2.3.0 as well as 2.3.1 (@fluidframework/tree is one such package). Even with pnpm's dep tree structure, seems like that could cause some strange issues.

I think this is expected? Our type tests test against the previous minor's .0 release, and those will pull in patched versions of their deps when updating, resulting in this duplication for all packages which have type tests and are also depended on by a package with type tests, and have been patched. If we don't want this behavior, our type tests should probably use ~ versions.

@github-actions github-actions bot added area: dds Issues related to distributed data structures area: dds: sharedstring area: framework Framework is a tag for issues involving the developer framework. Eg Aqueduct area: loader Loader related issues area: runtime Runtime related issues area: tests Tests to add, test infrastructure improvements, etc labels Oct 2, 2024
@CraigMacomber
Copy link
Contributor Author

I went ahead and made the type tests target ~ versions to avoid the duplication since it was easy. If we like that we can update our type test tooling to prefer that format by default when updating their package versions.

@msfluid-bot
Copy link
Collaborator

@fluid-example/bundle-size-tests: -2.5 KB
Metric NameBaseline SizeCompare SizeSize Diff
aqueduct.js 463.2 KB 461.91 KB -1.29 KB
azureClient.js 558.69 KB 558.94 KB +254 Bytes
connectionState.js 680 Bytes 680 Bytes No change
containerRuntime.js 261.33 KB 261.35 KB +18 Bytes
fluidFramework.js 405.32 KB 405.29 KB -29 Bytes
loader.js 134.17 KB 134.16 KB -14 Bytes
map.js 42.43 KB 42.43 KB No change
matrix.js 148.83 KB 148.43 KB -408 Bytes
odspClient.js 525.84 KB 525.9 KB +62 Bytes
odspDriver.js 97.8 KB 97.82 KB +19 Bytes
odspPrefetchSnapshot.js 42.76 KB 42.78 KB +14 Bytes
sharedString.js 165.91 KB 164.59 KB -1.32 KB
sharedTree.js 395.78 KB 395.75 KB -36 Bytes
Total Size 3.32 MB 3.31 MB -2.5 KB

Baseline commit: 9c58bf3

Generated by 🚫 dangerJS against 8ed6b1c

@CraigMacomber CraigMacomber merged commit b5189a1 into microsoft:main Oct 2, 2024
28 checks passed
@CraigMacomber CraigMacomber deleted the updateDepsAgain branch October 2, 2024 18:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: dds: sharedstring area: dds: tree area: dds Issues related to distributed data structures area: driver Driver related issues area: framework Framework is a tag for issues involving the developer framework. Eg Aqueduct area: loader Loader related issues area: odsp-driver area: runtime Runtime related issues area: tests Tests to add, test infrastructure improvements, etc base: main PRs targeted against main branch dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants