-
Notifications
You must be signed in to change notification settings - Fork 144
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
Rework the component selection such that we can select versions for individual versions for sway repo as well #606
Comments
See here for more info on how we have done this manually in the past |
We could look at adopting how tracing approaches releases within their mono repo. Instead of releasing everything at once, they are able to release individual components. Would be worth looking closer into. https://github.com/tokio-rs/tracing/releases |
That would be great not just for fuelup but for also being able to version library crates separately from binary ones in sway repo. This would enable us to actually adhere to semver for all of our crates. For an intermediate solution or a first step that does not change the release process, we can upload each artifact separately to sway repo artifacts for each release. Currently they are packed, what fuelup does is that for each forc* component it unpacks & find it from the file downloaded from that link. If we upload them seperatly then we can indivually link them in the component.toml file. date = "2024-04-04"
[pkg.forc]
version = "0.49.3"
[pkg.forc.target.linux_amd64]
url = "https://github.com/FuelLabs/sway/releases/download/v0.49.3-patch.1/forc-binaries-linux_amd64.tar.gz"
hash = "..."
[pkg.forc.target.linux_arm64]
url = "https://github.com/FuelLabs/sway/releases/download/v0.49.3-patch.1/forc-binaries-linux_arm64.tar.gz"
hash = "..."
[pkg.forc.target.darwin_amd64]
url = "https://github.com/FuelLabs/sway/releases/download/v0.49.3-patch.1/forc-binaries-darwin_amd64.tar.gz"
hash = "..."
[pkg.forc.target.darwin_arm64]
url = "https://github.com/FuelLabs/sway/releases/download/v0.49.3-patch.1/forc-binaries-darwin_arm64.tar.gz"
hash = "..."
[pkg.forc-deploy]
version = "0.50.0"
[pkg.forc.target.linux_amd64]
url = "https://github.com/FuelLabs/sway/releases/download/v0.50/forc-binaries-linux_amd64.tar.gz"
hash = "...."
[pkg.forc.target.linux_arm64]
url = "https://github.com/FuelLabs/sway/releases/download/v0.50/forc-binaries-linux_amd64.tar.gz"
hash = "...."
[pkg.forc.target.darwin_amd64]
url = "https://github.com/FuelLabs/sway/releases/download/v0.50/forc-binaries-linux_amd64.tar.gz"
hash = "...."
[pkg.forc.target.darwin_arm64]
url = "https://github.com/FuelLabs/sway/releases/download/v0.50/forc-binaries-linux_amd64.tar.gz"
hash = "...." Uploading them individually would enable us to mix & match different versions. On top of this, if we add the ability to release individual members of the workspace from sway repo, we can do any arbitrary release without interfering it manually. |
We can select arbitrary versions at repo level, we can pin fuel-core to x.y.z and sway repo to x.y.z at a specific toolchain. But we cannot change versions of forc-deploy, forc-lsp indiuvally as they are packed in sway repo.
We need this because we from some time to time, require to patch only a single component.
The text was updated successfully, but these errors were encountered: