Pre-1.0 stable release. No API breaking changes vs. alpha.8.
### Dependencies
- Bumped `ixy` from the exact-pinned prerelease `=0.6.0-alpha.9` to the published stable
`=0.6.1`. No source changes needed; ixy's `0.6.0`/`0.6.1` releases were lint/doc/Justfile
polish plus a docs.rs build fix (`doc_auto_cfg` removed upstream).
### Added
- `PartialEq`/`Eq` derives on `GridBuf<T, B, L>` (bounded on `T: PartialEq`/`Eq`, `B: PartialEq`/
`Eq`), so grids can be compared directly instead of manually iterating - matches what a stable
owning container is expected to support.
### Fixed
- `cargo publish`'s own verification build (default features) failed to compile:
`internal::Sealed` was unconditionally `pub`, but it's only reachable from the public API
surface (as a supertrait bound on `buf::bits::ops::BitOps`) when the `buffer` feature is
enabled, so `unreachable_pub` fired under the default feature set. Fixed by defining `Sealed`
at the visibility each feature configuration actually needs (`pub` under `buffer`, `pub(crate)`
otherwise) instead of picking one and living with a lint conflict. Verified with `cargo package`
(what `cargo publish` runs for verification), not just `cargo build --all-features`.
- Doc examples for `GridWrite::set()` in `ops.rs` and `prelude.rs` ignored the returned
`Result<(), GridError>`; they now `.unwrap()` it so the published docs model correct usage.
- `transform` module's test suite (`Rc`/`Arc`/`GridBuf`-based) was not feature-gated and failed to
compile under `--no-default-features` or partial feature combinations (e.g. `--features cell`
alone); now gated on `feature = "buffer"` and `feature = "alloc"`, which is what it actually
exercises.
### Chores (pre-stable pass)
- Lint config aligned with the rest of the ecosystem (ixy/gem/hexal/framepace): `[lints.rust]`
now denies `missing_docs`/`unreachable_pub`/`unused_qualifications` (previously only
`missing_docs = "warn"`), and `[lints.clippy]` now denies `all`/`nursery`/`must_use_candidate`/
`missing_errors_doc`/`missing_panics_doc` in addition to `pedantic`. (`unsafe_code` is not
forbidden here, unlike sibling crates, since `grixy` legitimately uses `unsafe` for its
`*_unchecked` accessors.) Turning these on surfaced and fixed ~20 real findings: unnecessary
qualifications, `if let`/`else` that should be `Option::map_or(_else)`, redundant trait bounds,
`needless_collect` in tests, and one visibility lint conflict (`redundant_pub_crate` vs.
`unreachable_pub` disagreeing on `internal::IterRect`'s visibility - kept `pub(crate)` since
that's the true reachability, with a scoped `#[allow]` and comment explaining why).
### Known follow-up (not blocking this release)
- Non-default feature combinations still don't fully build/test cleanly beyond the one fix above
(e.g. `--features buffer` alone hits missing `GridBuf::new_filled` in test code elsewhere). CI
and this crate's own `Justfile` have only ever exercised `--all-features`, so this is pre-existing
and undetected, not a regression. Worth a `cargo-hack --feature-powerset` pass in a follow-up.