Contributing¶
Contributions are welcome. See AGENTS.md for the conventions.
- Fork the repository and create a branch.
- Make your change with tests. New behaviour is a command in
crates/engine/src/cmd/. - Run
cargo xtask ciandpre-commit run --all-files. - Open a pull request. CI runs on Linux, macOS and Windows, and the docs build a preview.
Documentation¶
The site is built with Zensical:
pip install -r requirements_docs.txt
zensical serve # http://localhost:8000
Images live in rustgis-assets and are linked by URL; don't commit images to this repository.
Releases¶
- Bump
versionin the workspaceCargo.tomland merge it. - Run the Release dry run workflow, which checks the version and builds every package
without publishing anything:
gh workflow run release-dry-run.yml -R opengeos/RustGIS --ref main -f version=<version> - When it passes, publish a GitHub release tagged
v<version>(the tag must matchCargo.toml).
The Release workflow then builds and attaches the Windows zip, macOS DMGs, Linux tarballs
and .deb packages, and SHA256SUMS. To try the packaging locally:
cargo build --release --locked -p rustgis -p rustgis-cli
packaging/package.sh 0.1.0 # writes dist/