1<document xmlns="http://maven.apache.org/changes/1.0.0" 2 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 3 xsi:schemaLocation="http://maven.apache.org/changes/1.0.0 http://maven.apache.org/plugins/maven-changes-plugin/xsd/changes-1.0.0.xsd"> 4 <properties> 5 <title>YAML 1.1 parser and emitter</title> 6 </properties> 7 <body> 8 <release version="1.32" date="2022-09-12" description="Maintenance"> 9 <action dev="asomov" type="fix" issue="543"> 10 Add a test for issue 543 (thanks to Henry Lin) 11 </action> 12 <action dev="asomov" type="fix" issue="547"> 13 Set the limit for incoming data to prevent a CVE report in NIST 14 By default it is 3 MB 15 </action> 16 <action dev="asomov" type="update"> 17 Format the source with Google style. 18 Info: https://stackoverflow.com/questions/49712148/maven-plugin-for-auto-formatting-code-to-match-google-checkstyle 19 Format: https://raw.githubusercontent.com/google/styleguide/gh-pages/eclipse-java-google-style.xml 20 Activation: ./mvnw clean install site -Preformat 21 </action> 22 <action dev="maslovalex" type="fix" issue="544"> 23 Support unescaped unicode characters for double-quoted scalars (thanks to Florian Waltenberger) 24 </action> 25 </release> 26 <release version="1.31" date="2022-08-27" description="Maintenance"> 27 <action dev="maslovalex" type="update"> 28 JDK 8 is required for tests 29 </action> 30 <action dev="asomov" type="update" issue="539"> 31 Fix false positive CVE-2020-13936 (thanks to Gaétan Collaud) 32 </action> 33 <action dev="asomov" type="fix" issue="537"> 34 Improved RE for integers (thanks to Petr Pucil) 35 </action> 36 <action dev="asomov" type="fix" issue="530"> 37 Add an opportunity to restrict data matched with Regular Expressions 38 to avoid possible attack when RE takes too many resources (detected by OSS-Fuzz) 39 </action> 40 <action dev="asomov" type="fix" issue="529"> 41 Show proper error message for invalid !!float and !!int scalar (detected by OSS-Fuzz) 42 </action> 43 <action dev="asomov" type="fix" issue="525"> 44 Restrict nested depth for collections to avoid DoS attacks (detected by OSS-Fuzz) 45 </action> 46 <action dev="asomov" type="add" issue="525"> 47 Add test for stackoverflow 48 </action> 49 <action dev="maslovalex" type="fix" issue="522"> 50 Deserializing key "on" fails with Exception 51 </action> 52 <action dev="asomov" type="update"> 53 Merged PR #7: https://bitbucket.org/snakeyaml/snakeyaml/pull-requests/7 (2022-04-04) 54 </action> 55 <action dev="asomov" type="update"> 56 Do not emit global TAGs by not keeping them in Parser 57 (breaks https://code.google.com/archive/p/snakeyaml/issues/149) 58 </action> 59 <action dev="asomov" type="add"> 60 Add an example with Lombok and ENV variable substitution (2021-12-29) 61 </action> 62 <action dev="asomov" type="update"> 63 Fix issues with comments 64 </action> 65 <action dev="asomov" type="update" issue="517"> 66 Recognise issue with trailing TAB 67 </action> 68 </release> 69 <release version="1.30" date="2021-12-14" description="Maintenance"> 70 <action dev="asomov" type="fix" issue="516"> 71 Remove snakeyaml.org 72 </action> 73 <action dev="asomov" type="update"> 74 Migrate to https://bitbucket.org/snakeyaml/snakeyaml (2021-10-23) 75 </action> 76 <action dev="asomov" type="update"> 77 Fix issues with comments 78 </action> 79 <action dev="asomov" type="fix" issue="506"> 80 Improve parsing a number starting with 0x (2021-06-28) 81 Take the Float pattern from ruamel: https://pypi.org/project/ruamel.yaml 82 </action> 83 </release> 84 <release version="1.29" date="2021-06-08" description="Maintenance"> 85 <action dev="Wolf2323" type="fix"> 86 Fix Events ordering and improve Node-Comment association (2021-05-13) 87 </action> 88 <action dev="asomov" type="fix"> 89 Fix corner case for comments where blank lines after plain token (2021-03-02) 90 </action> 91 <action dev="asomov" type="add"> 92 Add a test for issue 500 (2021-03-14) 93 </action> 94 <action dev="asomov" type="remove"> 95 Remove unused variable (2021-02-28) 96 </action> 97 </release> 98 <release version="1.28" date="2021-02-22" description="Maintenance"> 99 <action dev="maslovalex" type="fix"> 100 Fix tests to work on Windows (2021-02-19) 101 </action> 102 <action dev="asomov" type="add"> 103 Add enumCaseSensitive property to LoaderOptions to control constructing enum with case sensitivity (2021-01-05) 104 </action> 105 <action dev="asomov" type="fix" issue="493"> 106 ENV substitution default can contain special characters (2021-01-03) 107 </action> 108 <action dev="asomov" type="add"> 109 Allow for read and write YAML with Comments (2020-11-01) 110 </action> 111 <action dev="asomov" type="fix" issue="485"> 112 Alias names are too permissive compared to libyaml and future spec. 113 Follow https://github.com/yaml/yaml-spec/blob/master/rfc/RFC-0003.md (2020-10-06) 114 </action> 115 </release> 116 <release version="1.27" date="2020-08-31" description="Maintenance"> 117 <action dev="asomov" type="fix" issue="481"> 118 Serialize anchors that are not used by any alias (2020-08-14) 119 </action> 120 <action dev="asomov" type="fix" issue="416"> 121 Add indentWithIndicator option to improve dumping sequences (2020-07-14) 122 </action> 123 <action dev="asomov" type="fix" issue="480"> 124 Anchor should allow non ascii characters while dumping (2020-06-29) 125 </action> 126 <action dev="asomov" type="update" issue="remove"> 127 Remove Spring related tests because they are outdated and upgrading to Spring 5 128 makes the tests fail under JDK 7 (2020-05-02) 129 </action> 130 <action dev="asomov" type="update" issue="476"> 131 Make constructor of EnvScalarConstructor public (2020-04-24) 132 </action> 133 <action dev="asomov" type="fix" issue="474"> 134 Parse the value of byte and short after a narrowing primitive conversion (2020-04-16) 135 </action> 136 <action dev="asomov" type="add"> 137 Add test for different Line Break Characters in the error message (2020-03-09) 138 </action> 139 <action dev="asomov" type="update"> 140 Fix yet another OWASP false positive. It complains that the Spring controller makes SnakeYAML insecure 141 even though SnakeYAML does not use Spring controller and does not depend on Spring (but the tests do). 142 Bump spring.version from 3.2.17.RELEASE to 5.2.4.RELEASE (2020-03-08) 143 </action> 144 <action dev="asomov" type="update"> 145 Migrated to GIT (2020-02-29) 146 </action> 147 </release> 148 <release version="1.26" date="2020-02-28" description="Maintenance"> 149 <action dev="asomov" type="fix" issue="377"> 150 Allow configuration for preventing billion laughs attack (2020-02-24) 151 </action> 152 <action dev="asomov" type="update"> 153 Update Maven wrapper (2020-01-18) 154 </action> 155 <action dev="asomov" type="fix" issue="468"> 156 Parse ENV variables similar to how it works in docker-compose (2019-12-25) 157 </action> 158 <action dev="asomov" type="fix" issue="468"> 159 Allow non ASCII characters in the anchor names (2019-12-23) 160 </action> 161 <action dev="asomov" type="update" issue="462"> 162 Clean up composer internal maps after construction. Should not have any impact but 163 it does not harm (2019-10-25) 164 </action> 165 <action dev="asomov" type="update" issue="459"> 166 The '!' tag now works the same way as for PyYAML. (12 is parsed as int instead of string) 167 The spec files are modified (spec-08-07.canonical spec-08-07.data) 168 </action> 169 <action dev="asomov" type="add"> 170 Add test for not implemented "!" tag (2019-10-11) 171 </action> 172 <action dev="asomov" type="update"> 173 Refactor Events: expose Event.ID via a getter (2019-10-05) 174 </action> 175 <action dev="asomov" type="update"> 176 Refactor ScalarAnalysis: make it immutable (2019-09-28) 177 </action> 178 <action dev="asomov" type="add" issue="454"> 179 Add example for integer without time pattern (2019-08-22) 180 </action> 181 </release> 182 <release version="1.25" date="2019-08-13" description="Maintenance"> 183 <action dev="asomov" type="update"> 184 Deprecate setting tags in TypeDescription (2019-06-23) 185 </action> 186 <action dev="asomov" type="fix" issue="449"> 187 Add test for issue 449 (2019-06-19) 188 </action> 189 <action dev="asomov" type="add" issue="441"> 190 Restore the way to get anchor for a Node (2019-04-13) 191 </action> 192 <action dev="asomov" type="fix" issue="437"> 193 Introduce setting to keep !!str tag for String even when it contains non-printable chars (2019-03-24) 194 </action> 195 <action dev="asomov" type="update"> 196 Update plugin versions (2019-03-04) 197 </action> 198 </release> 199 <release version="1.24" date="2019-02-28" description="Maintenance"> 200 <action dev="asomov" type="update"> 201 Refactor BaseConstructor: Factored out postponed mapping logic so subclasses can effectively 202 override constructMapping2ndStep() and delegate to the postponed mapping logic. 203 This is backported from SnakeYAML engine (2019-01-26) 204 </action> 205 <action dev="asomov" type="fix" issue="431"> 206 Customize simple key length when dumping (2019-01-17) 207 </action> 208 <action dev="asomov" type="fix" issue="430"> 209 Wrap runtime exceptions into YAMLException (2019-01-14) 210 </action> 211 <action dev="asomov" type="fix"> 212 Fix: Null tag constructor not called when parsing top-level null value (2019-01-13) 213 (issue reported for snakeyaml-engine) 214 </action> 215 <action dev="asomov" type="fix" issue="429"> 216 Provide "Automatic-Module-Name" entry in MANIFEST (2018-12-16) 217 </action> 218 <action dev="asomov" type="fix" issue="426"> 219 Fix NPE when duplicate keys are not allowed and the key is null (2018-12-02) 220 </action> 221 <action dev="asomov" type="update"> 222 Support java.sql classes without the need to depend on java.sql module in java9+ (2018-11-06) 223 </action> 224 <action dev="asomov" type="update"> 225 Require Java 7 (2018-11-06) 226 </action> 227 <action dev="asomov" type="fix" issue="423"> 228 Date Serialization Fails for TimeZones on Daylight Savings Time (2018-11-06) 229 </action> 230 </release> 231 <release version="1.23" date="2018-08-27" description="Maintenance"> 232 <action dev="asomov" type="fix" issue="412"> 233 Add another getter for ScalarStyle to support backwards compatibility (2018-08-27) 234 </action> 235 </release> 236 <release version="1.22" date="2018-08-25" description="Maintenance"> 237 <action dev="asomov" type="update"> 238 Run tests under Java 11 (2018-08-19) 239 </action> 240 <action dev="asomov" type="update"> 241 Use Maven 3.5.4 (2018-08-19) 242 </action> 243 <action dev="asomov" type="fix" issue="412"> 244 Restore the Boolean constructors for Events and Nodes for binary compatibility 245 of dependent projects (2018-08-17) 246 </action> 247 <action dev="asomov" type="fix" issue="411"> 248 System Property "java.runtime.name" is not required to be defined (2018-08-12) 249 Ensure Compatibility with Graal 250 </action> 251 <action dev="asomov" type="fix" issue="409"> 252 Dumping Enum breaks when Enum value is Anonymous inner class (2018-08-07) 253 Solution: refactor the way to detect if the full tag can be omitted (and !!str is used instead). 254 Instead of checking whether the class for property and the class for the actual value is the same 255 we can just check that the property class is not java.lang.Enum 256 </action> 257 </release> 258 <release version="1.21" date="2018-04-13" description="Maintenance"> 259 <action dev="asomov" type="update"> 260 Scanner throws IndexOutOfBoundsException if no more token left but getToken() 261 or peekToken() called (2018-04-10) 262 </action> 263 <action dev="asomov" type="update"> 264 Enhance output of token IDs (2018-04-06) 265 </action> 266 <action dev="asomov" type="add"> 267 Mark: expose buffer and pointer (2018-04-06) 268 </action> 269 <action dev="asomov" type="fix" issue="401"> 270 Restore index in Mark - it is used in JRuby (2018-03-26) 271 </action> 272 <action dev="asomov" type="fix" issue="397"> 273 Plain scalars with colons in flow sequences/mappings are valid YAML (2018-03-03) 274 </action> 275 </release> 276 <release version="1.20" date="2018-02-28" description="Maintenance"> 277 <action dev="maslovalex" type="fix" issue="393"> 278 Improve reflective access operation to avoid warning under Java 9 (2018-02-24) 279 </action> 280 <action dev="asomov" type="update"> 281 Refactor collection node - flow style must not be null (2018-02-16) 282 </action> 283 <action dev="asomov" type="remove"> 284 Refactor: remove unused method isResolved in Node (2018-02-15) 285 </action> 286 <action dev="asomov" type="remove"> 287 Refactor: remove unused code in Tag (2018-02-15) 288 </action> 289 <action dev="asomov" type="update"> 290 Refactor nodes and events - use enum FlowStyle instead of Boolean (2018-02-10) 291 </action> 292 <action dev="asomov" type="update"> 293 Refactor ScalarToken, ScalarNode and ScalarEvent - use enum ScalarStyle instead of Character (2018-02-10) 294 </action> 295 <action dev="asomov" type="update"> 296 Refactor Token - remove unused code (2018-02-08) 297 </action> 298 <action dev="asomov" type="update"> 299 Refactor Mark - remove unused code (2018-02-06) 300 </action> 301 <action dev="asomov" type="fix" issue="395"> 302 Introduce DuplicateKeyException and report line number for duplicate keys 303 when creating non-Javabeans (2017-12-15) 304 </action> 305 </release> 306 <release version="1.19" date="2017-10-14" description="Maintenance"> 307 <action dev="maslovalex" type="update"> 308 Only use FIELD access for Android in PropertyUtils (2017-08-20) 309 </action> 310 <action dev="maslovalex" type="update"> 311 Add getAnnotations() and getAnnotation() methods to Property (2017-08-20) 312 </action> 313 <action dev="maslovalex" type="fix" issue="383"> 314 Some configuration properties of Representer are ignored. 315 </action> 316 <action dev="maslovalex" type="fix" issue="386"> 317 Fix order of duplicate keys indices to prevent wrong removals. 318 </action> 319 <action dev="maslovalex" type="fix" issue="382"> 320 Fix 382: same as 322 321 </action> 322 <action dev="maslovalex" type="fix" issue="322"> 323 Fix 322: if there is no getter try to get type information from a setter 324 </action> 325 <action dev="asomov" type="fix" issue="377"> 326 Add test for 'billion laughs attack' 327 </action> 328 <action dev="asomov" type="fix" issue="368"> 329 Relax final restriction on TypeDescription (2017-05-05) 330 </action> 331 <action dev="asomov" type="fix" issue="375"> 332 Empty yaml file must return null instead of throwing an exception when loading a JavaBean (2017-05-03) 333 </action> 334 <action dev="asomov" type="fix" issue="374"> 335 Fix Number when it is used as a JavaBean property with a custom Locale (2017-04-30) 336 </action> 337 <action dev="asomov" type="add" issue="373"> 338 Add redundant test (2017-04-06) 339 </action> 340 <action dev="asomov" type="update"> 341 Provide access to node's anchor, pull request#20 (2017-03-30) 342 </action> 343 <action dev="asomov" type="fix" issue="370"> 344 Remove redundant "Bundle-RequiredExecutionEnvironment: J2SE-1.5" (2017-03-16) 345 </action> 346 <action dev="asomov" type="fix" issue="364"> 347 Serializing Calendar objects with certain timezone offsets renders invalid YAML (2017-02-28) 348 </action> 349 </release> 350 <release version="1.18" date="2017-02-22" description="Maintenance"> 351 <action dev="asomov" type="fix" issue="358"> 352 Validate DumperOptions to prevent invalid YAML to be dumped (2017-01-12) 353 </action> 354 <action dev="asomov" type="fix" issue="355"> 355 Fix for emitter to split long plain string scalars over multiple lines (2017-01-10) 356 </action> 357 <action dev="asomov" type="update"> 358 Let Mark implement Serializable so that ParserException can be serialized (2016-12-15) 359 </action> 360 <action dev="asomov" type="update" issue="354"> 361 Add tests for issue 354 (2016-12-12) 362 </action> 363 <action dev="maslovalex" type="fix" issue="337"> 364 Throw exception in case of duplicate keys in MappingNode and 365 LoaderOptions.allowDuplicateKeys is false. (2016-11-25) 366 </action> 367 <action dev="maslovalex" type="fix" issue="351"> 368 Keep same nodes order on merge (preprocess keys for MappingNode 369 and remove duplicates keeping the last one). (2016-11-22) 370 </action> 371 <action dev="asomov" type="fix" issue="349"> 372 Ignore white spaces for base64 encoded scalar (2016-11-17) 373 </action> 374 <action dev="maslovalex" type="fix" issue="348"> 375 Not removing parent object when composed object is an anchor. (2016-10-13) 376 </action> 377 <action dev="asomov" type="fix" issue="323"> 378 Support "Miscellaneous Symbols and Pictographs" (2016-09-05) 379 </action> 380 <action dev="asomov" type="fix" issue="341"> 381 Fix NPE in BaseRepresenter.multiRepresenters if it contains 'null' as value (2016-05-03) 382 </action> 383 <action dev="asomov" type="update" issue="335"> 384 Add example for issue 335 - the same tag for different node kinds (2016-03-19) 385 </action> 386 <action dev="asomov" type="update" issue="332"> 387 Add example for issue 332 (2016-02-24) 388 </action> 389 <action dev="asomov" type="update"> 390 Build SnakeYAML for different JDKs with docker without building images (2016-02-22) 391 </action> 392 <action dev="asomov" type="update"> 393 Update plugin versions (2016-02-19) 394 </action> 395 </release> 396 <release version="1.17" date="2016-02-19" description="Maintenance"> 397 <action dev="maslovalex" type="fix" issue="318" due-to="Rog Sigal"> 398 Use Thread.currentThread.getContextClassLoader in Class.forName instead of default one (2016-02-15) 399 </action> 400 <action dev="asomov" type="update" issue="329"> 401 Add parameters to POM to change distribution server (2016-02-03) 402 </action> 403 <action dev="asomov" type="update" issue="326"> 404 Relax some of the modifiers to make integration easier (2016-02-02) 405 </action> 406 <action dev="maslovalex" type="update" issue="310"> 407 Make use of private/protected constructors for Scalars and 'immutable' objects. 408 Added 'src/test/java8' for Java8 specific tests (requires -Pwith-java8-tests) (2016-01-07) 409 </action> 410 <action dev="asomov" type="update" issue="320"> 411 Better support to customise BaseConstructor. Make 'composer' field and constructDocument() 412 method protected (2015-10-03) 413 </action> 414 <action dev="asomov" type="fix" issue="306"> 415 Better UUID support (2015-09-23) 416 </action> 417 <action dev="asomov" type="add"> 418 Use Polyglot Maven: add support for YAML POM (2015-09-10) 419 </action> 420 <action dev="asomov" type="fix" issue="314"> 421 Provide ability to customize anchor names (2015-08-25) 422 </action> 423 </release> 424 <release version="1.16" date="2015-08-18" description="Maintenance"> 425 <action dev="asomov" type="fix" issue="308"> 426 Provide Docker image for testing under different Java 8 (2015-06-19) 427 </action> 428 <action dev="asomov" type="fix" issue="302"> 429 Convert binary byte[] to String when it matches the JavaBean property (2015-05-26) 430 </action> 431 <action dev="asomov" type="update"> 432 The source code migrated to Bitbucket. Old commits (older then 6 years) have 433 been removed. (2015-05-20) 434 </action> 435 <action dev="asomov" type="fix" issue="212"> 436 Fix a typo in an error message in ScannerImpl (2015-05-19) 437 </action> 438 <action dev="asomov" type="fix" issue="209"> 439 Do not print special characters in the error message (2015-04-16) 440 </action> 441 <action dev="asomov" type="fix" issue="199"> 442 Evaluate implementations for duplicate mapping keys. 443 </action> 444 </release> 445 <release version="1.15" date="2015-02-19" description="Maintenance"> 446 <action dev="asomov" type="update"> 447 Apply FindBugs and PMD recommendations (2015-02-16) 448 </action> 449 <action dev="asomov" type="update"> 450 Added split lines option to DumperOptions to allow line splitting to be disabled. (2015-02-08) 451 </action> 452 <action dev="asomov" type="update"> 453 Use Maven 3 and update plugin versions (2015-02-05) 454 </action> 455 <action dev="asomov" type="update" issue="205"> 456 Add test to clarify iOS emoji character in the surrogate range (2015-02-03) 457 </action> 458 <action dev="asomov" type="fix" issue="201"> 459 Fix grammar error in exception message (2014-11-18) 460 </action> 461 </release> 462 <release version="1.14" date="2014-08-29" description="Maintenance"> 463 <action dev="maslovalex" type="fix" issue="197"> 464 Load JavaBean with fields using custom constructors (2014-08-18) 465 </action> 466 <action dev="asomov" type="fix" issue="192"> 467 Drop support for "Value Key Language-Independent Type" and '=' a standard character (2014-05-22) 468 </action> 469 <action dev="maslovalex" type="fix" issue="191"> 470 Improve error message for invalid YAML document (2014-05-21) 471 </action> 472 <action dev="asomov" type="fix" issue="188"> 473 Improve error message for invalid YAML document (2014-03-26) 474 </action> 475 <action dev="asomov" type="fix" issue="183"> 476 Support Number class (2013-11-07) 477 </action> 478 <action dev="asomov" type="fix" issue="182"> 479 Double.POSITIVE_INFINITY applied to float fields (2013-11-07) 480 </action> 481 </release> 482 <release version="1.13" date="2013-08-29" description="Maintenance"> 483 <action dev="asomov" type="fix" issue="178"> 484 OSGi: Specify version for exported packages (2013-06-27) 485 </action> 486 <action dev="asomov" type="fix" issue="177"> 487 Improve error report while parsing a JavaBean (2013-05-14) 488 </action> 489 <action dev="Jordan" type="fix" issue="135"> 490 Arrays of primitives are now fully supported (2013-04-16) 491 </action> 492 <action dev="asomov" type="fix" issue="174"> 493 Duplicate anchors in an input document should not be an error (2013-04-03) 494 </action> 495 <action dev="asomov" type="fix" issue="172"> 496 Using a locale with minimum number fraction digits breaks anchor generation (2013-03-30) 497 </action> 498 <action dev="asomov" type="fix" issue="171"> 499 Use more generic generics in BaseRepresenter (2013-03-30) 500 </action> 501 </release> 502 <release version="1.12" date="2013-03-02" description="Maintenance"> 503 <action dev="asomov" type="update"> 504 The build is using JDK 1.6 (2013-03-02) 505 </action> 506 <action dev="asomov" type="fix" issue="169"> 507 Make Constructor.typeDefinitions protected to be more flexible (2013-02-18) 508 </action> 509 <action dev="asomov" type="remove"> 510 Remove file AUTHORS because it does not reflect the actual situation (2012-11-09) 511 </action> 512 <action dev="asomov" type="update"> 513 Improve the error message when a TAB character starts a token (2012-11-06) 514 </action> 515 </release> 516 <release version="1.11" date="2012-09-29" description="Maintenance"> 517 <action dev="asomov" type="fix" issue="158"> 518 Fix issue 158: improve support for 32-bit characters (UTF-16 surrogate pairs) (2012-09-29) 519 </action> 520 <action dev="asomov" type="fix" issue="146"> 521 Fix issue 146: empty tags should not force explicit document start (2012-09-29) 522 </action> 523 <action dev="asomov" type="fix" issue="156"> 524 Fix issue 156: setSkipMissingProperties fails for non-scalar values (2012-09-05) 525 </action> 526 <action dev="asomov" type="fix" issue="155"> 527 Fix issue 155: SnakeYAML must always eat its own food - a YAML document created by itself must 528 be read without exceptions (2012-09-04) 529 </action> 530 <action dev="asomov" type="update" issue="154"> 531 Fix issue 154: Add option to skip missing properties when deserializing YAML into Java object (2012-07-25) 532 </action> 533 <action dev="asomov" type="update"> 534 Add a test for issue 150 (2012-06-17) 535 </action> 536 <action dev="asomov" type="update"> 537 Add a test for issue 151 (2012-06-14) 538 </action> 539 <action dev="asomov" type="fix"> 540 Fix issue 149: Directives are no longer lost between documents (2012-06-10) 541 </action> 542 <action dev="asomov" type="update"> 543 Refactor: use Version enum instead of Array of Integers. 544 This is done to simplify fixing issue 149 (2012-06-09) 545 </action> 546 <action dev="asomov" type="fix"> 547 Add tests for issue 148 (2012-06-07) 548 </action> 549 <action dev="asomov" type="fix"> 550 Fix issue 147: Serialized representation of character U+FFFD causes exception on deserialization (2012-06-05) 551 </action> 552 <action dev="asomov" type="fix"> 553 Fix issue 145: exception.getMessage() must show the line number as exception.toString() does (2012-04-03) 554 </action> 555 <action dev="maslovalex" type="fix"> 556 Fix issue 144: improve type inference for Compact Object Notation (2012-03-16) 557 </action> 558 <action dev="maslovalex" type="add"> 559 Improve Android support 560 </action> 561 </release> 562 <release version="1.10" date="2012-02-08" description="Maintenance"> 563 <action dev="asomov" type="update"> 564 Fix issue 141: TimeZone is configurable in DumperOptions (2012-02-03) 565 </action> 566 <action dev="asomov" type="update"> 567 Refactor with PMD: minor non-functional improvements (2012-01-28) 568 </action> 569 <action dev="asomov" type="update"> 570 Refactor with PMD: Avoid unused method parameter 'index' in 571 Serializer and Emitter (2012-01-28) 572 </action> 573 <action dev="asomov" type="update"> 574 Refactor with PMD: Composer - Avoid unused method parameter 'index' in 575 'Composer.composeNode(Node parent, Object index)''. It was used 576 in PyYAML for kind of XPath for YAML, but it was not imported from PyYAML (2012-01-28) 577 </action> 578 <action dev="asomov" type="update"> 579 Refactor Emitter: the SPACE mutable static field could be changed by malicious code or by accident. 580 Boxed value is unboxed and then immediately reboxed (2012-01-28) 581 </action> 582 <action dev="asomov" type="remove"> 583 Refactor with FindBugs: remove unused ScalarAnalysis.allowDoubleQuoted (2012-01-28) 584 </action> 585 <action dev="asomov" type="update"> 586 Refactor with FindBugs: do not rely on default encoding (2012-01-28) 587 </action> 588 <action dev="asomov" type="update"> 589 Refactor: apply FindBugs recommendations (2012-01-28) 590 </action> 591 <action dev="maslovalex" type="fix"> 592 Fix issue 139: merge should use last key in map (2012-01-24) 593 </action> 594 <action dev="asomov" type="fix"> 595 Fix issue 136: tabs are allowed in plain scalars. This is a deviation from PyYAML (2012-01-11) 596 </action> 597 <action dev="asomov" type="add" issue="138"> 598 Expose internal data of ReaderException (2012-01-06) 599 </action> 600 <action dev="asomov" type="fix" issue="137"> 601 Respect supplementary characters (2012-01-06) 602 </action> 603 <action dev="asomov" type="add"> 604 Use http://mercurial.selenic.com/wiki/EolExtension to force LF as line separator 605 for all operating systems (2011-12-20) 606 </action> 607 <action dev="asomov" type="add"> 608 Add a test for issue 136 (2011-12-14) 609 </action> 610 <action dev="asomov" type="remove"> 611 Deprecate the DumperOptions.calculateScalarStyle() method because it was introduced as a quick 612 fix for issue 29. Now it should not be required at all (because of the fix for issue 66), 613 or it should be implemented in the Representer (in RepresentString) (2011-10-10) 614 </action> 615 <action dev="asomov" type="fix"> 616 Fix issue 66: literal scalar style is used by default for multiline scalars (2011-10-10) 617 </action> 618 <action dev="asomov" type="add"> 619 An example added: how to dump multiline literal scalars (2011-10-04) 620 </action> 621 <action dev="asomov" type="add"> 622 An example added: how to dump recursive object for issue 133 (2011-09-14) 623 </action> 624 <action dev="asomov" type="add"> 625 A test added for issue 132 (2011-09-13) 626 </action> 627 <action dev="asomov" type="update"> 628 Finish 1.9 release (2011-08-15) 629 </action> 630 </release> 631 <release version="1.9" date="2011-08-15" description="Introduce Yaml.loadAs() and Yaml.dumpAs() methods"> 632 <action dev="asomov" type="update"> 633 Add a test to prove that SnakeYAML is not affected by the problem reported for libyaml 634 at http://pyyaml.org/ticket/196 (2011-07-28) 635 </action> 636 <action dev="asomov" type="fix" issue="128"> 637 Since timestamp contains ':' characters it is dumped with single quoted scalar style 638 in the flow context. The single quoted scalar style causes to dump the explicit tag. 639 In the block context the plain scalar can be used and the tag is not required. It may cause 640 unpredictable behaviour if the tag is required. See the comments in JodaTimeExampleTest (2011-07-25) 641 </action> 642 <action dev="asomov" type="fix" issue="130"> 643 Fix scientific notation inconsistency in the YAML 1.1 specification: 644 scalar '8e-06' should be parsed as a Double (2011-07-24) 645 </action> 646 <action dev="asomov" type="remove" issue="127"> 647 Do not allow to override BaseRepresenter.representData(Object data) because 648 users should instead implement Represent interface (2011-07-21) 649 </action> 650 <action dev="asomov" type="remove" issue="124"> 651 Deprecate DumperOptions.explicitRoot (2011-07-20) 652 </action> 653 <action dev="asomov" type="add" issue="124"> 654 Add Yaml.dumpAs(Object, Tag.MAP, FlowStyle) and Yaml.dumpAsMap(Object) methods. JavaBeanDumper is marked as deprecated (2011-07-16) 655 </action> 656 <action dev="asomov" type="add" issue="127"> 657 Add example to show how to dump a custom class (2011-07-12) 658 </action> 659 <action dev="asomov" type="add" issue="129"> 660 Add Yaml.serialize(Node) low level method to the public API (2011-07-14) 661 </action> 662 <action dev="asomov" type="add" issue="129"> 663 Add Yaml.represent(Object) low level method to the public API (2011-07-14) 664 </action> 665 <action dev="asomov" type="add" issue="125"> 666 Add support for Maven 3 via 'm3' profile (2011-07-10) 667 </action> 668 <action dev="asomov" type="remove" issue="124"> 669 Remove deprecated JavaBeanParser (2011-07-05) 670 </action> 671 <action dev="asomov" type="remove" issue="124"> 672 Remove redundant JavaBeanDumper.classTags set (2011-07-03) 673 </action> 674 <action dev="asomov" type="add" issue="124"> 675 Add Yaml.loadAs() methods. JavaBeanLoader is marked as deprecated (2011-07-03) 676 </action> 677 <action dev="asomov" type="remove" issue="124"> 678 Remove TypeDescription.root property to prepare issue 124. This is a minor backwards incompatible change. 679 Now instead of setting as root, the TypeDescription must be passed to the Contructor's constructor 680 to be taken as the root definition (2011-07-03) 681 </action> 682 <action dev="asomov" type="fix" issue="121" due-to="Jaromir"> 683 Fix: close files in tests to avoid a possible file handle limit (2011-06-09) 684 </action> 685 <action dev="asomov" type="fix" issue="116" due-to="Jim Peterson"> 686 Fix: Improved support for empty JavaBeans (2011-06-09) 687 </action> 688 <action dev="asomov" type="fix" issue="112" due-to="Lethargish"> 689 Fix: Improved support for parameterised types in collections (2011-05-25) 690 </action> 691 <action dev="asomov" type="fix" issue="115" due-to="elkniwt"> 692 Fix: parameterised JavaBeans fail to load and dump because they are treated as Maps (2011-05-16) 693 </action> 694 <action dev="asomov" type="fix" issue="114" due-to="gileadis"> 695 Fix: Do not remove root tags of JavaBeans when it is not explicitly requested (2011-04-20) 696 </action> 697 <action dev="asomov" type="fix" issue="111" due-to="JordanAngold"> 698 Fix: Long escaped tag URI sequences throw BufferOverflowException (2011-03-03) 699 </action> 700 <action dev="asomov" type="fix" issue="110" due-to="dmitry.s.mamonov"> 701 Fix: introduce a package for external libraries and move there the 64Coder 702 and the Google's URL encoder (2011-02-24) 703 </action> 704 <action dev="asomov" type="fix" issue="109" due-to="cjalmeida"> 705 Fix: ancient years must be dumped with leading zeros (2011-02-19) 706 </action> 707 <action dev="asomov" type="remove" due-to="JordanAngold"> 708 Remove unused code in Constructor: Modifier.isAbstract() is not needed any more (2011-02-18) 709 </action> 710 <action dev="JordanAngold" type="fix" issue="108"> 711 Enum's name property shall be dumped instead of the 'toString()' output (2011-02-16) 712 </action> 713 </release> 714 <release version="1.8" date="2011-02-15" description="Performance improvement"> 715 <action dev="asomov" type="add"> 716 Add example to howto Wiki: 717 How_to_substitute_object_in_YAML_document_with_a_custom_object (2011-01-27) 718 </action> 719 <action dev="asomov" type="update"> 720 When the YAML document to be loaded is provided as String parse it directly 721 without making a Reader first (2011-01-23) 722 </action> 723 <action dev="asomov" type="fix" issue="106"> 724 Immutable data structures in StreamReader allow to share the same buffer for all 725 the Mark instances. It makes 'withMarkContext' setting redundant (2011-01-19) 726 </action> 727 <action dev="maslovalex" type="update" issue="100"> 728 Merge JavaBean properties when an explicit tag is provided (2011-01-11) 729 </action> 730 <action dev="asomov" type="update" issue="99"> 731 Add an example for escaping line breaks in binary content (2011-01-03) 732 </action> 733 <action dev="asomov" type="update" issue="97"> 734 Propose a solution for JavaBeans to support SortedSet property when it is encoded 735 as a sequence (2010-11-24) 736 </action> 737 <action dev="asomov" type="update" issue="59"> 738 Simplify the way how the order of JavaBean properties is specified. Introduce 739 PropertyUtils.createPropertySet() method to be overridden when a specific order 740 is expected (2010-11-23) 741 </action> 742 <action dev="maslovalex" type="fix" issue="95"> 743 Fix: Loading of generic collections with Array parameter(s). (2010-11-16) 744 </action> 745 <action dev="asomov" type="update" issue="94"> 746 Add ChangeRuntimeClassTest as an example how to change a class for a global tag (2010-11-05) 747 </action> 748 <action dev="asomov" type="update"> 749 Inner objects in Constructor become protected to be more flexible when Constructor 750 is expended (2010-10-03) 751 </action> 752 <action dev="asomov" type="update" issue="91"> 753 Apply www.snakeyaml.org domain name (2010-09-20) 754 </action> 755 <action dev="asomov" type="fix" issue="90"> 756 Move Base64Coder into another package to keep a separate copyright statement. 757 Base64Coder is left unchanged (2010-09-19) 758 </action> 759 <action dev="asomov" type="fix" issue="69"> 760 Iterable should not be serialised as sequence (2010-09-16) 761 </action> 762 <action dev="asomov" type="update"> 763 Introduce 'fast' Maven profile to quickly build cobertura reports (2010-09-16) 764 </action> 765 <action dev="asomov" type="update" issue="89"> 766 Fix: Specify plugin versions in POM (2010-09-15) 767 </action> 768 <action dev="maslovalex" type="fix" issue="88"> 769 Fix: Custom tag erased when referenced from generic collection (2010-09-15) 770 </action> 771 <action dev="asomov" type="update"> 772 Minor refactoring in Emitter to improve performance: save calls to Constant.has() (2010-09-13) 773 </action> 774 <action dev="maslovalex" type="update"> 775 Minor refactorings in Emitter to improve performance: create less Strings [r9185e0b3] (2010-09-10) 776 </action> 777 <action dev="asomov" type="update" issue="79"> 778 Introduce LoaderOptions to be able to specify configuration while loading (2010-09-03) 779 </action> 780 <action dev="asomov" type="fix" issue="81"> 781 Representer.representJavaBeanProperty() is given the wrong tag. Instead of the property tag, 782 the tag for the JavaBean itself is provided. (2010-09-01) 783 </action> 784 <action dev="asomov" type="update"> 785 Rename JvmDetector into GenericsBugDetector (2010-08-31) 786 </action> 787 <action dev="asomov" type="fix" issue="80" due-to="SebastienRainville"> 788 Fix: Timestamp is not parsed properly when milliseconds start with 0 (2010-08-24) 789 </action> 790 <action dev="maslovalex" type="update" issue="79"> 791 Context for error reporting consumes a lot of resources (2010-08-21) 792 </action> 793 <action dev="asomov" type="remove"> 794 Cleanup unused code in deprecated Loader and Dumper (2010-08-13) 795 </action> 796 </release> 797 <release version="1.7" date="2010-08-12" description="Simplify public API (drop Loader and Dumper)"> 798 <action dev="asomov" type="update"> 799 Eclipse does not run JUnit 4 tests when they are launched for the whole project (2010-08-11) 800 </action> 801 <action dev="maslovalex" type="update" issue="55"> 802 Share PropertyUtils if not explicitly set in Constructor or Representer 803 (BeanAccess.FIELD works properly when JavaBean is identified by a root tag) (2010-08-11) 804 </action> 805 <action dev="asomov" type="update"> 806 Create 1.7 Release Candidate 1 (2010-08-11) 807 </action> 808 <action dev="asomov" type="update" issue="77"> 809 Simplify public API: Drop Dumper (2010-08-06) 810 </action> 811 <action dev="asomov" type="update" issue="77"> 812 Simplify public API: Drop Loader (2010-08-05) 813 </action> 814 <action dev="asomov" type="update" issue="75" due-to="jon.p.hermes"> 815 Add examples to create scalars that match custom regular expression: 816 CustomImplicitResolverTest, CustomBeanResolverTest (2010-08-03) 817 </action> 818 <action dev="asomov" type="fix" issue="74" due-to="Kevin Menard"> 819 Do not use redundant tags for arrays which are JavaBean properties. (2010-07-21) 820 </action> 821 <action dev="asomov" type="update"> 822 RecursiveSetTest proves that it is possible to construct a recursive set (2010-07-20) 823 </action> 824 <action dev="asomov" type="add" issue="73" due-to="birnbuazn"> 825 Provide sequence support for loading java.util.Set. Also provide an example 826 to serialise a java.util.Set as a sequence. (2010-07-19) 827 </action> 828 <action dev="asomov" type="add" issue="72" due-to="birnbuazn"> 829 Support java.util.Collection as a parent for List and Set (2010-07-09) 830 </action> 831 <action dev="maslovalex" type="add" issue="55" due-to="birnbuazn"> 832 Allow direct field access bypassing setters and getters. Empty constructor 833 is required to support 2-step construction (2010-07-02) 834 </action> 835 <action dev="asomov" type="update" issue="69"> 836 Serialise Iterator and Iterable as sequences (2010-06-25) 837 </action> 838 <action dev="asomov" type="update" due-to="maslovalex"> 839 Change error message when 'No suitable constructor with N arguments found for class' (2010-06-23) 840 </action> 841 <action dev="asomov" type="add" due-to="Antony Stubbs"> 842 Add JodaTime example (2010-06-04) 843 </action> 844 <action dev="asomov" type="add" issue="67" due-to="Manuel Sugawara"> 845 Add possibility to create a Tag out of an URI (2010-05-31) 846 </action> 847 <action dev="asomov" type="update"> 848 URLDecoder.decode() does not fail when UTF-8 is invalid. Use 849 CodingErrorAction.REPORT to implement the failure (2010-05-21) 850 </action> 851 <action dev="maslovalex" type="update"> 852 Fix generic collections which contain other collections (2010-05-18) 853 </action> 854 <action dev="asomov" type="fix" issue="67" due-to="Manuel Sugawara"> 855 Fix: java classes containing non-ASCII characters in names are 856 incorrectly encoded (2010-05-14) 857 </action> 858 <action dev="asomov" type="fix" issue="65" due-to="lerch.johannes"> 859 Fix: add checks for null arguments for JavaBeanDumper (2010-04-27) 860 </action> 861 <action dev="asomov" type="add"> 862 Add a test to see how stack trace is serialised (2010-04-27) 863 </action> 864 <action dev="asomov" type="fix" issue="64" due-to="maxim.moschko"> 865 ClassCastException in Representer when working with ParameterizedType (2010-04-25) 866 </action> 867 <action dev="asomov" type="update"> 868 Improve toString() method for Node. Since scalars cannot be recursive 869 they can be printed (2010-04-15) 870 </action> 871 <action dev="maslovalex" type="fix" issue="63" due-to="Udo"> 872 Refactor the way arrays are constructed (2010-04-15) 873 </action> 874 <action dev="asomov" type="fix" issue="62"> 875 Add examples for dumping custom values for !!bool and !!null (2010-04-13) 876 </action> 877 <action dev="asomov" type="fix" issue="61"> 878 Fix: ClassCastException when dumping generic bean (2010-04-11) 879 </action> 880 <action dev="asomov" type="fix" issue="59"> 881 Provide an example for changing JavaBean properties order (2010-04-01) 882 </action> 883 <action dev="asomov" type="fix" issue="60"> 884 Provide example for skipping null and empty collections (2010-03-29) 885 </action> 886 <action dev="asomov" type="fix" issue="58" due-to="jeff.caulfield"> 887 JavaBeanDumper.dump throws NullPointerException on list property 888 with null element (2010-03-23) 889 </action> 890 <action dev="asomov" type="fix" issue="56" due-to="DZeiss"> 891 Make constructors in SafeConstructor public (2010-03-16) 892 </action> 893 <action dev="asomov" type="update" due-to="David Bernard"> 894 Releases and snapshots are available in the Sonatype Maven repository. 895 https://docs.sonatype.org/display/Repository/Sonatype+OSS+Maven+Repository+Usage+Guide 896 </action> 897 <action dev="obastard" type="fix" issue="53" due-to="obastard"> 898 Enhancement for a pretty format that combines BLOCK and FLOW (2010-03-03) 899 </action> 900 <action dev="asomov" type="fix" issue="50" due-to="sualeh.fatehi"> 901 Unable to dump JavaBean that inherits from a protected base class (2010-03-02) 902 </action> 903 <action dev="asomov" type="update"> 904 Format source (2010-03-01) 905 </action> 906 <action dev="asomov" type="update"> 907 Use Token.ID and Event.ID instead of just ID (2010-03-01) 908 </action> 909 <action dev="asomov" type="update"> 910 Issue 50 fails in Eclipse but works with Maven (2010-03-01) 911 </action> 912 </release> 913 <release version="1.6" date="2010-02-26" description="introduce Tag class"> 914 <action dev="asomov" type="update"> 915 Release Candidate 2 is available (2010-02-24) 916 </action> 917 <action dev="asomov" type="fix" issue="47" due-to="obastard"> 918 Don't dump read-only properties by default. DumperOptions gets a setting to 919 include read-only JavaBean properties. 920 This is no backwards compatible change (2010-02-19) 921 </action> 922 <action dev="asomov" type="fix" issue="49" due-to="obastard"> 923 Support GregorianCalendar. Due to Daylight Saving Time parsing the timestamp with 924 a TimeZone cannot determine the exact time (2010-02-19) 925 </action> 926 <action dev="asomov" type="fix" issue="51" due-to="johann.Werner"> 927 Some Unicode characters are wrongly replaced by \x{fffd} during 928 double quoted style dump (2010-02-15) 929 </action> 930 <action dev="asomov" type="fix" issue="48" due-to="obastard"> 931 Introduce representJavaBeanProperty() method in Representer. The method 932 can be overridden to simplify custom JavaBean representation (2010-02-12) 933 </action> 934 <action dev="asomov" type="update"> 935 Release Candidate 1 is available (2010-02-01) 936 </action> 937 <action dev="asomov" type="add"> 938 Representer.representJavaBean() returns MappingNode (2010-01-26) 939 </action> 940 <action dev="asomov" type="add"> 941 Add example of serialising static fields (2010-01-26) 942 </action> 943 <action dev="asomov" type="add"> 944 Add example of serialising java.io.File as scalar node for issue 46 (2010-01-25) 945 </action> 946 <action dev="asomov" type="update"> 947 Refactor: introduce Chomping to avoid using null as value for Boolean. 948 Stay in line with Scala port where null is not allowed (2010-01-19) 949 </action> 950 <action dev="asomov" type="update"> 951 Refactor: use Event.ID enum instead of classes (2010-01-15) 952 </action> 953 <action dev="asomov" type="update"> 954 Refactor: use Token.ID enum instead of classes (2010-01-15) 955 </action> 956 <action dev="asomov" type="update"> 957 Refactor: use generic classes for DirectiveToken (2010-01-14) 958 </action> 959 <action dev="asomov" type="update"> 960 Refactor: rename Reader to StreamReader to avoid name conflict with java.io.Reader (2010-01-13) 961 </action> 962 <action dev="asomov" type="update"> 963 Refactor: use StringBuilder instead of StringBuffer (2010-01-12) 964 </action> 965 <action dev="asomov" type="update"> 966 Refactor: introduce Constant class to share String constants (2010-01-12) 967 </action> 968 <action dev="asomov" type="update"> 969 Keep Tag.equals(String) to simplify transition to Tag class (2010-01-08) 970 </action> 971 <action dev="asomov" type="update"> 972 Refactor: introduce Tag instead of Tags. Nodes use Tag class instead of String (2010-01-05) 973 </action> 974 <action dev="asomov" type="fix" issue="42" due-to="Artem"> 975 BaseConstructor shall give more flexibility to choose a constructor at runtime (2010-01-08) 976 </action> 977 <action dev="asomov" type="update"> 978 Refactor: introduce TagTuple instead of String[] (2010-01-04) 979 </action> 980 <action dev="asomov" type="fix" issue="40" due-to="sitrious"> 981 Ignore tags when they are compatible with the runtime class (2010-01-04) 982 </action> 983 <action dev="asomov" type="add"> 984 Add example to ignore unknown tags (2009-12-08) 985 </action> 986 <action dev="asomov" type="add"> 987 Add Ruby example (2009-12-08) 988 </action> 989 <action dev="asomov" type="update"> 990 Do not omit the tag for JavaBean properties when the tag is explicitly defined (2009-12-08) 991 </action> 992 <action dev="asomov" type="fix" issue="38" due-to="gchpaco"> 993 Fix ID format for numbers over 999 (2009-12-05) 994 </action> 995 <action dev="asomov" type="fix" issue="29" due-to="grignaak"> 996 Allow separate option in DumperOptions for long strings (2009-11-16) 997 </action> 998 <action dev="asomov" type="add"> 999 JavaBeanDumper: add possibility to define a custom Representer (2009-11-25) 1000 </action> 1001 <action dev="asomov" type="fix" issue="36"> 1002 Introduce multi contructors (tag prefix). A family of tags may be processed 1003 by a single constructor (2009-11-25) 1004 </action> 1005 <action dev="asomov" type="update"> 1006 Refactor BaseConstructor: simplify second step for recursive structures (2009-11-25) 1007 </action> 1008 <action dev="asomov" type="add"> 1009 Add FilterPropertyToDumpTest to show how to filter JavaBean properties (2009-11-24) 1010 </action> 1011 <action dev="asomov" type="add"> 1012 Add FilterClassesConstructorTest to show how to filter created classes (2009-11-16) 1013 </action> 1014 <action dev="asomov" type="update" due-to="Stefan"> 1015 Improve JavaDoc (2009-11-12) 1016 </action> 1017 <action dev="asomov" type="add"> 1018 Add Velocity example (2009-11-03) 1019 </action> 1020 <action dev="asomov" type="update"> 1021 Refactor: rename Tuple to RecursiveTuple and hide it inside BaseConstructor (2009-11-03) 1022 </action> 1023 </release> 1024 <release version="1.5" date="2009-10-30" description="Improve usage of generic collections in JavaBeans"> 1025 <action dev="asomov" type="fix" issue="27" due-to="Polyglot Maven team"> 1026 Extend Resolver to support custom implicit types (2009-10-27) 1027 </action> 1028 <action dev="asomov" type="update"> 1029 Performance improvement: use ArrayStack instead of Stack which extends Vector (2009-10-20) 1030 </action> 1031 <action dev="asomov" type="fix" issue="25" due-to="Benjamin Bentmann"> 1032 Improve usage of generic collections: while type erase makes no difference between 1033 Class< Foo> and Class< Bar> at runtime, the information about generics is still 1034 accessible via reflection from Method/Field. (2009-10-19) 1035 </action> 1036 <action dev="asomov" type="update"> 1037 Fix ConstructYamlObject: support recursive objects. Introduce 'resolved' 1038 property for Nodes. This property supposed to help to distinguish explicit tag 1039 from the resolved tag (2009-10-19) 1040 </action> 1041 <action dev="asomov" type="update"> 1042 Refactor: use rootTag instead of rootType (for Class) in BaseConstructor. This is done to 1043 solve the priority problem: normally explicit tag has more priority then runtime class but 1044 for the root tag it is the other way around (2009-10-19) 1045 </action> 1046 <action dev="asomov" type="fix" issue="24" due-to="shrode"> 1047 Line numbers reported in Exceptions are Zero based, should be 1 based (2009-10-12) 1048 </action> 1049 <action dev="asomov" type="fix" issue="21" due-to="ashwin.jayaprakash"> 1050 Support arrays of reference types as JavaBean properties (2009-09-22) 1051 </action> 1052 <action dev="asomov" type="fix" issue="17" due-to="jcucurull"> 1053 Respect root tag for sequences (2009-09-04) 1054 </action> 1055 <action dev="asomov" type="fix" issue="18" due-to="creiniger"> 1056 SafeRepresenter respects custom tags for standard Java classes where standard tag has 1057 more then one Java implementation available (Long, List, Map, Date etc) (2009-09-03) 1058 </action> 1059 <action dev="asomov" type="add"> 1060 Add possibility to define a custom Class Loader. (2009-09-01) 1061 </action> 1062 <action dev="asomov" type="fix"> 1063 Fixed an obscure scanner error not reported when there is no line break at the end 1064 of the stream. The fix is imported from PyYAML 3.09 {ticket 118} (2009-08-31) 1065 </action> 1066 <action dev="asomov" type="fix" issue="16" due-to="infinity0x"> 1067 Cache JavaBean class properties. Tests show that the loading has become a few percents faster (2009-08-31) 1068 </action> 1069 <action dev="asomov" type="add"> 1070 Introduce ArrayStack to use push() and pop() instead of standard (and too verbose) 1071 'remove(size()-1)' (2009-08-27) 1072 </action> 1073 <action dev="asomov" type="fix" issue="14" due-to="infinity0x"> 1074 Fix: ArrayList is more efficient than LinkedList (2009-08-26) 1075 </action> 1076 </release> 1077 <release version="1.4" date="2009-08-26" description="better support for loading immutable objects"> 1078 <action dev="asomov" type="update"> 1079 Apply Apache License Version 2.0 (2009-08-14) 1080 </action> 1081 <action dev="asomov" type="fix" issue="13" due-to="infinity0x"> 1082 Provide javadocs link to Sun Java API (2009-08-10) 1083 </action> 1084 <action dev="asomov" type="add"> 1085 Build 1.4 Release Candidate 1 (2009-08-07) 1086 </action> 1087 <action dev="asomov" type="add"> 1088 Introduce Tags.getGlobalTagForClass() to simplify tag generation in custom constructors (2009-08-06) 1089 </action> 1090 <action dev="asomov" type="update"> 1091 Refactor: introduce ImplicitTuple (2009-08-06) 1092 </action> 1093 <action dev="asomov" type="fix" issue="11" due-to="infinity0x"> 1094 Fix: create a Java instance with the following priority to choose the class: 1095 Explicit tag -> Runtime class (defined in JavaBean) -> implicit tag (2009-08-06) 1096 </action> 1097 <action dev="asomov" type="fix" issue="9" due-to="wwagner4"> 1098 Fix: Bean with no property cannot be instantiated. This is implemented via better 1099 support for immutable objects. Custom Constructor may be used when there are more 1100 then 1 way to create an instance (2009-08-04) 1101 </action> 1102 <action dev="asomov" type="add"> 1103 Deliver possibility to load immutable instances with no global tags. Reflection for 1104 constructor arguments is used to get the runtime classes (2009-08-04) 1105 </action> 1106 <action dev="asomov" type="update"> 1107 Use more informative error message when a JavaBean property cannot 1108 be created (2009-08-02) 1109 </action> 1110 <action dev="asomov" type="update"> 1111 Refactor: Constructor is rewritten. Do not overwrite methods from BaseConstructor. 1112 Instead introduce ConstructScalar, ConstructSequence, ConstructMapping (2009-07-31) 1113 </action> 1114 <action dev="asomov" type="update"> 1115 Change Maven repository path: groupId='org.yaml', artifactId='snakeyaml' (2009-07-31) 1116 </action> 1117 <action dev="asomov" type="fix" issue="10" due-to="derrick.rice"> 1118 Fix: dump omits JavaBean class name when used with an alias (2009-07-28) 1119 </action> 1120 <action dev="asomov" type="add"> 1121 Generate sources and Javadoc (2009-07-27) 1122 </action> 1123 <action dev="asomov" type="update"> 1124 Node does not have the value. It is delegated to the non-abstract classes (2009-07-27) 1125 </action> 1126 <action dev="asomov" type="add"> 1127 Extends JavaBeanDumper to allow skipping global tags inside type-safe collections. 1128 Introduce method setMapTagForBean() (2009-07-22) 1129 </action> 1130 <action dev="asomov" type="add"> 1131 Add ConstructEmptyBeanTest to test JavaBean construction with no 1132 properties in the YAML document(2009-07-22) 1133 </action> 1134 <action dev="asomov" type="remove"> 1135 Refactor: redesign tag management for JavaBeans in Representer. 1136 Drop dynamic root tag concept (2009-07-22) 1137 </action> 1138 <action dev="asomov" type="remove"> 1139 Remove unused TypeDescription in Representer (2009-07-21) 1140 </action> 1141 <action dev="asomov" type="update"> 1142 Use NodeTuple instead of Node[] for mappings (2009-07-21) 1143 </action> 1144 <action dev="asomov" type="add"> 1145 Introduce JavaBeanLoader and JavaBeanDumper. Deprecate JavaBeanParser (2009-07-21) 1146 </action> 1147 <action dev="asomov" type="fix" issue="8" due-to="Alan Gutierrez"> 1148 Fix: Representer was keeping state between invocations (2009-07-21) 1149 </action> 1150 </release> 1151 <release version="1.3" date="2009-07-20" description="complete support for recursive objects"> 1152 <action dev="asomov" type="fix" issue="6" due-to="infinity0x"> 1153 Fix: values returned by System.identityHashCode() are not guaranteed to be unique (2009-07-14) 1154 </action> 1155 <action dev="asomov" type="add"> 1156 Add a simple test for Java Generics (BirdTest). Unfortunately it shows that some JVM 1157 implementations do not recognise classes for JavaBean properties at runtime. 1158 It leads to unnecessary global tags. See http://code.google.com/p/snakeyaml/wiki/Documentation#Generics 1159 for details (2009-07-13) 1160 </action> 1161 <action dev="asomov" type="fix" issue="5" due-to="infinity0x"> 1162 Fix: set the "cause" field for MarkedYAMLException (2009-07-10) 1163 </action> 1164 <action dev="maslovalex" type="fix" issue="1"> 1165 Fix: Recursive objects are now fully supported (2009-07-09) 1166 </action> 1167 <action dev="asomov" type="add"> 1168 Add support for BigDecimal as a JavaBean property (2009-07-07) 1169 </action> 1170 <action dev="asomov" type="update"> 1171 Improve test coverage for Constructor. Allow construction of JavaBeans 1172 with only setter without the corresponding getter (2009-07-07) 1173 </action> 1174 <action dev="asomov" type="add"> 1175 Add a test to check the proper report for IOException (2009-07-03) 1176 </action> 1177 <action dev="asomov" type="fix" issue="3" due-to="infinity0x"> 1178 Fix: represent proper tags for JavaBeans when they are not the root of the YAML 1179 document but a member of a collection (2009-07-03) 1180 </action> 1181 <action dev="asomov" type="update"> 1182 Refactor: run PMD and apply some of the recommendations (2009-06-18) 1183 </action> 1184 <action dev="asomov" type="add" issue="1"> 1185 Create an issue for Recursive objects to be remembered (2009-06-08) 1186 </action> 1187 <action dev="asomov" type="update"> 1188 Migrate project hosting from Assembla to Google code (2009-06-08) 1189 </action> 1190 <action dev="asomov" type="fix" due-to="Magne"> 1191 Fix: null as a JavaBean property was not handled properly (2009-06-04) 1192 </action> 1193 <action dev="asomov" type="update"> 1194 Validate changes.xml file (2009-05-25) 1195 </action> 1196 <action dev="asomov" type="fix" due-to="Magne"> 1197 Fix ticket 40 in Assembla: getting an error when javabean contains java.sql.Timestamp fields (2009-05-25) 1198 </action> 1199 </release> 1200 <release version="1.2" date="2009-04-27" description="expose low-level API"> 1201 <action dev="asomov" type="add"> 1202 Add 'Yaml.parse()' method which return Events to support low level YAML processing (2009-04-20) 1203 </action> 1204 <action dev="asomov" type="add" due-to="Bob Jalex"> 1205 Introduce LineBreak.getPlatformLineBreak (ticket 5 in Assembla) (2009-04-18) 1206 </action> 1207 <action dev="asomov" type="update" due-to="Bob Jalex"> 1208 Rename LineBreak.LINUX to LineBreak.UNIX (ticket 5 in Assembla) (2009-04-18) 1209 </action> 1210 <action dev="asomov" type="add"> 1211 Add 'Yaml.compose()' methods which return Nodes to support YEdit (2009-04-17) 1212 </action> 1213 <action dev="asomov" type="update"> 1214 Refactor: rename enums in DumperOptions to make the names consistent (2009-04-07) 1215 </action> 1216 <action dev="asomov" type="update"> 1217 Refactor: use Character instead of char primitive for style in Emitter (2009-04-07) 1218 </action> 1219 <action dev="asomov" type="add"> 1220 Add possibility to parse all scalars as Strings (2009-03-30) 1221 </action> 1222 <action dev="asomov" type="update"> 1223 Merge changeset 347 from PyYAML (2009-03-30) 1224 </action> 1225 <action dev="asomov" type="fix"> 1226 Respect DumperOptions with a custom Representer (2009-03-18) 1227 </action> 1228 <action dev="asomov" type="fix"> 1229 Represent TAB as '\t' instead of '(9' in the error message (2009-03-17) 1230 </action> 1231 </release> 1232 <release version="1.1" date="2009-03-14" description="improve performance and test coverage"> 1233 <action dev="asomov" type="add"> 1234 Introduce JavaBeanParser (2009-03-14) 1235 </action> 1236 <action dev="asomov" type="add"> 1237 Introduce DumperOptions.Version enum (2009-03-13) 1238 </action> 1239 <action dev="asomov" type="add"> 1240 Introduce DumperOptions.LineBreak enum (2009-03-10) 1241 </action> 1242 <action dev="asomov" type="update"> 1243 Use byte[] for binary type. (2009-03-09) 1244 </action> 1245 <action dev="asomov" type="update"> 1246 Restore Regular Expressions in Resolver. Ragel gives only 5% performance increase. 1247 Fix a bug in Resolver with expanded regular expressions which caused the 1248 performance problem. (2009-03-06) 1249 </action> 1250 <action dev="asomov" type="add"> 1251 Better Spring support: it is now possible to create a constructor with a String 1252 as the class name. (2009-03-05) 1253 </action> 1254 <action dev="asomov" type="update"> 1255 Throw an exception when the same Loader or Dumper instance is shared between 1256 different Yaml instances. Because they are statefull it is not Thread-safe. (2009-03-05) 1257 </action> 1258 <action dev="asomov" type="add"> 1259 Add possibility to set a meaningful name for Yaml instance to be shown in toString(). (2009-03-05) 1260 </action> 1261 <action dev="asomov" type="update"> 1262 Refactor: declare classes which are not expected to be extended as final. (2009-03-04) 1263 </action> 1264 <action dev="asomov" type="update"> 1265 Refactor: use 'final' keyword to identify immutable fields. (2009-03-04) 1266 </action> 1267 <action dev="asomov" type="update"> 1268 Refactor: do not use 'final' keyword for local variables. (2009-03-04) 1269 </action> 1270 <action dev="asomov" type="fix"> 1271 Fix: respect implicit resolvers with 'null' as a first character. (2009-03-02) 1272 </action> 1273 <action dev="asomov" type="update"> 1274 Refactor: use Character instead of String as a key for implicit resolvers. (2009-03-02) 1275 </action> 1276 <action dev="asomov" type="add"> 1277 Use Ragel instead of Regular Expressions for implicit types. (2009-03-02) 1278 </action> 1279 <action dev="asomov" type="fix" due-to="Christophe Desguez"> 1280 Fix ticket #4 (in Assembla): java.sql.Date not handled. (2009-02-28) 1281 </action> 1282 <action dev="asomov" type="add"> 1283 Introduce DumperOptions.DefaultFlowStyle enum (2009-02-24) 1284 </action> 1285 <action dev="asomov" type="add"> 1286 Introduce DumperOptions.DefaultScalarStyle enum (2009-02-24) 1287 </action> 1288 <action dev="asomov" type="update"> 1289 Refactor: use 'switch' with Enum instead of multiple 'if' statements to distinguish nodes (2009-02-19) 1290 </action> 1291 <action dev="asomov" type="update"> 1292 Refactor: use Enum instead of String as NodeId (2009-02-19) 1293 </action> 1294 </release> 1295 <release version="1.0.1" date="2009-02-18" description="implement Enum support"> 1296 <action dev="asomov" type="fix"> 1297 Do not emit anchors for Enum (2009-02-18) 1298 </action> 1299 <action dev="asomov" type="fix"> 1300 Enum as a JavaBean property (when the Enum class is implicitly defined) does 1301 not need tags for both loading and dumping (2009-02-17) 1302 </action> 1303 <action dev="asomov" type="fix"> 1304 Enum is emitted as a scalar node (2009-02-17) 1305 </action> 1306 <action dev="asomov" type="fix" due-to="James Nissel"> 1307 Enum is parsed as a scalar node or as a JavaBean property (2009-02-17) 1308 </action> 1309 <action dev="asomov" type="update"> 1310 Refactor: for performance ScannerImpl.stalePossibleSimpleKeys() does not copy key Set (2009-02-10) 1311 </action> 1312 <action dev="asomov" type="update"> 1313 By default allowUnicode=true. If it is necessary to escape Unicode use 1314 DumperOptions.setAllowUnicode(false) (2009-02-09) 1315 </action> 1316 <action dev="asomov" type="add"> 1317 Implement allowUnicode setting (to escape Unicode characters on non UTF-8 terminals) (2009-02-09) 1318 </action> 1319 <action dev="asomov" type="add"> 1320 Add possibility to specify tags for dumping (2009-02-09) 1321 </action> 1322 <action dev="asomov" type="update"> 1323 Rename getExpRoot to getExplicitRoot to conform with 1324 standard JavaBean naming convention (2009-02-09) 1325 </action> 1326 <action dev="asomov" type="update"> 1327 Rename explictStart and explicitEnd to standard setters to conform with 1328 standard JavaBean naming convention (2009-02-09) 1329 </action> 1330 <action dev="asomov" type="fix"> 1331 Add possibility to specify a line break (2009-02-09) 1332 </action> 1333 </release> 1334 <release version="1.0" date="2009-02-06" description="final 1.0 release"> 1335 <action dev="asomov" type="add"> 1336 Deliver first release (2009-02-06) 1337 </action> 1338 </release> 1339 </body> 1340</document> 1341