Compare commits

...
Sign in to create a new pull request.

53 commits

Author SHA1 Message Date
Ondrej Mosnáček
cdec57db9d
Update to version 0.19.1 (fedora#2426465)
Signed-off-by: Ondrej Mosnáček <omosnacek@gmail.com>
2026-01-05 17:24:24 +01:00
Ondrej Mosnáček
d39270652a
Update to version 0.18.17 (fedora#2423406)
Signed-off-by: Ondrej Mosnáček <omosnacek@gmail.com>
2025-12-18 08:58:54 +01:00
Ondrej Mosnáček
b7baece53f
Update to version 0.18.16 (fedora#2405874)
Signed-off-by: Ondrej Mosnáček <omosnacek@gmail.com>
2025-10-23 08:50:25 +02:00
Python Maint
dbfc5f0666 Rebuilt for Python 3.14.0rc3 bytecode 2025-09-19 14:22:49 +02:00
Ondrej Mosnáček
7e8dc99058
Update to version 0.18.15 (fedora#2389387)
Signed-off-by: Ondrej Mosnáček <omosnacek@gmail.com>
2025-08-19 14:55:53 +02:00
Python Maint
a45b1d803f Rebuilt for Python 3.14.0rc2 bytecode 2025-08-15 14:47:54 +02:00
Fedora Release Engineering
b9a3871a83 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-25 10:16:32 +00:00
Ondrej Mosnáček
209e8e8f4a
Update to version 0.18.14 (fedora#2368448)
Also pull tarballs from https://yaml.dev/, which is referenced in
CHANGES as an additional official source.

Signed-off-by: Ondrej Mosnáček <omosnacek@gmail.com>
2025-06-11 10:18:36 +02:00
Python Maint
4236d32316 Rebuilt for Python 3.14 2025-06-02 23:35:06 +02:00
Python Maint
c7cb48c9c1 Bootstrap for Python 3.14 2025-06-02 22:53:51 +02:00
Fedora Release Engineering
829e0922a3 Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-18 19:03:17 +00:00
Ondrej Mosnáček
f4ffb1b349
Update to version 0.18.10 (fedora#2334967)
Signed-off-by: Ondrej Mosnáček <omosnacek@gmail.com>
2025-01-06 15:33:53 +01:00
Ondrej Mosnáček
6399b356b8
Add TMT test for upstream ticket 534
Signed-off-by: Ondrej Mosnáček <omosnacek@gmail.com>
2025-01-05 19:04:57 +01:00
Miro Hrončok
7ce90a3638 Fix the bootstrap build
- Related: rhbz#2323169

The problem this fixes is a bit complex.

It goes like this:

 1.  %pyproject_buildrequires runs for the first time.
     There is no pyproject.toml, only setup.py, so a dependency on setuptools is generated.
     A build dependency on wheel is not generated (as it is not needed on Fedora 42+).
 2.  %pyproject_buildrequires runs again.
     There is no pyproject.toml, only setup.py, so it is used.
     A build dependency on wheel is still not generated.
     A build dependency on ruamel-yaml-clib is generated when building without bootstrap,
     as it is a runtime dependency.
     Here it comes: setup.py code creates a pyproject.toml file (with a dependency on wheel) 😱
 3a. Without bootstrap, dnf installs ruamel-yaml-clib and %%pyproject_buildrequires runs once more.
     It uses pyproject.toml (which now exists).
     A build dependency on wheel is now generated and %pyproject_buildrequires runs once more,
     dnf install wheel.
 3b. With bootstrap, this step is skipped as there was no new dependency (on ruamel-yaml-clib) to trigger it.
 4.  The final (verification) %pyproject_buildrequires round uses pyproject.toml (which now exists).
     Without bootstrap, all is fine, no new dependency is generated.
     With bootstrap, the wheel dependency is generated for the first time,
     but at this point, it fails rpmbuild (because missing dependencies now fail the build).

We see errors like this as a result:

    error: Failed build dependencies:
        python3dist(wheel) is needed by python-ruamel-yaml-0.18.6-2.fc42~bootstrap.noarch

Considering the wheel dependency is entirely unneeded I proposed removal for upstream.

An alternative solution is to rm -f pyproject.toml
before calling %pyproject_buildrequires in %generate_buildrequires.
But if upstream switches to a proper pyproject.toml, we might not notice that.
2024-12-02 15:04:47 +01:00
Miro Hrončok
b8c60a3bec Fix build with Python 3.14
- Fixes: rhzb#2323169
2024-12-02 15:04:04 +01:00
Ondrej Mosnáček
982e0edfa1
Update to version 0.18.6 (fedora#2263147)
Signed-off-by: Ondrej Mosnáček <omosnacek@gmail.com>
2024-11-24 18:02:50 +01:00
Ondrej Mosnáček
9489df6d01 Convert to %autorelease and %autochangelog
[skip changelog]
2024-11-24 17:49:01 +01:00
Fedora Release Engineering
c1f422175e Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-19 15:35:02 +00:00
Python Maint
e5698a903c Rebuilt for Python 3.13 2024-06-07 11:25:00 +02:00
Python Maint
4cb5de41ac Bootstrap for Python 3.13 2024-06-07 10:57:57 +02:00
Fedora Release Engineering
ebb5fee7bd Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-26 10:22:38 +00:00
Fedora Release Engineering
96ca2a1c55 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-22 06:47:58 +00:00
Parag Nemade
25d71c1f4c
Update to 0.18.5 2023-11-12 08:36:44 +05:30
Joel Capitao
ed9b546152 Update to 0.18.2 (close RHBZ#2245968) 2023-10-26 10:59:30 +02:00
Joel Capitao
bd56ac7807 Update to 0.18.1 (close RHBZ#2241174) 2023-10-24 15:28:04 +02:00
Fedora Release Engineering
dcd211e000 Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-21 13:47:48 +00:00
Python Maint
afe54c853d Rebuilt for Python 3.12 2023-06-22 15:20:26 +02:00
Joel Capitao
1194199fba Update to 0.17.32 (close RHBZ#2210057) 2023-06-19 08:45:04 +02:00
Python Maint
5f080d1740 Rebuilt for Python 3.12 2023-06-14 11:04:00 +02:00
Python Maint
90a22aad3e Bootstrap for Python 3.12 2023-06-14 09:39:43 +02:00
Yaakov Selkowitz
1ac0c0a34d Avoid tox dependency
tox is unwanted in RHEL, but does not add any particular value here even
for the Fedora build.
2023-05-25 12:29:06 -04:00
Chandan Kumar
d30f7f9920 Import 0.17.26 srpm (close RHBZ#2196655)
Signed-off-by: Chandan Kumar <raukadah@gmail.com>
2023-05-19 23:15:17 +05:30
Benjamin A. Beasley
06cff57119 Update to 0.17.24 (close RHBZ#2193478) 2023-05-07 09:27:28 -04:00
Benjamin A. Beasley
44e88da7ac Fix an obsolete comment referring to bitbucket 2023-05-04 07:28:11 -04:00
Benjamin A. Beasley
cfeaa3d51f Add a bootstrap conditional to break the circular dependency with ruamel.yaml.clib 2023-05-04 07:25:23 -04:00
Benjamin A. Beasley
4e1e80ed1c Stop numbering the source archive 2023-05-04 07:25:04 -04:00
Benjamin A. Beasley
47b3524b86 Port to pyproject-rpm-macros (“new Python guidelines”) 2023-05-04 07:25:02 -04:00
Benjamin A. Beasley
3b1d149282 Drop unused manual runtime dependency on setuptools 2023-05-04 07:24:31 -04:00
Benjamin A. Beasley
872522d03c Fix upper-bounded Python interpreter version for ruamel.yaml.clib dependency 2023-05-04 07:24:31 -04:00
Benjamin A. Beasley
073aa3c448 Make the package noarch (python-ruamel-yaml-clib contains the compiled code) 2023-05-04 07:24:29 -04:00
Benjamin A. Beasley
b96d93d810 Update description from upstream 2023-05-04 07:24:08 -04:00
Benjamin A. Beasley
b0db89e0b6 Reduce macro indirection and drop ancient constructs and conditionals 2023-05-04 07:24:06 -04:00
Benjamin A. Beasley
f23e6627c9 Confirm License is SPDX MIT 2023-05-04 07:22:17 -04:00
Maxwell G
4291e62247
Update to 0.17.22. Fixes rhbz#2192464. 2023-05-03 23:12:30 +00:00
Fedora Release Engineering
7cf5c4f1a9 Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-20 17:06:18 +00:00
Fedora Release Engineering
652d2c9be0 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-22 22:09:25 +00:00
Python Maint
d40bc1167d Rebuilt for Python 3.11 2022-06-13 17:15:50 +02:00
Jakub Čajka
d16edee2ef
Update to 0.17.21
Related: BZ#2042422
2022-05-12 13:52:24 +02:00
Fedora Release Engineering
74c70736bb - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-21 15:21:12 +00:00
Fedora Release Engineering
cf4f70e618 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-23 09:20:30 +00:00
Python Maint
9f5aa60741 Rebuilt for Python 3.10 2021-06-04 21:00:19 +02:00
Joel Capitao
7e24a8b7f0 Remove obsolete patch 2021-02-22 16:36:22 +01:00
Fedora Release Engineering
0130c0c3ec - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-27 13:15:10 +00:00
11 changed files with 278 additions and 226 deletions

1
.fmf/version Normal file
View file

@ -0,0 +1 @@
1

9
.gitignore vendored
View file

@ -1,7 +1,2 @@
/ruamel.yaml-0.12.14.tar.gz
/ruamel-yaml-0.12.14.tar.gz
/ruamel-yaml-0.13.13.tar.gz
/ruamel-yaml-0.13.14.tar.gz
/ruamel-yaml-0.15.41.tar.gz
/ruamel-yaml-0.16.5.tar.gz
/ruamel-yaml-0.16.6.tar.gz
/*.tar.xz
/*.zip

185
changelog Normal file
View file

@ -0,0 +1,185 @@
* Fri Jul 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.18.5-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Fri Jun 07 2024 Python Maint <python-maint@redhat.com> - 0.18.5-5
- Rebuilt for Python 3.13
* Fri Jun 07 2024 Python Maint <python-maint@redhat.com> - 0.18.5-4
- Bootstrap for Python 3.13
* Fri Jan 26 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.18.5-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.18.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sun Nov 12 2023 Parag Nemade <pnemade AT redhat DOT com> - 0.18.5-1
- Update to 0.18.5
* Thu Oct 26 2023 Joel Capitao <jcapitao@redhat.com> - 0.18.2-1
- Update to 0.18.2 (close RHBZ#2245968)
* Tue Oct 24 2023 Joel Capitao <jcapitao@redhat.com> - 0.18.1-1
- Update to 0.18.1 (close RHBZ#2241174)
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.17.32-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Thu Jun 22 2023 Python Maint <python-maint@redhat.com> - 0.17.32-2
- Rebuilt for Python 3.12
* Mon Jun 19 2023 Joel Capitao <jcapitao@redhat.com> - 0.17.32-1
- Update to 0.17.32 (close RHBZ#2210057)
* Wed Jun 14 2023 Python Maint <python-maint@redhat.com> - 0.17.26-4
- Rebuilt for Python 3.12
* Wed Jun 14 2023 Python Maint <python-maint@redhat.com> - 0.17.26-3
- Bootstrap for Python 3.12
* Wed May 24 2023 Yaakov Selkowitz <yselkowi@redhat.com> - 0.17.26-2
- Avoid tox dependency
* Tue May 09 2023 Fedora Release Monitoring <release-monitoring@fedoraproject.org> - 0.17.26-1
- Update to 0.17.26 (close RHBZ#2196655)
* Sun May 07 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 0.17.24-1
- Update to 0.17.24 (close RHBZ#2193478)
* Thu May 04 2023 Benjamin A. Beasley <code@musicinmybrain.net> - 0.17.22-2
- Confirm License is SPDX MIT
- Reduce macro indirection and drop ancient constructs and conditionals
- Update description from upstream
- Make the package noarch (python-ruamel-yaml-clib contains the compiled code)
- Fix upper-bounded Python interpreter version for ruamel.yaml.clib dependency
- Drop unused manual runtime dependency on setuptools
- Port to pyproject-rpm-macros (“new Python guidelines”)
- Stop numbering the source archive
- Add a bootstrap conditional to break the circular dependency with
ruamel.yaml.clib
- Fix an obsolete comment referring to bitbucket
* Wed May 03 2023 Maxwell G <maxwell@gtmx.me> - 0.17.22-1
- Update to 0.17.22. Fixes rhbz#2192464.
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.17.21-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.17.21-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> - 0.17.21-2
- Rebuilt for Python 3.11
* Tue May 10 2022 Jakub Čajka <jcajka@redhat.com> - 0.17.21-1
- Update to 0.17.21
- Related: BZ#2042422
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.16.6-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.16.6-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 0.16.6-7
- Rebuilt for Python 3.10
* Mon Feb 22 2021 Joel Capitao <jcapitao@redhat.com> - 0.16.6-6
- Change upstream URL
- Remove obsolete patch
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.16.6-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.16.6-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 0.16.6-3
- Rebuilt for Python 3.9
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.16.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Mon Jan 20 2020 Jason Montleon <jmontleo@redhat.com> - 0.16.6-1
- Update to 0.16.6
* Thu Oct 03 2019 Miro Hrončok <mhroncok@redhat.com> - 0.16.5-3
- Rebuilt for Python 3.8.0rc1 (#1748018)
* Fri Aug 30 2019 Chandan Kumar <raukadah@gmail.com> - 0.16.5-2
- Added ruamel-yaml-clib as Requires
* Tue Aug 27 2019 Chedi Toueiti <chedi.toueiti@gmail.com> - 0.16.5-1
- Update to 0.16.5
* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 0.15.41-6
- Rebuilt for Python 3.8
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.15.41-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.15.41-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Mon Jan 14 2019 Miro Hrončok <mhroncok@redhat.com> - 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 <releng@fedoraproject.org> - 0.15.41-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Fri Jun 29 2018 Miro Hrončok <mhroncok@redhat.com> - 0.15.41-1
- Update to 0.15.41
- Add patch not to require ruamel.std.pathlib
* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 0.13.14-4
- Rebuilt for Python 3.7
* Fri Feb 09 2018 Iryna Shcherbina <ishcherb@redhat.com> - 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 <releng@fedoraproject.org> - 0.13.14-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Wed Aug 9 2017 Orion Poplawski <orion@nwra.com> - 0.13.14-1
- Update to 0.13.14
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.13-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.13-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Mon Feb 13 2017 Jan Chaloupka <jchaloup@redhat.com> - 0.13.13-3
- The ruamel.yaml needs at least typing >= 3.5.2.2
related: #1386563
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.13-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Tue Jan 31 2017 Orion Poplawski <orion@cora.nwra.com> - 0.13.13-1
- Update to 0.13.13
* Tue Jan 31 2017 Orion Poplawski <orion@cora.nwra.com> - 0.12.14-7
- Add patch to support pytest 2.7 in EPEL7
* Mon Dec 19 2016 Miro Hrončok <mhroncok@redhat.com> - 0.12.14-6
- Rebuild for Python 3.6
* Wed Oct 26 2016 Orion Poplawski <orion@cora.nwra.com> - 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 <orion@cora.nwra.com> - 0.12.14-4
- Build python3 package
- Run tests
* Tue Oct 25 2016 Chandan Kumar <chkumar@redhat.com> - 0.12.14-3
- Disabling python3 as python3-ruamel-ordereddict not available
* Mon Oct 24 2016 Chandan Kumar <chkumar@redhat.com> - 0.12.14-2
- Fixed python2-typing runtime dependency issue
* Fri Oct 14 2016 Chandan Kumar <chkumar@redhat.com> - 0.12.14-1
- Initial package.

6
plans/ci.fmf Normal file
View file

@ -0,0 +1,6 @@
summary: Run CI tests
discover:
how: fmf
execute:
how: tmt

View file

@ -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

View file

@ -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

View file

@ -1,160 +1,68 @@
%global pypi_name ruamel.yaml
%global pname ruamel-yaml
%global commit 44504659794e
%global debug_package %{nil}
# Breaks the circular dependency with ruamel.yaml.clib.
%bcond_with bootstrap
Name: python-%{pname}
Version: 0.16.6
Release: 4%{?dist}
Name: python-ruamel-yaml
Version: 0.19.1
Release: %autorelease
Summary: YAML 1.2 loader/dumper package for Python
# SPDX
License: MIT
URL: https://bitbucket.org/ruamel/yaml
# Use bitbucket sources so we can run the tests
Source0: https://bitbucket.org/ruamel/yaml/get/%{version}.tar.gz#/%{pname}-%{version}.tar.gz
# Works with pytest 2.7
Patch0: python-ruamel-yaml-pytest27.patch
URL: https://sourceforge.net/projects/ruamel-yaml
# The PyPI sdist does not contain tests, so we use a snapshot from SourceForge
Source: https://yaml.dev/ruamel-dl-tagged-releases/ruamel.yaml-%{version}.tar.xz
# Don't require ruamel.std.pathlib, but use stdlib's pathlib on py3, pathlib2 on py2
Patch1: python-ruamel-yaml-pathlib.patch
BuildArch: noarch
%global _description %{expand:
ruamel.yaml is a YAML parser/emitter that supports roundtrip preservation of
comments, seq/map flow style, and map key order.}
%description
ruamel.yaml is a YAML 1.2 loader/dumper package for Python.
It is a derivative of Kirill Simonovs PyYAML 3.11
%description %{_description}
%package -n python%{python3_pkgversion}-%{pname}
%package -n python3-ruamel-yaml
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}-ruamel-yaml-clib
Requires: python%{python3_pkgversion}-setuptools
%if %{python3_pkgversion} == 34
Requires: python%{python3_pkgversion}-typing
BuildRequires: python3-devel
BuildRequires: python3-pytest
%py_provides python3-ruamel.yaml
%if !%{with bootstrap}
# ruamel.yaml.clibz is not available in Fedora (and probably never will
# be), so require the old clib backend
Requires: python3-ruamel-yaml+oldlibyaml = %{version}-%{release}
%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 Simonovs PyYAML 3.11
%description -n python3-ruamel-yaml %{_description}
%prep
%autosetup -n %{pname}-%{commit} -p1
rm -rf %{pypi_name}.egg-info
%autosetup -n ruamel.yaml-%{version}
%generate_buildrequires
%pyproject_buildrequires %{!?with_bootstrap:-x oldlibyaml}
%build
%py3_build
%pyproject_wheel
%install
%{__python3} setup.py install --single-version-externally-managed --skip-build --root $RPM_BUILD_ROOT
%pyproject_install
# RFE: Add option for namespace packages to %%pyproject_save_files
# https://bugzilla.redhat.com/show_bug.cgi?id=1935266
%pyproject_save_files -l ruamel
%check
PYTHONPATH=$(echo build/lib) py.test-%{python3_version} _test/test_*.py
%if %{with bootstrap}
k="${k-}${k+ and }not test_load_cyaml"
k="${k-}${k+ and }not test_load_cyaml_1_2"
k="${k-}${k+ and }not test_dump_cyaml_1_2"
%endif
%pytest -k "${k-}" _test/test_*.py
%files -n python%{python3_pkgversion}-%{pname}
%license LICENSE
%doc README.rst
%{python3_sitelib}/ruamel
%{python3_sitelib}/%{pypi_name}-%{version}-py%{python3_version}-*.pth
%{python3_sitelib}/%{pypi_name}-%{version}-py%{python3_version}.egg-info
%files -n python3-ruamel-yaml -f %{pyproject_files}
%doc README.md
%pyproject_extras_subpkg -n python3-ruamel-yaml oldlibyaml
%changelog
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.16.6-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 0.16.6-3
- Rebuilt for Python 3.9
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.16.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Mon Jan 20 2020 Jason Montleon <jmontleo@redhat.com> - 0.16.6-1
- Update to 0.16.6
* Thu Oct 03 2019 Miro Hrončok <mhroncok@redhat.com> - 0.16.5-3
- Rebuilt for Python 3.8.0rc1 (#1748018)
* Fri Aug 30 2019 Chandan Kumar <raukadah@gmail.com> - 0.16.5-2
- Added ruamel-yaml-clib as Requires
* Tue Aug 27 2019 Chedi Toueiti <chedi.toueiti@gmail.com> - 0.16.5-1
- Update to 0.16.5
* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 0.15.41-6
- Rebuilt for Python 3.8
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.15.41-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.15.41-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Mon Jan 14 2019 Miro Hrončok <mhroncok@redhat.com> - 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 <releng@fedoraproject.org> - 0.15.41-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Fri Jun 29 2018 Miro Hrončok <mhroncok@redhat.com> - 0.15.41-1
- Update to 0.15.41
- Add patch not to require ruamel.std.pathlib
* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 0.13.14-4
- Rebuilt for Python 3.7
* Fri Feb 09 2018 Iryna Shcherbina <ishcherb@redhat.com> - 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 <releng@fedoraproject.org> - 0.13.14-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Wed Aug 9 2017 Orion Poplawski <orion@nwra.com> - 0.13.14-1
- Update to 0.13.14
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.13-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.13-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Mon Feb 13 2017 Jan Chaloupka <jchaloup@redhat.com> - 0.13.13-3
- The ruamel.yaml needs at least typing >= 3.5.2.2
related: #1386563
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.13.13-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Tue Jan 31 2017 Orion Poplawski <orion@cora.nwra.com> - 0.13.13-1
- Update to 0.13.13
* Tue Jan 31 2017 Orion Poplawski <orion@cora.nwra.com> - 0.12.14-7
- Add patch to support pytest 2.7 in EPEL7
* Mon Dec 19 2016 Miro Hrončok <mhroncok@redhat.com> - 0.12.14-6
- Rebuild for Python 3.6
* Wed Oct 26 2016 Orion Poplawski <orion@cora.nwra.com> - 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 <orion@cora.nwra.com> - 0.12.14-4
- Build python3 package
- Run tests
* Tue Oct 25 2016 Chandan Kumar <chkumar@redhat.com> - 0.12.14-3
- Disabling python3 as python3-ruamel-ordereddict not available
* Mon Oct 24 2016 Chandan Kumar <chkumar@redhat.com> - 0.12.14-2
- Fixed python2-typing runtime dependency issue
* Fri Oct 14 2016 Chandan Kumar <chkumar@redhat.com> - 0.12.14-1
- Initial package.
%autochangelog

View file

@ -1 +1 @@
SHA512 (ruamel-yaml-0.16.6.tar.gz) = 8790f3b7ca4714b323210f00c987fefeb1321ac83a229a1c429bd05bbfca94363f7b68c611b23d73c215639a08cea2283fc5c77c0fe30ba783a306a58768f582
SHA512 (ruamel.yaml-0.19.1.tar.xz) = bf9eb8e40f506d6f3f34aee5f5ec74eb93bfda2b27022f6ad62dfac724b9e0847d61e3159d284bada7dec147992aaf509804f7139818de5bc85aa328bc32601f

1
tests/main.fmf Normal file
View file

@ -0,0 +1 @@
component: python-ruamel-yaml

5
tests/sf534/main.fmf Normal file
View file

@ -0,0 +1,5 @@
summary: Regression test for upstream ticket 534
require: python3-ruamel-yaml
link:
- verifies: https://sourceforge.net/p/ruamel-yaml/tickets/534/
test: python3 test.py

32
tests/sf534/test.py Normal file
View file

@ -0,0 +1,32 @@
# Taken from https://sourceforge.net/p/ruamel-yaml/tickets/534/
from io import StringIO
from ruamel.yaml import YAML
original = '0: foo\n'
py_original = {0: 'foo'}
prefix = '%YAML 1.1\n---\n'
yaml = YAML()
yaml.version = (1, 1)
loaded = yaml.load(original)
assert loaded == py_original
print('Fresh')
stream = StringIO()
yaml.dump(py_original, stream)
fresh = stream.getvalue()
print(fresh)
assert fresh.startswith(prefix)
trimmed = fresh[len(prefix):]
assert trimmed == original, f"{trimmed!r} != {original!r}"
print('Round trip')
stream = StringIO()
yaml.dump(loaded, stream)
round_tripped = stream.getvalue()
print(round_tripped)
assert round_tripped.startswith(prefix)
trimmed = round_tripped[len(prefix):]
assert trimmed == original, f"{trimmed!r} != {original!r}"