gnu: python-six: Do not inherit.

python-six-bootstrap is no longer required, this change removes it and
refactor python-six as a stand alone package.

* gnu/packages/python-build.scm (python-six-bootstrap): Remove variable.
* gnu/packages/python-xyz.scm (python-six): Do not inherit, re-use
package definition from python-six-bootstrap.
(python2-six) [native-inputs]: Add python-setuptools, and python-wheel.

Change-Id: Ia4abf667e0a2df65c171b3c8f5808d8e6d597b17
This commit is contained in:
Sharlatan Hellseher 2025-07-15 13:59:43 +01:00
parent 63c502891f
commit 7a739b32e2
No known key found for this signature in database
GPG key ID: 76D727BFF62CD2B5
2 changed files with 28 additions and 39 deletions

View file

@ -154,30 +154,6 @@ write-only counterpart to Tomli, which is a read-only TOML parser.")
(description "This package provides a Python parser for TOML-0.4.0.")
(license license:expat)))
(define-public python-six-bootstrap
(package
(name "python-six-bootstrap")
(version "1.17.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "six" version))
(sha256
(base32 "109ajcsfhrz33lbwbb337w34crc3lb9rjnxrcpnbczlf8rfk6w7z"))))
(build-system pyproject-build-system)
(arguments `(#:tests? #f)) ;to avoid pytest dependency
(native-inputs
(list python-setuptools))
(home-page "https://pypi.org/project/six/")
(synopsis "Python 2 and 3 compatibility utilities")
(description
"Six is a Python 2 and 3 compatibility library. It provides utility
functions for smoothing over the differences between the Python versions with
the goal of writing Python code that is compatible on both Python versions.
Six supports every Python version since 2.5. It is contained in only one
Python file, so it can be easily copied into your project.")
(license license:x11)))
(define-public python-tomli
(package
(name "python-tomli")

View file

@ -5708,28 +5708,41 @@ in the current session, Python, and the OS.")
(license license:bsd-3)))
(define-public python-six
(package/inherit python-six-bootstrap
(package
(name "python-six")
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda _
(invoke "pytest" "-v"))))))
(version "1.17.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "six" version))
(sha256
(base32 "109ajcsfhrz33lbwbb337w34crc3lb9rjnxrcpnbczlf8rfk6w7z"))))
(build-system pyproject-build-system)
(native-inputs
`(("python-pytest" ,python-pytest-bootstrap)))))
(list python-pytest-bootstrap
python-setuptools
python-wheel))
(home-page "https://pypi.org/project/six/")
(synopsis "Python 2 and 3 compatibility utilities")
(description
"Six is a Python 2 and 3 compatibility library. It provides utility
functions for smoothing over the differences between the Python versions with
the goal of writing Python code that is compatible on both Python versions.
Six supports every Python version since 2.5. It is contained in only one
Python file, so it can be easily copied into your project.")
(license license:x11)))
(define-public python2-six
;; XXX: The only one user of this package is qtwebengine-5, consider to
;; remove when no longer required.
(let ((base (package-with-python2 python-six)))
(package
(inherit base)
;; Reduce Python 2 closure by disabling tests and removing the native
;; inputs.
(arguments (substitute-keyword-arguments (package-arguments base)
((#:phases phases)
`(modify-phases ,phases
(delete 'check)))))
(native-inputs '()))))
;; Reduce Python 2 closure by disabling tests.
(arguments (list #:tests? #f))
(native-inputs
(list python-setuptools
python-wheel)))))
(define-public python-schedule
(package