1 Revision history for {{$dist->name}}
4 * convert to Dist::Zilla, with new optional prereq handling
7 * properly skip optional tests when the required JSON backends aren't
11 * JSON storage works when Cpanel::JSON::XS is the only JSON backend installed
14 * always JSONify data with sorted keys, to handle hash order randomization
15 introduced in 5.17.* (RT#84287, Karen Etheridge)
18 * Change to use core Digest and Digest::SHA dists, rather than Digest::SHA1.
20 * Create a JSON::Any object, so setting $ENV{JSON_ANY_CONFIG} works.
21 Adjust tests that were setting the wrong values and the default
23 * Don't rely on hash key order in tests (RT#81695)
26 * Add example for add_custom_type_handler to the MooseX::Storage::Engine docs. (perigrin)
28 * Incorrect documentation for ->unpack method's inject parameter fixed.
30 * The test suite now uses Test::Fatal instead of Test::Exception (Karen
34 * Make Makefile.PL features work again. RT#67170
37 * Remove use of Test::TempDir in favor of File::Temp (gphat)
40 * Make the engine_traits parameter be able to use a '+My::Trait::Name'
41 prefix to specify a trait name which isn't in the
42 MooseX::Storage::Engine::Trait namespace
43 * Misc POD and test cleanups.
46 * use of parameterized roles (first added in 0.22) now works in Deferred
47 Example: $object->freeze({ format => [ $role_name => \%args ] })
50 * Fix URI for repository in metadata.
51 * Fix infinite recursion when collapsing objects which overload stringify
55 * Add support for Union types (bumps Moose dep to 0.99)
58 * Add additional YAML implementation tests.
59 * Switch from using Best to YAML::Any.
60 * Remove Test::YAML::Valid.
63 * Revert whitespace change in tests which breaks the tests if you
64 have Test::YAML::Valid installed.
67 * Fix warnings when types do not have a parent type.
68 * allow the use of roles outside MooseX::Storage:: (rjbs)
69 * allow the use of parameterized roles (rjbs)
72 * Fix inconsistent dist versions with Perl::Version
75 * Add support for Storage( traits => [...] ) with a MooseX::Storage::Traits::XX
76 namespace to alter the behaviour of the storage engine.
77 (Suggestions for how to make this less fugly appreciated)
78 * Add feature to disable cycle checking, either via engine trait or option
79 * add docs & tests (including 1 TODO test)
80 * Add feature to only serialize attributes whose predicate returns 'true'
81 * Implement the unpack( $data, inject => {...} ) feature.
83 * Move Base::WithChecksum to build upon Basic.pm, avoid code duplication
84 * Add extra test to ensure restoring fails if required argument isn't provided
85 * Fix a bug where if a required constructor argument was not serialized, it was
86 impossible to ->unpack again.
89 * Skip pod tests when not in author mode
92 * Fix test failures without JSON::Any. Patch from RT#46343 (Nicholas Clarke)
93 * Added support for Maybe[...] constraints fixing RT#43165 (plu)
96 * Change MooseX::Storage::Engine to use get_all_attributes,
97 rather than the deprecated compute_all_applicable_attributes (t0m)
98 * Don't fail tests when Best is unavailable (t0m)
102 - Remove use of deprecated alias_method routine
103 which was causing issues when you used multiple
104 Roles which used MooseX::Storage (t0m).
107 * MooseX::Storage::Engine
108 - cycles are now tracked by refaddr instead
109 of stringified object, which broke for any
110 overloaded objects (Thanks to Jonathan Rockway)
112 * Don't fail tests when YAML is unavailable
114 * Use temporary files in test suite, instead of cwd
117 * MooseX::Storage::Engine
118 - added find_type_handler_for($name) method
119 to make finding type handlers easier
120 - improved error messages
122 ~ removed Build.PL since Module::Install
123 no longer supports it
126 - added build_requires for Test::Deep (awwaiid)
127 - upped the Moose dependency to support the custom
128 meta-attribute-traits
131 - fixing all the tests to properly skip if optional
132 features are not being used, this should help get
133 rid of all our CPANtester failures
134 - tested against 5.10 as well
136 * MooseX::Storage::Engine
137 MooseX::Storage::Meta::Attribute::DoNotSerialize
138 MooseX::Storage::Meta::Attribute::Trait::DoNotSerialize
139 - adding meta-attribute-trait support for
141 - added tests for this
144 - upped the Test::JSON dependency
145 so that we use the version that
147 - upped the JSON::Any requirement
148 - minor test cleanups to handle
149 optional dependencies better
151 * MooseX::Storage::Engine
152 - the numbers now have to numify (+0) in the
153 expand/collapse so that certain JSON engines
154 will not choke on them
157 ~~ updated copyright information ~~
159 * MooseX::Storage::Deferred
160 - added this role, which allows you to wait until
161 you actually call a method to determine what
162 formatter and/or IO engine you want to use
163 - added tests for this
166 * MooseX::Storage::Util
167 - added support to deal with utf8 strings correctly
169 * MooseX::Storage::Engine::File
170 MooseX::Storage::Engine::AtomicFile
171 - fixed utf8 handling when storing string
172 - added tests for this
175 - added an extra test for the utf8 handling
177 * Change build system to Module::Install
180 * MooseX::Storage::Format::JSON
181 - added support to deal with utf8 strings correctly
184 + MooseX::Storage::Format::Storable
185 - this will use Storable to freeze/thaw objects
186 - added tests for this
188 + MooseX::Storage::IO::StorableFile
189 - this will use Storable to load/store objects
190 - added tests for this
193 - fixed tests in 030_with_checksum.t
197 * MooseX::Storage::Engine
198 - added the Bool type and fixed a few bugs
199 that it exposed (thanks to Sartak)
200 - added tests for this
203 * MooseX::Storage::Base::WithChecksum
204 - Fixed minor issue where the WithChecksum would
205 choke with a bad checksum due to odd Data::Dumper
209 - forced JSON::Any in the basic JSON tests to use
210 JSON.pm since this is what Test::JSON uses and
211 subtle (and annoying) issues can arise.
214 * MooseX::Storage::Util
215 - made this more robust when it tries
216 to use YAML and JSON loaders and fails
218 - fixed tests to reflect this
221 * MooseX::Storage::Util
222 - this is a collection of useful tools
223 for working with MooseX::Storage data
224 - added docs and test
227 - added test for a custom type handler
228 - fixed checksum test to skip if Digest::SHA1
229 (our default) is not available
232 * MooseX::Storage::Base::WithChecksum
233 - added a simple base role which makes a checksum of
234 the data structure before packing, and checks the
235 checksum before unpacking.
236 - added tests for this
238 * MooseX::Storage::Engine
239 - better error reporting when cycles are found
240 - class names are now stored as the full identifier
241 (<class>-<version>-<authority>) and are checked
242 when they are expanded.
243 - added docs and tests for this
245 * MooseX::Storage::Engine::IO::(AtomicFile, File)
246 - added checks to make sure the file gets opened correctly
247 and dies if it does not.
250 This was Chris's idea originally (blame him), and
251 we expanded on it to create what you see here :)