diff --git a/0000-fix-big-endian-issues.patch b/0000-fix-big-endian-issues.patch new file mode 100644 index 0000000..0d352f7 --- /dev/null +++ b/0000-fix-big-endian-issues.patch @@ -0,0 +1,33 @@ +Author: Michael R. Crusoe +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 diff --git a/python-ruamel-yaml-pathlib.patch b/python-ruamel-yaml-pathlib.patch deleted file mode 100644 index fccb550..0000000 --- a/python-ruamel-yaml-pathlib.patch +++ /dev/null @@ -1,63 +0,0 @@ -diff --git a/_doc/conf.py b/_doc/conf.py ---- a/_doc/conf.py -+++ b/_doc/conf.py -@@ -75,7 +75,10 @@ - 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'): -diff --git a/_test/roundtrip.py b/_test/roundtrip.py ---- a/_test/roundtrip.py -+++ b/_test/roundtrip.py -@@ -7,7 +7,11 @@ - """ - import sys - import textwrap --from ruamel.std.pathlib import Path -+try: -+ from pathlib import Path -+except ImportError: -+ from pathlib2 import Path -+ - - enforce = object() - -diff --git a/_test/test_api_change.py b/_test/test_api_change.py ---- a/_test/test_api_change.py -+++ b/_test/test_api_change.py -@@ -9,7 +9,10 @@ - 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: -diff --git a/_test/test_z_data.py b/_test/test_z_data.py ---- a/_test/test_z_data.py -+++ b/_test/test_z_data.py -@@ -6,7 +6,11 @@ - 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 - \ No newline at end of file diff --git a/python-ruamel-yaml-pytest27.patch b/python-ruamel-yaml-pytest27.patch deleted file mode 100644 index 9ef3da0..0000000 --- a/python-ruamel-yaml-pytest27.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -u ruamel-yaml-ff02b83b8f91/_test/test_anchor.py.pytest27 ruamel-yaml-ff02b83b8f91/_test/test_anchor.py ---- ruamel-yaml-ff02b83b8f91/_test/test_anchor.py.pytest27 2019-08-27 10:59:01.756747586 +0100 -+++ ruamel-yaml-ff02b83b8f91/_test/test_anchor.py 2019-08-27 11:00:15.929713043 +0100 -@@ -7,6 +7,7 @@ - """ - - import pytest -+from distutils.version import LooseVersion - from textwrap import dedent - import platform - -@@ -248,6 +249,7 @@ - ) - - # 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 index 328b3dd..adfe6ad 100644 --- a/python-ruamel-yaml.spec +++ b/python-ruamel-yaml.spec @@ -1,59 +1,87 @@ -%global pypi_name ruamel.yaml -%global pname ruamel-yaml -%global commit ff02b83b8f91 -%global debug_package %{nil} - -Name: python-%{pname} -Version: 0.16.5 +%global _empty_manifest_terminate_build 0 +Name: python-ruamel-yaml +Version: 0.17.21 Release: 1 -Summary: YAML 1.2 loader/dumper package for Python +Summary: ruamel.yaml is a YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order License: MIT -URL: https://bitbucket.org/ruamel/yaml -Source0: https://bitbucket.org/ruamel/yaml/get/%{version}.tar.gz#/%{pname}-%{version}.tar.gz - -Patch0001: python-ruamel-yaml-pytest27.patch -Patch0002: python-ruamel-yaml-pathlib.patch - +URL: https://sourceforge.net/p/ruamel-yaml/code/ci/default/tree +Source0: https://files.pythonhosted.org/packages/46/a9/6ed24832095b692a8cecc323230ce2ec3480015fbfa4b79941bd41b23a3c/ruamel.yaml-0.17.21.tar.gz +BuildArch: noarch +Patch0001: 0000-fix-big-endian-issues.patch %description -ruamel.yaml is a YAML 1.2 loader/dumper package for Python. -It is a derivative of Kirill Simonov’s PyYAML 3.11 +ruamel.yaml ruamel.yaml is a YAML 1.2 loader/dumper package for Python. -%package -n python3-%{pname} -Summary: YAML 1.2 loader/dumper package for Python -BuildRequires: python3-devel, python3-setuptools, python3-pytest +%package -n python3-ruamel-yaml +Summary: ruamel.yaml is a YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order +Provides: python-ruamel-yaml +# Base build requires +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pytest +BuildRequires: python3-pbr +BuildRequires: python3-pip +BuildRequires: python3-wheel BuildRequires: python3-ruamel-yaml-clib -%{?python_provide:%python_provide python3-%{pypi_name}} -Requires: python3-ruamel-yaml-clib, python3-setuptools -%description -n python3-%{pname} -ruamel.yaml is a YAML 1.2 loader/dumper package for Python. -It is a derivative of Kirill Simonov’s PyYAML 3.11 +%description -n python3-ruamel-yaml +ruamel.yaml ruamel.yaml is a YAML 1.2 loader/dumper package for Python. -%package_help +%package help +Summary: ruamel.yaml is a YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order +Provides: python3-ruamel-yaml-doc +%description help +ruamel.yaml ruamel.yaml is a YAML 1.2 loader/dumper package for Python. %prep -%autosetup -n %{pname}-%{commit} -p1 -rm -rf %{pypi_name}.egg-info +%autosetup -n ruamel.yaml-%{version} -p1 %build %py3_build %install -%{__python3} setup.py install --single-version-externally-managed --skip-build --root $RPM_BUILD_ROOT +export RUAMEL_NO_PIP_INSTALL_CHECK=1 +%py3_install -%check -PYTHONPATH=$(echo build/lib) py.test-%{python3_version} _test/test_*.py +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . -%files -n python3-%{pname} -%license LICENSE -%{python3_sitelib}/ruamel -%{python3_sitelib}/%{pypi_name}-%{version}-py?.?-*.pth -%{python3_sitelib}/%{pypi_name}-%{version}-py?.?.egg-info +##Tests are not included in the upstream tarball +#%check +#PYTHONPATH=$(echo build/lib) py.test-%{python3_version} _test/test_*.py + +%files -n python3-ruamel-yaml -f filelist.lst +%dir %{python3_sitelib}/* %files help %defattr(-,root,root) -%doc README.rst +%doc README.rst CHANGES %changelog +*Tue Oct 25 2022 xu_ping - 0.17.21-1 +- Upgrade python3-ruamel-yaml to version 0.17.21 + * Mon Mar 2 2020 openEuler Buildteam - 0.16.5-1 - Package init diff --git a/ruamel-yaml-0.16.5.tar.gz b/ruamel-yaml-0.16.5.tar.gz deleted file mode 100644 index cdcd79a..0000000 Binary files a/ruamel-yaml-0.16.5.tar.gz and /dev/null differ diff --git a/ruamel.yaml-0.17.21.tar.gz b/ruamel.yaml-0.17.21.tar.gz new file mode 100644 index 0000000..f8265b3 Binary files /dev/null and b/ruamel.yaml-0.17.21.tar.gz differ