This is a major release of Uniplate, containing breaking API changes as well as various additions and improvements, listed below:
Breaking changes
- Uniplate functions now return
std::collections::VecDeque
instead ofim::Vector
. im
andproptest
are no longer dependencies of Uniplate.
Major changes
- The derive macro now supports structs and tuple-structs (Thanks to @lixitrixi)
- Add
Zipper
andZipperBi
, allowing arbitrary traversal of types that implementUniplate
andBiplate
- Significantly speedup
contexts
andcontexts_bi
.
Full changelog
- build(deps): bump the all group with 2 updates by @dependabot in #38
- build(deps): bump the all group with 6 updates by @dependabot in #39
- fix(ci): fix cargo audit by @niklasdewally in #41
- fix: use fully qualified paths in
derive_unplateable!
by @niklasdewally in #40 - Improve macro docs by @niklasdewally in #42
- BREAKING: replace
im:Vector
withstd::VecDeque
and removeim
by @niklasdewally in #43 - refactor!: remove
proptest
as a dependency by @niklasdewally in #45 - fix doc warnings by @niklasdewally in #46
- add benchmarks for
context
by @niklasdewally in #49 - add basic benchmarks for
contexts_bi
by @niklasdewally in #50 - Speedup
context
andcontext_bi
with zippers by @niklasdewally in #51 - derive for structs (tuple and struct fields) by @lixitrixi in #47
- feat: add zippers (
Zipper
,ZipperBi
) by @niklasdewally in #52 - docs: update derive docs to say that structs are supported by @niklasdewally in #53
- Update example to use better universe_bi syntax by @ozgurakgun in #54
- release: v0.2.0 by @niklasdewally in #55
New Contributors
- @lixitrixi made their first contribution in #47
Full Changelog: v0.1.5...v0.2.0