All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.5.0 - 2026-03-12
- [breaking] Instead of impl Into<Option>, Option<impl Into>
- u64 and i64 were not detected as Copy, now they are
- Merge pull request #99 from jbr/renovate/actions-checkout-6.x
- Merge pull request #91 from jbr/renovate/prettyplease-0.x-lockfile
- Merge pull request #92 from jbr/renovate/proc-macro2-1.x-lockfile
- Merge pull request #93 from jbr/renovate/quote-1.x-lockfile
- Merge pull request #94 from jbr/renovate/rustversion-1.x-lockfile
- Merge pull request #95 from jbr/renovate/syn-2.x-lockfile
- Merge pull request #97 from jbr/renovate/regex-1.x-lockfile
- (deps) update taiki-e/cache-cargo-install-action action to v3
0.4.8 - 2026-02-23
- round out sharp edges in enum interface
- back out #[variant(...)] attribute for now
- Initial enum support
- update README to include enum example
- update enum docs
- improve test coverage
- fix coverage reporting
0.4.7 - 2026-02-19
- restructure into a façade crate so docs can be split up
0.4.6 - 2025-07-10
- take
- option_set_some with borrows
- remove duplication of valid keys
- fix take test
- remove mod.expanded.rs
- rename variable_ident to member for accuracy
0.4.5 - 2025-07-08
- include the correct number of dereferences inside options
- correctly coerce arrays to slices
- handle
dyn Trait + 'lifetimeby wrapping with parens - allow specifying
copyat the field configuration level
- (deps) update rust crate trybuild to v1.0.106
- actually compile expansion tests
- gitignore debug.rs
- add a missing backtick
- (deps) update swatinem/rust-cache action to v2.8.0
- use
field = ""syntax for tuple example
0.4.4 - 2025-07-07
- add
#[field = false],#[field = true], and#[field = "renamed"] - add support for a
#[field]attribute synonym
- update README to use
#[field]
0.4.3 - 2025-07-07
- address poorly-handled nested type detection
- Do not auto-deref Rc, Cow, or Arc
- Merge pull request #60 from jbr/fix-deref-mut
- move example higher in readme
0.4.2 - 2025-07-03
- accidentally added a dev-dep as a primary dep
- Merge pull request #55 from jbr/fix-rustversion-dev-dep
0.4.1 - 2025-07-03
- add
withoutmethod - improved error messages
- support tuple structs
- add documentation for
without - improve how per-method settings are stored
- improve coverage
- only run ui tests on stable
- add ui tests to coverage
0.4.0 - 2025-07-01
- add auto-deref for PathBuf, OsString, and Array
- add more primitive types to copy detection
- add backwards-compatibility acceptance of
option - accept impl Into for set and with
- option set some
- [breaking] rename option to option_borrow_inner for specificity of configuration
- [breaking] rename boolean-returning predicate getters to is_{}
- option-set-some should no-op for non-option types
- improve main example
- document
into - extract common settings
- improve coverage
- document option_set_some
- rename internal
option_handlingtooption_borrow_inner - run docs-gen --verify in ci
- docs-generator
0.3.0 - 2025-06-15
- [breaking] add usize and u8 to copy detection
- [breaking] copy type detection now includes references
- [breaking] auto enable copy for common types (currently just bool)
- [breaking] Deref detection for common types
- add missing support for specifying a custom deref type within an option.
- remove Cow handling in extract_option_type
0.2.0 - 2025-06-14
- [breaking] add Option detection
- update readme
- (deps) update swatinem/rust-cache action to v2.7.8
- add example to readme
0.1.5 - 2025-05-17
- better emoji
- make readme links less ugly
- improve caching of convco bin
- improve readme, fix link to tests in docs
0.1.4 - 2025-05-17
- don't require syn/extra-traits or syn/visit
0.1.3 - 2025-05-16
- add field-level opt_in
- multi-line docs
- improve intro paragraphs
0.1.2 - 2025-05-16
- add the ability to specify a deref type for get and get_mut
- refine opt-in behavior
- one last coverage improvement
- improve test coverage
- add in coverage using the same examples as macroexpand
- add a // GENERATED comment to all generated blocks
- use deref in the combined example
0.1.1 - 2025-05-16
- add documentation
- doctests