commit 2eeabd73a8248dfcea4731c320d79b91d31b40b3 Author: Adam Samalik Date: Mon May 8 11:39:53 2023 +0200 import sources diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d9c1e4d --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/ruamel-yaml-code-af9628b0d0479c35a60efc44b8d6dff9dc95aed2.zip diff --git a/bz-1951852-test.py b/bz-1951852-test.py new file mode 100644 index 0000000..0287df2 --- /dev/null +++ b/bz-1951852-test.py @@ -0,0 +1,37 @@ +import io +import sys +import ruamel.yaml +from ruamel.yaml import YAML + +ruamel_yaml = YAML(typ="rt") +ruamel_yaml.default_flow_style = False +ruamel_yaml.preserve_quotes = True +ruamel_yaml.width = 1024 + +buf = """\ +# top level +top: + # next level 1 + - { here: 1, there: 2 } + # next level 2 + - { there: 1, here: 2 } +top2: + # next level 1-2 + - { here: 11, there: 22 } + # next level 2-2 + - { there: 11, here: 22 } +""" + +if len(sys.argv) > 1: + buf = open(sys.argv[1]).read() +ruamel_data = ruamel_yaml.load(buf) +ruamel_yaml.indent(mapping=2, sequence=4, offset=2) +outf = io.StringIO() +ruamel_yaml.dump(ruamel_data, outf) +buf = outf.getvalue() +print(buf) +ruamel_data = ruamel_yaml.load(buf) +outf = io.StringIO() +ruamel_yaml.dump(ruamel_data, outf) +buf = outf.getvalue() +print(buf) diff --git a/python-ruamel-yaml-pathlib.patch b/python-ruamel-yaml-pathlib.patch new file mode 100644 index 0000000..e18fff8 --- /dev/null +++ b/python-ruamel-yaml-pathlib.patch @@ -0,0 +1,56 @@ +--- ruamel-yaml-code-af9628b0d0479c35a60efc44b8d6dff9dc95aed2/_doc/conf.py.orig 2021-04-20 17:11:58.090894727 -0600 ++++ ruamel-yaml-code-af9628b0d0479c35a60efc44b8d6dff9dc95aed2/_doc/conf.py 2021-04-20 17:13:38.946521358 -0600 +@@ -75,7 +75,10 @@ class ryd2rst: + if False: + try: + from ryd.__main__ import RYDCmd +- from ruamel.std.pathlib import Path ++ try: ++ from pathlib import Path ++ except ImportError: ++ from pathlib2 import Path + + oldargv = sys.argv + for fn in Path('.').glob('*.ryd'): +--- ruamel-yaml-code-af9628b0d0479c35a60efc44b8d6dff9dc95aed2/_test/test_api_change.py.orig 2021-04-20 17:12:13.434990060 -0600 ++++ ruamel-yaml-code-af9628b0d0479c35a60efc44b8d6dff9dc95aed2/_test/test_api_change.py 2021-04-20 17:13:58.317641717 -0600 +@@ -9,7 +9,10 @@ testing of anchors and the aliases refer + import sys + import textwrap + import pytest +-from ruamel.std.pathlib import Path ++try: ++ from pathlib import Path ++except ImportError: ++ from pathlib2 import Path + + + class TestNewAPI: +--- ruamel-yaml-code-af9628b0d0479c35a60efc44b8d6dff9dc95aed2/_test/roundtrip.py.orig 2021-04-20 17:25:36.621971457 -0600 ++++ ruamel-yaml-code-af9628b0d0479c35a60efc44b8d6dff9dc95aed2/_test/roundtrip.py 2021-04-20 17:26:47.303408002 -0600 +@@ -7,7 +7,10 @@ helper routines for testing round trip o + """ + import sys + import textwrap +-from ruamel.std.pathlib import Path ++try: ++ from pathlib import Path ++except ImportError: ++ from pathlib2 import Path + + enforce = object() + +--- ruamel-yaml-code-af9628b0d0479c35a60efc44b8d6dff9dc95aed2/_test/test_z_data.py.orig 2021-04-20 17:26:30.851306390 -0600 ++++ ruamel-yaml-code-af9628b0d0479c35a60efc44b8d6dff9dc95aed2/_test/test_z_data.py 2021-04-20 17:26:40.850368147 -0600 +@@ -6,7 +6,10 @@ import sys + import pytest # NOQA + import warnings # NOQA + +-from ruamel.std.pathlib import Path ++try: ++ from pathlib import Path ++except ImportError: ++ from pathlib2 import Path + + base_path = Path('data') # that is ruamel.yaml.data + PY2 = sys.version_info[0] == 2 diff --git a/python-ruamel-yaml-pytest27.patch b/python-ruamel-yaml-pytest27.patch new file mode 100644 index 0000000..ef7d17a --- /dev/null +++ b/python-ruamel-yaml-pytest27.patch @@ -0,0 +1,18 @@ +--- ruamel-yaml-code-af9628b0d0479c35a60efc44b8d6dff9dc95aed2/_test/test_anchor.py.orig 2021-04-20 17:09:14.371877519 -0600 ++++ ruamel-yaml-code-af9628b0d0479c35a60efc44b8d6dff9dc95aed2/_test/test_anchor.py 2021-04-20 17:09:45.359070044 -0600 +@@ -7,6 +7,7 @@ testing of anchors and the aliases refer + """ + + import pytest ++from distutils.version import LooseVersion + from textwrap import dedent + import platform + +@@ -248,6 +249,7 @@ class TestAnchorsAliases: + ) + + # this is an error in PyYAML ++ @pytest.mark.skipif(LooseVersion(pytest.__version__) < LooseVersion("2.8"), reason="Need pytest 2.7") + def test_reused_anchor(self): + from ruamel.yaml.error import ReusedAnchorWarning + diff --git a/python-ruamel-yaml.spec b/python-ruamel-yaml.spec new file mode 100644 index 0000000..adee591 --- /dev/null +++ b/python-ruamel-yaml.spec @@ -0,0 +1,148 @@ +%global pypi_name ruamel.yaml +%global pname ruamel-yaml +%global commit af9628b0d0479c35a60efc44b8d6dff9dc95aed2 + + +Name: python-%{pname} +Version: 0.15.100 +Release: 1%{?dist} +Summary: YAML 1.2 loader/dumper package for Python + +License: MIT +URL: https://sourceforge.net/projects/ruamel-yaml/ +#Source0: https://files.pythonhosted.org/packages/source/r/%{pypi_name}/%{pypi_name}-%{version}.tar.gz +# Use bitbucket sources so we can run the tests +#Source0: https://bitbucket.org/ruamel/yaml/get/%{version}.tar.gz#/%{pname}-%{version}.tar.gz +# moved to sourceforge +Source0: https://sourceforge.net/code-snapshots/hg/r/ru/%{pname}/code/%{pname}-code-%{commit}.zip +Source1: bz-1951852-test.py + +# Works with pytest 2.7 +Patch0: python-ruamel-yaml-pytest27.patch + +# Don't require ruamel.std.pathlib, but use stdlib's pathlib on py3, pathlib2 on py2 +Patch1: python-ruamel-yaml-pathlib.patch + +BuildRequires: gcc +BuildRequires: libyaml-devel + +%description +ruamel.yaml is a YAML 1.2 loader/dumper package for Python. +It is a derivative of Kirill Simonov’s PyYAML 3.11 + +%package -n python%{python3_pkgversion}-%{pname} +Summary: YAML 1.2 loader/dumper package for Python +BuildRequires: python%{python3_pkgversion}-devel +BuildRequires: python%{python3_pkgversion}-setuptools +# For tests +BuildRequires: python%{python3_pkgversion}-pytest +# typing was added in Python 3.5 +%if %{python3_pkgversion} == 34 +BuildRequires: python%{python3_pkgversion}-typing +%endif +%{?python_provide:%python_provide python%{python3_pkgversion}-%{pypi_name}} + +Requires: python%{python3_pkgversion}-setuptools +%if %{python3_pkgversion} == 34 +Requires: python%{python3_pkgversion}-typing +%endif + +%description -n python%{python3_pkgversion}-%{pname} +ruamel.yaml is a YAML 1.2 loader/dumper package for Python. +It is a derivative of Kirill Simonov’s PyYAML 3.11 + +%prep +%autosetup -n %{pname}-code-%{commit} -p1 +rm -rf %{pypi_name}.egg-info + +%build +%py3_build + +%install +%{__python3} setup.py install --single-version-externally-managed --skip-build --root $RPM_BUILD_ROOT + +%check +PYTHONPATH=$(echo build/lib.*%{python3_version}) py.test-%{python3_version} _test/test_*.py +PYTHONPATH=$(echo build/lib.*%{python3_version}) %{__python3} %{SOURCE1} + +%files -n python%{python3_pkgversion}-%{pname} +%license LICENSE +%doc README.rst +%{python3_sitearch}/ruamel +%{python3_sitearch}/_ruamel_yaml.cpython-* +%{python3_sitearch}/%{pypi_name}-%{version}-py?.?-*.pth +%{python3_sitearch}/%{pypi_name}-%{version}-py?.?.egg-info + +%changelog +* Tue Apr 20 2021 Rich Megginson - 0.15.100-1 +- Resolves: rhbz#1951852 + error converting lists with embedded comments + +* Mon Nov 23 2020 Pavel Cahyna - 0.15.41-5 +- Rebuild after adding to RHEL buildrood and configuring CI gating + +* Wed Mar 06 2019 Lon Hohberger - 0.15.41-4 +- Rebuild for new architectures + +* Mon Jan 14 2019 Miro Hrončok - 0.15.41-3 +- Subpackage python2-ruamel-yaml has been removed + See https://fedoraproject.org/wiki/Changes/Mass_Python_2_Package_Removal + +* Sat Jul 14 2018 Fedora Release Engineering - 0.15.41-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri Jun 29 2018 Miro Hrončok - 0.15.41-1 +- Update to 0.15.41 +- Add patch not to require ruamel.std.pathlib + +* Tue Jun 19 2018 Miro Hrončok - 0.13.14-4 +- Rebuilt for Python 3.7 + +* Fri Feb 09 2018 Iryna Shcherbina - 0.13.14-3 +- Update Python 2 dependency declarations to new packaging standards + (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3) + +* Fri Feb 09 2018 Fedora Release Engineering - 0.13.14-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Wed Aug 9 2017 Orion Poplawski - 0.13.14-1 +- Update to 0.13.14 + +* Thu Aug 03 2017 Fedora Release Engineering - 0.13.13-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 0.13.13-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Mon Feb 13 2017 Jan Chaloupka - 0.13.13-3 +- The ruamel.yaml needs at least typing >= 3.5.2.2 + related: #1386563 + +* Sat Feb 11 2017 Fedora Release Engineering - 0.13.13-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Tue Jan 31 2017 Orion Poplawski - 0.13.13-1 +- Update to 0.13.13 + +* Tue Jan 31 2017 Orion Poplawski - 0.12.14-7 +- Add patch to support pytest 2.7 in EPEL7 + +* Mon Dec 19 2016 Miro Hrončok - 0.12.14-6 +- Rebuild for Python 3.6 + +* Wed Oct 26 2016 Orion Poplawski - 0.12.14-5 +- Require python34-typing on EPEL +- Ignore python2 test failure due to old pytest on EPEL7 + +* Wed Oct 26 2016 Orion Poplawski - 0.12.14-4 +- Build python3 package +- Run tests + +* Tue Oct 25 2016 Chandan Kumar - 0.12.14-3 +- Disabling python3 as python3-ruamel-ordereddict not available + +* Mon Oct 24 2016 Chandan Kumar - 0.12.14-2 +- Fixed python2-typing runtime dependency issue + +* Fri Oct 14 2016 Chandan Kumar - 0.12.14-1 +- Initial package. diff --git a/sources b/sources new file mode 100644 index 0000000..84fe21c --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (ruamel-yaml-code-af9628b0d0479c35a60efc44b8d6dff9dc95aed2.zip) = 17f3f070bbdef84f3a166cbb6044ad49983619afdfb723c31d03d094df7a75ffdf393a01053bba0567d862fb6dab8b9e23596a331549f55bab5e652463a7227c