Library crates should not commit Cargo.lock files. Only application
crates need Cargo.lock for reproducible builds.
This ensures library users control their own dependency resolution
rather than being locked to specific versions from the library's
lock file.
Changes:
- Add Cargo.lock to .gitignore (was missing from ignore patterns)
- Delete committed Cargo.lock file from repository (1475 lines)
- Bump version to 0.3.2 in both crates
- Update CHANGELOG.md with 0.3.2 release notes
- Update scripts/release_check.sh version to 0.3.2
Update all documentation to reflect that custom types work automatically
with the #[task] macro, requiring only Clone + Send + Sync + 'static.
Documentation updates:
- README: Add custom types to features, new Custom Types section
- CHANGELOG: Document custom type improvement in [Unreleased]
- src/lib.rs: Add custom types example to main API docs
- src/task.rs: Update Task trait docs to mention macro-generated extraction
- src/extract.rs: Clarify ExtractInput is now internal-only (for task_fn)
- dagx-macros: Update macro docs to emphasize automatic type handling
New example:
- examples/custom_types.rs: Simple 120-line example showing User type
flowing through DAG with fan-out pattern (one output → two consumers)
demonstrating Arc wrapping is automatic and transparent
This makes the custom type capability discoverable and prominent for users,
turning a previous limitation into a headline feature.