Chore
-
check Rust APIs during release planning
Enable cargo api-check for both workspace packages. Cover all four CLI
feature combinations and recursively inspect exposed dua-core APIs.Document the tool requirements and dry-run command, including the targeted
rustdoc allowance needed when building historical release baselines.
Documentation
- fix links in public traversal documentation
Replace links to the private Event type with prose so public rustdoc builds
pass with warnings denied, as required by the API checker.
Bug Fixes
- provide standard FileType traits on native platforms
Consumers could format std::fs::FileType on Linux but the same code failed
to compile for macOS and Windows. Derive Debug, PartialEq, Eq, and Hash on
both native FileType types, retaining their existing Copy and Clone traits.
No wrapper or platform API change is needed.
Bug Fixes (BREAKING)
-
retain filesystem paths in traversal errors
Just looked at the production code and rubber-stamped the tests.
All that really happens is a new error type that retains more informationRootEvent and Walk previously yielded plain I/O errors, leaving consumers
unable to identify a failing descendant. Return a typed dua_core::Error
with the entry path, or the directory path when enumeration cannot identify
an entry, and retain the original I/O error for kind and OS-code inspection.Keep sibling failures as separate iterator items. Update native and ordinary
reads, streamed roots, prepared roots, cancellation, and CLI forwarding.
Metadata errors remain attached to their Entry. Document the breaking API
change and conversion back to io::Error.Regression coverage removes two sibling directories before descent in both
orders and metadata modes; it also checks missing and streamed roots,
original OS errors, source access, and conversion without losing context.
The regression initially failed because io::Error has no path accessor.
Commit Statistics
- 5 commits contributed to the release.
- 2 days passed between releases.
- 4 commits were understood as conventional.
- 2 unique issues were worked on: #421, #422