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.26 (2017-08-10):
  • fix for disappearing comment after empty flow sequence (reported by oit-tzhimmash)

0.15.25 (2017-08-09):
  • fix for problem with dumping (unloaded) floats (reported by eyenseo)

0.15.24 (2017-08-09):
  • added ScalarFloat which supports roundtripping of 23.1, 23.100, 42.00E+56, 0.0, -0.0 etc. while keeping the format. Underscores in mantissas are not preserved/supported (yet, is anybody using that?).

  • (finally) fixed longstanding issue 23 (reported by Antony Sottile), now handling comment between block mapping key and value correctly

  • warn on YAML 1.1 float input that is incorrect (triggered by invalid YAML provided by Cecil Curry)

  • allow setting of boolean representation (false, true) by using: yaml.boolean_representation = [u'False', u'True']

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.26.tar.gz (257.2 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

ruamel.yaml-0.15.26-cp36-cp36m-win_amd64.whl (184.5 kB view details)

Uploaded CPython 3.6mWindows x86-64

ruamel.yaml-0.15.26-cp36-cp36m-win32.whl (170.2 kB view details)

Uploaded CPython 3.6mWindows x86

ruamel.yaml-0.15.26-cp36-cp36m-manylinux1_x86_64.whl (555.2 kB view details)

Uploaded CPython 3.6m

ruamel.yaml-0.15.26-cp35-cp35m-win_amd64.whl (184.5 kB view details)

Uploaded CPython 3.5mWindows x86-64

ruamel.yaml-0.15.26-cp35-cp35m-win32.whl (170.2 kB view details)

Uploaded CPython 3.5mWindows x86

ruamel.yaml-0.15.26-cp35-cp35m-manylinux1_x86_64.whl (555.0 kB view details)

Uploaded CPython 3.5m

ruamel.yaml-0.15.26-cp34-cp34m-win_amd64.whl (187.3 kB view details)

Uploaded CPython 3.4mWindows x86-64

ruamel.yaml-0.15.26-cp34-cp34m-win32.whl (176.4 kB view details)

Uploaded CPython 3.4mWindows x86

ruamel.yaml-0.15.26-cp34-cp34m-manylinux1_x86_64.whl (561.5 kB view details)

Uploaded CPython 3.4m

ruamel.yaml-0.15.26-cp33-cp33m-win_amd64.whl (187.1 kB view details)

Uploaded CPython 3.3mWindows x86-64

ruamel.yaml-0.15.26-cp33-cp33m-win32.whl (176.4 kB view details)

Uploaded CPython 3.3mWindows x86

ruamel.yaml-0.15.26-cp33-cp33m-manylinux1_x86_64.whl (535.7 kB view details)

Uploaded CPython 3.3m

ruamel.yaml-0.15.26-cp27-cp27mu-manylinux1_x86_64.whl (531.6 kB view details)

Uploaded CPython 2.7mu

ruamel.yaml-0.15.26-cp27-cp27m-win_amd64.whl (188.1 kB view details)

Uploaded CPython 2.7mWindows x86-64

ruamel.yaml-0.15.26-cp27-cp27m-win32.whl (176.4 kB view details)

Uploaded CPython 2.7mWindows x86

ruamel.yaml-0.15.26-cp27-cp27m-manylinux1_x86_64.whl (531.6 kB view details)

Uploaded CPython 2.7m

File details

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

File metadata

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

File hashes

Hashes for ruamel.yaml-0.15.26.tar.gz
Algorithm Hash digest
SHA256 3f53912fefb51c573ba1bc646e25680e05d4065db7bc252f4728f234f386cf8f
MD5 fbf0a28dcccb98fb83040d7bd8ed10af
BLAKE2b-256 aed3754681e9583615698dac93c55b925559dc6fb6d478c6be23f547508e869a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ruamel.yaml-0.15.26-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 2512c4357ebe72d79c809c109fe9dec27d177f7fba5081eab405cb0feadc1f7c
MD5 3c089baceb73235a7c0ab5747440cb7a
BLAKE2b-256 ecd49b8c91e17f77a4a74b41dbb97ed9e36a66e78bce4434a049e919b22f034c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ruamel.yaml-0.15.26-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 088a32ff8ef0b23767f3364c8298c5797955f3ca0c3a92155916e7dc14315ba8
MD5 390202abb1dd3b4aa9eb910547f7ab92
BLAKE2b-256 881954a103a1f2aaa33b6c7f326477b6094bb789a7187bc05436ecc2980a9a25

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ruamel.yaml-0.15.26-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 6890f5a81d6176f3942be5c1d35befd1ab78b3d3509f4230a67fb2e197568f4f
MD5 2af2ae80fb471d464c9f44d3d8bacbd4
BLAKE2b-256 b9e611989c64fa8d4d73b2a0b391f9e16e02c21e1b6e2025a601ba6b1b642b95

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ruamel.yaml-0.15.26-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 d8174e36900fbcd064c695e3181f4ed3a8772b1f2674e2cb9b833c7b845f3ebd
MD5 5a58c0a22db6d094529ba9eb9515e26f
BLAKE2b-256 39043dc122ac7854d053773d997c40c461e6d6caeb9eddeeaee4fe842b24bb87

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ruamel.yaml-0.15.26-cp35-cp35m-win32.whl
Algorithm Hash digest
SHA256 bcbb07321cfe99e647246653922a870b45b85b88035ab3230c230351d5597b07
MD5 f8beb6b516e32507fa57df4d3f62ea09
BLAKE2b-256 4d1c755f681e877762cb994adf335759b5fab71952a7cfed56c446549364e7ab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ruamel.yaml-0.15.26-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 11c78533d775a89c4249770b9362ecff7001e788cef12f335474c0867cfd7c70
MD5 3ac708c3e31940c848552e847dcc9153
BLAKE2b-256 8422d26c0c8732da5824c9ce78521c769d20db7e8d78365927e1cda6c2e76e7b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ruamel.yaml-0.15.26-cp34-cp34m-win_amd64.whl
Algorithm Hash digest
SHA256 a4f7f7d022e1154da04d03618a3e7f03b83f3cef9702d0bda21b696edf1d26db
MD5 022732bc23d9c65c49e006f9b6721dc3
BLAKE2b-256 a03dceb397c18d5a85beebf5b272e2b7fbed6d8f15179c109a1777e63a309598

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ruamel.yaml-0.15.26-cp34-cp34m-win32.whl
Algorithm Hash digest
SHA256 92bd74ed3ffbb2b9d66ea5fd801f754e882da1e327a7e0969f05faf11aed0ecd
MD5 0b46cc0a14db4a520e80995b32b2a049
BLAKE2b-256 66b7aa36509ab754f798c80dd1fa3d2f17b08702c5cfd91dbebfb547074c9d6d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ruamel.yaml-0.15.26-cp34-cp34m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 dfb8c5e2eae3578e0af6c0c3b4e577b2cabce610ee72ad3b9af2723e479baab3
MD5 5b1b0fadcf384fba507e4a2048c2d928
BLAKE2b-256 4e72df83c350c7b8f19fa376b35b76f425a0674c11cd33a98febca76f630ebca

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ruamel.yaml-0.15.26-cp33-cp33m-win_amd64.whl
Algorithm Hash digest
SHA256 8fac98255d0d7810072b57fcba35fe069fec49f19156d20bf83ef97237bfd719
MD5 bab3bab4f7df460caac0d3936c48efb4
BLAKE2b-256 235f7494602cc39b4a91bcb3227e84726a39106f9c14c105387f7bf4c4e3cf8b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ruamel.yaml-0.15.26-cp33-cp33m-win32.whl
Algorithm Hash digest
SHA256 828ab96ff588704fde70f6194e8d16e6e84572dd3d9310512c2004a145b6d49d
MD5 430fe2a9b684830799ee5416a19b7a15
BLAKE2b-256 23c9cb4b82a553709ee774a3c2f08902757f63d4343b4de1a9cbebbf41b7e6cb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ruamel.yaml-0.15.26-cp33-cp33m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 ee227d715092e718257ac7540db837abbeefaf1ec2a2a2e1a2252dc83efedce2
MD5 42ec906e38ab6a282d9f3d902ad53a31
BLAKE2b-256 78d13cb381a654e01b4c05810c3c0cfe205a238b23e8f49e8eb01ff1a5db9293

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ruamel.yaml-0.15.26-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 6ca5a881328aae6323aab6d773a5290064a5bd763397b91e9704eeee3f499c5e
MD5 9ca4dceea8d5e56a09fbca263f3df852
BLAKE2b-256 c347693f6c582e7d5688caf65cf2b0d2d5ef49f467ab32fc8e25769ea413c694

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ruamel.yaml-0.15.26-cp27-cp27m-win_amd64.whl
Algorithm Hash digest
SHA256 74ad13b8915ff18aa91df0ba67f9fc6cf349f6485fa2a68fd6ed3009e482efa1
MD5 203ee5a36e4e3046097fb5575b4caf24
BLAKE2b-256 5951febb72383d3ce3c7c32e82e5e33bb83b9a0e8f5621de265369c1bc097f3f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ruamel.yaml-0.15.26-cp27-cp27m-win32.whl
Algorithm Hash digest
SHA256 2532727b31109b453dfa0e95ad966c5b2cf822fbfe9b318bb4143cd12d6cc139
MD5 f1f2172c3298476eec6e0b23b15dcab5
BLAKE2b-256 9e84be612da99bf101d3bae71684bb733c774d306172c8fedce9bb4afb2e323d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ruamel.yaml-0.15.26-cp27-cp27m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 e55fba129c66612408f9608d8e216129a3bda708a334ce30bf38337d5b397868
MD5 201e3fa6ddbd2060d713183e47323e3c
BLAKE2b-256 97d165f6805ce2232f0cda66897bac3787d244e4a5e93224e670a588c783ce3f

See more details on using hashes here.

Supported by

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