forked from vladmihalcea/hypersistence-utils
/
changelog.txt
498 lines (283 loc) · 18 KB
/
changelog.txt
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
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
Version 2.17.1 - July 26, 2022
================================================================================
Make all jackson-module-jaxb-annotations optional #462
Spring Boot 3 throws NoClassDefFoundError - javax/xml/bind/annotation/XmlElement #459
Allow OffsetDateTime to be parsed from a Double value #457
Version 2.17.0 - July 21, 2022
================================================================================
Avoid the double registration of DoubleArrayType in HibernateTypesContributor for PostgreSQL82Dialect #453
Update Guava version to version 31.1 #451
Add support for JavaMoney (JSR 354) with the MonetaryAmountType #450
Add the amazing HibernateRepository #444
Version 2.16.3 - June 27, 2022
================================================================================
Update Readme to include information regarding building the project #447
Add PostgreSQLCITextType to TypeContributor #445
HibernateTypesContributor does not register Types on Hibernate 5 and 4 for Oracle, SQL Server, and PostgreSQL #441
Make the Configuration objects Serializable #438
Version 2.16.2 - May 03, 2022
================================================================================
Make the Hibernate 6 Ehcache dependency optional #433
Version 2.16.1 - April 16, 2022
================================================================================
Fix the batch sequence generation for the 2.x version of H2 #428
Remove warning generated on startup "Type [org.hibernate.type.CustomType@6142b9dd] defined no registration keys; ignoring" #427
Version 2.16.0 - April 12, 2022
================================================================================
Add support for customizing the JsonType underlying Oracle column type #424
Change JsonBinarySqlTypeDescriptor to bind the JSON object as String #423
Add support for Oracle 21c JSON columns #422
Version 2.15.2 - April 10, 2022
================================================================================
Register the PostgreSQLGuavaRangeType only if Guava Range is available on the classpath #421
Version 2.15.1 - April 07, 2022
================================================================================
Rename the Hibernate 6 Dynamic mutable and immutable abstract types #419
Add support for Hibernate 5.6 in BatchSequenceGenerator #417
Version 2.15.0 - April 06, 2022
================================================================================
Add support for Hibernate 6 #401
Support for Jakarta EE 9? requires investigation #380
Create a TypeContributor that registers all supported types #166
Version 2.14.1 - March 23, 2022
================================================================================
Add support for using OffsetDateTime in JSON objects #408
Add support for LocalDateTime[] mappings #407
Add support for LocalDate[] mappings #406
PostgreSQLEnumType#sqlTypes() should always return Types.VARCHAR #399
Version 2.14.0 - October 24, 2021
================================================================================
Move SQLExtractor to the query package #359
Move the type/util classes that are not associated to types to the generic util package #358
Move the ResultTransformer implementations to the query package #357
Move CamelCaseToSnakeCaseNamingStrategy to the naming package #356
Add BatchSequenceGenerator #354
Version 2.13.0 - October 09, 2021
================================================================================
Avoid the unnecessary UPDATE for JsonNode entity mappings #348
Parse application.properties and load properties upon initialization #344
Version 2.12.1 - July 10, 2021
================================================================================
Add support for half-hour time zones in ZonedDateTime #329
Version 2.12.0 - June 14, 2021
================================================================================
Add hibernate-type-55 module #324
Prevent NullPointerException caused by sqlArrayType in the ListArrayTypeDescriptor #320
Version 2.11.1 - May 11, 2021
================================================================================
Add support for using the generic JsonType even when passing it via addScalar #317
Version 2.11.0 - May 10, 2021
================================================================================
Add generic JsonType that auto-resolves the SqlTypeDescriptor #174
Version 2.10.4 - March 24, 2021
================================================================================
Add fractional support to PostgreSQLIntervalType #307
Use the provided delimiter parameter in the StringUtils.join method #302
Version 2.10.3 - February 25, 2021
================================================================================
ReflectionUtils.getGenericTypes throws ClassCastException when using Kotlin Enums #300
False positive "class should override both the equals and hashCode methods" for Enum values #295
Version 2.10.2 - January 05, 2021
================================================================================
Support PostgreSQL empty & inf range and OffsetDateTime for Guava ranges #287
Version 2.10.1 - December 08, 2020
================================================================================
Log a WARN message if the JSON object does not implement equals and hashCode #281
Convert parsing or processing errors to HibernateException #280
The NotSerializableException is thrown when mapping a Map<String, List<>> entity attribute to a JSON column #243
Add MySQL BinaryType #23
Version 2.10.0 - October 07, 2020
================================================================================
Add support for mapping BigDecimal arrays #272
Add sub-second precision for Range<LocalDateTime> #267
Add MonthDayType to map a java.time.MonthDay to either a DATE or an INTEGER column type #262
YearMonthTypeDescriptor failed to wrap null value from database in use case of YearMonthIntegerType #113
Version 2.9.13 - July 28, 2020
================================================================================
Add support for mapping Java boolean[] arrays or List<Boolean> on PostgreSQL boolean[] array column types #167
Version 2.9.12 - June 19, 2020
================================================================================
Add jackson-module-jaxb-annotations dependency #247
Guava range mapping does not support infinite bounds #244
Allow JSON Types to handle parameterized entity attribute type variables #237
Version 2.9.11 - June 02, 2020
================================================================================
Add SQLExtractor utility #241
A ClassNotFoundException is thrown when using an Enum List or Array in Kotlin #238
Version 2.9.10 - May 15, 2020
================================================================================
Allow the ClassImportIntegrator to include a relative path when registering DTO aliases #231
ObjectMapperJsonSerializer#clone throws NullPointerException if the Map key or value are null #227
Version 2.9.9 - April 26, 2020
================================================================================
Allow the custom ObjectMapper be used for JSON serialization #220
Allow ArrayType to work on HSQLDB #219
Expose the Hibernate Type for Range elements #215
Make AbstractArrayTypeDescriptor#getArrayObjectClass public #214
Version 2.9.8 - April 09, 2020
================================================================================
Add support for PostgreSQL "infinity" String values #211
Add support for saving null JSON objects when using the JsonStringType #210
Add support for "empty" String values when mapping PostgreSQL range column types #209
Version 2.9.7 - March 23, 2020
================================================================================
Add support for checking if the bounds are open or closed for a given Range #204
Row is always updated when using JSON objects wrapped in POJOs with no explicit equals method duplicate #203
Allow all ArrayType objects to be used in the addScalar Hibernate Query method #190
Version 2.9.6 - March 21, 2020
================================================================================
Use byte arrays when cloning JSON objects #198
Add Iso8601MonthType to save the 1-based value instead of the 0-based Enum ordinal for a java.time.Month entity attribute #56
Version 2.9.5 - March 07, 2020
================================================================================
Switch to using a single Logger instance #197
Version 2.9.4 - February 26, 2020
================================================================================
A NullPointerException is thrown when adding a ListArrayType definition to a MappedSuperClass #189
The ListArrayTypeDescriptor deepCopy method should not convert a List to an Java array #187
Add support for double arrays #183
Improve logging of array parameters in BasicBinder #182
ListArrayType generates an extra UPDATE when persisting an entity #180
Version 2.9.3 - January 26, 2020
================================================================================
PostgreSQLEnumType is not compatible with Hibernate 5.2 because of JavaTypeDescriptorRegistry and TypeConfiguration #176
Unexpected Hibernate dirty checking when using Sets #175
GraalVM / Quarkus native build support #173
When fetching an entity from the second-level cache, ListArrayType throws UnsupportedOperationException #169
Version 2.9.2 - January 14, 2020
================================================================================
Multidimensional Enum arrays are wrapped to String arrays and a ClassCastException is thrown #168
Version 2.9.1 - January 14, 2020
================================================================================
When fetching a List backed by a NULL PostgreSQL array, a NPE is thrown #164
Version 2.9.0 - January 06, 2020
================================================================================
Add support for MapResultTransformer and ListResultTransformer #163
Empty multi-dimensional arrays throw ClassCastException #161
Add support for mapping java.util.Date ARRAY or List to PostgreSQL DATE[] and TIMESTAMP[] #150
Add support for mapping ARRAY to a java.util.List #97
Version 2.8.0 - December 08, 2019
================================================================================
ObjectMapperJsonSerializer should inspect the inner Collection element type #158
Upgrade Jackson Databind library to 2.9.10.1 #157
Add support for ClassImportIntegrator for compact DTOs #151
NPE thrown by AbstractArrayTypeDescriptor#setParameterValues when creating a PostgreSQL ARRAY #142
Add support for PostgreSQL tx_vector column type #116
Version 2.7.1 - October 10, 2019
================================================================================
Unexpected dirty checking behavior on collections of POJOs mapped with JsonBinaryType #138
Mapping Enum to a String column uses toString() instead of name() #135
Upgrade Jackson Databind library version to 2.9.10 #134
Add support for passing the mapping Class to Json Types #133
Version 2.7.0 - September 14, 2019
================================================================================
Add support for JSON column values for Oracle #131
Add support for mapping a Guava Range object to a PostgreSQL range type #129
Add support for mapping the Java Period object to a PostgreSQL interval type #128
Add YearMonthTimestampType #127
Ability to use PostgreSQLEnumType and EnumArrayType with TypedParameterValue #125
Version 2.6.1 - August 29, 2019
================================================================================
Add support for Oracle Interval Day to Second column type #123
Version 2.6.0 - August 23, 2019
================================================================================
ImmutableType should also implement the Type interface #119
Remove unnecessary null checks and PGobject instantiations #118
Add support for the PostgreSQL citext type #117
Version 2.5.1 - August 15, 2019
================================================================================
Add support for PostgreSQL Interval column type #53
Add missing type INSTANCE constants #111
Upgrade Jackson Databind artifact version
Version 2.5.0 - July 05, 2019
================================================================================
Allow the Configuration to be accessed by all custom Types #107
Add handling for null PostgreSQL Range column values #106
Add PostgreSQL UUID ARRAY support #105
Version 2.4.4 - June 06, 2019
================================================================================
Update Javadoc to specify which JSON types are suitable for PostgreSQL and MySQL.
Add ZoneIdType to map the java.time.ZoneId to a VARCHAR-based column #103
In case the JSON attribute is a java.util.Set, an additional SQL UPDATE is executed when persisting the entity #100
Replace reflection usage in PostgreSQL Types with Driver-specific API calls #99
Version 2.4.3 - April 07, 2019
================================================================================
Adjustment in ZoneDateTime pattern for 1-6 nanoseconds digits #90
Array types use a singleton Java descriptors and that prevents them from being
initialized separately using dynamic parameters #84
Version 2.4.2 - February 26, 2019
================================================================================
Add a LongArrayType to support long[] array mappings #82
Version 2.4.1 - February 01, 2019
================================================================================
Change constructor type args from Class to Type for JSON Types so it's easier to register them dynamically
Support insertion of String values into JSON columns #80
Fix issue with ZonedDateTimeRanges and DST #78
Version 2.4.0 - January 02, 2019
================================================================================
Add support for PostgreSQL range type #63
Add support for the PostgreSQL hstore type #44
Version 2.3.5 - December 03, 2018
================================================================================
Add EnumArrayType to support mapping database Enums as Java arrays #58
Version 2.3.4 - November 14, 2018
================================================================================
Add CamelCaseToSnakeCaseNamingStrategy so that we can automatically map the cameCase JPA properties
to snake_case database identifiers.
Version 2.3.3 - October 23, 2018
================================================================================
Add types for java.time.Year and java.time.Month #51
Add continuous Integer solution for YearMonthType #47
Version 2.3.2 - October 18, 2018
================================================================================
Add the Java 9 automatic module name to the MANIFEST file.
Migrate hibernate-types-52 to Jackson 2.9.7.
Version 2.3.1 - October 16, 2018
================================================================================
Add support for the java.util.YearMonth which can be persisted as a DATE or INTEGER column
Version 2.3.0 - September 06, 2018
================================================================================
Add InetType for PostgreSQL #43
Version 2.2.3 - September 06, 2018
================================================================================
String fields on entity as JSONB don't work correctly #39
Version 2.2.2 - June 03, 2018
================================================================================
Allow the JSON to be extracted either via the ResultSet#getObject or ResultSet#getString based on the underlying SQL type descriptor.
Version 2.2.1 - May 12, 2018
================================================================================
Pass the original IOException when throwing the IllegalArgumentException from ObjectMapperWrapper#readValue and ObjectMapperWrapper#writeValueAsString.
Version 2.2.0 - March 27, 2018
================================================================================
Fix issue which allows you to customize the deep copy mechanism via the JsonSerializer interface supplied by the hibernate.types.json.serializer configuration property #21
Version 2.1.1 - March 08, 2018
================================================================================
Allows using the ObjectMapperWrapper in JSON types and pass a custom ObjectMapper via the hibernate.types.jackson.object.mapper configuration property.
Refactor internal PropertyLoader to Configuration and make it work with hibernate.properties as well.
Version 2.1.0 - March 07, 2018
================================================================================
Add support to provide an external ObjectMapper #3
Add the cause to the IllegalArgumentException thrown by JacksonUtil.
Version 2.0.0 - February 02, 2018
================================================================================
Refactor support for List, Set, Map to be saved as JSON using a simplified mechanism which no longer requires the TypeReferenceJsonStringSerializer. For this reason, this version breaks backward compatibility.
Optimize String equality checks in JsonTypeDescriptor.
Migrate hibernate-types-52 to Jackson 2.9.0.
Version 1.2.0 - November 28, 2018
================================================================================
Serialization problem when using JsonNodeBinaryType and Hibernate 2nd-level cache #14
Add support for List, Set, Map to be saved as JSON #11
Version 1.1.2 - November 11, 2018
================================================================================
JacksonUtil#clone should support Lists as well #8
Add an INSTANCE constant to existing Types.
Version 1.1.1 - October 26, 2018
================================================================================
Update JavaDocs to reference documentation.
Version 1.1.0 - October 26, 2018
================================================================================
Add support for PostgreSQL Enum Type.
Use ObjectMapper#findAndRegisterModules() for the default ObjectMapper.
Version 1.0.0 - September 25, 2018
================================================================================
Initial release which adds the JSON, Array, Nullable Character and ImmutableType support.