diff --git a/Cargo.toml b/Cargo.toml index 261e2736..0d944b34 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -31,13 +31,13 @@ libc = "0.2" log = "0.4" rayon = "1.9" rand = "0.8.5" -rlst = { git = "https://github.com/linalg-rs/rlst.git" } -green-kernels = { git = "https://github.com/bempp/green-kernels.git" } +rlst = { version = "0.1" } +green-kernels = { version = "0.1" } thiserror="1.*" [dev-dependencies] criterion = { version = "0.5.*", features = ["html_reports"]} -kifmm = { git = "https://github.com/bempp/kifmm.git" } +kifmm = { version = "0.1" } blas-src = { version = "0.10", features = ["blis"]} lapack-src = { version = "0.10", features = ["netlib"]} diff --git a/RELEASE.md b/RELEASE.md new file mode 100644 index 00000000..943ffacb --- /dev/null +++ b/RELEASE.md @@ -0,0 +1,37 @@ +# Making a release + +To make a new release of bempp, follow the following steps: + +0) If you are yet to make a release on your current computer, run `cargo login` and copy an API + key from https://crates.io/me + +1) Checkout the branch `release` and merge the branch `main` into the branch `release`: + ```bash + git checkout release + git merge main + ``` + +2) Update the version number in `Cargo.toml`. + The version numbers have the format `[x].[y].[z]`. If you are releasing a major + version, you should increment `[x]` and set `[y]` and `[z]` to 0. + If you are releasing a minor version, you should increment `[y]` and set `[z]` + to zero. If you are releasing a bugfix, you should increment `[z]`. + +4) In `Cargo.toml`, check that the `rlst`, `green-kernels`, and `kifmm` + dependencies are at the latest version. + +5) Commit your changes and push to GitHub. Wait to see if the CI tests pass. + +6) [Create a release on GitHub](https://github.com/bempp/kifmm/releases/new) from the `release` branch. + The release tag and title should be `v[x].[y].[z]` (where `[x]`, `[y]` and `[z]` are as in step 2). + In the "Describe this release" box, you should bullet point the main changes since the last + release. + +7) Run `cargo publish --dry-run`, then run `cargo package --list` and + check that no unwanted extras have been included in the release. + +8) If everything is working as expected, run `cargo publish`. This will push the new version to + crates.io. Note: this cannot be undone, but you can use `cargo yank` to mark a version as + unsuitable for use. + +9) Open a pull request to `main` to update the version number in `Cargo.toml` to `[x].[y].[z]-dev`