@@ -59,32 +59,37 @@ for a higher control compared to the EasyML Facade.
5959
6060
6161### Release Notes
62+ Release 1.5.3
63+ - bugfix: EasyML writer flush
64+ - bugfix: XMLWriter text driver attribute validation
65+ - bugfix: XMLWriter and XMLReader allow field names containing "$"
66+ - bugfix: only register AWT strategies if AWT available
6267
63- !Release 1.5.2
68+
69+ Release 1.5.2
6470- feature: added generic mechanism for cache clearing.
6571
6672
67- ! Release 1.5.1
73+ Release 1.5.1
6874- feature: added functional API.
6975- feature: added CalendarStrategy and OptionalStrategy.
7076- feature: added java.time strategies.
7177- performance: added caching to SerializableStrategy.
7278- refactor: remove Profile feature.
7379
7480
75- ! Release 1.5.0
76- - requires Java 8 or later .
81+ Release 1.5.0 (requires Java 8, recommended up to Java 9)
82+ - feature: support for Java 9 security .
7783- NON-BACKWARD COMPATIBLE refactor of ReflectionUtil.
78- - feature: support for Java 9 security model.
7984
8085
81- ! Release 1.4.7
86+ Release 1.4.7
8287- last Java 7 compatible release.
8388- bugfix: performance regression in Serialization strategy.
8489- remove AccessibleObject.isAccessible calls.
8590
8691
87- ! Release 1.4.6
92+ Release 1.4.6
8893- remove deprecated v1.3.4 object-o and array-o strategies.
8994- replaced MarshalContext aliasFor methods with aliasOrNameFor methods.
9095- bugfix: EnumStrategy marshalling fix.
@@ -93,20 +98,20 @@ for a higher control compared to the EasyML Facade.
9398- feature: added serialization serialPersistentFields support.
9499
95100
96- ! Release 1.4.5
101+ Release 1.4.5
97102- performance: improved n.s.e.EasyML.deserialize() speed by reusing the
98103XmlPullParser when available.
99104- refactor: minor code improvements.
100105
101106
102- ! Release 1.4.4
107+ Release 1.4.4
103108- refactor: made n.s.e.m.CompositeStrategy.unmarshalInit return type more
104109loose to better support readResolve in n.s.e.m.j.i.ExternalizableStrategy.
105110- refactor: n.s.e.XMLReader and n.s.e.XMLWriter use HashMap instead of
106111ConcurrentHashMap if not in shared mode (i.e. if in standalone mode).
107112
108113
109- ! Release 1.4.3
114+ Release 1.4.3
110115- feature: new n.s.e.m.j.i.ExternalizableStrategy offers support for the
111116Java Externalizable protocol.
112117- feature: new n.s.e.XMLReader.hasMore method.
@@ -116,35 +121,40 @@ EasyML.Profile.Generic for more portable XML.
116121object input and output streams.
117122
118123
119- ! Release 1.4.2
124+ Release 1.4.2
120125- bugfix: n.s.e.m.j.i.SerializableStrategy GetFieldImpl readFields fix.
121126
122127
123- ! Release 1.4.1
128+ Release 1.4.1
124129- bugfix: XMLWriter text driver empty line when pretty printing.
125130
126131
127- ! Release 1.4.0
132+ Release 1.4.0
128133- NON-BACKWARD COMPATIBLE refactor: EasyML now immutable(removed setters).
129134- feature: EasyMLBuilder for easyml customization.
130135
131136
132- !Release 1.3.10
137+ Release 1.3.11
138+ - bugfix: n.s.e.m.j.i.SerializableStrategy GetFieldImpl readFields fix.
139+ - bugfix: XMLWriter text driver startElement impl improvement.
140+
141+
142+ Release 1.3.10
133143- bugfix: XMLWriter text driver empty line when pretty printing.
134144- javadoc: improvements.
135145
136146
137- ! Release 1.3.9
147+ Release 1.3.9
138148- feature: EasyML, XMLReader, XMLWriter custom XML root tag setting.
139149- refactor: source level 1.7 warnings fixed.
140150
141151
142- ! Release 1.3.8
152+ Release 1.3.8
143153- performance: EasyML cache reflected class constructors.
144154- feature: EasyML, XMLReader, XMLWriter clearCache() methods.
145155
146156
147- ! Release 1.3.7
157+ Release 1.3.7
148158- performance: EasyML and XMLReader cache reflected classes and fields.
149159This is done via n.s.e.m.UnmarshalContext's classFor() and fieldFor().
150160Distinct EasyML instances have separate caches.
@@ -154,13 +164,13 @@ XMLReaders share caches only when isSharedConfiguration().
154164- bugfix: remove duplicate encoded.clear() from XMLWriter.reset().
155165
156166
157- ! Release 1.3.6
167+ Release 1.3.6
158168- feature: added n.s.e.EasyML.releaseCurrentReader()
159- and n.s.e.EasyML.releaseCurrentWriter() methods.
169+ and n.s.e.EasyML.releaseCurrentWriter() methods.
160170- performance: removed the redundant easyml version attribute.
161171
162172
163- ! Release 1.3.5
173+ Release 1.3.5
164174- performance: reduced the impact of class aliasing and field aliasing
165175features, even when NOT used, on serialize() and deserialize() times.
166176- performance: n.s.e.u.ReflectionUtil unsafe instantiation method now
@@ -172,7 +182,7 @@ security reasons.
172182it was deprecated since version 1.2.2.
173183- refactor: renamed "object-o", "array-o" to "objectx", "arrayx"
174184- bugfix: object field values could get inverted at read if ALL of the
175- following conditions hold:
185+ following conditions hold:
176186 1 . skipDefaults is enabled.
177187 2 . instance has same name fields on different inheritance levels.
178188 3 . instance defines default values on each level.
@@ -184,32 +194,32 @@ XML outputted by versions 1.3.5 down to 1.2.1 and will produce only
1841941.3.5 formatted XML.
185195
186196
187- ! Release 1.3.4
197+ Release 1.3.4
188198- performance: n.s.e.XMLWriterTextDriver improvements allow EasyML to
189- perform up to 20% faster. The performance improvement is more
190- pronounced when pretty printing is enabled.
199+ perform up to 20% faster. The performance improvement is more
200+ pronounced when pretty printing is enabled.
191201
192202
193- ! Release 1.3.3
203+ Release 1.3.3
194204- doc: better javadoc for n.s.e.EasyML, n.s.e.XMLReader, n.s.e.XMLWriter.
195205- bugfix: include position descriptor in each InvalidFormatException case.
196206- bugfix: n.s.e.XMLReaderTextDriver.consumeFully() fix.
197207
198208
199- ! Release 1.3.2
209+ Release 1.3.2
200210- performance: n.s.e.EasyML serialize() and deserialize() methods use
201211ThreadLocal internally for XMLWriter and XMLReader instance reuse,
202212in order to improve performance, while remaining thread-safe.
203213
204214
205- ! Release 1.3.1
215+ Release 1.3.1
206216- feature: added n.s.e.EasyML newReader() and newWriter methods in order
207217to expose more API features at facade level.
208218- bugfix: prevent shared-config readers and writers from allowing config
209219modifications.
210220
211221
212- ! Release 1.3.0
222+ Release 1.3.0
213223- NON-BACKWARD COMPATIBLE refactor:
214224merged n.s.e.ExtendedEasyML into n.s.e.EasyML.
215225- feature: n.s.e.EasyML facade is now thread-safe while the thread-unsafe
@@ -222,25 +232,3 @@ multithread features.
222232Note: except for the last mentioned bugfix, all other changes were made
223233 to offer an easier and faster API for multithreaded environments.
224234
225-
226- !Release 1.2.6
227- - feature: fail first security policy enforcement for n.s.e.XMLReader
228- readObject and readArray.
229- - bugfix: security policy now validates params at add and addHierarchy.
230- - bugfix: consume remaining XML on security policy exception, to allow
231- subsequent reads, if possible.
232- - bugfix: better XMLWriter and XMLReader close method impls.
233-
234-
235- !Release 1.2.5
236- - feature: n.s.e.EasyML and n.s.e.XMLReader: new securityPolicy settings
237- used to configure, if needed, black- or whitelists for objects found at
238- deserialization time.
239-
240-
241- !Release 1.2.4
242- - NON-BACKWARD COMPATIBLE refactor: n.s.e.m.CompositeStrategy: removed the
243- "defTarget" parameter as it was only used when skipDefaults was true
244- and it was buggy in some cases such as a bean setting a property in a
245- default sub-bean (composition, not inheritance) within it's default constructor.
246-
0 commit comments