CHANGES 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254
  1. For a complete changelog, see:
  2. * https://github.com/yaml/pyyaml/commits/
  3. * https://bitbucket.org/xi/pyyaml/commits/
  4. 5.4.1 (2021-01-20)
  5. * https://github.com/yaml/pyyaml/pull/480 -- Fix stub compat with older pyyaml versions that may unwittingly load it
  6. 5.4 (2021-01-19)
  7. * https://github.com/yaml/pyyaml/pull/407 -- Build modernization, remove distutils, fix metadata, build wheels, CI to GHA
  8. * https://github.com/yaml/pyyaml/pull/472 -- Fix for CVE-2020-14343, moves arbitrary python tags to UnsafeLoader
  9. * https://github.com/yaml/pyyaml/pull/441 -- Fix memory leak in implicit resolver setup
  10. * https://github.com/yaml/pyyaml/pull/392 -- Fix py2 copy support for timezone objects
  11. * https://github.com/yaml/pyyaml/pull/378 -- Fix compatibility with Jython
  12. 5.3.1 (2020-03-18)
  13. * https://github.com/yaml/pyyaml/pull/386 -- Prevents arbitrary code execution during python/object/new constructor
  14. 5.3 (2020-01-06)
  15. * https://github.com/yaml/pyyaml/pull/290 -- Use `is` instead of equality for comparing with `None`
  16. * https://github.com/yaml/pyyaml/pull/270 -- Fix typos and stylistic nit
  17. * https://github.com/yaml/pyyaml/pull/309 -- Fix up small typo
  18. * https://github.com/yaml/pyyaml/pull/161 -- Fix handling of __slots__
  19. * https://github.com/yaml/pyyaml/pull/358 -- Allow calling add_multi_constructor with None
  20. * https://github.com/yaml/pyyaml/pull/285 -- Add use of safe_load() function in README
  21. * https://github.com/yaml/pyyaml/pull/351 -- Fix reader for Unicode code points over 0xFFFF
  22. * https://github.com/yaml/pyyaml/pull/360 -- Enable certain unicode tests when maxunicode not > 0xffff
  23. * https://github.com/yaml/pyyaml/pull/359 -- Use full_load in yaml-highlight example
  24. * https://github.com/yaml/pyyaml/pull/244 -- Document that PyYAML is implemented with Cython
  25. * https://github.com/yaml/pyyaml/pull/329 -- Fix for Python 3.10
  26. * https://github.com/yaml/pyyaml/pull/310 -- Increase size of index, line, and column fields
  27. * https://github.com/yaml/pyyaml/pull/260 -- Remove some unused imports
  28. * https://github.com/yaml/pyyaml/pull/163 -- Create timezone-aware datetimes when parsed as such
  29. * https://github.com/yaml/pyyaml/pull/363 -- Add tests for timezone
  30. 5.2 (2019-12-02)
  31. ------------------
  32. * Repair incompatibilities introduced with 5.1. The default Loader was changed,
  33. but several methods like add_constructor still used the old default
  34. https://github.com/yaml/pyyaml/pull/279 -- A more flexible fix for custom tag constructors
  35. https://github.com/yaml/pyyaml/pull/287 -- Change default loader for yaml.add_constructor
  36. https://github.com/yaml/pyyaml/pull/305 -- Change default loader for add_implicit_resolver, add_path_resolver
  37. * Make FullLoader safer by removing python/object/apply from the default FullLoader
  38. https://github.com/yaml/pyyaml/pull/347 -- Move constructor for object/apply to UnsafeConstructor
  39. * Fix bug introduced in 5.1 where quoting went wrong on systems with sys.maxunicode <= 0xffff
  40. https://github.com/yaml/pyyaml/pull/276 -- Fix logic for quoting special characters
  41. * Other PRs:
  42. https://github.com/yaml/pyyaml/pull/280 -- Update CHANGES for 5.1
  43. 5.1.2 (2019-07-30)
  44. ------------------
  45. * Re-release of 5.1 with regenerated Cython sources to build properly for Python 3.8b2+
  46. 5.1.1 (2019-06-05)
  47. ------------------
  48. * Re-release of 5.1 with regenerated Cython sources to build properly for Python 3.8b1
  49. 5.1 (2019-03-13)
  50. ----------------
  51. * https://github.com/yaml/pyyaml/pull/35 -- Some modernization of the test running
  52. * https://github.com/yaml/pyyaml/pull/42 -- Install tox in a virtualenv
  53. * https://github.com/yaml/pyyaml/pull/45 -- Allow colon in a plain scalar in a flow context
  54. * https://github.com/yaml/pyyaml/pull/48 -- Fix typos
  55. * https://github.com/yaml/pyyaml/pull/55 -- Improve RepresenterError creation
  56. * https://github.com/yaml/pyyaml/pull/59 -- Resolves #57, update readme issues link
  57. * https://github.com/yaml/pyyaml/pull/60 -- Document and test Python 3.6 support
  58. * https://github.com/yaml/pyyaml/pull/61 -- Use Travis CI built in pip cache support
  59. * https://github.com/yaml/pyyaml/pull/62 -- Remove tox workaround for Travis CI
  60. * https://github.com/yaml/pyyaml/pull/63 -- Adding support to Unicode characters over codepoint 0xffff
  61. * https://github.com/yaml/pyyaml/pull/75 -- add 3.12 changelog
  62. * https://github.com/yaml/pyyaml/pull/76 -- Fallback to Pure Python if Compilation fails
  63. * https://github.com/yaml/pyyaml/pull/84 -- Drop unsupported Python 3.3
  64. * https://github.com/yaml/pyyaml/pull/102 -- Include license file in the generated wheel package
  65. * https://github.com/yaml/pyyaml/pull/105 -- Removed Python 2.6 & 3.3 support
  66. * https://github.com/yaml/pyyaml/pull/111 -- Remove commented out Psyco code
  67. * https://github.com/yaml/pyyaml/pull/129 -- Remove call to `ord` in lib3 emitter code
  68. * https://github.com/yaml/pyyaml/pull/149 -- Test on Python 3.7-dev
  69. * https://github.com/yaml/pyyaml/pull/158 -- Support escaped slash in double quotes "\/"
  70. * https://github.com/yaml/pyyaml/pull/175 -- Updated link to pypi in release announcement
  71. * https://github.com/yaml/pyyaml/pull/181 -- Import Hashable from collections.abc
  72. * https://github.com/yaml/pyyaml/pull/194 -- Reverting https://github.com/yaml/pyyaml/pull/74
  73. * https://github.com/yaml/pyyaml/pull/195 -- Build libyaml on travis
  74. * https://github.com/yaml/pyyaml/pull/196 -- Force cython when building sdist
  75. * https://github.com/yaml/pyyaml/pull/254 -- Allow to turn off sorting keys in Dumper (2)
  76. * https://github.com/yaml/pyyaml/pull/256 -- Make default_flow_style=False
  77. * https://github.com/yaml/pyyaml/pull/257 -- Deprecate yaml.load and add FullLoader and UnsafeLoader classes
  78. * https://github.com/yaml/pyyaml/pull/261 -- Skip certain unicode tests when maxunicode not > 0xffff
  79. * https://github.com/yaml/pyyaml/pull/263 -- Windows Appveyor build
  80. 3.13 (2018-07-05)
  81. -----------------
  82. * Resolved issues around PyYAML working in Python 3.7.
  83. 3.12 (2016-08-28)
  84. -----------------
  85. * Wheel packages for Windows binaries.
  86. * Adding an implicit resolver to a derived loader should not affect the base loader.
  87. * Uniform representation for OrderedDict? across different versions of Python.
  88. * Fixed comparison to None warning.
  89. 3.11 (2014-03-26)
  90. -----------------
  91. * Source and binary distributions are rebuilt against the latest
  92. versions of Cython and LibYAML.
  93. 3.10 (2011-05-30)
  94. -----------------
  95. * Do not try to build LibYAML bindings on platforms other than CPython
  96. (Thank to olt(at)bogosoft(dot)com).
  97. * Clear cyclic references in the parser and the emitter
  98. (Thank to kristjan(at)ccpgames(dot)com).
  99. * Dropped support for Python 2.3 and 2.4.
  100. 3.09 (2009-08-31)
  101. -----------------
  102. * Fixed an obscure scanner error not reported when there is
  103. no line break at the end of the stream (Thank to Ingy).
  104. * Fixed use of uninitialized memory when emitting anchors with
  105. LibYAML bindings (Thank to cegner(at)yahoo-inc(dot)com).
  106. * Fixed emitting incorrect BOM characters for UTF-16 (Thank to
  107. Valentin Nechayev)
  108. * Fixed the emitter for folded scalars not respecting the preferred
  109. line width (Thank to Ingy).
  110. * Fixed a subtle ordering issue with emitting '%TAG' directives
  111. (Thank to Andrey Somov).
  112. * Fixed performance regression with LibYAML bindings.
  113. 3.08 (2008-12-31)
  114. -----------------
  115. * Python 3 support (Thank to Erick Tryzelaar).
  116. * Use Cython instead of Pyrex to build LibYAML bindings.
  117. * Refactored support for unicode and byte input/output streams.
  118. 3.07 (2008-12-29)
  119. -----------------
  120. * The emitter learned to use an optional indentation indicator
  121. for block scalar; thus scalars with leading whitespaces
  122. could now be represented in a literal or folded style.
  123. * The test suite is now included in the source distribution.
  124. To run the tests, type 'python setup.py test'.
  125. * Refactored the test suite: dropped unittest in favor of
  126. a custom test appliance.
  127. * Fixed the path resolver in CDumper.
  128. * Forced an explicit document end indicator when there is
  129. a possibility of parsing ambiguity.
  130. * More setup.py improvements: the package should be usable
  131. when any combination of setuptools, Pyrex and LibYAML
  132. is installed.
  133. * Windows binary packages are built against LibYAML-0.1.2.
  134. * Minor typos and corrections (Thank to Ingy dot Net
  135. and Andrey Somov).
  136. 3.06 (2008-10-03)
  137. -----------------
  138. * setup.py checks whether LibYAML is installed and if so, builds
  139. and installs LibYAML bindings. To force or disable installation
  140. of LibYAML bindings, use '--with-libyaml' or '--without-libyaml'
  141. respectively.
  142. * The source distribution includes compiled Pyrex sources so
  143. building LibYAML bindings no longer requires Pyrex installed.
  144. * 'yaml.load()' raises an exception if the input stream contains
  145. more than one YAML document.
  146. * Fixed exceptions produced by LibYAML bindings.
  147. * Fixed a dot '.' character being recognized as !!float.
  148. * Fixed Python 2.3 compatibility issue in constructing !!timestamp values.
  149. * Windows binary packages are built against the LibYAML stable branch.
  150. * Added attributes 'yaml.__version__' and 'yaml.__with_libyaml__'.
  151. 3.05 (2007-05-13)
  152. -----------------
  153. * Windows binary packages were built with LibYAML trunk.
  154. * Fixed a bug that prevent processing a live stream of YAML documents in
  155. timely manner (Thanks edward(at)sweetbytes(dot)net).
  156. * Fixed a bug when the path in add_path_resolver contains boolean values
  157. (Thanks jstroud(at)mbi(dot)ucla(dot)edu).
  158. * Fixed loss of microsecond precision in timestamps
  159. (Thanks edemaine(at)mit(dot)edu).
  160. * Fixed loading an empty YAML stream.
  161. * Allowed immutable subclasses of YAMLObject.
  162. * Made the encoding of the unicode->str conversion explicit so that
  163. the conversion does not depend on the default Python encoding.
  164. * Forced emitting float values in a YAML compatible form.
  165. 3.04 (2006-08-20)
  166. -----------------
  167. * Include experimental LibYAML bindings.
  168. * Fully support recursive structures.
  169. * Sort dictionary keys. Mapping node values are now represented
  170. as lists of pairs instead of dictionaries. No longer check
  171. for duplicate mapping keys as it didn't work correctly anyway.
  172. * Fix invalid output of single-quoted scalars in cases when a single
  173. quote is not escaped when preceded by whitespaces or line breaks.
  174. * To make porting easier, rewrite Parser not using generators.
  175. * Fix handling of unexpected block mapping values.
  176. * Fix a bug in Representer.represent_object: copy_reg.dispatch_table
  177. was not correctly handled.
  178. * Fix a bug when a block scalar is incorrectly emitted in the simple
  179. key context.
  180. * Hold references to the objects being represented.
  181. * Make Representer not try to guess !!pairs when a list is represented.
  182. * Fix timestamp constructing and representing.
  183. * Fix the 'N' plain scalar being incorrectly recognized as !!bool.
  184. 3.03 (2006-06-19)
  185. -----------------
  186. * Fix Python 2.5 compatibility issues.
  187. * Fix numerous bugs in the float handling.
  188. * Fix scanning some ill-formed documents.
  189. * Other minor fixes.
  190. 3.02 (2006-05-15)
  191. -----------------
  192. * Fix win32 installer. Apparently bdist_wininst does not work well
  193. under Linux.
  194. * Fix a bug in add_path_resolver.
  195. * Add the yaml-highlight example. Try to run on a color terminal:
  196. `python yaml_hl.py <any_document.yaml`.
  197. 3.01 (2006-05-07)
  198. -----------------
  199. * Initial release. The version number reflects the codename
  200. of the project (PyYAML 3000) and differentiates it from
  201. the abandoned PyYaml module.