gspx 0.1.2

Sparse graph signal processing and spectral graph wavelets in Rust
Documentation
# Release Checklist

## Before Publishing

1. Verify that the crate name `gspx` is still available on crates.io.
2. Confirm that `Cargo.toml`, `README.md`, and `CHANGELOG.md` all reflect the release version.
3. Confirm that `CITATION.cff` and repository links are current.

## Local Release Gate

Run the full local gate from the repository root:

```bash
cargo fmt -- --check
cargo clippy --all-targets --all-features -- -D warnings
cargo test --all-targets
cargo test --doc
RUSTDOCFLAGS="-D warnings" cargo doc --no-deps
cargo package --allow-dirty --list
cargo publish --dry-run --allow-dirty
```

## Publish Sequence

1. Publish the crate:
   - `cargo publish`
2. Tag the exact published commit:
   - `git tag v<version>`
   - `git push origin v<version>`
3. Verify the crate page on crates.io.
4. Verify the docs.rs build for `gspx`.
5. Add owners if needed:
   - `cargo owner --add <github-handle>`

## Notes

- `cargo publish` remains a manual step; CI only performs a dry run.
- Example Laplacians and meshes live in the repo under `resources/library` and are loaded from local paths; the published crate does not package example data.
- Official release support is Linux and Windows.