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

chore(cargo.toml): define more workspace dependencies #3473

Merged

Conversation

cratelyn
Copy link
Collaborator

@cratelyn cratelyn commented Dec 19, 2024

in linkerd/linkerd2#8733, we're tracking work to upgrade to hyper 1.0.

when upgrading from 0.14 to 1.0, some related crates that depend on hyper, http, and http-body must also be upgraded as well. in linkerd/linkerd2-proxy-api#421, as part of the upgrade to hyper 1.0 we additionally bump the following:

  • h2: 0.3 -> 0.4
  • http: 0.2 -> 1.2
  • prost: 0.12 -> 0.13
  • prost-types: 0.12 -> 0.13
  • tonic: 0.10 -> 0.12
  • tonic-build: 0.10 -> 0.12

unlike linkerd2-proxy-api, the linkerd2-proxy repository is a particularly large cargo workspace. as a consequence of this, bumping these crates across our cargo workspace is a particularly noisy and involved change today. there are ~35 distinct package manifests that need to be changed!

to help ease development, future maintenance, and review of impending hyper upgrade changes, this branch consolidates all of the above into workspace dependencies. no changes to the lockfile are made because this branch does not affect the dependency graph of the project.

this follows from #3456 and #3466, which did this for hyper, http, and http-body. for more information, see:

this commit modifies the workspace manifest, defining prost and
prost-types as common workspace dependencies.

no changes to the lockfile are made because this commit does not affect
the dependency graph of the project.

* linkerd/linkerd2#8733

Signed-off-by: katelyn martin <[email protected]>
this commit modifies the workspace manifest, defining tonic and
tonic-build as common workspace dependencies.

no changes to the lockfile are made because this commit does not affect
the dependency graph of the project.

* linkerd/linkerd2#8733

Signed-off-by: katelyn martin <[email protected]>
this commit modifies the workspace manifest, defining bytes as a
workspace dependency.

no changes to the lockfile are made because this commit does not affect
the dependency graph of the project.

* linkerd/linkerd2#8733

Signed-off-by: katelyn martin <[email protected]>
@cratelyn cratelyn force-pushed the kate/hyper-1.x-dependents-become-workspace-dependencies branch from ecc6ffa to 4d89b1e Compare December 19, 2024 02:58
cratelyn added a commit that referenced this pull request Dec 19, 2024
this commit modifies the workspace manifest, defining h2 as a
workspace dependency.

no changes to the lockfile are made because this commit does not affect
the dependency graph of the project.

* linkerd/linkerd2#8733

Signed-off-by: katelyn martin <[email protected]>
this commit modifies the workspace manifest, defining h2 as a
workspace dependency.

no changes to the lockfile are made because this commit does not affect
the dependency graph of the project.

* linkerd/linkerd2#8733

Signed-off-by: katelyn martin <[email protected]>
this is a small cosmetic tweak to the cargo workspace manifest.

this defines the proxy api as a toml table, to help give us a more
natural place to hang the (inert) example of a git dependency used in
development.

Signed-off-by: katelyn martin <[email protected]>
@cratelyn cratelyn force-pushed the kate/hyper-1.x-dependents-become-workspace-dependencies branch from 4d89b1e to ce7a3a7 Compare December 19, 2024 03:05
@cratelyn cratelyn marked this pull request as ready for review December 19, 2024 03:14
@cratelyn cratelyn requested a review from a team as a code owner December 19, 2024 03:14
@cratelyn cratelyn enabled auto-merge (rebase) December 19, 2024 17:52
@cratelyn
Copy link
Collaborator Author

i've enabled auto-merge for this 🙂

@@ -32,6 +32,6 @@ regex = "1"
thiserror = "2"
tokio = { version = "1", features = ["rt"] }
tokio-stream = { version = "0.1", features = ["time", "sync"] }
tonic = { version = "0.10", default-features = false, features = ["prost"] }
tonic = { workspace = true, default-features = false, features = ["prost"] }
Copy link
Collaborator

Choose a reason for hiding this comment

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

Not for this change, but we should consider moving the default-features/features up to the workspace level in the future, IIRC it helps with feature unification and can speed up incremental builds.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

that's a very good call. i would be on board with that!

@cratelyn cratelyn merged commit a1a5713 into main Dec 19, 2024
49 checks passed
@cratelyn cratelyn deleted the kate/hyper-1.x-dependents-become-workspace-dependencies branch December 19, 2024 19:20
cratelyn added a commit that referenced this pull request Dec 19, 2024
this commit modifies the workspace manifest, defining prost and
prost-types as common workspace dependencies.

no changes to the lockfile are made because this commit does not affect
the dependency graph of the project.

* linkerd/linkerd2#8733

Signed-off-by: katelyn martin <[email protected]>
cratelyn added a commit that referenced this pull request Dec 19, 2024
this commit modifies the workspace manifest, defining tonic and
tonic-build as common workspace dependencies.

no changes to the lockfile are made because this commit does not affect
the dependency graph of the project.

* linkerd/linkerd2#8733

Signed-off-by: katelyn martin <[email protected]>
cratelyn added a commit that referenced this pull request Dec 19, 2024
this commit modifies the workspace manifest, defining bytes as a
workspace dependency.

no changes to the lockfile are made because this commit does not affect
the dependency graph of the project.

* linkerd/linkerd2#8733

Signed-off-by: katelyn martin <[email protected]>
cratelyn added a commit that referenced this pull request Dec 19, 2024
this commit modifies the workspace manifest, defining h2 as a
workspace dependency.

no changes to the lockfile are made because this commit does not affect
the dependency graph of the project.

* linkerd/linkerd2#8733

Signed-off-by: katelyn martin <[email protected]>
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