-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
13 changed files
with
72 additions
and
23 deletions.
There are no files selected for viewing
This file contains 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 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,29 @@ | ||
# Release process | ||
|
||
If you want to release the packages on crates.io, follow this process: | ||
|
||
1. Install `cargo workspaces`: `cargo install cargo-workspaces` | ||
2. Create a new branch to prepare a release. | ||
3. Change versions in the `Cargo.toml`: | ||
- `version` in `[workspace.package]` | ||
- `version` in `[workspace.dependencies]` for all the relevant crates. | ||
4. Run `cargo build`. It must succeed. | ||
5. Commit changes. | ||
6. Run `cargo ws publish --dry-run`. Check the output. It might fail, but it might be OK. | ||
- `error: config value 'http.cainfo' is not set` can be ignored. | ||
- There might be warnings, this is OK. | ||
- There might be errors related to the version resolution, e.g. `failed to select a version` | ||
(in particular, for `zkevm_test_harness`). It's due to a bug in cargo workspaces. | ||
Check that the packages it complains about actually have the specified version, and if so, | ||
it's safe to proceed. | ||
7. Create a PR named `crates.io: Release <version>`. Get a review and merge it. | ||
8. From the main branch _after_ you merge it, run `cargo ws publish --publish-as-is --allow-dirty`. | ||
- The `--publish-as-is` argument skips the versioning step, which you already did before. | ||
- The `--allow-dirty` argument is required, because `cargo ws` temporarily removes dev-dependencies | ||
during publishing. | ||
- Important: if something fails and you have to do changes to the code, it's safe to run the same | ||
command again. `cargo ws` will skip already published packages. | ||
9. If something goes wrong, see recommendations below. | ||
10. If everything is OK, create a tag: `git tag v<version>`, e.g. `git tag v0.150.4` | ||
11. `git push --tags` | ||
12. Go to the Releases in the GitHUb, and create a release for published version. |
This file contains 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 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 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,14 +1,14 @@ | ||
[package] | ||
name = "codegen-bin" | ||
version = "0.1.0" | ||
version.workspace = true | ||
edition = "2018" | ||
license = "MIT OR Apache-2.0" | ||
publish = false | ||
|
||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html | ||
|
||
[dependencies] | ||
zksync_solidity_vk_codegen = { path = "../codegen" } | ||
zksync_solidity_vk_codegen.workspace = true | ||
structopt = "0.3" | ||
dialoguer = "0.8" | ||
|
This file contains 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 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 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 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 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 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 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 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