Sync from SUSE:SLFO:Main python-ruamel.yaml revision 97d71a91262b5dbb0964df142703d5ad

This commit is contained in:
Adrian Schröter 2024-05-03 22:54:26 +02:00
commit 24c10b0443
5 changed files with 499 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

View File

@ -0,0 +1,33 @@
Author: Michael R. Crusoe <crusoe@debian.org>
Description: Default to pure python parsing on big endian systems
Forwarded: not-needed
As the cpython code has an endianness bug https://sourceforge.net/p/ruamel-yaml/tickets/360/
Thanks to Rebecca N. Palmer for the tip about sys.byteorder!
Index: ruamel.yaml/main.py
===================================================================
--- ruamel.yaml.orig/main.py 2021-10-14 00:10:27.265523204 +0200
+++ ruamel.yaml/main.py 2021-10-14 00:11:02.469504291 +0200
@@ -51,7 +51,7 @@
class YAML:
- def __init__(self, *, typ=None, pure=False, output=None, plug_ins=None): # input=None,
+ def __init__(self, *, typ=None, pure=None, output=None, plug_ins=None): # input=None,
# type: (Any, Optional[Text], Any, Any, Any) -> None
"""
typ: 'rt'/None -> RoundTripLoader/RoundTripDumper, (default)
@@ -64,6 +64,11 @@
"""
self.typ = ['rt'] if typ is None else (typ if isinstance(typ, list) else [typ])
+ if pure is None:
+ if sys.byteorder == 'big':
+ pure = True
+ else:
+ pure = False
self.pure = pure
# self._input = input

380
python-ruamel.yaml.changes Normal file
View File

@ -0,0 +1,380 @@
-------------------------------------------------------------------
Fri Apr 21 12:33:35 UTC 2023 - Dirk Müller <dmueller@suse.com>
- add sle15_python_module_pythons (jsc#PED-68)
-------------------------------------------------------------------
Tue Jul 19 11:59:38 UTC 2022 - Dirk Müller <dmueller@suse.com>
- update to 0.17.21:
* fix bug in calling `.compose()` method with `pathlib.Path` instance.
-------------------------------------------------------------------
Thu Apr 28 15:21:16 UTC 2022 - Jan Baier <jbaier@suse.com>
- add 0000-fix-big-endian-issues.patch to workaround issue 360 on big endian systems
-------------------------------------------------------------------
Mon Jan 10 22:47:40 UTC 2022 - Dirk Müller <dmueller@suse.com>
- update to 0.17.20:
- fix error in microseconds while rounding datetime fractions >= 9999995
- fix mypy problems
- copy-paste error in folded scalar comment attachment
- fix 411, indent error comment between key empty seq value
-------------------------------------------------------------------
Mon Nov 29 11:01:04 UTC 2021 - Dirk Müller <dmueller@suse.com>
- update to 0.17.17:
* extract timestamp matching/creation to util
-------------------------------------------------------------------
Sat Oct 16 22:32:20 UTC 2021 - Dirk Müller <dmueller@suse.com>
- update to 0.17.16:
- also handle issue 397 when comment is newline
- fix issue 397, insert comment before key when a comment between key and value exists
- fix issue 396, inserting key/val in merged-in dictionary
- minor fix in attr handling
- fix issue with anchor on registered class not preserved and those classes using package
attrs with `@attr.s()`
- fix error baseclass for ``DuplicateKeyErorr`` (reported by `Łukasz Rogalski
- fix typo in reader error message, causing `KeyError` during reader error
-------------------------------------------------------------------
Sat Jul 17 13:53:25 UTC 2021 - Dirk Müller <dmueller@suse.com>
- update to 0.17.10:
- fix issue 388, token with old comment structure != two elements
- fix issue with updating CommentedMap
- fix for issue 387 where templated anchors on tagged object did get set
resulting in potential id reuse.
- issue 385 also affected other deprecated loaders
- merged type annotations update
- deprecated round_trip_loader function not working
- wasted a few hours getting rid of mypy warnings/errors
- fix for issue 384 !!set with aliased entry resulting in broken YAML on rt
-------------------------------------------------------------------
Sun May 2 14:52:46 UTC 2021 - Matthias Fehring <buschmann23@opensuse.org>
- update to 0.17.4
* prevent (empty) comments from throwing assertion error comments
(or empty line) will be dropped
- update to 0.17.3
* fix for issue 382 caused by an error in a format string
* allow expansion of aliases by setting
yaml.composer.return_alias = lambda s: copy.deepcopy(s)
-------------------------------------------------------------------
Tue Mar 30 09:28:23 UTC 2021 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.17.2
* fix upstream packaging problems
-------------------------------------------------------------------
Fri Mar 26 15:28:05 UTC 2021 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.17.0
* drop python2 support
* preparation for f-strings
-------------------------------------------------------------------
Fri Oct 16 08:47:42 UTC 2020 - Matthias Fehring <buschmann23@opensuse.org>
- update to 0.16.12
* update links in doc
- update to 0.16.11
* workaround issue with setuptools 0.50 and importing pip
-------------------------------------------------------------------
Fri Feb 21 10:02:08 UTC 2020 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.16.10 (bsc#1164458, CVE-2019-20478)
* fix typchecking issue on TaggedScalar
* fix error in dumping literal scalar in sequence with comments before element
* fix empty string mapping key roundtripping with preservation of quotes as ?
* fix incorrect state setting in class constructor
-------------------------------------------------------------------
Mon Sep 16 15:36:08 UTC 2019 - John Vandenberg <jayvdb@gmail.com>
- Replace => with >= in BuildRequires
-------------------------------------------------------------------
Fri Sep 6 06:54:38 UTC 2019 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.16.5
* allow for YAML(typ=['unsafe', 'pytypes'])
* fix output of TAG directives with #
* move setting of version based on YAML directive to scanner, allowing to
check for file version during TAG directive scanning
* preserve YAML and TAG directives on roundtrip, correctly output # in URL
for YAML 1.2
-------------------------------------------------------------------
Mon Aug 12 12:37:27 UTC 2019 - Ondřej Súkup <mimi.vx@gmail.com>
- ruamel.yaml.clib is now harddep
-------------------------------------------------------------------
Thu Aug 8 13:27:29 UTC 2019 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.16.1
* Allow '#' in tag URI as these are allowed in YAML 1.2
-------------------------------------------------------------------
Wed Aug 7 13:49:46 UTC 2019 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.16.0
* split c-library to separeate package (python-ruamel.yaml.clib)
-------------------------------------------------------------------
Mon Jul 15 07:49:54 UTC 2019 - John Vandenberg <jayvdb@gmail.com>
- Fix %python_exec -> %python_expand
- update to 0.15.99
* add `py.typed` to distribution
* more accurately specify repository in README
- from 0.15.98
* pass memo on to deepcopy
* regenerate ext/_ruamel_yaml.c with Cython version 0.29.12
needed for Python 3.8 betas
-------------------------------------------------------------------
Tue May 21 11:20:51 UTC 2019 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.15.96
* fix failure to round-trip anchored scalars in block sequence
* fix failure to indent comments on round-trip anchored block style
scalars in block sequence
-------------------------------------------------------------------
Tue May 14 07:23:53 UTC 2019 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.15.94
* fix missing line-break after end-of-file comments not ending in
line-break
* fix failure to parse empty implicit flow mapping key
* in YAML 1.1 plains scalars `y`, 'n', `Y`, and 'N' are now
correctly recognised as booleans and such strings dumped quoted
-------------------------------------------------------------------
Thu Apr 18 13:10:02 UTC 2019 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.15.92
* fix failure to parse empty implicit block mapping key
* allowing duplicate keys would not work for merge keys
* fix issue with updating CommentedMap from list of tuples
-------------------------------------------------------------------
Fri Mar 1 14:17:32 UTC 2019 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.15.89
* fix for items with flow-mapping in block sequence output on single line
* fix for safe dumping erroring in creation of representereror when dumping namedtuple
* fix inclusing of python code from the subpackage data
-------------------------------------------------------------------
Tue Jan 29 09:59:19 UTC 2019 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.15.87
* fix problem with empty lists and the code to reinsert merge keys
* reinsert merge key in its old position
* fix for issue with non-ASCII anchor names
* fix for issue when parsing flow mapping value starting with colon
* the types used by `SafeConstructor` for mappings and sequences can
now by set by assigning to `XXXConstructor.yaml_base_dict_type`
(and `..._list_type`), preventing the need to copy two methods
with 50+ lines that had `var = {}` hardcoded.
* fix for `CommentedMap.copy()` not returning `CommentedMap`
* fix for bug in roundtripping aliases used as key
* anchors and aliases on scalar int, float, string and bool are now preserved.
Anchors do not need a referring alias for these
* fix issue saving methods of metaclass derived classes
-------------------------------------------------------------------
Tue Dec 4 10:06:58 UTC 2018 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.15.80
* fix issue emitting BEL character when round-tripping invalid folded input
* fix issue with anchors nested deeper than alias
-------------------------------------------------------------------
Fri Nov 30 07:43:33 UTC 2018 - Adrian Schröter <adrian@suse.de>
- update to 0.15.78
* setup issue for 3.8 (reported by Sidney Kuyateh)
* setting yaml.sort_base_mapping_type_on_output = False, will prevent explicit sorting by keys in the base representer of mappings. Roundtrip already did not do this. Usage only makes real sense for Python 3.6+ (feature request by Sebastian Gerber).
* implement Python version check in YAML metadata in _test/test_z_data.py
* fix issue with empty mapping and sequence loaded as flow-style (mapping reported by Min RK, sequence by Maged Ahmed)
* fix issue with single '?' scalar (reported by Terrance)
* fix issue with duplicate merge keys (prompted by answering a StackOverflow question by math)
* fix dropping of comment on rt before sequence item that is sequence item (reported by Thorsten Kampe)
* fix irregular output on pre-comment in sequence within sequence (reported by Thorsten Kampe)
* allow non-compact (i.e. next line) dumping sequence/mapping within sequence.
* fix regression on explicit 1.1 loading with the C based scanner/parser (reported by Tomas Vavra)
-------------------------------------------------------------------
Mon Oct 1 09:59:45 UTC 2018 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.15.71
* added ``key`` and ``reverse`` parameter
* indent root level literal scalars that have directive or document end
markers at the beginning of a line
* fix issue #232 revert to throw ParserError for unexcpected ``]``
and ``}`` instead of IndexError.
* fix issue with dump_all gobbling end-of-document comments on parsing
* fix issue with parsabel, but incorrect output with nested flow-style sequences
* fix issue with loading Python objects that have __setstate__ and recursion in parameters
* reverted CommentedMap and CommentedSeq to subclass ordereddict resp. list,
reimplemented merge maps so that both ``dict(**commented_map_instance)`` and JSON
dumping works. This also allows checking with ``isinstance()`` on ``dict`` resp. ``list``.
* fix regression where handcrafted CommentedMaps could not be initiated
* fix regression with non-root literal scalars that needed indent indicator
* tag:yaml.org,2002:python/object/apply now also uses __qualname__ on PY3
-------------------------------------------------------------------
Fri Aug 31 10:53:13 UTC 2018 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.15.64
* support round-trip of tagged sequences: !Arg [a, {b: 1}]
* fix issue when roundtripping floats starting with a dot such as .5
* C based reader/scanner & emitter now allow setting of 1.2 as YAML version
-------------------------------------------------------------------
Tue Aug 28 13:20:10 UTC 2018 - mimi.vx@gmail.com
- update to 0.15.61
* support for round-tripping folded style scalars
* speed up of scanning (~30% depending on the input)
* cleanup for mypy
* issue with C based loader and leading zeros
* simple mappings can now be used as keys when round-tripping
* Fix that CommentedSeq could no longer be used in adding or do a sort
* fix issue with python -O optimizing away code
* unmade CommentedSeq a subclass of list.
* fix issue where a comment could pop-up twice in the output
* fix issue where JSON object (mapping) without spaces was not parsed properly
* ix issue where comments after empty flow-style mappings were not emitted
* fix issue with flow style mapping with comments gobbled newline
* fix issue where single + under YAML 1.2 was interpreted as integer, erroring out
* added .copy() mapping representation for round-tripping
* Fix method name dumps (were not dotted) and loads
* Allow YAML() as a context manager for output
* Fix issue with incorrect type information for load() and dump()
* fixed DeprecationWarning for importing from collections on 3.7
* After adding failing test for YAML.load_all(Path()), remove StopIteration
-------------------------------------------------------------------
Sun Jul 15 22:04:22 UTC 2018 - mimi.vx@gmail.com
- update to 0.15.44
* fix for losing precision when roundtripping floats by
* decoding unicode escaped tags on Python2
* add detection of C-compile failure
* fix regression showing only on narrow Python 2.7
* ``register_class()`` now returns class
-------------------------------------------------------------------
Wed Apr 4 18:37:46 UTC 2018 - mimi.vx@gmail.com
- update to 0.15.37
* fix incompatibility of C extension with 3.7
-------------------------------------------------------------------
Tue Jan 9 08:52:38 UTC 2018 - mimi.vx@gmail.com
- update to 0.15.35
* allow None as stream when specifying transform parameters to YAML.dump()
-------------------------------------------------------------------
Thu Oct 12 11:59:03 UTC 2017 - mimi.vx@gmail.com
- update to 0.15.34
* fix for issue 157: CDumper not dumping floats
* support for “undefined” round-tripping tagged scalar objects
* fix issue 148: replace cryptic error message when using !!timestamp with
an incorrectly formatted or non- scalar.
* allow setting yaml.default_flow_style = None (default: False) for for typ='rt'.
* fix for issue 149: multiplications on ScalarFloat now return float
* fix Comment dumping
* fix for issue with “compact JSON” not parsing: {"in":{},"out":{}}
* fix issue #51: different indents for mappings and sequences
* fix for flow sequence/mapping as element/value of block sequence
with sequence-indent minus dash-offset not equal two.
* fix issue #61: merge of merge cannot be __repr__-ed
* fix issue 62, YAML 1.2 allows ? and : in plain scalars if non-ambigious
* fix lists within lists which would make comments disappear
* fix for disappearing comment after empty flow sequence
* fix for problem with dumping (unloaded) floats
* 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
* (finally) fixed longstanding issue 23, now handling comment between block
mapping key and value correctly
* warn on YAML 1.1 float input that is incorrect
* allow setting of boolean representation (false, true)
by using: yaml.boolean_representation = [u'False', u'True']
* fix for round_tripping integers on 2.7.X > sys.maxint
* fix for round_tripping singe excl. mark tags doubling
* fix for writing unicode in new API,
* 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!)
* 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
* support for Unicode supplementary Plane output
* fix for issue 135, typ=safe not dumping in Python 2.7
* fix for issue 133, in setup.py: change ModuleNotFoundError to ImportError
* suppress duplicate key warning on mappings with merge keys
* remove fatal dependency of setup.py on wheel package
* fix for issue 130, regression in nested merge keys
* top level PreservedScalarString not indented if not explicitly asked to
* some mypy additions
* fix for issue 127: tagged scalars were always quoted and seperated by
a newline when in a block sequence
* allow plug-in install via install ruamel.yaml[jinja2]
* add plug-in mechanism for load/dump pre resp. post-processing
* a set() with duplicate elements now throws error in rt loading
* support for toplevel column zero literal/folded scalar in explicit documents
* repeat load() on a single YAML() instance would fail.
* 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
* update to conform to mypy 0.511: mypy strict
* duplicate keys in mappings generate an error
* dependecy on ruamel.ordereddict for 2.7 now via extras_require
* 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
values type if possible.
* added YAML class for new API
* fix for issue 119, deepcopy not returning subclasses
* fix for issue 103 allowing implicit documents after document end marker
line (...) in YAML 1.2
* fix problem with emitting using cyaml
-------------------------------------------------------------------
Mon Apr 24 20:16:56 UTC 2017 - aloisio@gmx.com
- Update to 0.14.9 (see included CHANGES file)
- Converted to single-spec
- LICENSE file is now provided internally, so dropped Source1
- Dropped python-ruamel.ordereddict as build requirement
-------------------------------------------------------------------
Tue Oct 11 21:14:56 UTC 2016 - rjschwei@suse.com
- Initial build (FATE#321630, bsc#1002895)
+ Include in SLES 12
+ Version 0.12.14

60
python-ruamel.yaml.spec Normal file
View File

@ -0,0 +1,60 @@
#
# spec file for package python-ruamel.yaml
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%{?sle15_python_module_pythons}
Name: python-ruamel.yaml
Version: 0.17.21
Release: 0
Summary: Python YAML parser
License: MIT
Group: Development/Languages/Python
URL: https://sourceforge.net/p/ruamel-yaml
Source: https://files.pythonhosted.org/packages/source/r/ruamel.yaml/ruamel.yaml-%{version}.tar.gz
Patch0: 0000-fix-big-endian-issues.patch
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-ruamel.yaml.clib >= 0.1.2
BuildArch: noarch
%python_subpackages
%description
ruamel.yaml is a YAML parser/emitter that supports roundtrip preservation
of comments, seq/map flow style, and map key order.
%prep
%setup -q -n ruamel.yaml-%{version}
%patch0 -p1
rm -rf *egg-info
%build
%python_build
%install
%python_install --single-version-externally-managed
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%files %{python_files}
%license LICENSE
%doc CHANGES README.rst
%{python_sitelib}/ruamel
%{python_sitelib}/ruamel.yaml-%{version}-py%{python_version}-nspkg.pth
%{python_sitelib}/ruamel.yaml-%{version}-py%{python_version}.egg-info
%changelog

BIN
ruamel.yaml-0.17.21.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.