Skip to content

Commit

Permalink
Add note about cargo release.
Browse files Browse the repository at this point in the history
  • Loading branch information
LawnGnome committed Oct 4, 2021
1 parent 3c99335 commit b6fb860
Showing 1 changed file with 3 additions and 1 deletion.
4 changes: 3 additions & 1 deletion DEVELOPMENT.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,8 @@

## Releasing

[GoReleaser](https://github.com/goreleaser/goreleaser) is used for package building and GitHub changelog generation. A mild amount of hackery is required to make it work with a Rust program, see [`.goreleaser.yml`](.goreleaser.yml) for the gory details.
To create tags, use [cargo-release](https://github.com/crate-ci/cargo-release), specifically with `--skip-publish` for now until we have the generic packages open sourced and published on crates.io.

Once tagged, GitHub Actions will invoke [GoReleaser](https://github.com/goreleaser/goreleaser) to handle building packages and generating a release changelog. A mild amount of hackery is required to make it work with a Rust program, see [`.goreleaser.yml`](.goreleaser.yml) for the gory details.

For maximum compatibility, binaries are built as static Linux binaries using the `x86_64-unknown-linux-musl` Rust target. Note that this means that non-Rust dependencies can only be added if they can easily be statically linked. (In practice, this hasn't been a problem thus far.)

0 comments on commit b6fb860

Please sign in to comment.