Skip to main content

ruamel.yaml is a YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order

Project description

ruamel.yaml

ruamel.yaml is a YAML 1.2 loader/dumper package for Python.

Starting with version 0.15.0 the way YAML files are loaded and dumped is changing. See the API doc for details. Currently existing functionality will throw a warning before being changed/removed. For production systems you should pin the version being used with ``ruamel.yaml<=0.15``. There might be bug fixes in the 0.14 series, but new functionality is likely only to be available via the new API.

If your package uses ruamel.yaml and is not listed on PyPI, drop me an email, preferably with some infomormation on how you use the package (or a link to bitbucket/github) and I’ll keep you informed when the status of the API is stable enough to make the transition.

https://readthedocs.org/projects/yaml/badge/?version=stable https://bestpractices.coreinfrastructure.org/projects/1128/badge

ChangeLog

0.15.23 (2017-08-01):
  • fix for round_tripping integers on 2.7.X > sys.maxint (reported by ccatterina)

0.15.22 (2017-07-28):
  • fix for round_tripping singe excl. mark tags doubling (reported and fix by Jan Brezina)

0.15.21 (2017-07-25):
0.15.20 (2017-07-23):
  • wheels for windows including C extensions

0.15.19 (2017-07-13):
  • added object constructor for rt, decorator yaml_object to replace YAMLObject.

  • fix for problem using load_all with Path() instance

  • fix for load_all in combination with zero indent block style literal (pure=True only!)

0.15.18 (2017-07-04):
  • missing pure attribute on YAML useful for implementing !include tag constructor for including YAML files in a YAML file

  • some documentation improvements

  • trigger of doc build on new revision

0.15.17 (2017-07-03):
  • support for Unicode supplementary Plane output (input was already supported, triggered by this Stack Overflow Q&A)

0.15.16 (2017-07-01):
  • minor typing issues (reported and fix provided by Manvendra Singh

  • small doc improvements

0.15.15 (2017-06-27):
0.15.14 (2017-06-25):
  • fix for issue 133, in setup.py: change ModuleNotFoundError to ImportError (reported and fix by Asley Drake)

0.15.13 (2017-06-24):
  • suppress duplicate key warning on mappings with merge keys (reported by Cameron Sweeney)

0.15.12 (2017-06-24):
  • remove fatal dependency of setup.py on wheel package (reported by Cameron Sweeney)

0.15.11 (2017-06-24):
  • fix for issue 130, regression in nested merge keys (reported by David Fee)

0.15.10 (2017-06-23):
  • top level PreservedScalarString not indented if not explicitly asked to

  • remove Makefile (not very useful anyway)

  • some mypy additions

0.15.9 (2017-06-16):
  • fix for issue 127: tagged scalars were always quoted and seperated by a newline when in a block sequence (reported and largely fixed by Tommy Wang)

0.15.8 (2017-06-15):
  • allow plug-in install via install ruamel.yaml[jinja2]

0.15.7 (2017-06-14):
  • add plug-in mechanism for load/dump pre resp. post-processing

0.15.6 (2017-06-10):
  • a set() with duplicate elements now throws error in rt loading

  • support for toplevel column zero literal/folded scalar in explicit documents

0.15.5 (2017-06-08):
  • repeat load() on a single YAML() instance would fail.

0.15.4 (2017-06-08):
  • transform parameter on dump that expects a function taking a string and returning a string. This allows transformation of the output before it is written to stream. This forces creation of the complete output in memory!

  • some updates to the docs

0.15.3 (2017-06-07):
  • No longer try to compile C extensions on Windows. Compilation can be forced by setting the environment variable RUAMEL_FORCE_EXT_BUILD to some value before starting the pip install.

0.15.2 (2017-06-07):
  • update to conform to mypy 0.511: mypy –strict

0.15.1 (2017-06-07):
  • duplicate keys in mappings generate an error (in the old API this change generates a warning until 0.16)

  • dependecy on ruamel.ordereddict for 2.7 now via extras_require

0.15.0 (2017-06-04):
  • it is now allowed to pass in a pathlib.Path as “stream” parameter to all load/dump functions

  • passing in a non-supported object (e.g. a string) as “stream” will result in a much more meaningful YAMLStreamError.

  • assigning a normal string value to an existing CommentedMap key or CommentedSeq element will result in a value cast to the previous value’s type if possible.

  • added YAML class for new API

0.14.12 (2017-05-14):
  • fix for issue 119, deepcopy not returning subclasses (reported and PR by Constantine Evans <cevans@evanslabs.org>)

0.14.11 (2017-05-01):
  • fix for issue 103 allowing implicit documents after document end marker line (...) in YAML 1.2

0.14.10 (2017-04-26):
  • fix problem with emitting using cyaml

0.14.9 (2017-04-22):
0.14.8 (2017-04-19):
  • fix Text not available on 3.5.0 and 3.5.1, now proactively setting version guards on all files (reported by João Paulo Magalhães)

0.14.7 (2017-04-18):
  • round trip of integers (decimal, octal, hex, binary) now preserve leading zero(s) padding and underscores. Underscores are presumed to be at regular distances (i.e. 0o12_345_67 dumps back as 0o1_23_45_67 as the space from the last digit to the underscore before that is the determining factor).

0.14.6 (2017-04-14):
  • binary, octal and hex integers are now preserved by default. This was a known deficiency. Working on this was prompted by the issue report (112) from devnoname120, as well as the additional experience with .replace() on scalarstring classes.

  • fix issues 114: cannot install on Buildozer (reported by mixmastamyk). Setting env. var RUAMEL_NO_PIP_INSTALL_CHECK will suppress pip-check.

0.14.5 (2017-04-04):
  • fix issue 109: None not dumping correctly at top level (reported by Andrea Censi)

  • fix issue 110: .replace on Preserved/DoubleQuoted/SingleQuoted ScalarString would give back “normal” string (reported by sandres23)

0.14.4 (2017-03-31):
  • fix readme

0.14.3 (2017-03-31):
0.14.2 (2017-03-23):
  • fix for old default pip on Ubuntu 14.04 (reported by Sébastien Maccagnoni-Munch)

0.14.1 (2017-03-22):
  • fix Text not available on 3.5.0 and 3.5.1 (reported by Charles Bouchard-Légaré)

0.14.0 (2017-03-21):
  • updates for mypy –strict

  • preparation for moving away from inheritance in Loader and Dumper, calls from e.g. the Representer to the Serializer.serialize() are now done via the attribute .serializer.serialize(). Usage of .serialize() outside of Serializer will be deprecated soon

  • some extra tests on main.py functions


For older changes see the file CHANGES

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ruamel.yaml-0.15.23.tar.gz (253.4 kB view details)

Uploaded Source

Built Distributions

ruamel.yaml-0.15.23-cp36-cp36m-win_amd64.whl (180.6 kB view details)

Uploaded CPython 3.6mWindows x86-64

ruamel.yaml-0.15.23-cp36-cp36m-win32.whl (166.3 kB view details)

Uploaded CPython 3.6mWindows x86

ruamel.yaml-0.15.23-cp36-cp36m-manylinux1_x86_64.whl (551.3 kB view details)

Uploaded CPython 3.6m

ruamel.yaml-0.15.23-cp35-cp35m-win_amd64.whl (180.6 kB view details)

Uploaded CPython 3.5mWindows x86-64

ruamel.yaml-0.15.23-cp35-cp35m-win32.whl (166.3 kB view details)

Uploaded CPython 3.5mWindows x86

ruamel.yaml-0.15.23-cp35-cp35m-manylinux1_x86_64.whl (551.1 kB view details)

Uploaded CPython 3.5m

ruamel.yaml-0.15.23-cp34-cp34m-win_amd64.whl (183.4 kB view details)

Uploaded CPython 3.4mWindows x86-64

ruamel.yaml-0.15.23-cp34-cp34m-win32.whl (172.5 kB view details)

Uploaded CPython 3.4mWindows x86

ruamel.yaml-0.15.23-cp34-cp34m-manylinux1_x86_64.whl (557.6 kB view details)

Uploaded CPython 3.4m

ruamel.yaml-0.15.23-cp33-cp33m-win_amd64.whl (183.2 kB view details)

Uploaded CPython 3.3mWindows x86-64

ruamel.yaml-0.15.23-cp33-cp33m-win32.whl (172.5 kB view details)

Uploaded CPython 3.3mWindows x86

ruamel.yaml-0.15.23-cp33-cp33m-manylinux1_x86_64.whl (531.8 kB view details)

Uploaded CPython 3.3m

ruamel.yaml-0.15.23-cp27-cp27mu-manylinux1_x86_64.whl (527.7 kB view details)

Uploaded CPython 2.7mu

ruamel.yaml-0.15.23-cp27-cp27m-win_amd64.whl (184.2 kB view details)

Uploaded CPython 2.7mWindows x86-64

ruamel.yaml-0.15.23-cp27-cp27m-win32.whl (172.4 kB view details)

Uploaded CPython 2.7mWindows x86

ruamel.yaml-0.15.23-cp27-cp27m-manylinux1_x86_64.whl (527.7 kB view details)

Uploaded CPython 2.7m

File details

Details for the file ruamel.yaml-0.15.23.tar.gz.

File metadata

  • Download URL: ruamel.yaml-0.15.23.tar.gz
  • Upload date:
  • Size: 253.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for ruamel.yaml-0.15.23.tar.gz
Algorithm Hash digest
SHA256 25b29c13004b9f6a1a2f490229e228ab34f3af383887f1af88574711b216b76a
MD5 b154ce282b316a5ac6c8dd16eab6e6a8
BLAKE2b-256 a77dd77b8df7cb7616d87ae1465d1a9dd7f090ecc0ceec58ca22181e86cb9359

See more details on using hashes here.

File details

Details for the file ruamel.yaml-0.15.23-cp36-cp36m-win_amd64.whl.

File metadata

File hashes

Hashes for ruamel.yaml-0.15.23-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 015f4e3638bfd797ac12663f79e3bde764b66972ac278ce625dc1c7554691131
MD5 a236f5b6403551cb714cfb905bd9ebd5
BLAKE2b-256 a780cc885e441eee2ba44944375396d12ab482373d51069ee10ab9f4032619c2

See more details on using hashes here.

File details

Details for the file ruamel.yaml-0.15.23-cp36-cp36m-win32.whl.

File metadata

File hashes

Hashes for ruamel.yaml-0.15.23-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 00dcb1e7ee588546c78e418dc9f9a033f093e3db1ede3b63d8d7c75acdd41146
MD5 e906c419d689e0ae2f4dfebd6c308357
BLAKE2b-256 90d0b1f7a990be0a29424ca1fa24bf36c416f58358094a2bf16a1da9ef370b79

See more details on using hashes here.

File details

Details for the file ruamel.yaml-0.15.23-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for ruamel.yaml-0.15.23-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 bf432b1b1bb50374cf7182ce0303cbea5cf002408cda82dee5f98c13154a2e94
MD5 15bf8ad177c55bfd15e0312168d45a38
BLAKE2b-256 be368377d0fcd1e1a1ae0ef0560d59c7d63f7264d4fbc9abb4f570eff8051586

See more details on using hashes here.

File details

Details for the file ruamel.yaml-0.15.23-cp35-cp35m-win_amd64.whl.

File metadata

File hashes

Hashes for ruamel.yaml-0.15.23-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 53e795841ad57d6fdeb4cacd601c1c259fcb357375410d54879d8e3a16b77ade
MD5 766e6d8849051db6dcb7d6f4a0658160
BLAKE2b-256 92a8460e05b39cc9454f43dc2ccdc032b56cbe2e2b1c070fa049439e2b711d59

See more details on using hashes here.

File details

Details for the file ruamel.yaml-0.15.23-cp35-cp35m-win32.whl.

File metadata

File hashes

Hashes for ruamel.yaml-0.15.23-cp35-cp35m-win32.whl
Algorithm Hash digest
SHA256 c9fede8de6b89ec22042e4a644b0012511983b4967063c66ac3e0729f803ad0a
MD5 c0270eed211bb1c864d03f197b3b0044
BLAKE2b-256 5c3bfae7aa0145e52331513c6c1abbf8c0fc80858d6e27ab8b0dc9fe4913c7a6

See more details on using hashes here.

File details

Details for the file ruamel.yaml-0.15.23-cp35-cp35m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for ruamel.yaml-0.15.23-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 4831cef06687fdefcbd5d7b4b907826fcc24d3cde638c83ddd628f0beeff6d8c
MD5 3653f69291e8212ccb694ccc63f287cf
BLAKE2b-256 6362da66bfd8c6893ffdda066ba72a260d884aa0ef6788c25ab75b4ff1d38856

See more details on using hashes here.

File details

Details for the file ruamel.yaml-0.15.23-cp34-cp34m-win_amd64.whl.

File metadata

File hashes

Hashes for ruamel.yaml-0.15.23-cp34-cp34m-win_amd64.whl
Algorithm Hash digest
SHA256 a24fc892d4349cff2361f66ea8eafa018d3202c7e0c8cf50808da13815b7ab4b
MD5 638772fa3a743f0125df5d402b215d98
BLAKE2b-256 6df791b50d4804643fdd81441d4abdcedef19b496da51095403c684ffbda5774

See more details on using hashes here.

File details

Details for the file ruamel.yaml-0.15.23-cp34-cp34m-win32.whl.

File metadata

File hashes

Hashes for ruamel.yaml-0.15.23-cp34-cp34m-win32.whl
Algorithm Hash digest
SHA256 8c0089f624c9313dc18aa837f24a106880dd91220f332a851e0e60057a6452dc
MD5 abdf572c85de43e3fea16fbd42682bdd
BLAKE2b-256 b0d633dd1cc70416c798a8a5ab5a9ca260b0d86b5d0d4b1c5e6c2f2c3dc10d53

See more details on using hashes here.

File details

Details for the file ruamel.yaml-0.15.23-cp34-cp34m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for ruamel.yaml-0.15.23-cp34-cp34m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 8d7b17b25c9cc6b1baa0851384ecdcd50cfa2b9a0fc427cb204a5f4e75aa737b
MD5 6b0aa14e08388364544351f71814c641
BLAKE2b-256 61d49d30dbf0df058f0ffce253b7adc895f3d6b9010bd934e16154a258892a31

See more details on using hashes here.

File details

Details for the file ruamel.yaml-0.15.23-cp33-cp33m-win_amd64.whl.

File metadata

File hashes

Hashes for ruamel.yaml-0.15.23-cp33-cp33m-win_amd64.whl
Algorithm Hash digest
SHA256 0c91ca9ed6106dc0ad8dd97ae4ccf0dcf26ab9534474a673827ecab898abbe35
MD5 0625dcfd440a7d89fbea005e7420ba07
BLAKE2b-256 fda280f983e3f579f51d0fdfbb048ff9c0d44ec57690b86b45021c73b5ae7320

See more details on using hashes here.

File details

Details for the file ruamel.yaml-0.15.23-cp33-cp33m-win32.whl.

File metadata

File hashes

Hashes for ruamel.yaml-0.15.23-cp33-cp33m-win32.whl
Algorithm Hash digest
SHA256 d1e5fbf44b80ed27f56ae0493e5cffc7d038a5188ac8b11af6cecbeff850d79a
MD5 d69686c933b05118848a6c135b28b2ba
BLAKE2b-256 7aaf7a550f2f626e8430f43e182d48243f7bee25a596da39e1c918ec97cf14d0

See more details on using hashes here.

File details

Details for the file ruamel.yaml-0.15.23-cp33-cp33m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for ruamel.yaml-0.15.23-cp33-cp33m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 16011f4a6e5a1af69dd4a1b4097ffe3a0e70a5d8db743d7ebc62e4e206816f38
MD5 92a01dc58b466e1e055f5bc73aea1df5
BLAKE2b-256 a73e7633c942bf3a0fbffe8535ad4f8de8988a4821076ae8e82fef00fe625e21

See more details on using hashes here.

File details

Details for the file ruamel.yaml-0.15.23-cp27-cp27mu-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for ruamel.yaml-0.15.23-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 861120e49c8a003a85dd6c042c7dc285cf560fcf85379fe560268c3d0262e406
MD5 6ddad94cb8361a9a9c62690dfc8a9905
BLAKE2b-256 d3b1c7dd2dc830a783defc799c859c2a28db77f159a0eccf1582202efc791650

See more details on using hashes here.

File details

Details for the file ruamel.yaml-0.15.23-cp27-cp27m-win_amd64.whl.

File metadata

File hashes

Hashes for ruamel.yaml-0.15.23-cp27-cp27m-win_amd64.whl
Algorithm Hash digest
SHA256 b2ee3d37d8a6e6c04cca01264f3b320a6245d06e19b73138d571e10aa2af3833
MD5 0b8c923f8ad6530a2f321083f4d2c35d
BLAKE2b-256 94372e2dea32283e5a0c4364b80162ed3007ca1d858190349e7b105b2fd6a4b9

See more details on using hashes here.

File details

Details for the file ruamel.yaml-0.15.23-cp27-cp27m-win32.whl.

File metadata

File hashes

Hashes for ruamel.yaml-0.15.23-cp27-cp27m-win32.whl
Algorithm Hash digest
SHA256 7ff6eff88e117fc84d6a3b9467928916d35e8ef4711b150c8100bfe449e65809
MD5 122321609c469072437fba01e32323ab
BLAKE2b-256 503f14260524791ceabc4c8c968a3daed6c9d50b11fc4bce3d7d8311f69f4140

See more details on using hashes here.

File details

Details for the file ruamel.yaml-0.15.23-cp27-cp27m-manylinux1_x86_64.whl.

File metadata

File hashes

Hashes for ruamel.yaml-0.15.23-cp27-cp27m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 3cf7c17d8012c8e59eefea62c2f7c25cb008a68bdb10c5c8933df94cc7f5f603
MD5 a688f6a1bbd3399a3db94e09717cea17
BLAKE2b-256 c36057a4ff3c312348ce151fd93821e560026373f9e954d158cc3afaf1ba2b84

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page