Changelog
[Unreleased]
[0.4.0] - 2026-06-23
Changed
- Improve documentation for
Weak::Set#delete? - Clarify humanistic usage policy
- Update Github actions
- Use Common Changelog style for the entire changelog
- Return the resolved proc from
Weak::Map#default_proc=instead if the given value
Added
- Add documentation for remaining
Weak::Cachemethods. - Run specs for JRuby 10.1
Fixed
- Fix error reporting on Github CI
- Do not clear
Weak::Map#defaultif the object given toWeak::Map#default_proc=is invalid
[0.3.1] - 2026-01-16
Fixed
- Update changelog of 0.3.0 release
[0.3.0] - 2026-01-16
Changed
- Adapt
Weak::Set#inspectoutput to more resemble the output ofSet#inspectin Ruby 4.0 - Fix typos in code documentation
- Use
require_relativeinstead of require for all gem files - Clarify humanistic usage policy
Added
- Add
Weak::Cacheas a thread-safe wrapper aroundWeak::Mapto provide an object cache. - Add addititional specs for
Weak::Map
Fixed
- Fix
Weak::Map#storemethod alias toWeak::Map#[]=. Previously, it was erroneously aliased toWeak::Map#[].
[0.2.1] - 2025-12-27
Changed
- Ignore some unnecessary methods defined on some
Weak::Setimplementations inset_spec - Extract
UNDEFINEDto its own file and require it where used.
Added
- Add more details about the gem version in
Weak::Version - Run specs on JRuby 10 in Github Actions
Fixed
- Handle object cycles in
pretty_print. - Retry TruffleRuby rspec runs on Github Actions to avoid random failures due to flakey GC.
- Fix typos in code documentation
[0.2.0] - 2025-04-09
Added
- Add
Weak::Map#delete_if - Add
Weak::Map#keep_if - Add
Weak::Map#reject! - Add
Weak::Map#replace - Add
Weak::Map#select! - Add
Weak::Map#values_at
[0.1.0] - 2025-03-14
Added
- Initial version of
Weak::Setto store an unordered collection of objects. - Initial version of
Weak::Mapto store key-value pairs of objects. - Support for Ruby 3.0 using the following impementations
- Ruby (aka. MRI, aka. YARV) >= 3.0
- JRuby >= 9.4
- TruffleRuby >= 22
[0.0.1.pre] - 2025-02-05
First blank slate