File: RELEASE-NOTES.txt

package info (click to toggle)
commons-configuration2 2.11.0-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 7,160 kB
  • sloc: java: 51,541; xml: 21,131; makefile: 4; sh: 1
file content (1440 lines) | stat: -rw-r--r-- 73,810 bytes parent folder | download
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
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
Apache Commons Configuration
Version 2.11.0
Release Notes

Introducing Apache Commons Configuration
----------------------------------------

This document contains the release notes for this version of the Commons
Configuration component. It describes the changes since the previous version.
The Commons Configuration software library provides a generic configuration
interface which enables an application to read configuration data from a variety
of sources.

Tools to assist in the reading of configuration/preferences files in various formats; requires Java 8.

Minor release with new features and updated dependencies; requires Java 8 or above.

Changes in this version include:

New features
------------

* CONFIGURATION-844:  Add support for empty sections #408. Thanks to Thomas Steiner, Gary Gregory.
*                     Add ImmutableConfiguration.containsValue(Object). Thanks to Rikkarth, Gary Gregory.

Fixed Bugs
----------

*                     Fail-fast with a NullPointerException if DataConfiguration.DataConfiguration(Configuration) is called with null. Thanks to Gary Gregory.
*                     Fail-fast with a NullPointerException if XMLPropertiesConfiguration.XMLPropertiesConfiguration(Element) is called with null. Thanks to Gary Gregory.
*                     Fail-fast with a NullPointerException if a SubsetConfiguration constructor is called with a null Configuration. Thanks to Gary Gregory.
* CONFIGURATION-843:  Methods should not be empty #393. Thanks to Gary Gregory.
*                     Guard MapConfiguration against null maps #381. Thanks to Heewon Lee, Gary Gregory.
*                     Fail-fast with a NullPointerException if AppletConfiguration(Applet) is called with null. Thanks to Gary Gregory.
*                     Fail-fast with a NullPointerException if ServletConfiguration(Servlet) is called with null. Thanks to Gary Gregory.
*                     Fail-fast with a NullPointerException if ServletConfiguration(ServletConfig) is called with null. Thanks to Gary Gregory.
*                     Fail-fast with a NullPointerException if ServletContextConfiguration(Servlet) is called with null. Thanks to Gary Gregory.
*                     Fail-fast with a NullPointerException if ServletContextConfiguration(ServletContext) is called with null. Thanks to Gary Gregory.
*                     Fail-fast with a NullPointerException if ServletFilterConfiguration(FilterConfig) is called with null. Thanks to Gary Gregory.
*                     Fail-fast with a NullPointerException if ServletRequestConfiguration(ServletRequest) is called with null. Thanks to Gary Gregory.
*                     Deprecate DatabaseConfiguration.getDatasource() in favor of getDataSource(). Thanks to Gary Gregory.
*                     Fix PMD DynamicCombinedConfiguration in AbstractImmutableNodeHandler. Thanks to Gary Gregory.
*                     Fix PMD DynamicCombinedConfiguration in AbstractListDelimiterHandler. Thanks to Gary Gregory.
*                     Fix PMD DynamicCombinedConfiguration in DefaultPrefixLookupsHolder. Thanks to Gary Gregory.
*                     Fix PMD DynamicCombinedConfiguration in DynamicCombinedConfiguration. Thanks to Gary Gregory.
*                     Fix PMD DynamicCombinedConfiguration in PropertiesConfiguration. Thanks to Gary Gregory.
* CONFIGURATION-846:  Restore previous behavior allowing Spring to inject multiple values #425. Thanks to Andrea Bollini, Gary Gregory, Tim Donohue, kbarlowgw.
* CONFIGURATION-847:  Property with an empty string value was not processed #431. Thanks to Andrea Bollini, Gary Gregory, Tim Donohue, kbarlowgw.

Changes
-------

*                     Bump commons-logging:commons-logging from 1.3.0 to 1.3.2 #390, #418. Thanks to Dependabot.
*                     Bump commons-io:commons-io from 2.15.1 to 2.16.1 #394, #400. Thanks to Dependabot.
*                     Bump org.apache.commons:commons-parent from 67 to 70 #396. Thanks to Dependabot.
*                     Bump slf4j.version from 2.0.12 to 2.0.13 #403. Thanks to Dependabot.
*                     Bump org.apache.commons:commons-text from 1.11.0 to 1.12.0 #404. Thanks to Dependabot.
*                     Bump spring.version from 5.3.33 to 5.3.35 #424. Thanks to Gary Gregory.
*                     Bump commons-codec:commons-codec from 1.16.1 to 1.17.0. Thanks to Gary Gregory.
*                     Bump com.fasterxml.jackson.core:jackson-databind from 2.17.0 to 2.17.1 #417. Thanks to Gary Gregory.


Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html

For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
patches, or suggestions for improvement, see the Apache Apache Commons Configuration website:

https://commons.apache.org/proper/commons-configuration/

Download it from https://commons.apache.org/proper/commons-configuration//download_configuration.cgi

-----------------------------------------------------------------------------
Apache Commons Configuration
Version 2.10.1
Release Notes

Introducing Apache Commons Configuration
----------------------------------------

This document contains the release notes for this version of the Commons
Configuration component. It describes the changes since the previous version.
The Commons Configuration software library provides a generic configuration
interface which enables an application to read configuration data from a variety
of sources.

Tools to assist in the reading of configuration/preferences files in various formats; requires Java 8.

Minor release with new features and updated dependencies; requires Java 8 or above.

Changes in this version include:


Fixed Bugs
----------

* CONFIGURATION-839:  java.lang.module.FindException: Module servlet.api not found. Thanks to Bob Marinier, Gary Gregory.
* CONFIGURATION-840:  StackOverflowError adding property in AbstractListDelimiterHandler.flattenIterator(). Thanks to Bob Marinier, Gary Gregory.
* CONFIGURATION-841:  StackOverflowError calling ListDelimiterHandler.flatten(Object, int) with a cyclical object tree. Thanks to Gary Gregory.

Changes
-------

*                     Bump jackson-databind from 2.16.1 to 2.17.0 #378. Thanks to Dependabot.
*                     Bump log4j.version from 2.23.0 to 2.23.1 #379. Thanks to Dependabot.
*                     Bump spring.version from 5.3.32 to 5.3.33 #380. Thanks to Dependabot, Gary Gregory.


Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html

For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
patches, or suggestions for improvement, see the Apache Apache Commons Configuration website:

https://commons.apache.org/proper/commons-configuration/

Download it from https://commons.apache.org/proper/commons-configuration//download_configuration.cgi

-----------------------------------------------------------------------------

Apache Commons Configuration
Version 2.10.0
Release Notes

Introducing Apache Commons Configuration
----------------------------------------

This document contains the release notes for this version of the Commons
Configuration component. It describes the changes since the previous version.
The Commons Configuration software library provides a generic configuration
interface which enables an application to read configuration data from a variety
of sources.

Tools to assist in the reading of configuration/preferences files in
various formats.

Minor release with new features and updated dependencies; requires Java 8 or above.

Changes in this version include:

New features
------------

*                     Add AbstractConfiguration.getKeysInternal(String, String) #300. Thanks to KeijoB, Gary Gregory.
*                     Add ImmutableConfiguration.getKeys(String, String) #300. Thanks to KeijoB, Gary Gregory.
*                     Add PrefixedKeysIterator.PrefixedKeysIterator(Iterator<String%gt;, String, String) #300. Thanks to KeijoB, Gary Gregory.
*                     Add Maven property project.build.outputTimestamp for build reproducibility. Thanks to Gary Gregory.
*                     Guard PatternSubtreeConfigurationWrapper constructor against null #365. Thanks to Heewon Lee.

Fixed Bugs
----------

*                     [StepSecurity] ci: Harden GitHub Actions #307. Thanks to step-security-bot, Gary Gregory.
* CONFIGURATION-834:  ConfirgurationPropertySource doesn't supply resolved values #309. Thanks to Keith Barlow, Gary Gregory.
*                     Take prefix delimiter into account when SubsetConfiguration.getKeysInternal() is called #300. Thanks to KeijoB, Gary Gregory.
*                     Guard ConfigurationMap against null configuration #355. Thanks to Heewon Lee, Gary Gregory.
* CONFIGURATION-838:  Properties parser stack overflows on large single-key inputs #369. Thanks to Ian Lynagh.
*                     DatabaseConfiguration.AbstractJdbcOperation.execute() throws NullPointerException when no data source is set #368. Thanks to Heewon Lee, Gary Gregory.

Changes
-------

*                     Bump jackson-databind from 2.14.2 to 2.16.1 #297, #303, #326, #331, #340. Thanks to Dependabot.
*                     Bump commons-io:commons-io from 2.11.0 to 2.15.1. Thanks to Gary Gregory.
*                     Bump spring-* from 5.3.26 to 5.3.32. Thanks to Gary Gregory.
*                     Bump commons-parent from 57 to 67. Thanks to Gary Gregory.
*                     Bump commons-codec:commons-codec from 1.15 to 1.16.1. Thanks to Gary Gregory.
*                     Bump commons-lang3 from 3.11 to 3.14.0. Thanks to Gary Gregory.
*                     Bump org.yaml:snakeyaml from 2.0 to 2.2 #312, #315. Thanks to Dependabot.
*                     Bump slf4j.version from 2.0.7 to 2.0.12 #358. Thanks to Dependabot.
*                     Bump org.apache.commons:commons-dbcp2 from 2.9.0 to 2.12.0. Thanks to Gary Gregory.
*                     Bump org.apache.commons:commons-pool2 from 2.11.1 to 2.12.0. Thanks to Gary Gregory.
*                     Bump org.apache.logging.log4j:log4j-1.2-* from 2.20.0 to 2.23.0 #334, #339, #367. Thanks to Gary Gregory, Dependabot.
*                     Bump org.apache.commons:commons-text from 1.10.0 to 1.11.0. Thanks to Gary Gregory.
*                     Bump commons-logging:commons-logging from 1.2 to 1.3.0. Thanks to Gary Gregory.


Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html

For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
patches, or suggestions for improvement, see the Apache Apache Commons Configuration website:

https://commons.apache.org/proper/commons-configuration/

Download it from https://commons.apache.org/proper/commons-configuration//download_configuration.cgi

-----------------------------------------------------------------------------
Apache Commons Configuration
Version 2.10.0
Release Notes

Introducing Apache Commons Configuration
----------------------------------------

This document contains the release notes for this version of the Commons
Configuration component. It describes the changes since the previous version.
The Commons Configuration software library provides a generic configuration
interface which enables an application to read configuration data from a variety
of sources.

Tools to assist in the reading of configuration/preferences files in
various formats

Minor release with new features and updated dependencies.

Changes in this version include:

New features
------------

*                     Add AbstractConfiguration.getKeysInternal(String, String) #300. Thanks to KeijoB, Gary Gregory.
*                     Add ImmutableConfiguration.getKeys(String, String) #300. Thanks to KeijoB, Gary Gregory.
*                     Add PrefixedKeysIterator.PrefixedKeysIterator(Iterator<String%gt;, String, String) #300. Thanks to KeijoB, Gary Gregory.
*                     Add Maven property project.build.outputTimestamp for build reproducibility. Thanks to Gary Gregory.
*                     Guard PatternSubtreeConfigurationWrapper constructor against null #365. Thanks to Heewon Lee.

Fixed Bugs
----------

*                     [StepSecurity] ci: Harden GitHub Actions #307. Thanks to step-security-bot, Gary Gregory.
* CONFIGURATION-834:  ConfirgurationPropertySource doesn't supply resolved values #309. Thanks to Keith Barlow, Gary Gregory.
*                     Take prefix delimiter into account when SubsetConfiguration.getKeysInternal() is called #300. Thanks to KeijoB, Gary Gregory.
*                     Guard ConfigurationMap against null configuration #355. Thanks to Heewon Lee, Gary Gregory.
* CONFIGURATION-838:  Properties parser stack overflows on large single-key inputs #369. Thanks to Ian Lynagh.
*                     DatabaseConfiguration.AbstractJdbcOperation.execute() throws NullPointerException when no data source is set #368. Thanks to Heewon Lee, Gary Gregory.

Changes
-------

*                     Bump jackson-databind from 2.14.2 to 2.16.1 #297, #303, #326, #331, #340. Thanks to Dependabot.
*                     Bump commons-io:commons-io from 2.11.0 to 2.15.1. Thanks to Gary Gregory.
*                     Bump spring-* from 5.3.26 to 5.3.32. Thanks to Gary Gregory.
*                     Bump commons-parent from 57 to 66. Thanks to Gary Gregory.
*                     Bump commons-codec:commons-codec from 1.15 to 1.16.1. Thanks to Gary Gregory.
*                     Bump commons-lang3 from 3.11 to 3.14.0. Thanks to Gary Gregory.
*                     Bump org.yaml:snakeyaml from 2.0 to 2.2 #312, #315. Thanks to Dependabot.
*                     Bump slf4j.version from 2.0.7 to 2.0.12 #358. Thanks to Dependabot.
*                     Bump org.apache.commons:commons-dbcp2 from 2.9.0 to 2.12.0. Thanks to Gary Gregory.
*                     Bump org.apache.commons:commons-pool2 from 2.11.1 to 2.12.0. Thanks to Gary Gregory.
*                     Bump org.apache.logging.log4j:log4j-1.2-* from 2.20.0 to 2.23.0 #334, #339, #367. Thanks to Gary Gregory, Dependabot.
*                     Bump org.apache.commons:commons-text from 1.10.0 to 1.11.0. Thanks to Gary Gregory.
*                     Bump commons-logging:commons-logging from 1.2 to 1.3.0. Thanks to Gary Gregory.


Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html

For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
patches, or suggestions for improvement, see the Apache Apache Commons Configuration website:

https://commons.apache.org/proper/commons-configuration/

Download it from https://commons.apache.org/proper/commons-configuration//download_configuration.cgi

-----------------------------------------------------------------------------

Apache Commons Configuration
Version 2.9.0
Release Notes


Introducing Apache Commons Configuration
----------------------------------------

This document contains the release notes for this version of the Commons
Configuration component. It describes the changes since the previous version.
The Commons Configuration software library provides a generic configuration
interface which enables an application to read configuration data from a variety
of sources.

Tools to assist in the reading of configuration/preferences files in
various formats.

Minor release with new features and updated dependencies.

Changes in this version include:

New features
------------

* CONFIGURATION-799:  Add DefaultConversionHandler#setListDelimiterHandler(ListDelimiterHandler). Thanks to Xinshiyou, Gary Gregory.

Fixed Bugs
----------

* CONFIGURATION-799:  CombinedConfiguration#getKeys() can throw NoSuchElementException. Thanks to Jarek Sacha, Gary Gregory.
* CONFIGURATION-822:  Fix ambiguity on the section determining #229. Thanks to Branislav Be?o, Gary Gregory, Bruno P. Kinoshita.
*                     Use Java style array decelerations #244. Thanks to Arturo Bernal.
*                     Add ImmutableNode.stream(). Thanks to Gary Gregory.
*                     Avoid NullPointerException in org.apache.commons.configuration2.web.AppletConfiguration.getKeysInternal(). Thanks to Gary Gregory.
*                     Fix JDBC prepared statements leak in org.apache.commons.configuration2.DatabaseConfiguration.clearPropertyDirect(String). Thanks to Gary Gregory.

Changes
-------

* CONFIGURATION-815:  Bump optional Apache Log4j 1.2.17 with 2.20.0. Thanks to Gary Gregory.
*                     Bump actions/checkout from 3 to 3.1.0 #224. Thanks to Gary Gregory, Dependabot.
*                     Bump actions/setup-java from 3 to 3.5.1. Thanks to Gary Gregory.
*                     Bump spotbugs-maven-plugin from 4.7.0.0 to 4.7.3.0 #193, #195, #228, #237. Thanks to Dependabot, Gary Gregory.
*                     Bump spotbugs from 4.7.0 to 4.7.3. Thanks to Gary Gregory.
*                     Bump org.springframework:spring-* from 5.3.21 to 5.3.26. Thanks to Dependabot, Gary Gregory.
*                     Bump junit-jupiter from 5.8.2 to 5.9.1 #197, #217. Thanks to Dependabot.
*                     Bump mockito-core from 4.6.1 to 4.11.0 #200, #235, #249, #257, #259. Thanks to Dependabot, Gary Gregory.
*                     Bump slf4j.version from 1.7.36 to 2.0.7 #202, #210, #215, #238, #241, #291. Thanks to Dependabot.
*                     Bump maven-checkstyle-plugin from 3.1.2 to 3.2.0 #201. Thanks to Dependabot.
*                     Bump maven-javadoc-plugin from 3.4.0 to 3.4.1. Thanks to Gary Gregory.
*                     Bump maven-pmd-plugin 3.17.0 to 3.19.0. Thanks to Gary Gregory.
*                     Bump pmd from 6.47.0 to 6.53.0. Thanks to Gary Gregory.
*                     Bump snakeyaml from 1.30 to 2.0 #203, #212, #219, #282, #283. Thanks to Dependabot, strangelookingnerd.
*                     Bump jackson-databind from 2.13.3 to 2.14.2 #227, #246, #274. Thanks to Gary Gregory.
*                     Bump spring.version from 5.3.22 to 5.3.23 #211. Thanks to Dependabot.
*                     Bump commons-parent from 53 to 56 #216, #253. Thanks to Dependabot, Gary Gregory.
*                     Bump log4j.version from 2.18.0 to 2.20.0 #213, #281. Thanks to Dependabot.
*                     Bump japicmp-maven-plugin from 0.15.7 to 0.17.1. Thanks to Gary Gregory.
*                     Bump commons-text from 1.9 to 1.10.0 #221. Thanks to Dependabot.
*                     Bump actions/cache from 3.0.8 to 3.0.10 #223, #225. Thanks to Dependabot.


Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html

For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
patches, or suggestions for improvement, see the Apache Apache Commons Configuration website:

https://commons.apache.org/proper/commons-configuration/

Download it from https://commons.apache.org/proper/commons-configuration//download_configuration.cgi

-----------------------------------------------------------------------------

Apache Commons Configuration
Version 2.8.0
Release Notes


Introducing Apache Commons Configuration
----------------------------------------

This document contains the release notes for this version of the Commons
Configuration component. It describes the changes since the previous version.
The Commons Configuration software library provides a generic configuration
interface which enables an application to read configuration data from a variety
of sources.

Tools to assist in the reading of configuration/preferences files in
various formats

Minor release with new features and updated dependencies.

Changes in this version include:

New features
------------

*                     Implement Iterable in ImmutableNode #74. Thanks to SethiPandi.
*                     Add PropertiesConfigurationLayout.getBlankLinesBefore() and deprecate getBlancLinesBefore(). Thanks to Gary Gregory.
*                     Add PropertiesConfigurationLayout.setBlankLinesBefore() and deprecate setBlancLinesBefore(). Thanks to Gary Gregory.
*                     Add PropertiesConfigurationLayout.PropertyLayoutData.getBlankLines() and deprecate getBlancLines(). Thanks to Gary Gregory.
*                     Add PropertiesConfigurationLayout.PropertyLayoutData.setBlankLines() and deprecate setBlancLines(). Thanks to Gary Gregory.
* CONFIGURATION-789:  Add ImmutableConfiguration.getEnum() methods. Thanks to Gary Gregory.
* CONFIGURATION-789:  Add ImmutableConfiguration.getDuration() methods. Thanks to Gary Gregory.

Fixed Bugs
----------

* CONFIGURATION-753:  Make interpolation of collections and arrays in ConfigurationInterpolator consistent with
                      behavior of DefaultConversionHandler. Add ConfigurationInterpolator.setStringConverter to
                      allow customized string conversion behavior.
* CONFIGURATION-795:  Computation of blank lines after header comment #82. Thanks to dpeger.
* CONFIGURATION-801:  Remove redundant initializer #110. Thanks to Arturo Bernal.
* CONFIGURATION-802:  Use final #111. Thanks to Arturo Bernal.
* CONFIGURATION-803:  Java 8 lambda improvements and more #112. Thanks to Arturo Bernal.
* CONFIGURATION-804:  Redundant local variable #113. Thanks to Arturo Bernal.
* CONFIGURATION-805:  Use try with resource #114. Thanks to Arturo Bernal.
* CONFIGURATION-805:  [Javadoc] Specify that typed getList returns null for missing key #100. Thanks to Roman Zaynetdinov.
*                     Mention EnvironmentConfiguration in the list of configuration sources #45. Thanks to Oliver B. Fischer.
* CONFIGURATION-808:  DefaultListDelimiterHandler.escapeList working only for List>String< #137. Thanks to cigaly.
*                     Use final #141. Thanks to Arturo Bernal.
*                     Replace test asserts by simpler but equivalent calls. #139 Thanks to Arturo Bernal.
* CONFIGURATION-764:  Single Variable Interpolation #182. Thanks to Ning Zhang, Matt Juntunen, Bruno P. Kinoshita, Gary Gregory.
*                     Implement proper concurrency in ConstantLookup. Thanks to Gary Gregory.
* CONFIGURATION-813:  Support new namespace jakarta.mail.* used by javamail 2.0+ (first release October 2020) #186. Thanks to Dependabot.

Changes
-------

*                     Unclosed file handle when reading config from JAR file URL.
                      Add and use FileBasedBuilderProperties.setURL(URL, URLConnectionOptions). Thanks to Robin Jansohn, Gary Gregory, Rob Spoor.
*                     Make default interpolation prefix lookups configurable via system property. Remove dns, url, and script 
                      lookups from defaults. If these lookups are required for use in AbstractConfiguration subclasses, they must 
                      be enabled via system property. See ConfigurationInterpolator.getDefaultPrefixLookups() for details.
*                     Bump actions/cache from 2 to 3.0.4 #99, #151, #169. Thanks to Dependabot, Gary Gregory.
*                     Bump actions/checkout from 1 to 3 #47, #62, #70, #85, #150, #163. Thanks to Dependabot.
*                     Bump actions/setup-java from 1.4.0 to 3 #63, #65, #73, #174. Thanks to Dependabot, Gary Gregory.
*                     Bump codeql-action from v1 to v2. Thanks to Dependabot, Matt Juntunen.
*                     Bump Spring dependency versions:
                      org.springframework:spring-beans 4.3.26.RELEASE -> 5.3.21
                      org.springframework:spring-context 4.3.26.RELEASE -> 5.3.21
                      org.springframework:spring-core 4.3.26.RELEASE -> 5.3.21
                      org.springframework:spring-test 4.3.26.RELEASE -> 5.3.21
                      #165, #172 Thanks to Dependabot, Matt Juntunen, kinow, Gary Gregory.
*                     Bump commons-parent from 52 to 53. Thanks to Dependabot, Matt Juntunen.
* CONFIGURATION-787:  Bump Apache Commons Lang from 3.9 to 3.12.0. Thanks to Gary Gregory.
* CONFIGURATION-790:  Bump com.fasterxml.jackson.core:jackson-databind from 2.10.3 to 2.13.3, #60. Thanks to Gary Gregory, Dependabot.
*                     Bump Slf4j test dependencies:
                      org.slf4j:slf4j-api 1.7.26 -> 1.7.33,
                      org.slf4j:slf4j-ext 1.7.26 -> 1.7.33,
                      org.slf4j:slf4j-log4j12 1.7.26 -> 1.7.33,
                      org.slf4j:slf4j-nop 1.7.26 -> 1.7.33. Thanks to Gary Gregory.
*                     Bump commons-parent from 50 to 52. Thanks to Dependabot.
*                     Bump mailapi from 1.6.4 to 1.6.7 #48. Thanks to Dependabot, Gary Gregory.
*                     Bump spotbugs-maven-plugin from 3.1.12.2 to 4.7.0.0, #55, #75, #79, #93, #116, #183. Thanks to Dependabot, Gary Gregory.
*                     Bump hsqldb from 2.5.0 to 2.5.2 #54, #128. Thanks to Dependabot.
*                     Bump commons-text from 1.8 to 1.9. Thanks to Gary Gregory.
*                     Bump servlet-api from 2.4 to 2.5 #58. Thanks to Gary Gregory.
*                     Bump maven-checkstyle-plugin from 3.1.0 to 3.1.2, #57, #97. Thanks to Gary Gregory.
*                     Bump commons-pool2 from 2.8.0 to 2.10.0, #61, #124. Thanks to Dependabot, Gary Gregory.
*                     Bump optional commons-codec from 1.14 to 1.15. Thanks to Gary Gregory.
*                     Bump checkstyle from 8.26 to 9.3, #66, #71, #90, #101, #118, #121, #132, #155. Thanks to Dependabot, Gary Gregory.
*                     Bump commons.jacoco.version 0.8.5 to 0.8.8 (Fixes Java 15 builds). Thanks to Gary Gregory.
*                     Bump tests from commons-pool2 2.10.0 to 2.11.1. Thanks to Gary Gregory.
*                     Bump tests from commons-dbcp2 2.7.0 to 2.9.0. Thanks to Gary Gregory.
*                     Bump snakeyaml from 1.26 to 1.30 #68, #126, #137. Thanks to Dependabot, Gary Gregory.
*                     Bump commons.japicmp.version from 0.14.1 to 0.15.7. Thanks to Gary Gregory.
*                     Bump junit from 4.13 to 4.13.2 #78. Thanks to Dependabot, Gary Gregory.
*                     Bump Apache Commons VFS 2.6.0 -> 2.9.0. Thanks to Gary Gregory.
*                     Bump jackson-databind from 2.11.3 to 2.13.2.2 ,#88, #94, #127, #159, #168, #173. Thanks to Dependabot.
*                     Bump commons.animal-sniffer.version 1.19 -> 1.20. Thanks to Gary Gregory.
*                     Bump commons.javadoc.version from 3.1.1 to 3.4.0. Thanks to Gary Gregory.
*                     Bump org.dbunit:dbunit from 2.7.0 to 2.7.3, #167. Thanks to Gary Gregory, Dependabot.
*                     Bump tests to hamcrest v2.2 #143. Thanks to John Patrick.
*                     Bump slf4j.version from 1.7.33 to 1.7.36 #166. Thanks to Dependabot.
*                     Bump mailapi from 1.6.6 to 2.0.1 #186. Thanks to Dependabot.
*                     Use GitHub Actions setup-java Maven cache property #190. Thanks to sullis.


Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html

For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
patches, or suggestions for improvement, see the Apache Apache Commons Configuration website:

https://commons.apache.org/proper/commons-configuration/

Download it from https://commons.apache.org/proper/commons-configuration/download_configuration.cgi

-----------------------------------------------------------------------------

Apache Commons Configuration
Version 2.7
Release Notes


Introducing Apache Commons Configuration
----------------------------------------

This document contains the release notes for this version of the Commons
Configuration component. It describes the changes since the previous version.
The Commons Configuration software library provides a generic configuration
interface which enables an application to read configuration data from a variety
of sources.

Tools to assist in the reading of configuration/preferences files in
various formats

Minor release with new features and updated dependencies.

Changes in this version include:

New features
------------

* CONFIGURATION-765:  Refactor XMLConfiguration.write(Writer) to add XMLConfiguration.write(Writer, Transformer). Thanks to Gary Gregory.

Fixed Bugs
----------

* CONFIGURATION-761:  Single argument DataConfiguration APIs always create empty arrays. Thanks to Gary Gregory.
* CONFIGURATION-767:  NullPointerException in XMLConfiguration#createTransformer() when no FileLocator is set. Thanks to Gary Gregory.
* CONFIGURATION-768:  XMLConfiguration#write does not indent XML elements. Thanks to Gary Gregory.
* CONFIGURATION-771:  Update com.fasterxml.jackson.core:jackson-databind 2.10.0 -> 2.10.1. Thanks to Gary Gregory.
* CONFIGURATION-773:  User's Guide > Properties files > Saving - small documentation bugs #41. Thanks to Dan Dragut.

Changes
-------

* CONFIGURATION-762:  Use variable arguments. Thanks to Gary Gregory.
*                     Update ]com.puppycrawl.tools:checkstyle from 8.24 to  8.25. Thanks to Gary Gregory.
* CONFIGURATION-763:  Update com.fasterxml.jackson.core:jackson-databind from 2.9.9 to 2.10.0. Thanks to Gary Gregory.
*                     [test] org.easymock:easymock 4.0.2 -> 4.1. Thanks to Gary Gregory.
* CONFIGURATION-775:  Update Apache Commons VFS from 2.4.1 to 2.5.0. Thanks to Gary Gregory.
* CONFIGURATION-777:  Update Apache Commons VFS from 2.5.0 to 2.6.0. Thanks to Gary Gregory.
* CONFIGURATION-778:  Update optional Apache Commons Codec from 1.13 to 1.14. Thanks to Gary Gregory.
*                     Update tests from JUnit 4.12 to 4.13. Thanks to Gary Gregory.
* CONFIGURATION-779:  Update optional jackson-databind from 2.10.1 to 2.10.2. Thanks to Gary Gregory.
* CONFIGURATION-783:  Update com.fasterxml.jackson.core:jackson-databind from 2.10.2 to 2.10.3. Thanks to Gary Gregory.
* CONFIGURATION-784:  Update org.yaml:snakeyaml from 1.25 to 1.26 and tweak parser configuration. Thanks to Gary Gregory.
* CONFIGURATION-785:  Update org.springframework:spring-* from 4.3.25.RELEASE to 4.3.26.RELEASE. Thanks to Gary Gregory.
*                     Update org.apache.commons:commons-parent from 48 to 50 Thanks to Rob Tompkins.


Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html

For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
patches, or suggestions for improvement, see the Apache Apache Commons Configuration website:

https://commons.apache.org/proper/commons-configuration/

Download it from https://commons.apache.org/proper/commons-configuration/download_configuration.cgi

-----------------------------------------------------------------------------

Apache Commons Configuration
Version 2.6
Release Notes
                        2019-09-13


Introducing Apache Commons Configuration
----------------------------------------

This document contains the release notes for this version of the Commons
Configuration component. It describes the changes since the previous version.
The Commons Configuration software library provides a generic configuration
interface which enables an application to read configuration data from a variety
of sources.

Tools to assist in the reading of configuration/preferences files in
various formats

Minor release with new features and updated dependencies.

Changes in this version include:

New features
------------

*                     Document "includeOptional" on the site. Thanks to Gary Gregory.
* CONFIGURATION-756:  Allow for custom behavior to handle errors loading included properties files. Thanks to Gary Gregory.

Fixed Bugs
----------

* CONFIGURATION-750:  XMLPropertyListConfiguration cannot set arrays in the correct plist form. Thanks to Jason Pickens, Gary Gregory, Emmanuel Bourg.
*                     Fix Javadoc for org.apache.commons.configuration2.PropertiesConfiguration.getIncludeOptional(). Thanks to Gary Gregory.
* CONFIGURATION-760:  Properties file using cyclical includes cause a StackOverflowError instead of detecting the misconfiguration. Thanks to Gary Gregory.

Changes
-------

* CONFIGURATION-751:  Update Apache Commons Text from 1.6 to 1.7. Thanks to Gary Gregory.
* CONFIGURATION-752:  Update Apache Commons VFS from 2.3 to 2.4.1. Thanks to Gary Gregory.
* CONFIGURATION-754:  Update Apache Commons Text from 1.7 to 1.8. Thanks to Gary Gregory.
* CONFIGURATION-755:  [CVE-2014-0114] Update Apache Commons BeanUtils from 1.9.3 to 1.9.4. Thanks to Gary Gregory.
*                     Fix syntax in user guide documentation #33. Thanks to Kevin Wang.
* CONFIGURATION-757:  Update org.yaml:snakeyaml from 1.24 to 1.25. Thanks to Gary Gregory.
*                     Update tests from org.apache.commons:commons-dbcp2 2.6.0 to 2.7.0. Thanks to Gary Gregory.
*                     Update tests from org.apache.commons:commons-pool2 2.6.2 to 2.7.0. Thanks to Gary Gregory.
* CONFIGURATION-758:  Update commons-codec:commons-codec from 1.12 to 1.13. Thanks to Gary Gregory.
*                     Update tests from org.hsqldb:hsqldb 2.4.1 to 2.5.0. Thanks to Gary Gregory.
*                     Update tests from com.sun.mail:mailapi 1.6.3 to 1.6.4. Thanks to Gary Gregory.
* CONFIGURATION-759:  Update Spring from 4.3.24.RELEASE to 4.3.25.RELEASE. Thanks to Gary Gregory.
*                     Update maven-checkstyle-plugin from 3.0.0 to 3.1.0. Thanks to Gary Gregory.
*                     Use current version of Checkstyle: 6.18 to 8.24. Thanks to Gary Gregory.


Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html

For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
patches, or suggestions for improvement, see the Apache Apache Commons Configuration website:

https://commons.apache.org/proper/commons-configuration/

Download it from https://commons.apache.org/proper/commons-configuration/download_configuration.cgi

-----------------------------------------------------------------------------

Apache Commons Configuration
Version 2.5
Release Notes


Introducing Apache Commons Configuration
----------------------------------------

This document contains the release notes for this version of the Commons
Configuration component. It describes the changes since the previous version.
The Commons Configuration software library provides a generic configuration
interface which enables an application to read configuration data from a variety
of sources.

Minor release with new features and updated dependencies.

Changes in this version include:


Fixed Bugs
----------

* CONFIGURATION-731:  Allow user to specify the comments and separator chars. Thanks to Shuai Zhang, Gary Gregory.

Changes
-------

* CONFIGURATION-738:  Update Jackson from 2.9.7 to 2.9.8. Thanks to Gary Gregory.
* CONFIGURATION-739:  Update Apache Commons Codec from 1.11 to 1.12. Thanks to Gary Gregory.
* CONFIGURATION-740:  Update Apache Commons VFS from 2.2 to 2.3. Thanks to Gary Gregory.
* CONFIGURATION-741:  Update Spring from 4.3.19 to 4.3.22. Thanks to Gary Gregory.
* CONFIGURATION-743:  Update optional library snakeyaml from 1.23 to 1.24. Thanks to Gary Gregory.
* CONFIGURATION-747:  Update Apache Commons Lang from 3.8.1 to 3.9. Thanks to Gary Gregory.
* CONFIGURATION-746:  Update Jackson from 2.9.8 to 2.9.9. Thanks to Gary Gregory.
* CONFIGURATION-747:  Update Spring from 4.3.22 to 4.3.24. Thanks to Gary Gregory.
* CONFIGURATION-745:  Add the special key "includeoptional" for properties files. Thanks to Gary Gregory.


Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html

For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
patches, or suggestions for improvement, see the Apache Apache Commons Configuration website:

https://commons.apache.org/proper/commons-configuration/

-----------------------------------------------------------------------------

Apache Commons Configuration
Version 2.4
Release Notes


Introducing Apache Commons Configuration
----------------------------------------

This document contains the release notes for this version of the Commons
Configuration component. It describes the changes since the previous version.
The Commons Configuration software library provides a generic configuration
interface which enables an application to read configuration data from a variety
of sources.

Minor release with new features and updated dependencies.

Changes in this version include:

New Features
------------

* CONFIGURATION-712:  FileHandlerReloadingDetector now has a new refresh() method to
                      initialize the reloading state from the underlying file. This new
                      method is called by DefaultReloadingDetectorFactory when a new detector
                      instance is created. This makes sure that a changed configuration file
                      is directly detected on the first invocation of the
                      isReloadingRequired() method. Thanks to Rolland Hobbie.
* CONFIGURATION-713:  Configuration properties can now be converted to regular expressions. Thanks to Lars W.
* CONFIGURATION-715:  With JupIOFactory a new IOFactory implementation is now available that
                      implements handling of whitespace in a way closer to java.util.Properties.
                      This class can be used when stricter compatibility with Java standard
                      methods for reading and writing properties files is needed. Thanks to Patrick Schmidt.
* CONFIGURATION-716:  JupIOFactory (introduced for CONFIGURATION-715) also implements
                      handling of escape sequences in a way closer to java.util.Properties. Thanks to Patrick Schmidt.
* CONFIGURATION-724:  Add support for Commons Text 1.4 localhost string lookup as a default lookup.
* CONFIGURATION-726:  Add support for Commons Text 1.5 new string lookups as default lookups.

Fixed Bugs
----------

* CONFIGURATION-710:  Fixed numerous typos in user guides. Thanks to thc202.
* CONFIGURATION-711:  Update Apache Commons Lang from 3.7 to 3.8.1.
* CONFIGURATION-727:  org.apache.commons.configuration2.DatabaseConfiguration never closes result sets and statements.

Changes
-------

* CONFIGURATION-720:  Replace use of deprecated Commons Lang string substitution code for Commons Text.
* CONFIGURATION-694:  Update Java requirement from version 7 to 8.
* CONFIGURATION-721:  Update Jackson from 2.9.6 to 2.9.7.
* CONFIGURATION-722:  Update optional dependency snakeyaml from 1.21 to 1.23.
* CONFIGURATION-723:  Update optional Spring dependencies from 4.3.18.RELEASE to 4.3.19.RELEASE.
* CONFIGURATION-725:  Update Apache Commons Text from 1.4 to 1.5.
* CONFIGURATION-728:  Update Apache Commons Text from 1.5 to 1.6.


Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html

For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
patches, or suggestions for improvement, see the Apache Apache Commons Configuration website:

https://commons.apache.org/proper/commons-configuration/

-----------------------------------------------------------------------------

Apache Commons Configuration
Version 2.3
Release Notes


Introducing Apache Commons Configuration
----------------------------------------

This document contains the release notes for this version of the Commons
Configuration component. It describes the changes since the previous version.
The Commons Configuration software library provides a generic configuration
interface which enables an application to read configuration data from a
variety of sources.

Version 2.3 is another maintenance release for the Configuration 2.x series. It
contains bug fixes and also a few new features like support for File and Path
as data types. The release is fully source and binary compatible with version
2.2.

Commons Configuration 2.3 requires Java 1.7 or higher.

New features
------------

* CONFIGURATION-692
  ConversionExceptions thrown when accessing the properties of a configuration
  now contain the original cause of the exception.

* CONFIGURATION-693
  Configuration properties can now be converted to the data types File and
  Path.

* CONFIGURATION-698
  Add org.apache.commons.configuration2.MapConfiguration.toString().

* CONFIGURATION-698
  Add toString() methods here and there to help debugging.

* CONFIGURATION-701
  CompositeConfiguration now supports an addConfigurationFirst() method to add
  child configurations with a higher priority.

Fixed Bugs
----------

* CONFIGURATION-652
  Root node attributes are now updated correctly when loading XML configuration
  files.

* CONFIGURATION-686
  JSONConfiguration can now handle list structures with complex objects as
  elements.

* CONFIGURATION-687
  Fixed a memory leak in CombinedConfigurationBuilder. Builder for the child
  sources were created each time a new result configuration was requested; thus
  the list with child builders got longer and longer. This also had an impact
  on reloading because unnecessary reloading operations could be triggered. Now
  it is guaranteed that child builders are created only once.

* CONFIGURATION-688
  Fixed a bug related to the handling of multiple include files in
  PropertiesConfiguration.

* CONFIGURATION-690
  ExprLookup.getVariables() no longer returns null, but a copy of the current
  variables of this lookup object.

* CONFIGURATION-691
  ExprLookup now handles expressions that do not return a string result by
  converting them to string.

* CONFIGURATION-703
  XMLConfiguration now handles elements correctly whose value consists only of
  whitespace if the xml:space attribute is set to preserve.

Other changes
-------------

* CONFIGURATION-675
  Added a .gitignore file to the project.

* Some dependencies have been updated to their most recent versions. However,
  as no new features of these dependencies are used, the older versions should
  still work. The following dependencies are affected:
  o Update Apache Commons Lang dependency from 3.6 to 3.7.
  o Update Apache Commons VFS from 2.1 to 2.2.
  o Update Apache Commons Codec from 1.10 to 1.11.
  o Update Spring from 4.3.9.RELEASE to 4.3.18.RELEASE
  o Update optional dependency snakeyaml from 1.18 to 1.21.
  o Update optional dependency Jackson from 2.8.9 to 2.9.6.


Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html

For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
patches, or suggestions for improvement, see the Apache Apache Commons Configuration website:

https://commons.apache.org/proper/commons-configuration/

-----------------------------------------------------------------------------

Apache Commons Configuration
Version 2.2
Release Notes


Introducing Apache Commons Configuration
----------------------------------------

This document contains the release notes for this version of the Commons
Configuration component. It describes the changes since the previous version.
The Commons Configuration software library provides a generic configuration
interface which enables an application to read configuration data from a
variety of sources.

Version 2.2 is another maintenance release for the Configuration 2.x series. It
contains a number of bug fixes and also some new features. Among the highlights
is the new support for JSON and YAML configurations. The release is fully
source and binary compatible with version 2.1.1.

Commons Configuration 2.2 requires Java 1.7 or higher.

New features
------------

* CONFIGURATION-666
  Add convenience ctor ConfigurationRuntimeException(String, Object...).

* CONFIGURATION-665
  Add org.apache.commons.configuration2.AbstractHierarchicalConfiguration.toString().

* CONFIGURATION-664
  Add API org.apache.commons.configuration2.tree.ImmutableNode.getChildren(String).

* CONFIGURATION-660
  Add toString() methods here and there to help debugging.

* CONFIGURATION-658
  Add API org.apache.commons.configuration2.DataConfiguration.getURI(String)
  methods.

* CONFIGURATION-656
  Added new YAMLConfiguration class to support configuration files in YAML
  format.

* CONFIGURATION-653
  ConfigurationUtils and ConfigurationConverter now offer better support for
  immutable configurations.

* CONFIGURATION-647
  INIConfiguration can now be configured to use a custom separator between
  properties and values when writing an ini file.

* CONFIGURATION-258
  Added new JSONConfiguration class to support configuration files in JSON
  format.

Fixed Bugs
----------

* CONFIGURATION-671
  Fixed a NPE in INIConfiguration when saving a configuration with an empty
  section.

* CONFIGURATION-669
  The node model returned by SubnodeConfiguration.getNodeModel() has now the
  correct root node set.

Other changes
-------------

* CONFIGURATION-673
  Added an Automatic-Module-Name header to the manifest for compatibility with
  the Java 9 module system.

* CONFIGURATION-669
  Update optional Spring dependency from 4.2.5.RELEASE to 4.3.9.RELEASE.

* CONFIGURATION-667
  Update Apache Commons Lang dependency from 3.3.2 to 3.6.

* CONFIGURATION-663
  Fixed a typo in the upgrade to 2.0 guide.

* CONFIGURATION-661
  Update platform requirement from Java 6 to 7.


Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html

For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
patches, or suggestions for improvement, see the Apache Apache Commons Configuration website:

https://commons.apache.org/proper/commons-configuration/

-----------------------------------------------------------------------------

Apache Commons Configuration
Version 2.1.1
Release Notes


Introducing Apache Commons Configuration
----------------------------------------

This document contains the release notes for this version of the Commons
Configuration component. It describes the changes since the previous version.
The Commons Configuration software library provides a generic configuration
interface which enables an application to read configuration data from a
variety of sources.

The release is fully source and binary compatible with version 2.1.

Commons Configuration 2.1 requires Java 1.6 or higher.

Fixed Bugs
----------

* CONFIGURATION-649
  Improved the handling of lists defined by a string with delimiter characters
  in XMLConfiguration. Such lists now retain their original format when the
  configuration is saved.

* CONFIGURATION-648
  Made the IOFactory property of PropertiesBuilderParameter compatible with the
  most recent version of Commons BeanUtils. This version changed the handling
  of properties starting with multiple uppercase letters.

* CONFIGURATION-646
  PropertiesConfiguration now works correctly with the auto-save mode.

* CONFIGURATION-644
  PropertiesConfigurationLayout no longer duplicates a header comment if a file
  with another comment is loaded. Thanks to Andrew DeMaria.

* CONFIGURATION-643
  Documentation improvements for the user's guide.

* CONFIGURATION-641
  Improved documentation of FileBased interface. The Javadocs now state
  explicitly that the methods should not be called by client code. Exception
  handling in configuration classes implementing FileLocatorAware has been
  improved.

* CONFIGURATION-640
  PropertiesConfiguration now correctly unescapes some special characters that
  are always escaped in Java properties files.

Other changes
-------------

* CONFIGURATION-639
  In the OSGi bundle manifest of the Commons Configuration bundle the package
  imports for Spring packages are now marked as optional.
  Thanks to Rico Neubauer.

* CONFIGURATION-638
  Improved handling of temporary files and folders in unit tests.
  Thanks to Ahmet Celik.

* CONFIGURATION-627
  Updated dependency to Commons BeanUtils to version 1.9.3. This fixes an issue
  with an exception stacktrace that was logged when a ConfigurationBuilder was
  used.


Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html

For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
patches, or suggestions for improvement, see the Apache Apache Commons Configuration website:

https://commons.apache.org/proper/commons-configuration/

-----------------------------------------------------------------------------

                        Commons Configuration Package
Version 2.1
Release Notes

Introducing Apache Commons Configuration
----------------------------------------

This document contains the release notes for this version of the Commons
Configuration component. It describes the changes since the previous version.
The Commons Configuration software library provides a generic configuration
interface which enables an application to read configuration data from a variety
of sources.

Version 2.1 is a first bug-fix release for the Configuration 2.x series and
also adds a new feature related to the integration with the Spring framework.
A list of all changes can be found below.

The release is fully source and binary compatible with version 2.0.

Commons Configuration 2.1 requires Java 1.6 or higher.

New Features
------------

* CONFIGURATION-636
  PropertiesConfigurationLayout now allows manipulating the order of keys when
  the properties file is written.

* CONFIGURATION-624
  Support Commons Configuration as PropertySource in Spring.

Fixed Bugs
----------

* CONFIGURATION-634
  HomeDirectoryLocationStrategy now works correctly in the mode that evaluates
  the FileLocator's base path.

* CONFIGURATION-633
  Interpolation was improved to better support properties with multiple values.

* CONFIGURATION-632
  The methods getStringArray() and getList() of CompositeConfiguration now
  support the interpolation of variables that reference properties with
  multiple values.

* CONFIGURATION-622
  Fixed a problem in INIConfiguration.write() with keys containing a separator
  character. This separator had been duplicated. Such keys are now handled
  correctly when the configuration is saved.

Other changes
-------------

* CONFIGURATION-628
  Support for the ant build was dropped.

* CONFIGURATION-626
  ImmutableConfiguration.getArray() has been deprecated. Arrays can now be
  queried using the generic get() method in a type-safe way.

* CONFIGURATION-631
  Updated optional dependency to Apache Commons VFS from 2.0 to 2.1. (The older
  version still works.)

* CONFIGURATION-635
  Updated optional dependency to Apache Commons Codec from 1.9 to 1.10. (The
  older version still works.)


Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html

For complete information on Apache Commons Configuration, including instructions
on how to submit bug reports, patches, or suggestions for improvement, see the
Apache Commons Configuration website:
https://commons.apache.org/proper/commons-configuration/

-----------------------------------------------------------------------------

Apache Commons Configuration
Version 2.0
Release Notes

Introducing Apache Commons Configuration
----------------------------------------

After a series of alpha and beta releases (please consult the corresponding
release notes below), this is the first final release for Apache Commons
Configuration 2.0.

Version 2.0 is a complete redesign of the Configuration 1.x API with the aim to
fix some limitations in the original design and make the library more flexible
and powerful. Therefore, this release is not a drop-in replacement for Commons
Configuration 1.x; there have been incompatible changes in many areas that
require adaptations on client code. A migration guide is available at

https://commons.apache.org/configuration/userguide/upgradeto2_0.html

that describes all breaking changes and helps when upgrading to the new
version. One obvious breaking change is the renaming of the main package
(all classes are now located under org.apache.commons.configuration2) and the
Maven coordinates (groupId: org.apache.commons, artifactId:
commons-configuration2). This was necessary to allow both versions to coexist
on the classpath without conflicts.

The user's guide has been completely reworked to describe all features of the
new version. It can be found at

https://commons.apache.org/configuration/userguide/user_guide.html

Changes
-------

* CONFIGURATION-621:
  Moved ConfigurationLogger class to io package to avoid cyclic dependencies
  between packages.
* CONFIGURATION-619:
  CombinedConfigurationBuilder now supports inheritance of its parameters to
  child configuration sources. This is enabled by default.
* CONFIGURATION-615:
  Changed generic types in the signatures of a MapConfiguration constructor
  and AbstractConfiguration.getList(String, List). These changes were made in
  version 1.10 as fixes for CONFIGURATION-557 and CONFIGURATION-558. But it
  had been missed to merge them to trunk.

Fixed Bugs
----------

* CONFIGURATION-620:
  Fixed two invalid examples in the user's guide for file-based configurations.
* CONFIGURATION-618:
  When using immutable configurations exceptions thrown by the wrapped
  configuration came out as UndeclaredThrowableException. This has been fixed;
  now the correct original exception is thrown.

Commons Configuration 2.0 requires Java 1.6 or higher.

-----------------------------------------------------------------------------

Apache Commons Configuration
Version 2.0-beta2
Release Notes

Introducing Apache Commons Configuration
----------------------------------------

After the first beta release in June 2015 there has been some feedback from the
community resulting in (minor) adaptations of the API. In most cases, the
return values of methods have been changed to be more generic. There has also
been a change in the support for logging. Therefore, this second beta release
is provided to make these changes more "official".

This release also includes some bug fixes. The bugs addressed here have partly
existed already in the Configuration 1.0 code base; so these fixes are not all
related to changes introduced in the 2.0 version.

Below is a list of all changes in this version. Please refer to the clirr
report at https://commons.apache.org/proper/commons-configuration/clirr-report.html
for information about changes which break binary compatibility.

Changes
-------

* CONFIGURATION-614:
  References to Commons Logging have been removed from the Configuration API.
  It is still possible to influence logging by making use of the new
  ConfigurationLogger abstraction.
* CONFIGURATION-612:
  The return type of ConfigurationBuilder.getConfiguration() was changed from
  Configuration to ImmutableConfiguration because this is the base interface
  for all configuration objects. Thanks to Jon Weygand.
* CONFIGURATION-608:
  Adapted the return type of ReloadingFileBasedConfigurationBuilder.configure().

Fixed Bugs
----------

* CONFIGURATION-609:
  Fixed a bug in PropertiesConfiguration related to the loading of include
  files. The FileHandler used for this purpose was not fully initialized.
* CONFIGURATION-605:
  XMLConfiguration no longer drops keys when list delimiter characters occur
  in element values.
* CONFIGURATION-604:
  Fixed a problem in the conversion of a flat configuration to a hierarchical
  one that could cause the loss of properties in a combined configuration
  constructed by an override combiner.

Commons Configuration 2.0-beta2 requires Java 1.6 or higher.

Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html

For complete information on Apache Commons Configuration, including instructions
on how to submit bug reports, patches, or suggestions for improvement, see the
Apache Commons Configuration website:
https://commons.apache.org/proper/commons-configuration/

-----------------------------------------------------------------------------

Apache Commons Configuration
Version 2.0-beta1
Release Notes

Introducing Apache Commons Configuration
----------------------------------------

This is the first beta release of Commons Configuration 2.0 after two alpha
versions. There has not been much feedback so far and no requests for API
changes. Therefore, we move forwards to a beta release indicating that the API
can be considered more stable. However, at this stage, changes of the API can
still not be fully excluded.

Below is a list of all changes in this version. Compared to version 2.0-alpha2,
there has only be a single change: an obsolete interface (which had been
overlooked during a major refactoring) was removed. So applications that are
using 2.0-alpha2 should be able to migrate to 2.0-beta1 without problems.

Changes
-------

* CONFIGURATION-598: Removed obsolete ConfigurationBuilder interface in the
                     base package.

-----------------------------------------------------------------------------

Apache Commons Configuration
Version 2.0-alpha2
Release Notes


Introducing Apache Commons Configuration
----------------------------------------

After version 2.0-alpha1 has been out for a while (the corresponding release
notes can be found below), this second alpha release contains a few number of
improvements and new features whose implementation required some changes on
existing interfaces. In most cases, new methods were added offering enhanced
functionality. Because these are typically interfaces implemented by the
library itself client code using the previous alpha version should hardly be
affected.

Below is a list of all changes in this version:

New features
------------

* CONFIGURATION-574:  DefaultExpressionEngine can now be customized to match
                      configuration keys in a case-insensitive manner. This is useful
                      for instance for dealing with Windows INI files.
* CONFIGURATION-565:  Added support for querying encoded properties.
* CONFIGURATION-200:  A size() method was added to the ImmutableConfiguration interface.

Fixed Bugs
----------

* CONFIGURATION-564:  PropertiesConfiguration now supports again properties without a
                      value and a separator character. The keys of such properties
                      are added to the configuration with an empty String as value.
* CONFIGURATION-427:  XMLPropertyListConfiguration can now save arrays in the correct form.

Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html

For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
patches, or suggestions for improvement, see the Apache Commons Configuration website:

https://commons.apache.org/proper/commons-configuration/

-----------------------------------------------------------------------------

Apache Commons Configuration
Version 2.0-alpha1
Release Notes

Introducing Apache Commons Configuration
----------------------------------------

This is the first alpha release for version 2.0 of Commons Configuration.
Version 2 is a major redesign of the Configuration API. It breaks compatibility
in many areas and, therefore, is not a drop-in replacement for Commons
Configuration 1.x. To allow collaboration with an older version of the library
(and to prevent jar and dependency hell), the top-level package and the Maven
coordinates have been changed. There is an upgrade guide available at

https://commons.apache.org/configuration/userguide/upgradeto2_0.html

describing the most important breaking changes. Be sure to read this
document if you want to switch from a 1.x version to this new version. The
user's guide which can be found at

https://commons.apache.org/configuration/userguide/user_guide.html

has been reworked to cover all the new and changed features.

The main purpose of this alpha release is to gather feedback from the
community about the reworked API. IT IS NOT YET PRODUCTION READY. It is
expected that there will still be some changes on the public API.

Below is a list of all changes in this version:

New features
------------

* CONFIGURATION-579:  A migration guide has been created which supports when upgrading from
                      version 1.x to 2.0.
* CONFIGURATION-559:  It is now possible to define default values for initialization
                      properties of configurations.
* CONFIGURATION-551:  The data type conversion mechanism has been made extensible. There is a
                      new interface ConversionHandler which controls the data type conversions
                      available for a configuration object. By setting a custom implementation,
                      conversions can be adapted or extended.
* CONFIGURATION-550:  Conversion to Character is now supported.
* CONFIGURATION-541:  Multi-file configurations are no longer restricted to XML configuration
                      files. Arbitrary file-based configurations are now supported.
* CONFIGURATION-535:  DatabaseConfiguration now provides get methods for querying its
                      properties defining the underlying database structures.
* CONFIGURATION-533:  DatabaseConfiguration now automatically converts CLOBs to strings if
                      they appear in property values.
* CONFIGURATION-525:  PropertiesConfiguration now keeps a comment at the bottom of a
                      properties file. A new footer property was added for reading and
                      writing this footer comment.
* CONFIGURATION-519:  Configuration objects are now created via configuration builders. A new
                      API for configuration builders has been added.
* CONFIGURATION-517:  Hierarchical configurations now provide methods to obtain sub
                      configurations for all child elements of a given key.
* CONFIGURATION-514:  Bean declarations now support constructor invocations.
* CONFIGURATION-512:  It is now possible to obtain an immutable view on a Configuration or
                      HierarchicalConfiguration object. New interfaces,
                      ImmutableConfiguration, and ImmutableHierarchicalConfiguration have
                      been introduced.
* CONFIGURATION-508:  Generic get() methods have been added to the Configuration interface.
                      These methods expect a target class and try to convert the value of
                      the specified property to this target class.
* CONFIGURATION-204:  With the new reloading mechanism automatic and periodic reloading checks
                      can be performed.
* CONFIGURATION-202:  Reloading checks can now be performed in a background thread.

Fixed Bugs
----------

* CONFIGURATION-582:  Fixed a StringIndexOutOfBoundsException in PropertiesConfigurationLayout
                      which was caused by lines containing only whitespace.
* CONFIGURATION-572:  When a CombinedConfiguration is cleared it removes itself as change
                      listener from all child configurations. This fixes a possible memory
                      leak.
* CONFIGURATION-570:  Fixed a possible ConcurrentModificationException when a SystemConfiguration
                      instance is passed to the append() or copy() methods.
* CONFIGURATION-567:  XMLBeanDeclaration now escapes node names before they are used to
                      determine nested properties. Thanks to Shen liang.

Changes
-------

* CONFIGURATION-591:  Removed methods from ConfigurationConverter related to ExtendedProperties.
                      This class is no longer supported by recent versions of Commons
                      Collections.
* CONFIGURATION-590:  Removed Serializable interface from all configuration implementations.
                      Some configuration classes declared this interface without being
                      actually serializable.
* CONFIGURATION-588:  The name of the top-level package and the maven coordinates have been
                      changed to allow a coexistence of Commons Configuration 1.x with 2.0.
* CONFIGURATION-584:  The event mechanism has been reworked. There is now a generic event
                      listener interface which can be used to receive notifications from
                      multiple types of event sources.
* CONFIGURATION-578:  The user's guide has been fully reworked to cover all new and enhanced
                      features of version 2.0.
* CONFIGURATION-577:  The dependency to Commons Collections is no longer needed.
* CONFIGURATION-576:  A new abstract base class for hierarchical configurations was introduced
                      which supports arbitrary hierarchical data structures. The type of the
                      nodes used by the configuration can now be specified as a generic type
                      argument. This makes the integration of other hierarchical structures
                      easier.
* CONFIGURATION-575:  Hierarchical configurations now operate on immutable structures.
                      Data is no longer represented by ConfigurationNode objects. The
                      ImmutableNode class now serves as data container.
* CONFIGURATION-573:  XPathExpressionEngine can now deal with namespace prefixes in node and
                      attribute names.
* CONFIGURATION-563:  The DefaultExpressionEngine class is now immutable. An instance can be
                      shared between multiple configuration objects.
* CONFIGURATION-562:  Improved the API of ExprLookup.
* CONFIGURATION-555:  Fixed a bug in the handling of the xml:space attribute in
                      XMLConfiguration. The attribute is now also applied to the current
                      element, not only to sub elements.
* CONFIGURATION-554:  BeanHelper is no longer a static utility class. Instances can be
                      created with a specific configuration of bean factories. There is still
                      a default instance which can be obtained via the BeanHelper.INSTANCE
                      field.
* CONFIGURATION-553:  The code for accessing configuration files has been reworked. Methods
                      related to locating configuration files have been moved from
                      ConfigurationUtils to a new FileLocatorUtils class. Customizable
                      strategy classes (implementing the new FileLocationStrategy) can be
                      used for searching for configuration files.
* CONFIGURATION-546:  BeanHelper can now process BeanDefinitions initializing properties of
                      collection types of their target beans. Thanks to Justin Couch.
* CONFIGURATION-544:  Added missing dependencies to build.xml. Thanks to Oliver Kopp.
* CONFIGURATION-542:  The mechanism for synchronizing configurations has been completely
                      redesigned. It is now based on Synchronizer objects which can be
                      configured by client code. A new chapter was added to the user's guide
                      regarding thread-safety of configurations.
* CONFIGURATION-540:  MapConfiguration now directly uses a Properties object passed to its
                      constructor as data store rather than copying it. This allows
                      SystemConfiguration to be connected to system properties; i.e.
                      changing a property through SystemConfiguration immediately affects
                      the corresponding system property.
* CONFIGURATION-539:  The deprecated INIConfiguration class was removed.
                      HierarchicalINIConfiguration was renamed to INIConfiguration.
* CONFIGURATION-537:  The deprecated ConfigurationFactory class was removed.
* CONFIGURATION-536:  File-based configurations are now implemented in a different way.
                      The interfaces FileConfiguration and ReloadingStrategy have been
                      removed, also the base classes AbstractFileConfiguration and
                      AbstractHierarchicalFileConfiguration. They are replaced by the
                      FileBased interface and the FileHandler class which implements
                      central I/O functionality. Reloading is now in the responsibility of
                      configuration builders.
* CONFIGURATION-534:  The includesAllowed property of PropertyConfiguration is now independent
                      from the existence of a base path.
* CONFIGURATION-530:  Concurrent access to configurations and reloading have been completely
                      redesigned. Because reloading is now handled by configuration builders
                      there is no need to acquire a lock in order to protected against a
                      reload operations.
* CONFIGURATION-527:  AbstractConfiguration.clearPropertyDirect() is now abstract. Thanks to Matthias Richter.
* CONFIGURATION-526:  XMLPropertiesConfiguration now supports loading from and saving to DOM
                      nodes. Thanks to Oliver Kopp.
* CONFIGURATION-524:  Interpolation now works correctly after a configuration was cloned.
                      The ConfigurationInterpolator instance is now cloned, too.
* CONFIGURATION-521:  ConfigurationUtils.fileFromUrl() now correctly handles URL containing
                      encoded percent characters. Thanks to Oliver Kopp.
* CONFIGURATION-520:  Support for reloading of configuration data has been reworked.
* CONFIGURATION-518:  Classes and interfaces related to interpolation have been slightly
                      reworked. ConfigurationInterpolator is now thread-safe. There are
                      multiple ways to define the ConfigurationInterpolator object to be
                      used by an AbstractConfiguration instance.
* CONFIGURATION-516:  PropertiesConfiguration no longer escapes double quotes on saving.
* CONFIGURATION-515:  The visibility of some internal methods of PropertiesConfiguration.PropertiesWriter
                      has been increased to protected. This simplifies the implementation of
                      a custom escaping strategy.
* CONFIGURATION-513:  HierarchicalConfiguration is now an interface. The base implementation
                      class is named BaseHierarchicalConfiguration.
* CONFIGURATION-506:  Removed obsolete nested classes Node and NodeVisitor of
                      HierarchicalConfiguration. The related deprecated class
                      ConfigurationKey was removed, too.
* CONFIGURATION-505:  XMLConfiguration no longer supports attributes with multiple values or
                      list delimiter parsing in attributes. This feature was complex and
                      error prone and brought little value to the user.
* CONFIGURATION-504:  SubnodeConfiguration now provides a new method for clearing it and
                      removing its root node from the parent configuration. The method
                      HierarchicalConfiguration.configurationsAt() now returns a list
                      of SubnodeConfiguration so that it is easier to make direct use of
                      this feature.
* CONFIGURATION-500:  XMLConfiguration now adds attributes of elements defining a list to
                      all list nodes.
* CONFIGURATION-496:  Concurrent access to configurations and reloading have been completely
                      redesigned. This should reduce the amount of synchronization.
* CONFIGURATION-486:  Removed some static fields for specifying global default values.
                      Using static fields in this way is thread-hostile. There are now
                      alternatives for setting default values.
* CONFIGURATION-462:  Updated dependency to Commons Lang from version 2.6 to 3.1.
* CONFIGURATION-419:  EventSource is now an interface. With BaseEventSource there is a
                      default implementation.
* CONFIGURATION-418:  The handling of list delimiters and their escape characters has been
                      reworked. A new ListDelimiterHandler interface was introduced allowing
                      applications to customize the treatment of list delimiters.
* CONFIGURATION-330:  Concurrent access to configurations has been reworked.
* CONFIGURATION-153:  It is now possible to define the strategy used for locating
                      configuration files.
* CONFIGURATION-136:  Reloading can no longer corrupt a configuration instance. This is now
                      handled by a configuration builder; the original configuration instance
                      is not modified.
* CONFIGURATION-26:   It is now possible to influence the conversion from a container object
                      (a collection or an array) to a single value (e.g. what is returned by
                      getString() if the current property has multiple values). Per default,
                      the first value is returned. By overriding methods of the
                      configuration's ConversionHandler, this behavior can be changed.


Historical list of changes: https://commons.apache.org/proper/commons-configuration/changes-report.html

For complete information on Apache Commons Configuration, including instructions on how to submit bug reports,
patches, or suggestions for improvement, see the Apache Commons Configuration website:

https://commons.apache.org/proper/commons-configuration/