# # spec file for package python-PyYAML # # Copyright (c) 2024 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # %{?sle15_python_module_pythons} Name: python-PyYAML Version: 6.0.2 Release: 1.6 Summary: YAML parser and emitter for Python License: MIT URL: https://github.com/yaml/pyyaml Source: https://files.pythonhosted.org/packages/source/p/pyyaml/pyyaml-%{version}.tar.gz BuildRequires: %{python_module Cython} BuildRequires: %{python_module pip} BuildRequires: %{python_module setuptools} BuildRequires: %{python_module wheel} BuildRequires: fdupes BuildRequires: libyaml-devel BuildRequires: python-rpm-macros %python_subpackages %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 persistance. %prep %autosetup -p1 -n pyyaml-%{version} %build export CFLAGS="%{optflags}" export PYYAML_FORCE_CYTHON=1 %pyproject_wheel # Fix example permissions. find examples/ -type f | xargs chmod a-x %install %pyproject_install %python_expand %fdupes %{buildroot}%{$python_sitearch} %check # Increase file-descriptor-count for ppc to make tests happy. %ifarch ppc ppc64 s390 s390x ulimit -Sn 2048 %endif %{python_expand PYTHONPATH=%{buildroot}%{$python_sitearch} $python tests/legacy_tests/test_all.py} %files %{python_files} %license LICENSE %doc CHANGES README.md examples/ %{python_sitearch}/yaml %{python_sitearch}/_yaml %{python_sitearch}/PyYAML-%{version}.dist-info %changelog * Wed Oct 2 2024 John Paul Adrian Glaubitz - Update to 6.0.2 * Support for Cython 3.x and Python 3.13 - Adjust invocation path for testsuite - Adjust upstream source name in spec file - Drop build-with-cython3.patch, merged upstream * Mon Jul 1 2024 Dirk Müller - add build-with-cython3.patch from 6.0.2rc1 to build with cython3 (needed for python 3.13+) * Mon Feb 26 2024 Steve Kowalik - Switch to pyproject and autosetup macros. - Drop patch setuptools.patch, we can now cope. * Tue Sep 19 2023 Dirk Müller - cleanup * Sun Aug 13 2023 Dirk Müller - update to 6.0.1: * pin Cython to < 3.0 * Fri Apr 21 2023 Dirk Müller - add sle15_python_module_pythons (jsc#PED-68) * Thu Apr 13 2023 Matej Cepl - Make calling of %%{sle15modernpython} optional. * Mon Jun 27 2022 Ben Greiner - Actually we DO want to build the bindings. * Wed Jun 15 2022 Matej Cepl - Clean up the SPEC file. * Wed Mar 9 2022 pgajdos@suse.com - do not use setup.py test construct https://trello.com/c/me9Z4sIv/121-setuppy-test-leftovers * Mon Nov 1 2021 Tina Müller - Add patch setuptools.patch - update to 6.0 * drop Python 2.7 * always require `Loader` arg to `yaml.load()` * fix float resolver to ignore `.` and `._` * fix representation of Enum subclasses * fix libyaml extension compiler warnings * fix ResourceWarning on leaked file descriptors * remove remaining direct distutils usage * Sun Jan 24 2021 Dirk Müller - update to 5.4.1 (bsc#1174514, CVE-2020-14343): * Fix stub compat with older pyyaml versions that may unwittingly load it * Build modernization, remove distutils, fix metadata, build wheels, CI to GHA * Fix for CVE-2020-14343, moves arbitrary python tags to UnsafeLoader * Fix memory leak in implicit resolver setup * Fix py2 copy support for timezone objects * Fix compatibility with Jython * Thu Mar 19 2020 Ondřej Súkup - update to 5.3.1 * fixes boo#1165439 (cve-2020-1747) Prevents arbitrary code execution during python/object/new constructor * Tue Jan 7 2020 Ondřej Súkup - update to 5.3 * Use `is` instead of equality for comparing with `None` * fix typos and stylistic nit * Fix up small typo * Fix handling of __slots__ * Allow calling add_multi_constructor with None * Add use of safe_load() function in README * Fix reader for Unicode code points over 0xFFFF * Enable certain unicode tests when maxunicode not > 0xffff * Use full_load in yaml-highlight example * Document that PyYAML is implemented with Cython * Fix for Python 3.10 * increase size of index, line, and column fields * remove some unused imports * Create timezone-aware datetimes when parsed as such * Add tests for timezone * Tue Dec 3 2019 Ondřej Súkup - update to 5.2 * A more flexible fix for custom tag constructors * Change default loader for yaml.add_constructor * Change default loader for add_implicit_resolver, add_path_resolver * Move constructor for object/apply to UnsafeConstructor * Fix logic for quoting special characters * Thu Aug 1 2019 Marketa Calabkova - update to 5.1.2 * Re-release of 5.1 with regenerated Cython sources to build properly for Python 3.8b2+ * Fri Jun 7 2019 Ondřej Súkup - update to 5.1.1 * Re-release of 5.1 with regenerated Cython sources to build properly for Python 3.8 * Thu Mar 14 2019 Tomáš Chvátal - Update to 5.1: * many changes, see CHANGES * bsc#1099308 CVE-2017-18342 PyYAML: yaml.load() API could execute arbitrary code * Mon Jan 14 2019 kukuk@suse.de - Use %%license instead of %%doc [bsc#1082318] * Sun Jul 15 2018 mimi.vx@gmail.com - update to 3.13 * fix compactibility with python 3.7 * Fri Mar 3 2017 sor.alexei@meowr.ru - Use pythonhosted.org for the reference link. - Provide python-yaml instead of python2-yaml again. * Mon Feb 20 2017 jmatejek@suse.com - update for multipython build * Sat Sep 3 2016 mardnh@gmx.de - Update to 3.12 - Adding an implicit resolver to a derived loader should not affect the base loader (fixes issue #57). - Uniform representation for OrderedDict? across different versions of Python (fixes issue #61). - Fixed comparison to None warning (closes issue #64). - fix Source URL * Wed Jul 30 2014 toddrme2178@gmail.com - Update to 3.11 - Source and binary distributions are rebuilt against the latest versions of Cython and LibYAML. * Wed Feb 5 2014 ro@suse.de - increase file-descriptor-count for s390 to make tests happy * Tue Mar 5 2013 dvaleev@suse.com - increase file-descriptor-count for ppc to make tests happy * Thu Jan 10 2013 p.drouand@gmail.com - Initial python3 support * Wed Dec 19 2012 saschpe@suse.de - Build against libyaml to get the faster module * Tue Jan 31 2012 saschpe@suse.de - Initial version