blob: 292d0aca98c439399d39e5880a1c5f91662d149f [file] [log] [blame]
From: Tina Müller <post@tinita.de>
To: python-list@python.org, python-announce@python.org, yaml-core@lists.sourceforge.net
Subject: [ANN] PyYAML-5.2: YAML parser and emitter for Python
=======================
Announcing PyYAML-5.2
=======================
A new release of PyYAML is now available:
https://pypi.org/project/PyYAML/
This fixes some incompatibilities introduced in version 5.1 and also removes
another possibility of loading arbitrary code.
Changes
=======
* Repair incompatibilities introduced with 5.1. The default Loader was changed,
but several methods like add_constructor still used the old default
https://github.com/yaml/pyyaml/pull/279 -- A more flexible fix for custom tag constructors
https://github.com/yaml/pyyaml/pull/287 -- Change default loader for yaml.add_constructor
https://github.com/yaml/pyyaml/pull/305 -- Change default loader for add_implicit_resolver, add_path_resolver
* Make FullLoader safer by removing python/object/apply from the default FullLoader
https://github.com/yaml/pyyaml/pull/347 -- Move constructor for object/apply to UnsafeConstructor
* Fix bug introduced in 5.1 where quoting went wrong on systems with sys.maxunicode <= 0xffff
https://github.com/yaml/pyyaml/pull/276 -- Fix logic for quoting special characters
* Other PRs:
https://github.com/yaml/pyyaml/pull/280 -- Update CHANGES for 5.1
Resources
=========
PyYAML IRC Channel: #pyyaml on irc.freenode.net
PyYAML homepage: https://github.com/yaml/pyyaml
PyYAML documentation: http://pyyaml.org/wiki/PyYAMLDocumentation
Source and binary installers: https://pypi.org/project/PyYAML/
GitHub repository: https://github.com/yaml/pyyaml/
Bug tracking: https://github.com/yaml/pyyaml/issues
YAML homepage: http://yaml.org/
YAML-core mailing list: http://lists.sourceforge.net/lists/listinfo/yaml-core
About PyYAML
============
YAML is a data serialization format designed for human readability and
interaction with scripting languages. PyYAML is a YAML parser and emitter for
Python.
PyYAML features a complete YAML 1.1 parser, Unicode support, pickle support,
capable extension API, and sensible error messages. PyYAML supports standard
YAML tags and provides Python-specific tags that allow to represent an
arbitrary Python object.
PyYAML is applicable for a broad range of tasks from complex configuration
files to object serialization and persistence.
Example
=======
>>> import yaml
>>> yaml.full_load("""
... name: PyYAML
... description: YAML parser and emitter for Python
... homepage: https://github.com/yaml/pyyaml
... keywords: [YAML, serialization, configuration, persistence, pickle]
... """)
{'keywords': ['YAML', 'serialization', 'configuration', 'persistence',
'pickle'], 'homepage': 'https://github.com/yaml/pyyaml', 'description':
'YAML parser and emitter for Python', 'name': 'PyYAML'}
>>> print(yaml.dump(_))
name: PyYAML
homepage: https://github.com/yaml/pyyaml
description: YAML parser and emitter for Python
keywords: [YAML, serialization, configuration, persistence, pickle]
Maintainers
===========
The following people are currently responsible for maintaining PyYAML:
* Ingy döt Net
* Tina Mueller
* Matt Davis
and many thanks to all who have contribributed!
See: https://github.com/yaml/pyyaml/pulls
Copyright
=========
Copyright (c) 2017-2019 Ingy döt Net <ingy@ingy.net>
Copyright (c) 2006-2016 Kirill Simonov <xi@resolvent.net>
The PyYAML module was written by Kirill Simonov <xi@resolvent.net>.
It is currently maintained by the YAML and Python communities.
PyYAML is released under the MIT license.
See the file LICENSE for more details.