Skip to content

Commit fd975d7

Browse files
authored
Add release guide (#130)
Add steps related to publishing the crate
1 parent fa3efb8 commit fd975d7

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

RELEASING.md

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
# Release Process
2+
3+
To publish a new version of these crates:
4+
5+
1. Bump the crate versions using semantic versioning. As described in Cargo's [semver compatibility]
6+
documentation and because this crate is not yet released as "1.0", we typically release major
7+
breaking changes as a _minor_ semver bump and anything less than that as a _patch_ semver bump.
8+
After bumping, open a [PR]:
9+
10+
```shell script
11+
git checkout -b bump-version
12+
cargo xtask bump patch --git
13+
git push -u <FORK>
14+
# open PR
15+
```
16+
17+
[semver compatibility]: https://doc.rust-lang.org/cargo/reference/semver.html#change-categories
18+
[PR]: https://github.com/intel/openvino-rs/pulls
19+
20+
2. Once the bump PR is merged, publish the crates:
21+
22+
```shell script
23+
git checkout main
24+
git pull
25+
cargo xtask publish --git
26+
```
27+
28+
You may want to check that everything looks right on [crates.io] after this step. Note that the
29+
`--git` flag is equivalent to `git tag v<VERSION>; git push origin v<VERSION>`. If your remotes
30+
won't work with this default `origin` for any reason, those commands can be run manually.
31+
32+
[crates.io]: https://crates.io/crates/openvino
33+
34+
3. Once published, [draft a new release] on GitHub. Use the newly-published tag and use "Generate
35+
release notes" for a sane changelog description.
36+
37+
[draft a new release]: https://github.com/intel/openvino-rs/releases/new
38+
39+
4. Eventually, check that [docs.rs] was able to build the crate documentation correctly.
40+
41+
[docs.rs]: https://docs.rs/openvino

0 commit comments

Comments
 (0)