Releases: clucompany/cluFullTransmute
v1.4.2
- fix: fix for issue 152336
- fix: preparing for release 1.4.2
- workspace: update dependencies
What's Changed
- 1.4.2 by @denisandroid in #3
Full Changelog: v1.4.1...v1.4.2
v1.4.1
- feat: Improved error message to show that this check was triggered due to
debug_assertbeing enabled and the enablerequire_debug_assert_transmuteflag. - feat: enable additional debug checks by default on standard unsafe transmute
- fix: fix build error that occurs with non-standard configuration
- refactor: rename feature
support_size_check_transmutetotry_transmute - refactor: rename enable flag
require_debug_assert_transmutetoassert_transmute_mode - build: update library version to
1.4.1
What's Changed
- 1.4.1 by @denisandroid in #2
Full Changelog: v1.4.0...v1.4.1
v1.4.0
1.4.0
- doc: remove unnecessary information from the table of contents in the documentation
- examples: remove duplicate example
- examples: more classic examples, and some new library use cases added.
- doc: improve the all documentation, make the example on the main page more clear.
- project: rework keywords and description
- fix: due to very large changes associated with major refactoring and loss of previous compatibility, raise the library version to
1.4.0
1.3.3
- refactor: translate
transmutefunction totrystyle of writing, try other stylistic improvements - refactor: refactor the error class, try a different writing style for better readability and usability
- refactor: completely refactor
ContractintoTransmuteContract, split input and output instead of t/out - feat: contracts now automatically check input and output sizes at compile time
- fix: fix build error in special situations
- feat: improve the overall hierarchy of the project a little
- fix: fix unuse
usewarning that occurs with certain features - fix: fix build issue
error_detailsin no-details mode, make it compatible with details mode - feat: improve the error desc text, make it more clear and understandable
- fix: prefer to use #[inline] instead of #[inline(always)] in favor of compiler decisions
- feat: add a constant attribute to those functions where it was previously impossible
- fix: refactor
unchecked transmute, improve code style and writing - fix: remove unnecessary
PhantomData<*ptr>in union since it doesn't make sense anyway due to union never being used outside of function - fix: rewrite
support-stderrflag tostderr - feat: rework error generation, add the ability to enable or disable error details using an additional library, simplify some points
- fix: fix
no-default-featurestodefault-features - fix: remove old constant error generation API, use
cluConstDatalibrary - fix: update lib version to 1.3.3
- fix: improve feature
transmute-inline-alwaysandtransmute-inlineto fix the ability to work withall-features - feat: add feature
transmute-always-inline, similar totransmute-inlinebut only includes absolute - feat: remove
inlinefunctions, replace them with attrinline - fix: replace feature
inlinewithtransmute-inline
What's Changed
- 1.4.0 by @denisandroid in #1
Full Changelog: v1.3.1...v1.4.0
v1.3.1
This release implements Rust 2024 support, improves error handling, improves testing.
Highlights:
• Rust edition updated to 2024.
• Library version updated to 1.3.1.
• Continuous integration (CI) improvements.
• Added error formatting in const mode.
• Added new feature require_debug_assert_transmute to force validation of the transmute (requires debug_assert to be enabled).
• Fixed an issue where cargo-miri was not installed for the toolchain.
Other:
• Added track_caller for improved error output.
• Added detailed descriptions of all functions to Cargo.toml.
• Added core::fmt::Display for default errors, regardless of the presence of the standard library.
• Minor fixes in code and tests.
1.3.0
- Improved code examples.
- Improved documentation.
- Fixed minor bugs.
- Refactored code for improved stability.
- Removed Travis CI to use Github CI.
- Refactored tests for improved reliability.
- Added "inline" compilation flag for inlining functions.
1.2.0
- Changed version from 1.1.0 to version 1.2.0.
- Updated documentation.
- New functions added to cargo.toml (contract, compatible_stdapi, support_size_check_transmute).
- Updated examples.
- Completely changed the file hierarchy, broken compatibility with version 1.1.0 and younger.
1.1.0
- Updated examples, updated documentation, updated readme
- Library version changed to 1.1
- Added some const signs of functions
- Permanent removal of obsolete modules and functions
1.0.6
- Documentation updated.
- New examples added.
- MaybeTransmuteData API refactored to DataTransmutContract API
- full_transmute API converted to force_transmute, data size check API added.
- Many features have been redesigned due to the redesign.
- Minor fixes, preparation for release.
1.0.5
- The version of the library is raised (1.0.4->1.0.5)
- Eliminated all unstable functions of the night compiler
- Correction of some methods, transfer of some functions to deprecated
- The 2021 edition of the compiler is used.
Waiting for the Rust SafeMannualyDrop library to stabilize.
1.0.3
- Removed unnecessary night flag.
- Code refactoring.
- Refactoring localization.