All notable changes to this project will be documented in this file.
This project adheres to Semantic Versioning.
- Add tests for Ruby 4.0
- Introduce
required_ruby_versionin gemspec so people on legacy Ruby versions don't receive future upgrades - Drop tests and support for Ruby < 3
- Add Ruby 3.4 support
- Provide dev script
bin/matrixand adjust REAMDE - Move development dependencies out of the gemspec
- (The
.parametersof a memoized method are no longer renamed toarg1...argnand instead retain their original names)
- Methods with keyword arguments can now be properly memoized
- In addition to a methods
.arity, memoized now also preserves its.parameters
- Remove no longer supported ruby versions (2.3.8, 2.4.5)
- Activate rubygems MFA
- Preserve arity of methods with optional arguments
- Fix meta information in gemspec.
Forked memoizer with two changes:
- Memoized methods now preserve their arity. Previously all memoized methods had an arity of
-1. - Memoized methods are now faster at runtime. This will only be noticable if you call a memoized methods many times in the same request.
We published our fork as a new gem named memoized.
memoized is API-compatible to memoizer, you just need to include Memoized instead of Memoizer:
class A
include Memoized
memoize def hello
'hello!'
end
end