# # spec file for package python-poetry-core # # Copyright (c) 2025 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-poetry-core Version: 2.1.1 Release: 1.1 Summary: Poetry PEP 517 Build Backend License: Apache-2.0 AND BSD-2-Clause AND MIT AND Python-2.0 URL: https://github.com/python-poetry/poetry-core # Only the github archive provides the tests Source: %{url}/archive/%{version}.tar.gz#/poetry-core-%{version}-gh.tar.gz BuildRequires: %{python_module base >= 3.9} BuildRequires: %{python_module pip} BuildRequires: fdupes BuildRequires: python-rpm-macros BuildArch: noarch # SECTION these are all test dependencies, including python-devel and git-core BuildRequires: %{python_module devel >= 3.9} BuildRequires: %{python_module build >= 0.10.0} BuildRequires: %{python_module pytest >= 7.1.2} BuildRequires: %{python_module pytest-mock >= 3.10} BuildRequires: %{python_module tomli-w >= 1.0.0} BuildRequires: %{python_module trove-classifiers >= 2022.5.19} BuildRequires: %{python_module virtualenv >= 20.21} BuildRequires: git-core # /SECTION %python_subpackages %description A PEP 517 build backend implementation developed for Poetry. This project is intended to be a light weight, fully compliant, self-contained package allowing PEP 517 compatible build frontends to build Poetry managed projects. %prep %autosetup -p1 -n poetry-core-%{version} mkdir vendoredlicenses cp -p src/poetry/core/_vendor/lark/LICENSE vendoredlicenses/lark.LICENSE cp -p src/poetry/core/_vendor/fastjsonschema/LICENSE vendoredlicenses/fastjsonschema.LICENSE cp -p src/poetry/core/_vendor/packaging/LICENSE vendoredlicenses/packaging.LICENSE cp -p src/poetry/core/_vendor/packaging/LICENSE.APACHE vendoredlicenses/packaging.LICENSE.APACHE cp -p src/poetry/core/_vendor/packaging/LICENSE.BSD vendoredlicenses/packaging.LICENSE.BSD cp -p src/poetry/core/_vendor/tomli/LICENSE vendoredlicenses/tomli.LICENSE %build %pyproject_wheel %install %pyproject_install %python_expand %fdupes %{buildroot}%{$python_sitelib} %check # gh#python-poetry/poetry#1645 git init # tests expect the default 2016-01-01 for test builds, not the epoch set by OBS (serverside) unset SOURCE_DATE_EPOCH %pytest %files %{python_files} %doc README.md %license LICENSE vendoredlicenses/* %dir %{python_sitelib}/poetry %{python_sitelib}/poetry/core %{python_sitelib}/poetry_core-%{version}.dist-info %changelog * Wed Mar 12 2025 ecsos <ecsos@opensuse.org> - Update to 2.1.1 - Fix an issue where simplifying a python_version marker resulted in an invalid marker (#838). - Changes from 2.1.0 - Fix an issue where inclusive ordering with post releases was inconsistent with PEP 440 (#379). - Fix an issue where invalid URI tokens in PEP 508 requirement strings were silently discarded (#817). - Fix an issue where wrong markers were calculated when removing parts covered by the project's python constraint (#824). - Fix an issue where optional dependencies that are not part of an extra were included in the wheel metadata (#830). - Fix an issue where the __pycache__ directory and *.pyc files were included in sdists and wheels (#835). - Changes from 2.0.1 - Replace the deprecated core metadata field Home-page with Project-URL: Homepage (#807). - Fix an issue where includes from tool.poetry.packages without a specified format were not initialized with the default value resulting in a KeyError (#805). - Fix an issue where some project.urls entries were not processed correctly resulting in a KeyError (#807). - Fix an issue where dynamic project.dependencies via tool.poetry.dependencies were ignored if project.optional-dependencies were defined (#811). * Fri Jan 10 2025 Ben Greiner <code@bnavigator.de> - Unset source date epoch for tests * Fri Jan 10 2025 Steve Kowalik <steven.kowalik@suse.com> - Change test skipping, the skipped one works, and another is broken. * Wed Jan 8 2025 Dirk Müller <dmueller@suse.com> - update to 2.0.0: * **Add support for the `project` section in the `pyproject.toml` file according to PEP 621** (#708, #792). * Add support for non PEP440 compliant version in the `platform_release` marker (#722). * Add support for string comparisons with `in` / `not in` in generic constraints (#722). * Add support for script files that are generated by a build script (#710). * Add support for `SOURCE_DATE_EPOCH` when building packages (#766, #781). * Drop support for Python 3.8 (#798). * Create `METADATA` files with version 2.3 instead of 2.2 * Normalize source vcs URLs (#701). * Make `allow-prereleases` a tri-state setting (#783). * Rename exceptions to have an `Error` suffix (#767). * Remove support for `x` in version constraints (#770). * Remove support for scripts with extras (#708). * Remove deprecated features and interfaces (#702, * #769). * Deprecate `tool.poetry.dev-dependencies` in favor of `tool.poetry.group.dev.dependencies` (#754). * Deprecate `Package.python_marker` (#446). * Improve Cygwin git support under Windows (#704). * Improve error message when the `pyproject.toml` file cannot be parsed (#734). * Improve handling of `readme` files (#752). * Improve error handling when the Python constraint is empty (#761). * Improve performance for creating a PEP 508 requirement from a dependency (#779). * Fix an issue where the `platlib` directory of the wrong Python was used (#726). * Fix handling of generic constraints (#732). * Fix an issue where building a wheel in a nested output directory results in an error (#762). * Fix an issue where `+` was not allowed in git URL paths (#765). * Fix an issue where the temporary directory was not cleaned up on error (#775). * Fix an issue where the regular expression for author names was too restrictive (#517). * Fix an issue where basic auth http(s) credentials could not be parsed (#791). * Mon Oct 28 2024 Dirk Müller <dmueller@suse.com> - update to 1.9.1: * Add `3.13` to the list of available Python versions (#747). - drop support-newer-pythons.patch (upstream) * Thu Sep 19 2024 Steve Kowalik <steven.kowalik@suse.com> - Add patch support-newer-pythons.patch: * Remove failing test with Python 3.12.6 and 3.13. - Switch to autosetup macro. * Mon Sep 9 2024 Ben Greiner <code@bnavigator.de> - Skip test failing with Python 3.12.6 gh#python-poetry/poetry#9678 * Tue Mar 19 2024 Matej Cepl <mcepl@cepl.eu> - Update to 1.9.0 (bsc#1221705): - Added - Add a to key in tool.poetry.packages to allow custom subpackage names - Add support for path dependencies that do not define a build system - Add a tool.poetry.package-mode key to support non-package mode - Changed - Update list of supported licenses - Improve support for PEP 691 JSON-based Simple API - Establish zipapp compatibility - Rework list of files included in build artifacts - Improve performance by treating collections in packages as immutable - Deprecate poetry.core.masonry.builder - Deprecate scripts that depend on extras - Fixed - Fix an issue where insignificant errors were printed if the working directory is not inside a git repository - Fix an issue where the project's directory was not recognized as git repository on Windows due to an encoding issue - Vendoring fastjsonschema==2.19.1 lark==1.1.8 * Tue Jan 2 2024 Dirk Müller <dmueller@suse.com> - update to 1.8.1: * Fix an issue where git URLs starting with `git+` could not be parsed anymore (#657). * Add `3.12` to the list of available Python versions (#631). * Add support for creating packages dynamically in the build script * Improve marker logic for `extra` markers (#636). * Update list of supported licenses (#635, * #646). * Deprecate `Dependency.transitive_python_versions` (#648). * Deprecate `Dependency.transitive_python_constraint` (#649). * Fix an issue where projects with extension modules were not installed in editable mode (#633). * Fix an issue where the wrong or no `lib` folder was added to the wheel (#634). * Replace `jsonschema` with `fastjsonschema`. * `lark==1.1.8` * `packaging==23.2` * Sat Sep 23 2023 Ben Greiner <code@bnavigator.de> - Update to 1.7.0 [#]# Added * Optionally use resolved references when converting a VCS dependency to a PEP 508 dependency specification (#603). * Improve performance of marker handling (#609). [#]# Changed * Drop support for Python 3.7 (#566). * Remove deprecated poetry.core.constraints.generic and poetry.core.semver (#601). * Allow | as a value separator in markers with the operators in and not in (#608). * Put pretty name (instead of normalized name) in metadata (#620). * Update list of supported licenses (#623). [#]# Fixed * Fix an issue where the encoding was not handled correctly when calling a subprocess (#602). * Fix an issue where caret constraints with additional whitespace could not be parsed (#606). * Fix an issue where PEP 508 dependency specifications with names starting with a digit could not be parsed (#607). * Fix an issue where Poetry considered an unrelated .gitignore file resulting in an empty wheel (#611). * Mon May 29 2023 Ben Greiner <code@bnavigator.de> - Update to 1.6.1 * Fix an endless recursion in marker handling (#593). * Fix an issue where the wheel tag was not built correctly under certain circumstances (#591). * Fix an issue where the tests included in the sdist failed due to missing files (#589). * Mon May 22 2023 Ben Greiner <code@bnavigator.de> - Update description * Mon May 22 2023 Dan Čermák <dcermak@suse.com> - New upstream release 1.6.0 * Improve error message for invalid markers (#569). * Increase robustness when deleting temporary directories on Windows (#460). * Replace tomlkit with tomli, which changes the interface of some internal classes (#483). * Deprecate Package.category (#561). * Fix a performance regression in marker handling (#568). * Fix an issue where wildcard version constraints were not handled correctly (#402). * Fix an issue where poetry build created duplicate Python classifiers if they were specified manually (#578). * Fix an issue where local versions where not handled correctly (#579). * Mon Apr 24 2023 Ben Greiner <code@bnavigator.de> - Update to 1.5.2 * no changes relevant for Linux - Release 1.5.1 * Improve performance by caching parsed markers, constraints and versions (#556). - Release 1.5.0 [#]# Added * Improve marker handling (#528, #534, #530, #546, #547). * Allow overriding the output directory when building dist files (#527). * Validate whether dependencies referenced in extras are defined in the main dependency group (#542). * Improve handling of generic constraints (#515). [#]# Changed * Deprecate the hash function of FileDependency (#535). * Do not set allows_preleases implicitly anymore if the lower bound of a constraint is a pre-release (#543). * Poetry no longer generates a setup.py file in sdists by default (#318). * Remove the unused platform attribute from Package (#548). * Deprecate the pretty_version parameter when creating a Package (#549). * Validate path dependencies during use instead of during construction (#520). [#]# Fixed * Fix an issue where the PEP 517 metadata_directory was not respected when building an editable wheel (#537). * Fix an issue where trailing newlines were allowed in tool.poetry.description (#505). * Fix an issue where the name of the data folder in wheels was not normalized (#532). * Fix an issue where the order of entries in the RECORD file was not deterministic (#545). * Fix an issue where parsing of VCS URLs with escaped characters failed (#524). * Fix an issue where the subdirectory parameter of VCS URLs was not respected (#518). * Fix an issue where zero padding was not correctly handled in version comparisons (#540). * Fix an issue where sdist builds did not support multiple READMEs (#486). - Remove devendoring: produces too many build dependency cycles as a build backend * Fri Apr 21 2023 Dirk Müller <dmueller@suse.com> - add sle15_python_module_pythons (jsc#PED-68) * Thu Apr 13 2023 Matej Cepl <mcepl@suse.com> - Make calling of %%{sle15modernpython} optional. * Tue Dec 13 2022 Benjamin Greiner <code@bnavigator.de> - Update devendored requirements * Tue Dec 13 2022 Yogalakshmi Arunachalam <yarunachalam@suse.com> - Update to version 1.4.0 * Added The PEP 517 metadata_directory is now respected as an input to the build_wheel hook (#487). * Changed Sources are now considered more carefully when dealing with dependencies with environment markers (#497). EmptyConstraint is now hashable (#513). ParseConstraintError is now raised on version and constraint parsing errors, and includes information on the package that caused the error (#514). * Fixed Fix an issue where invalid PEP 508 requirements were generated due to a missing space before semicolons (#510). Fix an issue where relative paths were encoded into package requirements, instead of a file:// URL as required by PEP 508 (#512). * Vendoring jsonschema==4.17.0 lark==1.1.14 pyrsistent==0.19.2 tomlkit==0.11.6 typing-extensions==4.4.0 * Tue Oct 11 2022 Dirk Müller <dmueller@suse.com> - adjust to lark-parser -> lark rename * Sun Oct 9 2022 Ben Greiner <code@bnavigator.de> - Update to 1.3.2 * Fix an issue where the normalization was not applied to the path of an sdist built using a PEP 517 frontend (#495). - Release 1.3.1 * Fix an issue where a typing-driven assertion could be false at runtime, causing a failure during prepare_metadata_for_build_wheel (#492). - Release 1.3.0 * Add 3.11 to the list of available Python versions (#477). * Deprecate poetry.core.constraints.generic, which is replaced by poetry.core.packages.constraints (#482). * Deprecate poetry.core.semver, which is replaced by poetry.core.constraints.version (#482). * Fix an issue where versions were escaped wrongly when building the wheel name (#469). * Fix an issue where caret constraints of pre-releases with a major version of 0 resulted in an empty version range (#475). * Fix an issue where the names of extras were not normalized according to PEP 685 (#476). * Fix an issue where sdist names were not normalized (#484). - Release 1.2.0 * Added support for subdirectories in url dependencies (#398). * When setting an invalid version constraint an error is raised instead of silently setting "any version" (#461). * Allow more characters in author name (#411). * Fixed an issue where incorrect Requires-Dist information was generated when environment markers where used for optional packages (#462). * Fixed an issue where incorrect python constraints were parsed from environment markers (#457). * Fixed the hashing of markers and constraints (#466). * Fixed an issue where the PEP 508 name of directory dependencies used platform paths (#463). - Release 1.1.0 * Dropped support for Python 2.7 and 3.6 (#131, #263). * Reorganized imports internally to improve performances (#131). * Directory dependencies are now in non-develop mode by default (#98). * Improved support for PEP 440 specific versions that do not abide by semantic versioning (#140). * Files in source distributions now have a deterministic time to improve reproducibility. (#142) * Added support for script files in addition to standard entry points. (#40) * Added support for dependency groups. (#183) * Add support for most of the guaranteed hashes (#207). * Add support to declare multiple README files (#248). * Add support for git sub directories (#192). * Add hooks according to PEP-660 for editable installs (#182). * Add support for version epochs (#264). * Loose the strictness when parsing version constraint to support invalid use of wildcards, e.g. >=3.* (#186). * No longer assume a default git branch name (#192). * Sort package name in extras to make it reproducible (#280). * Improve marker handling (#208, #282, #283, #284, #286, #291, [#293], #294, #297). * Added support for handling git urls with subdirectory (#288). * Added support for metadata files as described in PEP-658 for PEP-503 "simple" API repositories (#333). * Renamed dependency group of runtime dependencies to from default to main (#326). * poetry-core is now completely type checked. * Improved the SemVer constraint parsing (#327). * Improved the speed when cloning git repositories (#290). * Added support for valid PEP 517 projects with another build-system than poetry-core as directory dependencies (#368, [#377]). * Added support for yanked files and releases according to PEP 592 (#400). * Relaxed schema validation to allow additional properties (#369). * Harmonized string representation of dependencies (#393). * Changed wheel name normalization to follow most recent packaging specification (#394). * Changed equality check of direct origin dependencies, so that constraints are not considered anymore (#405). * Deprecated Dependency.set_constraint() and replaced it by a constraint property for consistency (#370). * Removed Package.requires_extras (#374). * Improved marker handling (#380, #383, #384, #390, #395). * Enabled setting version of ProjectPackage to support dynamically setting the project's package version (e.g. from a plugin) (#447). * Fri Mar 18 2022 Ben Greiner <code@bnavigator.de> - Update to 1.0.8 * Add hooks according to PEP-660 for editable installs (#257). * Sat Dec 4 2021 Ben Greiner <code@bnavigator.de> - Update to 1.0.7 * Fixed an issue where the wrong git executable could be used on Windows. (#213) * Fixed an issue where the Python 3.10 classifier was not automatically added. (#215) * Wed Sep 22 2021 Ben Greiner <code@bnavigator.de> - Update to 1.0.6 * Added support for more hash types gen generating hashes. (#207) - Release 1.0.5 * Fixed the copy of Package instances which led to file hashes not being available. (#193) * Fixed an issue where unsafe parameters could be passed to git commands. (#203) * Fixed an issue where the wrong git executable could be used on Windows. (#205) - Release 1.0.4 * Fixed an error in the way python markers with a precision >= 3 were handled. (#180) * Fixed an error in the evaluation of in/not in markers (#189) * Wed Apr 14 2021 Ben Greiner <code@bnavigator.de> - Update to 1.0.3 * Fixed an error when handling single-digit Python markers (#156) * Fixed dependency markers not being properly copied when changing the constraint (#163). - Release 1.0.2 * Fixed a missing import causing an error in Poetry (#134). - Release 1.0.1 * Fixed PEP 508 representation of dependency without extras (#102). * Fixed an error where development dependencies were being resolved when invoking the PEP-517 backend (#101). * Fixed source distribution not being deterministic (#105). * Fixed an error where zip files were left open when building wheels (#122). * Fixed an error where explicitly included files were still not present in final distributions (#124). * Fixed wheel filename matching for recent architecture (#125, [#129]). * Fixed an error where the & character was not accepted for author names (#120). * Fixed the PEP-508 representation of some dependencies (#103). * Fixed the Requires-Python metadata generation (#127). * Fixed an error where pre-release versions were accepted in version constraints (#128). * Tue Oct 20 2020 Dan Čermák <dcermak@suse.com> Remove python2 subpackage: python2 requires the typing package as a dependency, but we ship a too recent version of that and thus cannot build it for Leap + Python2 anymore * Fri Oct 16 2020 Benjamin Greiner <code@bnavigator.de> - Let the pyproject_install macro do the compiling * Sat Oct 10 2020 Benjamin Greiner <code@bnavigator.de> - unbundle vendored packages * Thu Oct 8 2020 Benjamin Greiner <code@bnavigator.de> - remove dephell dependency. poetry-core can build and install itself as a PEP517 backend (using pip as frontend) - precompile the python files as in setuptools * gh#openSUSE/python-rpm-macros#37 * Mon Oct 5 2020 Benjamin Greiner <code@bnavigator.de> - Update to v1.0.0 * first stable release. See CHANGLOG.md for changes between a6 and release - The released PyPI package does not have the tests. Use Github. * Sun Jul 12 2020 John Vandenberg <jayvdb@gmail.com> - Update to v1.0.0a8 * Thu May 7 2020 John Vandenberg <jayvdb@gmail.com> - Initial spec for v1.0.0a6