v2.0.0
Cachex v2.0.0 contains several breaking changes to make way to make improvements and new features to the library. Please see MIGRATE.md for a list of all breaking changes.
Fixes:
- Corrected an issue with invalid Hooks being ignored quietly
- Corrected several documentation issues
- Corrected several specification issues
- Corrected several test issues on Windows machines
Improvements:
- Added a new
:commandsoption to allow custom commands on a cache - Added a new
:limitoption to cap a cache at a given limit - Added a new
:recordoption toinspect/2 - Added a new
touch/3function to touch a keys write time - Added a new
defactionmacro to automatically notify cache hooks - Added a new
invoke/4function to execute custom commands - Added a new LRW eviction policy
- Added new benchmarking scripts to the project
- Created a new Actions module to control raw ETS interaction
- Error Tuples now contain atom error messages
- Implemented CI builds for Windows systems
- Improved the test suite with new test modules
- Integrated Eternal v1.1 Supervision functionality
- Migrated Hooks from
GenEventto useGenServer - Optimized fallback invocations
- Optimized transactions for 5x speed gains
- Optimized usage of anonymous functions
- Refactored several options to be more idiomatic
- Removed Mnesia in favour of local ETS tables
- Restructured Hook messages for better pattern matching
- Updated all dependencies to their latest versions
Please make sure to file any issues found and they'll be addressed as soon as possible!