Skip to content

Commit 4e7c3a0

Browse files
authored
Merge pull request #213 from derekpierre/publish-docs-update
Update readme and publishing docs with latest information
2 parents b50d448 + 2cc2a75 commit 4e7c3a0

2 files changed

Lines changed: 41 additions & 7 deletions

File tree

PUBLISHING.md

Lines changed: 32 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,17 +9,46 @@ write your commit messages however you want.
99

1010
## Releasing workflow
1111

12+
### Update Version
13+
14+
Update the version in the `Cargo.toml` for the relevant package(s) you want to release.
15+
16+
### Publish Package
17+
1218
We're currently not releasing Python and WASM bindings, we're only releasing the Rust crate.
1319

14-
In order to release a new version, simply run:
20+
You can either specify all of the packages in the workspace, or just the ones you want to release. The full list is:
21+
- `ferveo-nucypher-common`
22+
- `subproductdomain-nucypher`
23+
- `ferveo-nucypher-tdec`
24+
- `ferveo-nucypher`
25+
26+
27+
In order to release all of the packages, run the following from the `main` branch:
1528

1629
```bash
17-
cargo smart-release --update-crates-index
30+
cargo smart-release \
31+
ferveo-nucypher-common \
32+
subproductdomain-nucypher \
33+
ferveo-nucypher-tdec \
34+
ferveo-nucypher \
35+
--update-crates-index
1836
```
1937

38+
_Typically, `smart-release` handles the package ordering for you, but since the naming of packages don't match their directory names, you
39+
need to specify the package names explicitly._
40+
2041
Inspect the changes and confirm the release:
2142

2243
```bash
23-
cargo smart-release --update-crates-index --execute
44+
cargo smart-release \
45+
ferveo-nucypher-common \
46+
subproductdomain-nucypher \
47+
ferveo-nucypher-tdec \
48+
ferveo-nucypher \
49+
--update-crates-index --execute
2450
```
2551

52+
- You can modify the command to only publish specific packages if needed.
53+
- This will update the respective package `CHANGELOG.md` files in one commit, and produce tags for each of the packages. Be
54+
sure to push up that additional commit and relevant tags to the `main` branch. Using the tags you can create a corresponding GitHub release.

README.md

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
![ci-badge](https://github.com/nucypher/ferveo/actions/workflows/workspace.yml/badge.svg)
44

5-
_This project is under active development. For questions, please join us at [Threshold Network Discord](https://discord.com/invite/threshold&ved=2ahUKEwivucaW2Y3-AhXiwosKHQCEAKUQFnoECA0QAQ&usg=AOvVaw08x-9JYJFDcd6PEOx0xAeg)_
5+
_This project is under active development. For questions, please join us at [TACo Discord](https://discord.gg/buildwithtaco)_
66

77
---
88

@@ -32,16 +32,21 @@ A preprint paper describing the construction of Ferveo and the novel cryptosyste
3232
A Rust toolchain with version `>= 1.87.0` is required. In the future, Ferveo will target the `stable` toolchain.
3333
Installation via [rustup](https://rustup.rs/) is recommended.
3434

35-
Run `cargo build --release` to build.
35+
Run `cargo build --no-default-features --release` to build.
3636
Please note that performance may be significantly poorer when compiling in `Debug` mode.
3737

38+
## Formatting
39+
40+
Be sure to run `cargo fmt --all` locally before committing your changes. This will ensure that the code is formatted
41+
according to the project's style guidelines.
42+
3843
## Testing
3944

4045
Run `cargo test --no-default-features --release` to run tests. Please note that performance may be significantly poorer when testing
4146
in `Debug` mode.
4247

4348
## Benchmarks
4449

45-
Run `cargo bench --benches` to run benchmarks. Benchmark report is available in the `target/criterion/report` folder.
46-
50+
Run `cargo bench --benches --no-default-features` to run benchmarks. Benchmark report is available in the `target/criterion/report` folder.
4751

52+
**NOTE: Benchmarks are optional (the benchmark CI job is disabled) and take quite some time (~10 mins)**

0 commit comments

Comments
 (0)