Revision history for CHI

** denotes an incompatible change

0.21  May 5, 2009

- ** CHI::Driver::Memory will no longer use a global datastore by default - it was too easy
     to accidentally share the same datstore in unrelated code. Either a datastore or the
     'global' flag must be specified. Right now the absence of either will issue a warning,
     eventually this may become an error.
- ** Deprecate get_multi_array - silly to have this along with get_multi_arrayref
- Eliminated t/Multilevel.t which was causing test failures on new installations
- Fixed get_namespaces for File driver to ignore non-standard dir names
- To implement get_multi_*, drivers now define the simpler fetch_multi_hashref
- Made get_multi_* work optimally with l1 caches
- Tidied pod with Pod::Tidy
- Added Features section and mention of Chris Leishman's Cache to docs

0.2  Apr 25, 2009

- ** Removed CHI::Driver::Multilevel, replaced with subcaches
- ** ref($driver) is no longer simply the driver class, it is an auto-generated wrapper
     class like CHI::Wrapped::CHI::Driver::Memory - this is so that certain driver methods
     can be automatically wrapped
- Added a more practical and intuitive multi-level cache mechanism: subcaches. l1_cache
  and mirror_cache are the first two supported subcaches
- Added customizable cache label, used in logs and error messages

0.102  Mar 6, 2009

- Skip get_namespaces in tests with drivers that don't support it
- Eliminate unconditional use of Data::Serializer in tests; improve error when Data::Serializer not installed

0.101  Mar 2, 2009

- Don't use Data::Serializer up front

0.10  Feb 28, 2009

- ** Deprecate expire_if method - this can easily be done manually, and it now differs
    deceptively from the expire_if option to get()
- ** Change expire_if option to simply return undef, without actually expiring the item
- Switch to Mouse instead of Moose, to reduce install dependencies and overhead. Eliminate
  Moose-isms as needed. Eventually may switch to Any::Moose but want to get comfortable
  with Mouse first.
- Eliminate dependencies on Data::Serializer, File::Slurp, and Module::Find
- Revert Memory driver implementation to more readable and illustrative form
- Handle value-too-large errors in FastMmap driver
- When serializer passed as a string, use raw=>1 so as not to hex-encode or insert token
- Allow serializer to be passed as a hashref
- Fix bug when specifying serializer with multilevel driver

0.091 Jan 2, 2009

- Ensure that unlink_on_exit=0 is being passed to FastMmap
- Allow serializer to be passed as a simple string
- Documentation fixes

0.09  Dec 30, 2008

- Moved source to git
- Added Null driver
- Fixed main docs regarding Memcached driver
- Changed FastMmap driver to pass all unrecognized options onto Cache::FastMmap, to better
  handle future FastMmap versions
- Fixed small get_keys bug in File driver
- Added expires time to set logs
- Added get_multi_array alongside get_multi_arrayref
- Added test for get_namespaces

0.081  Sep 24, 2008

- Fix t/Driver/File.pm test so it does not depend on specific OS error message

0.08  Sep 23, 2008

- ** Move CHI::Driver::Memcached to its own distribution
- Many internal changes to make greater use of Moose (Dave Rolsky).
- Add serializer option, allowing control over how data is serialized/deserialized
- The FastMmap driver was not actually making use of the init_file,
  cache_size, page_size, or num_pages options. Reported by Mike
  Astle. RT #35819. (Dave Rolsky)
- The clear method did not work with the Memcached driver. RT #32859.
- Allow suppression of renames in CHI::Driver::File by overriding
  generate_temporary_filename

0.07  Mar 12, 2008

- Add Date::Parse to build dependencies

0.06  Feb 29, 2008

- Created separate manual for developing drivers (CHI::Driver::Development)
- Made standard CHI driver tests easily available to external drivers
- Fixed clear() in Memcached driver - reported by Justin Ellison
- Add size to set logs

0.05  Jan 30, 2008

- Switched to Moose
- Added maximum full path length check to File driver, mainly for MSWin32
- Added TODO to pod

0.04  Jan 25, 2008

- Default unlink_on_exit to 0 for Cache::FastMmap to conform to the CHI API

0.03  Jan 23, 2008

- ** Eliminated automatic namespace selection based on caller; namespace now defaults to
  'Default', as in Cache::Cache.
- Added 5.6.0 requirement
- Made Memcached test internal-only for now, since test success depends on presence and
  configuration of an external server
- Changed README to generate from CHI.pm

0.02  Jan 19, 2008

- Changed Multilevel-Single test to use a temporary root dir
- Eliminated non-portable file permissions test
- Concealed use of test package name (Foo::Bar) from PAUSE indexer

0.01  Jan 15, 2008

- Initial version
