Read and write readable YAML safely preserving order and avoiding bad surprises with unwanted infered type conversions. This library is a PyYaml wrapper with sane behaviour to read and write readable YAML safely, typically when used for configuration.
Project description
This micro library is a PyYaml wrapper with sane behaviour to read and write readable YAML safely, typically when used with configuration files.
With saneyaml you can dump readable and clean YAML and load safely any YAML preserving ordering and avoiding surprises of type conversions by loading everything except booleans as strings.
Optionally you can check for duplicated map keys when loading YAML.
Works with Python 3. Requires PyYAML 5.x or higher.
license: apache-2.0 homepage_url: https://github.com/aboutcode-org/saneyaml
Usage:
pip install saneyaml
>>> from saneyaml import load
>>> from saneyaml import dump
>>> a=load('''version: 3.0.0.dev6
...
... description: |
... AboutCode Toolkit is a tool to process ABOUT files. An ABOUT file
... provides a way to document a software component.
... ''')
>>> a
dict([
(u'version', u'3.0.0.dev6'),
(u'description', u'AboutCode Toolkit is a tool to process ABOUT files. '
'An ABOUT file\nprovides a way to document a software component.\n')])
>>> pprint(a.items())
[(u'version', u'3.0.0.dev6'),
(u'description',
u'AboutCode Toolkit is a tool to process ABOUT files. An ABOUT file\nprovides a way to document a software component.\n')]
>>> print(dump(a))
version: 3.0.0.dev6
description: |
AboutCode Toolkit is a tool to process ABOUT files. An ABOUT file
provides a way to document a software component.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file saneyaml-0.6.1.tar.gz.
File metadata
- Download URL: saneyaml-0.6.1.tar.gz
- Upload date:
- Size: 82.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
19cfbd8bf94d730998162c790fe5cec9abb5300cc5890fe37dc6dbcaa8fb16bb
|
|
| MD5 |
0ab1ec694c2c004035d1d42c17ac47b0
|
|
| BLAKE2b-256 |
18bbb3ab128fe13964fc8da25ecbac82f9ed9beb59b2e04bfbef433886f1acb0
|
File details
Details for the file saneyaml-0.6.1-py3-none-any.whl.
File metadata
- Download URL: saneyaml-0.6.1-py3-none-any.whl
- Upload date:
- Size: 13.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
60553363ac55433cef2bc1d6c5a1c9f6e2787e5f40e8c6fad5983eb701592c5b
|
|
| MD5 |
47c80e3186ef3116ff2b0eb6d5c1fa71
|
|
| BLAKE2b-256 |
eac0b41733920cef3d87ee7d1fd5a618c7bb5240ba80dd2f29c73ec3416b3e04
|