Skip to content

Releases: Voultapher/self_cell

Version 1.0.4

03 May 16:51
Compare
Choose a tag to compare

Improvements to the documentation that help users discover the generated API. Thanks @hniksic for reporting the issue.

Version 1.0.3

20 Dec 16:38
Compare
Choose a tag to compare

This release contains fixes that avoid name collision with functions and structs named Ok, Err, FnOnce and collisions with the core namespace. Thank you @dcecile for reporting the issue.

Version 1.0.2

11 Nov 16:03
Compare
Choose a tag to compare

This release contains an important soundness fix see https://rustsec.org/advisories/RUSTSEC-2023-0070.html for more details, thank you @steffahn for reporting and fixing the problem.

Version 1.0.1

13 Jun 12:57
Compare
Choose a tag to compare
  • The generated functions now have doc comments, thanks to @link2xt

Version 1.0

29 May 15:11
Compare
Choose a tag to compare

It has been over a year without any API changes. I'm happy with the API and think it's mature enough. Nothing changed in this release.

Version 0.10.2

27 Nov 18:17
Compare
Choose a tag to compare

This version includes:

  • The cargo published files now include the README.md and LICENSE files. See #34 thanks @subpop for the PR

Version 0.10.1

07 Nov 17:26
Compare
Choose a tag to compare

This version includes:

  • Clear documentation what the minimum supported version is, currently rustc 1.51
  • A new optional feature old_rust that drops minimum required version down to rustc 1.36 see #33 and the documentation for details. Thanks @mitsuhiko for the idea and @steffahn for the help.
  • A new example examples/owner_with_lifetime that showcases a self-referential struct with lifetime in the owner.

Version 0.10.0

25 Oct 16:01
Compare
Choose a tag to compare

This version includes:

  • This release fixes serious implementation bugs, the dependent was dropped after the owner, and panics in drop impl could lead to double free. As consequence I've yanked all previous versions. In addition a series of potential unsound usage bugs have been addressed. Please update to v0.10 as soon as possible. See #18 #20 #24 #26 and #28 and their associated PRs #21 #23 #25 #27 #29. Huge thanks to @steffahn for reporting and helping fix these issues.

  • An improved Debug implementation that uses fmt.debug_struct and now correctly supports custom format strings such as {:#?}. See #22

Version 0.9.2

02 Oct 09:31
Compare
Choose a tag to compare

This release addresses two somewhat exotic ways self_cell could be used in an
unsound fashion to cause UB. See issues #17 and #18. Thanks @steffahn for
reporting and helping to fix these issues.

Version 0.9.1

03 Aug 19:43
Compare
Choose a tag to compare

This release brings 2 core changes:

  • panic inside a builder function no longer causes a memory leak.

This means that the previously documented workaround using try_new and
catch_unwind has become obsolete and the relevant example has been deleted.

  • Limited support for owners with non static lifetimes. This mostly works with the exception of automatic derives, due to technical limitations (aka I can't figure out how to do it). See the documentation for details.

Bug fixes:

  • An esoteric edge case could cause UB, see bb2f502 for more details.

  • Defining your own Result could break the macro due to hygiene issues, see #16 (comment).

In addition a set of benchmarks comparing self_cell to ouroboros have been added, see the benchmarks directory.