# RHEL8: disable building python2 in the python39 module %bcond_with python2 Name: PyYAML Version: 5.4.1 Release: 1%{?dist} %global uversion %{version} Summary: YAML parser and emitter for Python License: MIT URL: https://github.com/yaml/pyyaml Source0: https://github.com/yaml/pyyaml/archive/%{uversion}.tar.gz # Exclude i686 arch. Due to a modularity issue it's being added to the # x86_64 compose of CRB, but we don't want to ship it at all. # See: https://projects.engineering.redhat.com/browse/RCM-72605 ExcludeArch: i686 BuildRequires: gcc BuildRequires: libyaml-devel %if %{with python2} BuildRequires: python2-devel BuildRequires: python2-setuptools %endif BuildRequires: python%{python3_pkgversion}-devel BuildRequires: python%{python3_pkgversion}-rpm-macros BuildRequires: python%{python3_pkgversion}-setuptools BuildRequires: python%{python3_pkgversion}-Cython %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 %if %{with python2} %package -n python2-pyyaml Summary: %summary Provides: python-yaml = %{version}-%{release} Provides: python-yaml%{?_isa} = %{version}-%{release} Provides: python2-yaml = %{version}-%{release} Provides: python2-yaml%{?_isa} = %{version}-%{release} Provides: PyYAML = %{version}-%{release} Provides: PyYAML%{?_isa} = %{version}-%{release} %{?python_provide:%python_provide python2-pyyaml} %description -n python2-pyyaml %_description %endif %package -n python%{python3_pkgversion}-pyyaml Summary: %summary Provides: python%{python3_pkgversion}-yaml = %{version}-%{release} Provides: python%{python3_pkgversion}-yaml%{?_isa} = %{version}-%{release} %{?python_provide:%python_provide python%{python3_pkgversion}-pyyaml} Provides: python%{python3_pkgversion}-PyYAML = %{version}-%{release} Provides: python%{python3_pkgversion}-PyYAML%{?_isa} = %{version}-%{release} %description -n python%{python3_pkgversion}-pyyaml %_description %prep %setup -q -n pyyaml-%{uversion} chmod a-x examples/yaml-highlight/yaml_hl.py # remove pre-generated file rm -rf ext/_yaml.c %build %py3_build %if %{with python2} # py2_build reuses Cython output from py3_build %py2_build %endif %install %if %{with python2} %py2_install %endif %py3_install %check %if %{with python2} %{__python2} setup.py test %endif %{__python3} setup.py test %if %{with python2} %files -n python2-pyyaml %license LICENSE %doc CHANGES README examples %{python2_sitearch}/* %endif %files -n python%{python3_pkgversion}-pyyaml %license LICENSE %doc CHANGES README examples %{python3_sitearch}/* %changelog * Sun Dec 10 2023 MSVSphere Packaging Team - 5.4.1-1 - Rebuilt for MSVSphere 8.8 * Tue Mar 23 2021 Tomas Orsava - 5.4.1-1 - Rebase to version 5.4.1 to fix CVE-2020-14343 - Resolves: rhbz#1860466 * Mon Jan 18 2021 Tomas Orsava - 5.3.1-6 - Add PyYAML to the python39 module in RHEL8 - Resolves: rhbz#1877430 * 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