f92a0f6eb7283dc6fb7eeeb71ccfcbbc94b75958
[gitmo/MooseX-Storage.git] / Changes
1 Revision history for MooseX-Storage
2
3  * always JSONify data with sorted keys, to handle hash order randomization
4    introduced in 5.17.* (RT#84287, Karen Etheridge)
5
6 0.32
7  * Change to use core Digest and Digest::SHA dists, rather than Digest::SHA1.
8    RT#69811
9  * Create a JSON::Any object, so setting $ENV{JSON_ANY_CONFIG} works.
10    Adjust tests that were setting the wrong values and the default
11    happened to work.
12  * Don't rely on hash key order in tests (RT#81695)
13
14 0.31
15   * Add example for add_custom_type_handler to the MooseX::Storage::Engine docs. (perigrin)
16
17   * Incorrect documentation for ->unpack method's inject parameter fixed.
18
19   * The test suite now uses Test::Fatal instead of Test::Exception (Karen
20     Etheridge).
21
22 0.30
23   * Make Makefile.PL features work again. RT#67170
24
25 0.29
26   * Remove use of Test::TempDir in favor of File::Temp (gphat)
27
28 0.28
29   * Make the engine_traits parameter be able to use a '+My::Trait::Name'
30     prefix to specify a trait name which isn't in the
31     MooseX::Storage::Engine::Trait namespace
32   * Misc POD and test cleanups.
33
34 0.27
35   * use of parameterized roles (first added in 0.22) now works in Deferred
36     Example: $object->freeze({ format => [ $role_name => \%args ] })
37
38 0.26
39   * Fix URI for repository in metadata.
40   * Fix infinite recursion when collapsing objects which overload stringify
41     to freeze themselves.
42
43 0.25
44   * Add support for Union types (bumps Moose dep to 0.99)
45
46 0.24
47   * Add additional YAML implementation tests.
48   * Switch from using Best to YAML::Any.
49   * Remove Test::YAML::Valid.
50
51 0.23
52   * Revert whitespace change in tests which breaks the tests if you
53     have Test::YAML::Valid installed.
54
55 0.22
56   * Fix warnings when types do not have a parent type.
57   * allow the use of roles outside MooseX::Storage:: (rjbs)
58   * allow the use of parameterized roles (rjbs)
59
60 0.21
61   * Fix inconsistent dist versions with Perl::Version
62
63 0.20
64   * Add support for Storage( traits => [...] ) with a MooseX::Storage::Traits::XX
65     namespace to alter the behaviour of the storage engine.
66     (Suggestions for how to make this less fugly appreciated)
67   * Add feature to disable cycle checking, either via engine trait or option
68     * add docs & tests (including 1 TODO test)
69   * Add feature to only serialize attributes whose predicate returns 'true'
70   * Implement the unpack( $data, inject => {...} ) feature.
71     * add docs & tests
72   * Move Base::WithChecksum to build upon Basic.pm, avoid code duplication
73   * Add extra test to ensure restoring fails if required argument isn't provided
74   * Fix a bug where if a required constructor argument was not serialized, it was
75     impossible to ->unpack again.
76
77 0.19
78   * Skip pod tests when not in author mode
79
80 0.18
81    * Fix test failures without JSON::Any. Patch from RT#46343 (Nicholas Clarke)
82    * Added support for Maybe[...] constraints fixing RT#43165 (plu)
83
84 0.17
85    * Change MooseX::Storage::Engine to use get_all_attributes,
86      rather than the deprecated compute_all_applicable_attributes (t0m)
87
88 0.16
89    * Don't fail tests when Best is unavailable (t0m)
90
91 0.15
92     * MooseX::Storage
93       - Remove use of deprecated alias_method routine
94         which was causing issues when you used multiple
95         Roles which used MooseX::Storage (t0m).
96
97 0.14
98     * MooseX::Storage::Engine
99       - cycles are now tracked by refaddr instead 
100         of stringified object, which broke for any
101         overloaded objects (Thanks to Jonathan Rockway)
102
103     * Don't fail tests when YAML is unavailable
104
105     * Use temporary files in test suite, instead of cwd
106
107 0.13 Sat. May 24, 2008
108     * MooseX::Storage::Engine
109       - added find_type_handler_for($name) method 
110         to make finding type handlers easier
111       - improved error messages
112
113     ~ removed Build.PL since Module::Install
114       no longer supports it
115
116 0.12 Fri. March 14, 2008
117
118     - added build_requires for Test::Deep (awwaiid)
119     - upped the Moose dependency to support the custom
120       meta-attribute-traits
121     
122     * t/
123       - fixing all the tests to properly skip if optional 
124         features are not being used, this should help get
125         rid of all our CPANtester failures
126         - tested against 5.10 as well
127     
128     * MooseX::Storage::Engine
129       MooseX::Storage::Meta::Attribute::DoNotSerialize
130       MooseX::Storage::Meta::Attribute::Trait::DoNotSerialize
131       - adding meta-attribute-trait support for 
132         DoNotSerialize
133         - added tests for this
134
135 0.11 Thurs. Jan. 10, 2008
136
137     - upped the Test::JSON dependency 
138       so that we use the version that 
139       supports JSON::Any
140     - upped the JSON::Any requirement 
141     - minor test cleanups to handle
142       optional dependencies better
143
144     * MooseX::Storage::Engine
145       - the numbers now have to numify (+0) in the 
146         expand/collapse so that certain JSON engines
147         will not choke on them
148
149 0.10 Thurs. Jan. 10, 2008
150     ~~ updated copyright information ~~
151
152     * MooseX::Storage::Deferred
153       - added this role, which allows you to wait until
154         you actually call a method to determine what 
155         formatter and/or IO engine you want to use
156         - added tests for this
157
158 0.09 Tue. Oct. 23, 2007
159     * MooseX::Storage::Util
160       - added support to deal with utf8 strings correctly
161       
162     * MooseX::Storage::Engine::File
163       MooseX::Storage::Engine::AtomicFile
164       - fixed utf8 handling when storing string
165         - added tests for this
166      
167     * t/
168       - added an extra test for the utf8 handling
169     
170     * Change build system to Module::Install
171
172 0.08 Wed. Oct. 10, 2007
173     * MooseX::Storage::Format::JSON
174       - added support to deal with utf8 strings correctly
175
176 0.07 Thurs. Sept. 27, 2007
177     + MooseX::Storage::Format::Storable
178       - this will use Storable to freeze/thaw objects
179         - added tests for this
180     
181     + MooseX::Storage::IO::StorableFile
182       - this will use Storable to load/store objects    
183         - added tests for this
184
185     * t/
186       - fixed tests in 030_with_checksum.t
187         (thanks to sartak)
188
189 0.06 Tues. Aug. 7, 2007
190     * MooseX::Storage::Engine
191       - added the Bool type and fixed a few bugs
192         that it exposed (thanks to Sartak)
193         - added tests for this
194
195 0.05 Sun. July 15. 2007
196     * MooseX::Storage::Base::WithChecksum
197       - Fixed minor issue where the WithChecksum would 
198         choke with a bad checksum due to odd Data::Dumper
199         output.
200     
201     * t/
202       - forced JSON::Any in the basic JSON tests to use 
203         JSON.pm since this is what Test::JSON uses and 
204         subtle (and annoying) issues can arise.
205
206 0.04 Tues. July 3, 2007
207     * MooseX::Storage::Util
208         - made this more robust when it tries
209           to use YAML and JSON loaders and fails
210           to find one
211             - fixed tests to reflect this
212
213 0.03 Wed. June 27, 2007
214     * MooseX::Storage::Util
215         - this is a collection of useful tools 
216           for working with MooseX::Storage data
217             - added docs and test
218
219     * t/
220         - added test for a custom type handler
221         - fixed checksum test to skip if Digest::SHA1 
222           (our default) is not available
223
224 0.02 Fri. June 8, 2007
225     * MooseX::Storage::Base::WithChecksum
226       - added a simple base role which makes a checksum of 
227         the data structure before packing, and checks the
228         checksum before unpacking.
229         - added tests for this
230
231     * MooseX::Storage::Engine
232       - better error reporting when cycles are found
233       - class names are now stored as the full identifier
234         (<class>-<version>-<authority>) and are checked
235         when they are expanded.
236         - added docs and tests for this
237
238     * MooseX::Storage::Engine::IO::(AtomicFile, File)
239       - added checks to make sure the file gets opened correctly
240         and dies if it does not.
241
242 0.01  Mon. April 30, 2007
243     This was Chris's idea originally (blame him), and 
244     we expanded on it to create what you see here :)
245