Compare commits

..

No commits in common. "rawhide" and "f33" have entirely different histories.

11 changed files with 226 additions and 278 deletions

View file

@ -1 +0,0 @@
1

9
.gitignore vendored
View file

@ -1,2 +1,7 @@
/*.tar.xz
/*.zip
/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

185
changelog
View file

@ -1,185 +0,0 @@
* 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.

View file

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

View file

@ -0,0 +1,63 @@
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

@ -0,0 +1,18 @@
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,68 +1,160 @@
# Breaks the circular dependency with ruamel.yaml.clib.
%bcond_with bootstrap
%global pypi_name ruamel.yaml
%global pname ruamel-yaml
%global commit 44504659794e
%global debug_package %{nil}
Name: python-ruamel-yaml
Version: 0.19.1
Release: %autorelease
Name: python-%{pname}
Version: 0.16.6
Release: 4%{?dist}
Summary: YAML 1.2 loader/dumper package for Python
# SPDX
License: MIT
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
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
BuildArch: noarch
# Don't require ruamel.std.pathlib, but use stdlib's pathlib on py3, pathlib2 on py2
Patch1: python-ruamel-yaml-pathlib.patch
%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 %{_description}
%description
ruamel.yaml is a YAML 1.2 loader/dumper package for Python.
It is a derivative of Kirill Simonovs PyYAML 3.11
%package -n python3-ruamel-yaml
%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}}
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}
Requires: python%{python3_pkgversion}-ruamel-yaml-clib
Requires: python%{python3_pkgversion}-setuptools
%if %{python3_pkgversion} == 34
Requires: python%{python3_pkgversion}-typing
%endif
%description -n python3-ruamel-yaml %{_description}
%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
%prep
%autosetup -n ruamel.yaml-%{version}
%generate_buildrequires
%pyproject_buildrequires %{!?with_bootstrap:-x oldlibyaml}
%autosetup -n %{pname}-%{commit} -p1
rm -rf %{pypi_name}.egg-info
%build
%pyproject_wheel
%py3_build
%install
%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
%{__python3} setup.py install --single-version-externally-managed --skip-build --root $RPM_BUILD_ROOT
%check
%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
PYTHONPATH=$(echo build/lib) py.test-%{python3_version} _test/test_*.py
%files -n python3-ruamel-yaml -f %{pyproject_files}
%doc README.md
%pyproject_extras_subpkg -n python3-ruamel-yaml oldlibyaml
%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
%changelog
%autochangelog
* 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.

View file

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

View file

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

View file

@ -1,5 +0,0 @@
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

View file

@ -1,32 +0,0 @@
# 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}"