-
Notifications
You must be signed in to change notification settings - Fork 4
/
CHANGES.txt
697 lines (525 loc) · 28.3 KB
/
CHANGES.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
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
Version 3.0.8 Released July 30, 2024
- Fix bug where PersistentObject synchronous write-back wasn't synchronous.
Version 3.0.7 Released July 11, 2024
- Add support in SelectorSupport for detecting closed channels.
Version 3.0.6 Released June 30, 2024
- Update StringEncoder.isValidXMLChar() to handle codepoints.
- Added VaadinSessionTracker.
- Added Vaadin 24 Audio widget.
- Update Vaadin 24 to release 24.4.4.
Version 3.0.5 Released May 20, 2024
- Fixed false assertion failure in AsyncTaskManager when task returns null.
- Have @FieldBuilder.BindingInfo.addField() return the added FormItem.
- Tighten up parsing of boolean string values (require "true" or "false").
- Added @FieldBuilderCustomField.DialogForm.
- Added @GridColumn.styleProperties().
- Added ValidatingBean.
- Update Vaadin 24 to release 24.3.12.
Version 3.0.4 Released February 29, 2024
- Declare AsyncTask.perform() to throw any exception; add SimpleTaskManager.
- Remember the current UI when invoking AsyncTaskManager tasks.
- Fix exceptions in VaadinSessionFinder and VaadinUtil.accessSession().
- Update to dellroad-dependencies 3.2.3.0.
Version 3.0.3 Released February 22, 2024
- Allow FieldBuilder.createBindingInfo() to return null.
- Added utility class VaadinSessionFinder.
- Update Vaadin 24 to release 24.3.5.
- Update to dellroad-dependencies 3.2.2.0.
Version 3.0.2 Released February 4, 2024
- Eliminate need for "--add-opens" to use MessageFmt on newer JDK's.
- Extract FieldBuilderContextImpl into a separate standalone class.
- Add missing setter methods to RetryTransactionProvider interface.
- Add method TestSupport.assertSameOrDiff().
Version 3.0.1 Released January 8, 2024
- Fixed possible NPE in ChannelNetwork caused by race condition.
- Fix IndentXMLStreamWriter handling of comment following closing element.
- Prevent capacity overflow in LongMap and LongSet.
- Update Vaadin 24 to release 24.3.2.
- Update to dellroad-dependencies 3.1.7.0.
Version 3.0.0 Released October 10, 2023
- Update to the new generation:
- Java 17
- Jakarta EE 9
- Spring 6
- Vaadin 24
- Imported Spring's deleted JibxMarshaller
- Removed obsolete cruft:
- Hibernate, DAO, and Servlet classes
- PersistentObject distributed via git
- Vaadin 7, 8, 22, and 23 classes
- VaadinExternalListener, VaadinSessionDataProvider, SimpleSpringServlet
- CSVOutput, ThreadLogger, EmailAddress
- MainClass.commandLoop()
Version 2.5.10 Released August 21, 2023
- Added BitwiseInputStream and BitwiseOutputStream.
- Updated NullModem I/O classes to use PipedStreams.
- Fixed NPE in VaadinSessionDataProvider if session has expired.
- Added MemoryClassLoader.
- Added Averager.
Version 2.5.9 Released April 4, 2023
- Fixed bugs in LongMap iterator when remove() is used.
- vaadin7: Avoid ConcurrentModificationException on session destroy.
Version 2.5.8 Released March 23, 2023
- Fixed invalid sanity check bug in AsyncTaskManager.
- Updated Vaadin releases to 22.0.28 and 23.3.8.
Version 2.5.7 Released December 20, 2022
- Clarified the order in which @FieldBuilder.Binding properties are applied.
- Fixed bug in FormLayout.label() when used with a Checkbox.
- Added and updated utility methods in VaadinUtil.
- Factored out AsyncTaskManager from AsyncDataProvider.
- Updated Vaadin 23.x release to 23.3.0.
Version 2.5.6 Released December 9, 2022
- Require current session be locked in VaadinUtil.getCurrentSession().
- Added utility method VaadinUtil.assertNoSession() for background threads.
- Added AsyncDataProvider.getCurrentId() and other minor improvements.
- Fixed bugs with how @FieldBuilder.FieldDefault infers model types.
- Added workaround for Vaadin Flow issue #13992.
- Updated Vaadin 23.x release to 23.2.11.
Version 2.5.5 Released November 22, 2022
- Fixed exception in AsyncDataProvider when load operation gives an error.
- Accept non-public methods in ReflectUtil.propertyNameFromGetterMethod().
- Updated Vaadin releases to 22.0.24 and 23.2.8.
Version 2.5.4 Released September 12, 2022
- Updated Vaadin releases to 22.0.22 and 23.2.0.
- Updated JiBX release to 1.4.2.
Version 2.5.3 Released September 6, 2022
- Added method ReflectUtil.propertyNameFromGetterMethod().
- Parameterize Primitive.wrap() and Primitive.unwrap() signatures.
- Allow @FieldBuilder.EnabledBy to listen to multiple other fields.
- Added new class SimplePropertySet.
- Added new class SuperFinal.
Version 2.5.2 Released July 26, 2022
- Added support for building on JDK 9+ but still targeting JDK 8.
- Added AtomicUpdateFileOutputStream workaround for JDK-8291023.
- Added new module for Vaadin 23.
Version 2.5.1 Released July 19, 2022
- Fixed bug in FieldBuilderContext.inferDataModelType() with generic types.
- Added Automatic-Module-Name manifest entries and a few other JDK 9+ tweaks.
- Added a couple of additional methods to ValidationContext.
- Miscellanous improvements to Vaadin 22 classes.
Version 2.5.0 Released June 10, 2022
- Store SQL schema update timestamps as TIMESTAMP rather than DATE.
- Clarify that SelfValidationException constructor takes a template.
- Added new Vaadin classes supporting Vaadin 22.
- Added new Springleton class (replaces ApplicationContextBean).
- Improvements to IndentXMLStreamWriter to better handles comments.
- AtomicUpdateFileOutputStream.cancel() implicitly if an exception is thrown.
- Added NullModemOutputStream.setSynchronousClose().
- Added ThrowableUtil.
- Added BOMReader.
Version 2.4.10 Released July 19, 2021
- Added configurable input queue size limit to ChannelNetwork.
- Fixed potential race condition with PersistentObject listener notifications.
- Fixed bug in LongMap.removeOne() and added new method LongMap.deepClone().
- Remove overly aggressive modification checks in LongMap.entrySet() entries.
Version 2.4.9 Released June 8, 2021
- Improve on previous race condition fixes in PersistentObject.
Version 2.4.8 Released June 7, 2021
- Fixed another potential race condition when writing new PersistentObject.
Version 2.4.7 Released June 7, 2021
- Allow SelectorSupport to be used with a non-default SelectorProvider.
- Fixed potential race condition when writing new PersistentObject.
Version 2.4.6 Released October 14, 2020
- Fixed PersistentObject copy race condition added in 258959e8.
Version 2.4.5 Released October 1, 2020
- Fixed NPE in POBJ.getSharedRootSnapshot() after empty start
- Fixed pattern escaping bugs in MessageFmt
Version 2.4.4 Released June 30, 3030
- Avoid deadlock in POBJ.getSharedRootSnapshot() if caller already locked
Version 2.4.3 Released June 27, 2020
- Fixed bug where RetryTransactionAspect delay randomness was 1/2 of intended
- Made ChannelNetwork min direct buffer size configurable and increase default
- Declare InputStreamReader to explicitly implement Closeable
- Reduced the amount of locking in PersistentObject
- Relax dependency version constraints
- Added method IdGenerator.nextId()
- Added MessageFmt
Version 2.4.2 Released May 22, 2019
- Added @FieldBuilder.CheckBoxGroup
Version 2.4.1 Released April 25, 2019
- Added SQLSchemaUpdater.setTransactionIsolation() and Postgres init script
- Added method RetryTransactionProvider.retry for direct invocation
- Added method TCPNetwork.identifyPeer()
- Added WorkaroundJibxMarshaller
Version 2.4.0 Released December 6, 2018
- Added method TransformErrorListener.isIgnorable()
- Translate causes of DataAccessException's in @RetryTransaction aspect
- Fixed bug where @GridColumn.sortable() was not working
- Minor bug fixes to @FieldBuilder
- Updated a bunch of dependencies
Version 2.3.0 Released Friday May 11, 2018
- Fixed NPE in "git-describe" mojo if <workingDirectory> left as default
- Added new Maven plugin goals "exec-set-property" and "svn-version"
- Added some basic documentation for the Maven plugin
- Updated a bunch of dependencies
Version 2.2.3 Released Friday March 23, 2018
- Changed EnumComboBox constructor default to allow empty selection
- Added missing @FieldBuilder.AbstractTextField.inputPrompt() (vaadin7)
- Added PipedStreams
Version 2.2.2 Released Friday September 29, 2017
- Added @GridColumn.valueProvider()
- Fixed bug where @GridColumn.order() was not working
- Added FieldBuilder.Binding.order() to order bound fields
- Added GridColumnScanner.buildGrid() variant allowing caller to construct the Grid
- Fixed bug where vaadin7 @FieldBuilder.TextArea rows() set max length instead
- Added missing annotation method @FieldBuilder.ListSelect.dataProvider()
- Updated to Vaadin 8.1.4
Version 2.2.1 Released July 18, 2017
- Added @FieldBuilder.Binding.nullRepresentation()
- Fixed bug in handling of @FieldBuilder.Binding properties
- Fixed bug in AbstractUpdatingDataSource in asynchronous mode
- Updated @RetryTransaction pointcuts to match meta-annotations
Version 2.2.0 Released July 9, 2017
- Added new vaadin8 sub-module
- Added asynchronous update mode to AbstractUpdatingDataSource
- Removed explicit Maven dependency on log4j
- Added SerializableMethod
Version 2.1.0 Released April 4, 2017
- Fixed bug in FileStreamRepository and cross-device file moves
- Fixed bug in GitRepository when .git contains a "packed-refs" file
- Allow for PersistentObject validation prior to setRoot()
- Added LongMap and LongSet
- Removed BigFatLock
- Updated to Java 8
Version 2.0.4 Released September 20, 2016
- Handle nested TX's from multiple TX managers in @RetryTransaction
Version 2.0.3 Released September 7, 2016
- Ensure @RetryTransaction happens after Spring's @Async
- Allow nested @RetryTransaction executions in different transactions
- Corrected maven plugin Java pacakge
Version 2.0.2 Released August 24, 2016
- Fixed potential NPE in PersistentObjectTransactionManager when using
Propagation.SUPPORTS if there is already an existing transaction
- Detect end without matching start event in IndentXMLEventWriter
- Enhance Primitive and other classes to implement Serializable
- Added FindBugs to the build and addressed several reported issues
- Added maven plugin
Version 2.0.1 Released May 19, 2016
- Fixed wrong default for @FieldBuilder.AbstractTextField.type()
Version 2.0.0 Released May 10, 2016
- Convert to Maven build and more modular JAR files:
- SocketAcceptor no longer extends AbstractBean
- Moved the following classes into "spring" package:
From schema
AbstractSpringSchemaUpdate
SpringSQLSchemaUpdater (check Spring XML files!)
From dao
AbstractDAO
- Update MainClass to use jline for CLI
- Remove deprecated Vaadin 6.x classes.
- Update to Vaadin 7.5
Version 1.1.4 Released February 12, 2016
- Added support for normalized peer names in TCPNetwork
- Refactored TCPNetwork to create ChannelNetwork superclass
- Allow lowercase hex digits in Primitive parse patterns
- Added new method AbstractSimpleContainer.load(Iterator)
- Added new method Primitive.getSize()
Version 1.1.3 Released September 29, 2015
- Filter out bridge methods in MethodAnnotationScanner
Version 1.1.2 Released September 10, 2015
- Allow validation groups to be specified in a ValidationContext
NOTE: the above change may require recompilation
- Added TCPNetwork and related classes (ported from JSimpleDB)
Version 1.1.1 Released August 25, 2015
- Fix failure to properly cleanup after errors in POBJ XA transactions
- Fix bug in POBJ XA transaction crash recovery logic
Version 1.1.0 Released August 24, 2015
- Avoid duplicate validation in PersistentObject XA transactions
- Make AtomicUpdateFileOutputStream.close() idempotent as required
- Fix backwards logic in setting initial buffer size in AsyncOutputStream
- Avoid redundant invocation of fireItemSetChange() in AbstractSimpleContainer
Version 1.0.972 Released April 22, 2015
- Fix bug in FileStreamRepository when filename is less than 3 characters
- Added PersistentObjectSchemaUpdater.setTransformerFactory()
- Added option for AsyncOutputStream buffer to grow automatically
- Added ByteBufferInputStream and ByteBufferOutputStream
- Updated macros to point to new Ivy Roundup location on GitHub
Version 1.0.964 Released January 28, 2015
- Make @FieldBuilder.ProvidesField search in super-types for annotated methods
- Fixed bug in MethodAnnotationScanner that allowed duplicate methods
- Added FieldLayout, BlobField, and StringValuePropertyDef
- Upgraded several library dependencies
Version 1.0.946 Released November 12, 2014
- Added HTTP request and response parameters to ExceptionLoggingFilter methods
NOTE: the above are backward-incompatible changes
- Added PersistentObject support for JTA/XA transactions
- Fixed bug causing class-level @RetryTransaction annotations to not be found
- Refactor POBJ Synchronizer to allow subclass to implement own merge algorithm
- Added ObjectComparator
Version 1.0.925 Released September 16, 2014
- Added JPASchemaGeneratorTask and HibernateDDLFormatterTask ant tasks
- Rewrote PersistentObjectTransactionManager as a Spring PlatformTransactionManager;
removed obsolete @PersistentObjectTransactional and associated AOP aspect
- Removed arcane @ThreadConfigurable and @ThreadTransactional nobody was using
NOTE: the above are backward-incompatible changes
- Added PersistentConnection and PersistentSocketConnection
- Added IdleTimeoutInputStream.checkConnection()
- Update to Spring 4.0.x
Version 1.0.905 Released July 29, 2014
- Improvements relating to serialization and HTTP sessions with Vaadin 7
- Changed VaadinConfigurable.ifSessionNotLocked default to EXCEPTION
- Fixed VaadinUtil.invokeLater() to run immediately from background
- Revert previous change to VaadinUtil.invokeLater() (issue #19)
- Fix bug in Primitive.FLOAT and Primitive.LONG parse pattern
- Added ParseContext.tryPattern(), equals(), and hashCode()
- Added Primitive.forName()
Version 1.0.882 Released May 6, 2014
- Moved XMLResultSetWriter from xml -> sql sub-package
- Remove HardLink; obsoleted by Files.createLink()
- Remove unnecessary parameter to VaadinApplicationListener
NOTE: the above are backward-incompatible changes
- Fix bug: VaadinUtil.invokeLater() was sometimes synchronous
- Allow container SimpleItem's to be modified from "below"
- Added StreamWriterAction
- Added Connectable
- Minor bug fixes
Version 1.0.850 Released March 19, 2014
- Update build target to Java 7
- Added Primitive.parsePattern(), Primitive.compare(), and Primitive.VOID
- Genericize Primitive (no longer extend Enum)
- DoubleFormat removed; use Primitive.DOUBLE instead
- Improve AnnotatedXMLEvent{Reader,Writer} subclass API
- Generalize MethodAnnotationScanner to make it more useful
NOTE: the above are backward-incompatible changes
- Added StreamWriterDelegate and EventWriterDelegate
- Added IndentXMLStreamWriter and EmptyTagXMLStreamWriter
- Added AnnotatedXMLStreamReader and AnnotatedXMLStreamWriter
- Fixed a couple of obscure bugs in StringEncoder
- Add Vaadin 6 portlet portability fix (issue #4)
Version 1.0.794 Released December 11, 2013
- Renamed SpringVaadinSession -> SpringVaadinSessionListener
NOTE: the above are backward-incompatible changes
- Add new servlet init params "sessionTracking" and "maxSessions"
- Added VaadinSessionContainer
- Added MergedResultSet
- Added PersistentObjectTransactionManager and @PersistentObjectTransactional
- Added ProcessRunner.handleInterruption()
- Added SortingPropertyExtractor
- Added @ProvidesProperty{,Sort} and FieldBuilder
- Back-port some new classes from vaadin7 -> vaadin
Version 1.0.744 Released October 11, 2013
- Moved CSVOutput from "string" to "io" sub-package
- Extracted *Callback interfaces out of NullModem*Stream classes
NOTE: the above are backward-incompatible changes
- Added ThreadLogger
- Added "vaadin" sub-package of org.dellroad.stuff.pobj
- Added @ProvidesProperty annotation and container constructor support
- Added EnumContainer, EnumComboBox, and EnumUtil
- Added new method Primitive.getDefaultValue()
- Fixed bug in AbstractUnsizedContainer
- Added new "pobj.distrib" package for multi-node synchronization
- Added PersistentObject read() and write() method variants
- Added WritableResource
- Added AbstractBean
Version 1.0.704 Released August 28, 2013
- Add GraphClonable and GraphCloneRegistry
- Add subclass hooks for stdout and stderr in ProcessRunner
- Update VaadinUtil.invoke{,Later} to use VaadinSession.access{Synchronously,}
- Added RetryTransactionProvider implemented by RetryTransactionAspect
- Translate UncategorizedDataAccessException's in RetryTransactionAspect
- Add workaround for SPR-10815 to HibernateIsolationJpaDialect
- Fixed bug in AbstractUnsizedContainer
Version 1.0.688 Released June 28, 2013
- Added ThreadParkingLot.getParkedThreads()
- Added @RetryTransaction and associated AOP aspect
- Added PersistentObject read() and write() convenience methods
- Added SpringVaadinSession.configureBean()
- Added IdleTimeoutInputStream
- Removed @PostCompletionSupport (use TransactionSynchronizationManager)
- Update vaadin7 package to Vaadin 7.1.x (note: no longer works for 7.0.x)
Version 1.0.659 Released April 9, 2013
- Added @Unique validation constraint and related classes
- Added VaadinUtil.invokeLater() and VaadinApplication.invokeLater()
- Added AbstractUnsizedContainer and AbstractQueryList.handleSizeChange()
- Added IndentXMLEventWriter and StackXMLEventReader
- Fix character encoding bug in pobj package (always use UTF-8)
- Fixed bug in StringEncoder.enquote(byte[]) when non-zero offset
- Support Vaadin Touchkit and servlet 2.3 API (issue #18)
- Update vaadin7 package for 7.0+
- Added updateTable-oracle.sql
- Added VaadinUtil.assertSession()
- Added VersionComparator
- Added ValidationUtil
Version 1.0.592 Released December 14, 2012
- Add default constructors to Abstract{Simple,Query}Container hierarchy
- Fixed bug in SpringXSLPersistentObjectSchemaUpdate.setParameters()
- Add DelayedAction support for use with a Lock; add VaadinDelayedAction
- Fixed broken maven dependencies in the Vaadin add-on (issue #15)
- Fixed bug in AbstractDAO.getAll()
Version 1.0.571 Released November 27, 2012
- Vaadin7: fix bug that broke VaadinApplication.get() when subclassed
- Vaadin7: remove workaround for Vaadin bug #9946, which is now fixed
- Update AstractDAO to use EntityManager directly (issue #14)
- Update vaadin7 package for 7.0.0.beta10
- Added new class DelayedAction
Version 1.0.548 Released October 19, 2012
- Update vaadin7 package for 7.0.0.beta5
- Added ThreadLocalContext.wrap()
- Added new method @VaadinConfigurable.ifApplicationNotLocked()
- Added new class ErrorAction
- Added new class HibernateIsolationJpaDialect
- Added new method ThreadLocalContext.invokeWith()
- Added trace and debug level logging to ThreadLocalContext
- Fixed bug in AnnotatedXMLEventWriter when namespaces used
- Changed AbstractQueryContainer to make it more easily scalable
NOTE: backward-incompatible change
Version 1.0.507 Released August 28, 2012
- Fixed bug in AbstractSimpleContainer when reloading from scratch
- Fixed missing class in Vaadin add-on (issue #12)
- Added ProcessRunner
Version 1.0.497 Released August 24, 2012
- Vaadin7: fixed bug preventing ContextApplication.showError() from working
- Vaadin7: Call Application.setCurrent() in ContextApplication.invoke()
- Added PersistentObject.getRootSnapshot(); return new version from setRoot()
- Reworked PersistentObjectSchemaUpdater to avoid bugs with empty starts
NOTE: backward-incompatible change
- Fixed filtering bug in AbstractSimpleContainer and flaw in SimpleContainer
- Allow SpringXSLUpdateTransformConfigurer to configure the TransformerFactory
- Added IdGenerator.checkId() allowing to read but not assign an object's ID
- Disallow forward references in ParseUtil.serializeReference (as documented)
- Removed non-Vaadin aspects from aop.xml in the Vaadin add-on JAR (issue #12)
- Added VaadinExternalListener, changed VaadinApplicationListener to use it
NOTE: backward-incompatible change
- Added @ThreadConfigurable and @ThreadTransactional Spring annotations
- Added XMLResultSetWriter
Version 1.0.432 Released June 29, 2012
- SpringContextApplication: add "vaadinContextConfigLocation" init param
- Fix NotSerializableException in ContextApplication (issue #9)
- Catch Spring's EmptyResultDataAccessException as well in AbstractDAO
- Have ContextApplication implement Executor
- Update vaadin7 package for 7.0.0.alpha3
Version 1.0.420 Released June 9, 2012
- Added Vaadin 7 versions of Vaadin classes that require change
- Changed IdGenerator to re-use the same instance on re-entrant invocation;
NOTE: backward-incompatible change
- Added new Container classes, PropertyExtractor, and sorting to PropertyDef
- Added VaadinApplicationListener.addAsListenerTo()
- Added AtomicUpdateFileOutputStream and {,File}StreamRepository
- Added AbstractDAO.contains()
- Added PropertyDef.cast()
- Added ThreadLocalHolder
Version 1.0.349 Released April 27, 2012
- Fixed issue with circular autowiring dependencies that include the
SpringContextApplication bean; this also eliminates the requirement
to create custom static get() method in subclass (issue #7)
- Removed deprecated ContextApplicationFactoryBean
- Added @PostCompletionSupport Spring annotation
- Added SpringXSLPersistentObjectSchemaUpdate.setTransformerFactory()
- Added support for "empty stops" in PersistentObject
- Fix possible ClassCastException in JiBXUtil.readObject()
- Fix bug in PersistentObject when numBackups == 1
- Added some enhancements to PropertyDef
- Added AbstractConfiguredBean
Version 1.0.315 Released March 26, 2012
- Added CSVWriter
- Added ContextApplication.invokeLater()
- Catch all Exceptions in SpringDelegate to support "empty open"
- Added to IdGenerator methods setId(), getObject(), and run(Callable)
- Execute all JiBXUtil methods within an invocation of IdGenerator.run()
- Added ParseUtil.(de)serializeReference() and ParseUtil.deserializeUUID()
- Have IdMappingMarshaller implement Unmarshaller as well as Marshaller
- Added JiBXUtil method variants that take a binding name parameter
- Fixed access permission bug in PersistentObject constructor
- Added Pattern validation constraint
Version 1.0.284 Released Feb 16, 2012
- Added new DAO support classes
- Added support for creating automatic backups to PersistentObject
- Added ability to enable/disable PersistentObject "empty starts"
- Put back UpdatingDataSource which got accidentally lost in r205
- Fixed bug in SQLSchemaUpdater detecting initialized database
- Added SpringContextApplication.destroySpringApplication() hook
- Deprecated ContextApplicationFactoryBean
- Added HardLink class
Version 1.0.263 Released Jan 30, 2012
- Bug fixes and tweaks to PersistentObject classes
- Added PersistentObject checking for "out-of-band" updates
- Added <dellroad:rpmdist> macro to macros.xml
- Relax servlet 3.0 requirement in SpringContextApplication (issue #5)
- Added IdGenerator, IdMapper, and IdMappingMarshaller
- Added SpringXSLUpdateTransformConfigurer
Version 1.0.227 Released Jan 18, 2012
- Added new PersistentObject classes in org.dellroad.stuff.pobj
- Remove unnecessary methods openConnection() and closeConnection()
from AbstractSchemaUpdater and subclasses
- Only require ListableBeanFactory in SpringSQLSchemaUpdater when
schema updates are not specified explicitly
- Apply some minimal validation to schema update names
- Added AnnotatedXMLEvent{Reader, Writer}, TransformErrorListener
- Added new "jibx-bind" build macro
Version 1.0.207 Released Jan 10, 2012
- Refactored schema package to make schema tracking not be SQL-specific
- Added SocketAcceptor, ValidationContext, ExceptionLoggingFilter
- Added ParseUtil.deserializeBooleanStrictly()
- Releases are now published in Maven
Version 1.0.189 Released Dec 16, 2011
- Removed obsolete WebContextApplicationServlet
- Added @VaadinConfigurable and re-targeted VaadinConfigurableAspect to
apply to @VaadinConfigurable beans instead of @Configurable beans; this
avoids a conflict when doing load-time weaving when spring-aspects.jar
is also on the classpath. NOTE: backward-incompatible change
Version 1.0.173 Released Oct 28, 2011
- Added aspect for wiring @Configurable beans for SpringContextApplication
- Fixed bugs in SpringContextApplication
Version 1.0.155 Released Oct 21, 2011
- Added SpringContextApplication
- Added OutputStreamWriter and InputStreamReader
- Added XMLDocument{Input,Output}Stream
- Added AbstractValidator and @Sorted validation constraint
- Fix bug where JiBXUtil.writeObject() was closing the output stream
- Refactored jibx sub-package to isolate Spring dependencies
Version 1.0.140 Released Oct 12, 2011
- Added PropertyDef
- Added VaadinApplicationScope
- Added VaadinApplicationListener
- Added CloseListener interface to ContextApplication
Version 1.0.134 Released Sep 18, 2011
- Update for latest Vaadin version
- Added ContextApplication Vaadin helper class
- Added support for JiBX parsing of templated Spring EL expressions
- Added "single-update" attribute to <dellroad-stuff:sql-update> tag
- Fixed bug in <dellroad-stuff:sql-update> parser ignoring "depends-on"
Version 1.0.119 Released Aug 28, 2011
- Changed TimedWait to use nanoTime() instead of currentTimeMillis()
- Added ThreadParkingLot, ParseContext, DateEncoder, DoubleFormat, LinkedList
Version 1.0.100 Released May 10, 2011
- Added parse() methods taking explicit target to SimpleObjectParser
- Fixed bug in SimpleObjectParser.parse() parsing regex like "..(({foo}.."
- Fixed bug in StringEncoder.enquote(): nested quotes were not being escaped
- Added StringEncoder.dequote() and StringEncoder.enquotedLength()
Version 1.0.92 Released April 25, 2011
- Added SimpleObjectParser.parse() method taking a "named subgroup" regex
- Added BigFatLock.isLockHeld() and BigFatLockHeldAdvice
- Added NullModemOutputStream
Version 1.0.74 Released April 19, 2011
- AsyncInputStream now reports ALL exceptions to handleException()
- Simplified and fixed bugs in AsyncOutputStream
- Added NullModemInputStream
Version 1.0.68 Released April 11, 2011
- Added PrimitiveSwitchAdapter, ListableHashSet, NamedArgumentFormatter
- Avoid spin loop in AsyncOutputStream from unexpected exceptions
Version 1.0.60 Released March 10, 2011
- Fix bug that caused libreadline-java native code to crash
- Added Vaadin LoggingApplication support superclass
- Added WebContextApplicationServlet as a replacement for
AutowiringApplicationServlet, which is now deprecated
- Update and fix extractSchemaUpdates.xsl
- Added ContextCleanupListener
- Javadoc fixes and improvements
Version 1.0.43 Released Februrary 20, 2011
- Added AsyncInputStream
- Added extractSchemaUpdates.xsl to extract SQL for "schemacheck"
- Added suport for the <dellroad-stuff:sql-update> XML tag
- Fix bugs in the custom Spring tag XSD schema
- Fix bugs in MapEntry that made it not work for marshalling
- Javadoc fixes and improvements
Version 1.0.33 Released Februrary 18, 2011
- Improvements and bug fixes to schema updates
- Added Spring XML custom tags for schema updates
- Make MainClass.run() public
- Added MainClass.parsePropertyFlags()
- Added ResourceReaderFactoryBean
- Improvements to MapEntry
- Added JiBXUtil
- Javadoc fixes and improvements
Version 1.0.3 Released February 5, 2011
- Initial release