diff --git a/.fmf/version b/.fmf/version new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/.gitignore b/.gitignore index e69de29..2f06b37 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1,25 @@ +PyYAML-3.09.tar.gz +/PyYAML-3.10.tar.gz +/PyYAML-3.11.tar.gz +/PyYAML-3.12.tar.gz +/PyYAML-4.1.tar.gz +/pyyaml-4.1.tar.gz +/PyYAML-4.2b4.tar.gz +/PyYAML-5.1b1.tar.gz +/PyYAML-5.1b3.tar.gz +/PyYAML-5.1b6.tar.gz +/PyYAML-5.1.tar.gz +/PyYAML-5.1.1.tar.gz +/PyYAML-5.1.2.tar.gz +/5.1.2.tar.gz +/5.2.tar.gz +/5.3.tar.gz +/5.3.1.tar.gz +/5.4b1.tar.gz +/5.4b2.tar.gz +/5.4.tar.gz +/5.4.1.tar.gz +/6.0b1.tar.gz +/6.0.tar.gz +/6.0.1.tar.gz +/6.0.2.tar.gz diff --git a/823.patch b/823.patch new file mode 100644 index 0000000..a0c3f29 --- /dev/null +++ b/823.patch @@ -0,0 +1,56 @@ +From 74e0c6ccc615fa38ee793899ca80f3351c10c60e Mon Sep 17 00:00:00 2001 +From: Henry Schreiner +Date: Tue, 13 Aug 2024 09:48:48 -0400 +Subject: [PATCH 1/2] fix: bdist_wheel was unmodified + +--- + setup.py | 7 ------- + 1 file changed, 7 deletions(-) + +diff --git a/setup.py b/setup.py +index 8040320fe..72018345c 100644 +--- a/setup.py ++++ b/setup.py +@@ -93,11 +93,6 @@ + if with_cython: + raise + +-try: +- from wheel.bdist_wheel import bdist_wheel +-except ImportError: +- bdist_wheel = None +- + + try: + from _pyyaml_pep517 import ActiveConfigSettings +@@ -325,8 +320,6 @@ def run(self): + 'build_ext': build_ext, + 'test': test, + } +-if bdist_wheel: +- cmdclass['bdist_wheel'] = bdist_wheel + + + if __name__ == '__main__': + +From bdc81567884bedab456f62ccfd3c1ec800c57e36 Mon Sep 17 00:00:00 2001 +From: Henry Schreiner +Date: Tue, 13 Aug 2024 09:50:19 -0400 +Subject: [PATCH 2/2] Update pyproject.toml + +--- + pyproject.toml | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/pyproject.toml b/pyproject.toml +index d8e5b9695..00ce069c6 100644 +--- a/pyproject.toml ++++ b/pyproject.toml +@@ -1,7 +1,6 @@ + [build-system] + requires = [ + "setuptools", # FIXME: declare min/max setuptools versions? +- "wheel", + "Cython; python_version < '3.13'", + "Cython>=3.0; python_version >= '3.13'" + ] diff --git a/PyYAML.spec b/PyYAML.spec new file mode 100644 index 0000000..37b0c47 --- /dev/null +++ b/PyYAML.spec @@ -0,0 +1,74 @@ +Name: PyYAML +Version: 6.0.2 +Release: %autorelease +Summary: YAML parser and emitter for Python + +# SPDX +License: MIT +URL: https://github.com/yaml/pyyaml +Source: https://github.com/yaml/pyyaml/archive/%{version}.tar.gz + +# Drop unneeded build dependency on python3-wheel +Patch: https://github.com/yaml/pyyaml/pull/823.patch + +BuildRequires: gcc +BuildRequires: libyaml-devel +BuildRequires: python3-devel +BuildRequires: python3-pytest + + +%global _description\ +YAML is a data serialization format designed for human readability and\ +interaction with scripting languages. PyYAML is a YAML parser and\ +emitter for Python.\ +\ +PyYAML features a complete YAML 1.1 parser, Unicode support, pickle\ +support, capable extension API, and sensible error messages. PyYAML\ +supports standard YAML tags and provides Python-specific tags that\ +allow to represent an arbitrary Python object.\ +\ +PyYAML is applicable for a broad range of tasks from complex\ +configuration files to object serialization and persistence. + +%description %_description + + +%package -n python3-pyyaml +Summary: %summary +%py_provides python3-yaml +%py_provides python3-PyYAML + +%description -n python3-pyyaml %_description + + +%prep +%autosetup -p1 -n pyyaml-%{version} +chmod a-x examples/yaml-highlight/yaml_hl.py + +# remove pre-generated file +rm -rf ext/_yaml.c + + +%generate_buildrequires +%pyproject_buildrequires + + +%build +%pyproject_wheel + + +%install +%pyproject_install +%pyproject_save_files yaml _yaml + + +%check +%pytest + + +%files -n python3-pyyaml -f %{pyproject_files} +%doc CHANGES README.md examples + + +%changelog +%autochangelog diff --git a/changelog b/changelog new file mode 100644 index 0000000..bb0e538 --- /dev/null +++ b/changelog @@ -0,0 +1,305 @@ +* Fri Jul 28 2023 Miro Hrončok - 6.0.1-4 +- Fix build with Cython 3 + +* Tue Jul 25 2023 Miro Hrončok - 6.0.1-3 +- Pin Cython < 3 to build this package + +* Wed Jul 19 2023 Fedora Release Engineering - 6.0.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Tue Jul 18 2023 John Eckersberg - 6.0.1-1 +- New upstream release 6.0.1 (rhbz#2223462) + +* Tue Jun 13 2023 Python Maint - 6.0-8 +- Rebuilt for Python 3.12 + +* Tue Apr 11 2023 John Eckersberg - 6.0-7 +- Rebuilt for Python 3.12 / Cython 0.29.34 (rhbz#2177815) + +* Wed Jan 18 2023 Fedora Release Engineering - 6.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Wed Jul 20 2022 Fedora Release Engineering - 6.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Mon Jun 13 2022 Python Maint - 6.0-4 +- Rebuilt for Python 3.11 + +* Tue Feb 08 2022 Miro Hrončok - 6.0-3 +- Remove some outdated Obsoletes and Provides, + but keep providing python3-yaml and python3-PyYAML for users + +* Wed Jan 19 2022 Fedora Release Engineering - 6.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Wed Oct 13 2021 John Eckersberg - 6.0-1 +- New upstream release 6.0 + +* Mon Oct 4 2021 John Eckersberg - 6.0-0.1.b1 +- New upstream beta release 6.0b1 (rhbz#2010501) + +* Wed Jul 21 2021 Fedora Release Engineering - 5.4.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Jun 02 2021 Python Maint - 5.4.1-3 +- Rebuilt for Python 3.10 + +* Mon Jan 25 2021 Fedora Release Engineering - 5.4.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Thu Jan 21 2021 John Eckersberg - 5.4.1-1 +- New upstream release 5.4.1 (rhbz#1918523) + +* Wed Jan 20 2021 John Eckersberg - 5.4-1 +- New upstream release 5.4 +- Fixes CVE-2020-14343 + +* Fri Jan 15 2021 John Eckersberg - 5.4-0.1.b2 +- New upstream beta release 5.4b2 (rhbz#1916496) + +* Thu Jan 14 2021 John Eckersberg - 5.4-0.1.b1 +- New upstream beta release 5.4b1 (rhbz#1916034) + +* Mon Nov 23 2020 Miro Hrončok - 5.3.1-5 +- Disable Python 2 build on RHEL 9+ + +* Mon Jul 27 2020 Fedora Release Engineering - 5.3.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Fri May 22 2020 Miro Hrončok - 5.3.1-3 +- Rebuilt for Python 3.9 + +* Mon May 18 2020 John Eckersberg - 5.3.1-2 +- Fix fedora conditional macro (rhbz#1836656) + +* Thu Mar 19 2020 John Eckersberg - 5.3.1-1 +- New upstream release 5.3.1 (rhbz#1814882) +- Fixes CVE-2020-1747 (rhbz#1807367,1809011) + +* Tue Mar 10 2020 Kalev Lember - 5.3-4 +- Add back PyYAML provides on F31 and older + +* Mon Mar 2 2020 John Eckersberg - 5.3-3 +- Fix python2 on Fedora < 32 (rhbz#1808812) + +* Tue Jan 28 2020 Fedora Release Engineering - 5.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Mon Jan 6 2020 John Eckersberg - 5.3-1 +- New upstream release 5.3 + +* Tue Dec 3 2019 John Eckersberg - 5.2-1 +- New upstream release 5.2 + +* Fri Nov 22 2019 John Eckersberg - 5.1.2-4 +- Build without python2 by default (rhbz#1775075) + +* Thu Sep 19 2019 Miro Hrončok - 5.1.2-3 +- Stop providing PyYAML from python2-pyyaml, Python now means Python 3 + +* Thu Aug 15 2019 Miro Hrončok - 5.1.2-2 +- Rebuilt for Python 3.8 + +* Wed Jul 31 2019 John Eckersberg - 5.1.2-1 +- New upstream release 5.1.2 + +* Wed Jul 24 2019 Fedora Release Engineering - 5.1.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Mon Jul 15 2019 Petr Viktorin - 5.1.1-2 +- Remove build dependency on python2-Cython + +* Fri Jun 7 2019 John Eckersberg - 5.1.1-1 +- New upstream release 5.1.1 (rhbz#1718110) + +* Wed Mar 13 2019 John Eckersberg - 5.1-1 +- New upstream release 5.1 (rhbz#1688414) +- Fixes CVE-2017-18342 (rhbz#1595744) + +* Fri Mar 8 2019 John Eckersberg - 5.1-0.1.b6 +- New upstream beta release 5.1b6 (rhbz#1686643) + +* Thu Feb 28 2019 John Eckersberg - 5.1-0.1.b3 +- New upstream beta release 5.1b3 (rhbz#1683884) + +* Mon Feb 25 2019 John Eckersberg - 5.1-0.1.b1 +- New upstream beta release 5.1b1 (rhbz#1680457) +- Typo fix (rhbz#1680463) + +* Thu Jan 31 2019 Fedora Release Engineering - 4.2-0.2.b4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jul 13 2018 John Eckersberg - 4.2-0.1.b4 +- New upstream beta release 4.2b4 +- Replaces 4.1 which was retracted upstream + See https://mail.python.org/pipermail/python-announce-list/2018-June/011977.html +- Add BuildRequires for gcc + See https://fedoraproject.org/wiki/Changes/Remove_GCC_from_BuildRoot + +* Thu Jul 12 2018 Miro Hrončok - 4.1-5 +- Rename python3-PyYAML to python3-pyyaml +- Modernize spec +- Fix python2 invocation + +* Thu Jul 12 2018 Fedora Release Engineering - 4.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Mon Jul 02 2018 Miro Hrončok - 4.1-3 +- Rebuilt for Python 3.7 + +* Mon Jul 02 2018 Igor Gnatenko - 4.1-2 +- Rebuilt for Python 3.7 + +* Wed Jun 27 2018 John Eckersberg - 4.1-1 +- New upstream release 4.1 + +* Fri Jun 15 2018 Miro Hrončok - 3.12-11 +- Rebuilt for Python 3.7 + +* Wed Feb 07 2018 Fedora Release Engineering - 3.12-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Mon Dec 11 2017 Iryna Shcherbina - 3.12-9 +- Fix ambiguous Python 2 dependency declarations + (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3) + +* Wed Sep 27 2017 Troy Dawson - 3.12-8 +- Cleanup spec file conditionals + +* Sun Aug 20 2017 Zbigniew Jędrzejewski-Szmek - 3.12-7 +- Add Provides for the old name without %%_isa + +* Sat Aug 19 2017 Zbigniew Jędrzejewski-Szmek - 3.12-6 +- Python 2 binary package renamed to python2-pyyaml + See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3 + +* Wed Aug 02 2017 Fedora Release Engineering - 3.12-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 3.12-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Fri Feb 10 2017 Fedora Release Engineering - 3.12-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Mon Dec 12 2016 Charalampos Stratakis - 3.12-2 +- Rebuild for Python 3.6 + +* Mon Aug 29 2016 John Eckersberg - 3.12-1 +- New upstream release 3.12 (RHBZ#1371150) + +* Tue Jul 19 2016 Fedora Release Engineering - 3.11-13 +- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages + +* Wed Feb 03 2016 Fedora Release Engineering - 3.11-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Tue Dec 8 2015 John Eckersberg - 3.11-11 +- Add provides for python3-yaml (RHBZ#1288807) + +* Tue Nov 03 2015 Robert Kuska - 3.11-10 +- Rebuilt for Python3.5 rebuild + +* Fri Jul 17 2015 John Eckersberg - 3.11-9 +- Add provides for python2-yaml (RHBZ#1241678) + +* Tue Jun 16 2015 Fedora Release Engineering - 3.11-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Mon Mar 23 2015 John Eckersberg - 3.11-7 +- Add patch for CVE-2014-9130 (bug 1204829) + +* Mon Sep 15 2014 Jakub Čajka - 3.11-6 +- fixed typecast issues using debian patch(int->size_t)(BZ#1140189) +- spec file cleanup + +* Fri Aug 15 2014 Fedora Release Engineering - 3.11-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Mon Aug 4 2014 Tom Callaway - 3.11-4 +- fix license handling + +* Fri Jun 06 2014 Fedora Release Engineering - 3.11-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Wed May 14 2014 Bohuslav Kabrda - 3.11-2 +- Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4 + +* Mon Apr 21 2014 John Eckersberg - 3.11-1 +- New upstream release 3.11 (BZ#1081521) + +* Thu Aug 8 2013 John Eckersberg - 3.10-9 +- Add check section and run test suite + +* Fri Aug 02 2013 Fedora Release Engineering - 3.10-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Wed Feb 13 2013 Fedora Release Engineering - 3.10-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Sat Aug 04 2012 David Malcolm - 3.10-6 +- rebuild for https://fedoraproject.org/wiki/Features/Python_3.3 + +* Wed Aug 1 2012 David Malcolm - 3.10-5 +- remove rhel logic from with_python3 conditional + +* Wed Jul 18 2012 Fedora Release Engineering - 3.10-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Fri Apr 27 2012 John Eckersberg - 3.10-3 +- Add Provides for python-yaml (BZ#740390) + +* Thu Jan 12 2012 Fedora Release Engineering - 3.10-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Thu Jun 23 2011 John Eckersberg - 3.10-1 +- New upstream release 3.10 + +* Mon Feb 07 2011 Fedora Release Engineering - 3.09-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Wed Feb 2 2011 John Eckersberg - 3.09-7 +- Add support to build for python 3 + +* Tue Jul 27 2010 Mamoru Tasaka - 3.09-6 +- Bump release number for upgrade path + +* Wed Jul 21 2010 David Malcolm - 3.09-3 +- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild + +* Fri Oct 02 2009 John Eckersberg - 3.09-1 +- New upstream release 3.09 + +* Fri Jul 24 2009 Fedora Release Engineering - 3.08-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Wed Jul 22 2009 - John Eckersberg - 3.08-5 +- Minor tweaks to spec file aligning with latest Fedora packaging guidelines +- Enforce inclusion of libyaml in build with --with-libyaml option to setup.py +- Deliver to %%{python_sitearch} instead of %%{python_sitelib} due to _yaml.so +- Thanks to Gareth Armstrong + +* Tue Mar 3 2009 John Eckersberg - 3.08-4 +- Correction, change libyaml to libyaml-devel in BuildRequires + +* Mon Mar 2 2009 John Eckersberg - 3.08-3 +- Add libyaml to BuildRequires + +* Mon Feb 23 2009 Fedora Release Engineering - 3.08-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Wed Feb 18 2009 John Eckersberg - 3.08-1 +- New upstream release + +* Sat Nov 29 2008 Ignacio Vazquez-Abrams - 3.06-2 +- Rebuild for Python 2.6 + +* Fri Oct 24 2008 John Eckersberg - 3.06-1 +- New upstream release + +* Wed Jan 02 2008 John Eckersberg - 3.05-2 +- Remove explicit dependency on python >= 2.3 +- Remove executable on example script in docs + +* Mon Dec 17 2007 John Eckersberg - 3.05-1 +- Initial packaging for Fedora diff --git a/plan.fmf b/plan.fmf new file mode 100644 index 0000000..e6427de --- /dev/null +++ b/plan.fmf @@ -0,0 +1,4 @@ +discover: + how: fmf +execute: + how: tmt diff --git a/sources b/sources new file mode 100644 index 0000000..2695170 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (6.0.2.tar.gz) = c72665131296762521d9ae4fc1c8619946f46ea16ad98b6b8e995828f2cdbd1ed61741fc2d646753f71d95a352b36562a1302f0cb646d5705652cd24b2f10b16 diff --git a/tests/smoke/main.fmf b/tests/smoke/main.fmf new file mode 100644 index 0000000..7d9c513 --- /dev/null +++ b/tests/smoke/main.fmf @@ -0,0 +1,5 @@ +test: ./runtest.sh +framework: beakerlib +require: + - python3-pyyaml +duration: 5m diff --git a/tests/smoke/pyyaml_dump.py b/tests/smoke/pyyaml_dump.py new file mode 100644 index 0000000..a6f4a6d --- /dev/null +++ b/tests/smoke/pyyaml_dump.py @@ -0,0 +1,3 @@ +#!/usr/bin/env python +import yaml +print(yaml.dump({'name': 'Silenthand Olleander', 'race': 'Human', 'traits': ['ONE_HAND', 'ONE_EYE']})) diff --git a/tests/smoke/pyyaml_load.py b/tests/smoke/pyyaml_load.py new file mode 100644 index 0000000..6bf48f2 --- /dev/null +++ b/tests/smoke/pyyaml_load.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python +import yaml +documents = """ +--- +name: foo +--- +name: bar +--- +name: foobar +""" + +for data in yaml.load_all(documents, Loader=yaml.SafeLoader): + print(data) diff --git a/tests/smoke/pyyaml_object.py b/tests/smoke/pyyaml_object.py new file mode 100644 index 0000000..b689c05 --- /dev/null +++ b/tests/smoke/pyyaml_object.py @@ -0,0 +1,24 @@ +import yaml +class Hero: + def __init__(self, name, hp, sp): + self.name = name + self.hp = hp + self.sp = sp + def __repr__(self): + return "%s(name=%r, hp=%r, sp=%r)" % ( + self.__class__.__name__, self.name, self.hp, self.sp) + +STRING = """ +!!python/object:__main__.Hero +name: Welthyr Syxgon +hp: 1200 +sp: 0 +""" + +try: + yaml.load(STRING, Loader=yaml.SafeLoader) + raise RuntimeError("Didn't raise exception") +except yaml.constructor.ConstructorError: + pass + +print(yaml.unsafe_load(STRING)) diff --git a/tests/smoke/pyyaml_parse.py b/tests/smoke/pyyaml_parse.py new file mode 100644 index 0000000..3850b78 --- /dev/null +++ b/tests/smoke/pyyaml_parse.py @@ -0,0 +1,9 @@ +#!/usr/bin/env python +import yaml +document = """ + a: 1 + b: + c: 3 + d: 4 +""" +print(yaml.dump(yaml.load(document, Loader=yaml.SafeLoader))) diff --git a/tests/smoke/runtest.sh b/tests/smoke/runtest.sh new file mode 100755 index 0000000..72451ed --- /dev/null +++ b/tests/smoke/runtest.sh @@ -0,0 +1,74 @@ +#!/bin/bash +# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# runtest.sh of /CoreOS/PyYAML/Sanity/Smoke +# Description: Smoke test for this component +# Author: Stepan Sigut +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Copyright (c) 2016 Red Hat, Inc. +# +# This program is free software: you can redistribute it and/or +# modify it under the terms of the GNU General Public License as +# published by the Free Software Foundation, either version 2 of +# the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be +# useful, but WITHOUT ANY WARRANTY; without even the implied +# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR +# PURPOSE. See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see http://www.gnu.org/licenses/. +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +# Include Beaker environment +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +PYTHON=${PYTHON:-"python3"} + +PATTERN1="{'name': 'foo'} +{'name': 'bar'} +{'name': 'foobar'}" +PATTERN3="name: Silenthand Olleander +race: Human +traits: [ONE_HAND, ONE_EYE]" +PATTERN4="a: 1 +b: {c: 3, d: 4}" +PATTERN5="Hero(name='Welthyr Syxgon', hp=1200, sp=0)" + +set -o pipefail + +rlJournalStart + rlPhaseStartSetup + # export python's MAJOR and MINOR version + rlRun "export $($PYTHON -c \ + 'import sys; print("MAJOR={0} MINOR={1}".format(\ + sys.version_info[0],sys.version_info[1]))')" + rlPhaseEnd + + rlPhaseStartTest "Running pyyaml_load.py" + rlRun -s "$PYTHON pyyaml_load.py" + rlAssertGrep "$PATTERN1" "$rlRun_LOG" + rlPhaseEnd + + rlPhaseStartTest "Running pyyaml_dump.py" + rlRun -s "$PYTHON pyyaml_dump.py" + rlAssertGrep "$PATTERN3" "$rlRun_LOG" + rlPhaseEnd + + rlPhaseStartTest "Running pyyaml_parse.py" + rlRun -s "$PYTHON pyyaml_parse.py" + rlAssertGrep "$PATTERN4" "$rlRun_LOG" + rlPhaseEnd + + rlPhaseStartTest "Running pyyaml_object.py" + rlRun -s "$PYTHON pyyaml_object.py" + rlAssertGrep "$PATTERN5" "$rlRun_LOG" + rlPhaseEnd + +rlJournalPrintText +rlJournalEnd