summaryrefslogtreecommitdiff
path: root/Changes
blob: 82f4ffed43be9633beec0dad2c24855f3dd1462b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
Revision history for XML-Simple

2.20      2012-06-20 22:00:13 Pacific/Auckland
  - Suppress warning from empty CDATA section (RT#58359 from Juan Antonio
    Navarro Pérez)

2.19_02   2012-06-19 20:33:53 Pacific/Auckland
  - Reinstate XML::SAX::Expat dependency
  - Fix warnings tests (broken in 2.19_01) which rely on global $^W

2.19_01   2012-06-17 23:27:22 Pacific/Auckland
  - Use lexical filehandles instead of old-style fileglobs (RT#77787 from
    Quanah)
  - Restrict scope of :strict mode to calling package (RT#41562 from Hannu
    Aronsson)
  - Fix POD typo (RT#45414 from Anirvan Chatterjee)
  - Update POD to reflect best practise regarding :strict and options
  - Change minimum Perl requirement to 5.008
  - Switch to using Dist::Zilla for release management

2.18  Aug 15 2007
  - Non-unique key attribute values now trigger a warning (or a fatal
    error in strict mode) rather than silently discarding data (patch
    from Daniel Baysinger)

2.17  Aug 02 2007
  - Added parse_string(), parse_file() and parse_fh() methods
  - Added default_config_file(), and build_simple_tree() hook methods
  - Tweak to implementation of exporting (patch from Stuart Moore)
  - Documented hook methods
  - Fixed test suite race condition (RT#28603 from Andreas J. König)

2.16  Oct 30 2006
  - Added test/fix for bad GroupTags option (report from Lee Goddard)
  - Added new_hashref() hook method
  - refactored cache save/restore methods for easier overriding

2.15  Oct 03 2006
  - Makefile.PL changes: reject known-bad PurePerl and RTF parser modules;
    default to XML::SAX::Expat if no parser installed
  - allow '.' characters in variable names (suggested by Cosimo Streppone)
  - fix output of undefs in arrayrefs with SuppressEmpty (reported by
    かんな - Kanna)
  - tidy up code and docs around lexical filehandle passed to OutputFile
    (report from Helge Sauer)
  - reduce memory usage by passing XML strings by reference (patch from
    Dan Sully)

2.14  Jan 29 2005
  - unlink and lock fixes for VMS (patch from Peter (Stig) Edwards)

2.13  Nov 17 2004
  - Fixed bug where NoIndent broke KeyAttr (reported by David Haas)
  - Added copy_hash helper method which may be overridden to avoid
    tied hashes becoming untied during XMLout (patch from Jan Sundberg)
  - Fixed bug where GroupTags corrupted source hashref in XMLout
    (reported by Bram)
  - Tweaks to SuppressEmpty for undef with XMLout (report from jamesb),
    behaviour now matches docs and additional behaviour of setting
    option to 1 will skip undefined values altogether

2.12  Apr 05 2004
  - added NumericEscape option
  - added ValueAttr option (patch from Anton Berezin)
  - suppress 'wide character in print' warning (reported by Dawei Lin)

2.11  Mar 02 2004
  - Fixed hash ordering assumption in a new test (reported by Jost Krieger)

2.10  Feb 29 2004
  - Added AttrIndent option (patch from Volker Moell)
  - Hash keys are now sorted alphabetically by default; enable the
    new NoSort option if you don't want this (patch from Volker Moell)
  - Fixed bug where disabling array folding broke anonymous array handling
  - Fixed bug when unfolding a tied hash
  - SuppressEmpty patch from Douglas Wilson
  - Numerous test improvements - Devel::Cover rocks!
  - POD update re XMLin(XMLout($data)) caveats (bug report from Slaven
    Rezic)

2.09  Sep 09 2003
  - Makefile.PL makeover contributed by Joshua Keroes
  - fixed hash ordering assumption in test script (reported by Michel
    Rodriguez)
  - POD updates
  - updated link to Perl XML FAQ

2.08  Jun 13 2003
  - fixed variable expansion not happening in attributes (patch from Paul
    Bussé)

2.07  May 20 2003
  - added test to catch old versions of Storable which lack locking support
  - removed new-style loop which broke on 5.005_03
  - suppress more uninitialised variable warnings

2.06  May 18 2003
  - fixed strict mode requiring ForceArray on output (fix from Igor Román
    Mariño)
  - fixed warnings about uninitialised values
  - minor POD update (link to FAQ)

2.05  Apr 16 2003
  - fixed warnings when NormaliseSpace undefined (reported by Peter
    Scott and others)
  - added support for specifying ForceArray using regular expressions
    (patch from Jim Cromie)
  - added check to escape_value to guard against undefined argument
    (reported by Henrik Gemal)
  - added NoIndent option (requested by Afroze Husain Zubairi)

2.04  Apr 10 2003
  - integrated a patch from Michel Rodriguez
    + new facility for removing extra levels of indirection (using
      the new 'GroupTags' option)
    + new facility for rolling the dreaded 'content' hash up into a
      scalar if there are no keys left after array folding (using the
      '-' prefix mode on the ContentKey option)
    + new facility for doing variable substitution in the XML; variables
      can be defined in Perl (using the new 'Variables' option) or in 
      the XML document (using the new 'VarAttr' option)
  - added 'NormaliseSpace' option for tidying up hash keys and other
    text content if required (feature requested by Alex Manoussakis)
  - option names are now case-insensitive and can include underscores
  - XMLin() and XMLout() are now aliased to xml_in() and xml_out() when
    called as methods or imported explicitly
  - option names passed to XML::Simple->new() are now validated

2.03  Jan 20 2003
  - fixed circular reference check which was incorrectly catching
    'parallel' references (patch from Theo Lengyel)

2.02  Dec 15 2002
  - changed Storable calls to use locking (reported by Randal Schwarz)

2.01  Dec 11 2002
  - fixed bug whereby :strict mode required forcearray on 
    XMLout() (reported by Ville Skytta)

2.00  Dec 08 2002
  - first production release with SAX support
  - added support for 'strict mode' using :strict import tag
  - removed locking code (as it was incompatible with iThreads)
  - integrated patch for test failures from Sean Campbell
  - fixed stringification of references during folding (reported
    by Trond Michelsen)
  - fixed incompatability with Tie::IxHash (reported by
    Venkataramana Mokkapati)
  - POD: alphabetised options (patch from John Borwick)
  - POD: updated suppressempty (patch from Kjetil Kjernsmo)
  - added FAQ.pod to distribution and added new questions

1.08_01 Feb 14 2002 - beta release for testing SAX support
  - fixed errors with default namespace handling
  - minor POD updates

1.08  Feb 09 2002
  - re-release of 1.06 (stable) with minor updates ...
  - searchpath option now defaults to current directory if not set
  - fix to Storable test routine for test failures on Win32
  - removed obselete 'convert' script from distribution

1.07b Feb 05 2002 - beta release for testing SAX support
  - added SAX support including:
    + using SAX parsers
    + acting as a SAX handler 
    + generating SAX events from XMLout() with new Handler option
    + acting as a SAX filter (via new DataHandler option)
  - added $ENV{XML_SIMPLE_PREFERRED_PARSER} and
    $XML::Simple::PREFERRED_PARSER for selecting a parser module
  - added namespace support (SAX only) with nsexpand option for both 
    XMLin() and XMLout()
  - searchpath now defaults to current directory
  - parseropts option now officially deprecated
  - removed obselete 'convert' script from distribution
  - many POD updates (more to come)

1.06  Nov 19 2001
  - fixed version number in default xmldecl (thanks to Matt Sergeant for
    bug report and patch)
  - updated contact email address for author


1.05  Aug 31 2000
  - code re-org to make internals all OO for easier extending
  - added 'noattr' option to tell XMLout() not to use attributes (only
    nested elements) and XMLin() to discard attributes
  - added 'suppressempty' option to tell XMLin what to do with elements
    with no attributes and no content
  - added 'parseropts' option for specifying options which should be
    passed to the underlying XML::Parser object
  - added 'forcecontent' option to force text content to parse to a
    hash value even if the element has no attributes
  - fix for forcearray getting applied to text content
  - integrated patch from Paul Lindner to work around filenames sometimes
    being seen as XML when running under mod_perl
  - integrated patch from Edward Avis: filename '-' means stdin
  - fixed bug where a missing key attribute could cause a crash
  - added a warning message for above situation
  - added 'support' for CDATA sections - they always worked, but now
    they're in the test suite which should ensure they keep working
  - fixed error message when caching enabled but parsing from filehandle
  - fixed empty elements being skipped by XMLout() when folding enabled
  - fixed text content of '0' being skipped by XMLout()

1.04  Apr 03 2000
  - fix for text content being skipped by XMLout
  - added (optional) OO interface for changing default options
  - added 'keeproot' option (requested by Mark D. Anderson - MDA)
  - added 'contentkey' option (also requested by MDA)
  - incorporated 'forcearray' as arrayref patch from Andrew McNaughton

1.03  Mar 05 2000
  - added 'maketest' script for make impaired platforms
  - yet more cross platform robustness added to test scripts incl
    workaround for Win32 problem where writing to file changed contents
    but not timestamp(!)
  - backed out one overzealous use of File::Spec in test script
  - POD updates including XML::Twig description contributed by Michel
    Rodriguez

1.02b Feb 16 2000 - limited distribution beta
  - reinstated locking with new backwards compatibility code
  - fixed platform dependant pathname handling to use File::Basename &
    File::Spec in XML::Simple.pm and test scripts
  - fixed bug causing XMLout() to incorrectly barf on what it thought was
    a recursive data structure
  - removed spurious checking code which stopped XMLout unfolding a
    single nested hash
  - fixed t/4_MemShare.t to gracefully cope with the absense of utime()
  - changed t/3_Storable.t and t/5_MemCopy.t to skip gracefully if no
    Storable.pm
  - removed superflous eval blocks around requires

1.01  Dec  1 1999
  - removed faulty locking code pending a fix

1.00  Nov 25 1999
  - added escaping feature + noescape option
  - added xmldecl option
  - further tidy ups for thread safing
  - more POD revisions (incl: pointers to other modules)

0.95  Nov  2 1999
  - added rootname option
  - added outputfile option
  - lots of internal tidy ups for thread safing
  - fixed bug in check for XML string to XMLin()
  - extra tests (esp option handling)

0.90  Oct 14 1999 (first beta release)
  - module renamed to XML::Simple ready for CPAN upload
  - XMLToOpt() renamed to XMLin()
  - OptToXML() renamed to XMLout()
  - added 'convert' script

0.05  Sep 18 1999
  - fixed location of XML.pm in distribution (make install didn't work)
  - added tests for MemCopy
  - fixed ABSTRACT_FROM in Makefile.PL
  - fixed PREREQ_PM in Makefile.PL

0.04  Aug 10 1999
  - added caching using Storable.pm
  - updated MANIFEST to include missing test files

0.03  Jun 20 1999
  - rewrite of OptToXML
  - anonymous array support
  - more and better test routines
  - POD updates

0.02  Jun 10 1999
  - added support for OptToXML
  - fixed searchpath inconsistencies
  - added 'forcearray' option
  - POD improvements
  - much improved test routines

0.01  May 27 1999
  - original version; created by h2xs 1.18
  - module called 'Getopt::XML'
  - included basic XMLToOpt routine