gnu: Move a few Python packages to (gnu packages python-build).
This is in prevision of updating python-pypa-build, which now requires python-packaging and adding python-tomli, which requires python-six. * gnu/packages/python-xyz.scm (python-six) (python-six-bootstrap, python2-six-bootstrap) (python-pyparsing, python2-pyparsing, python-pyparsing-2.4.7) (python-packaging-bootstrap, python2-packaging-bootstrap): Move packages to... * gnu/packages/python-build.scm: ... here. Update python-parsing to latest. * gnu/packages/python-xyz.scm (python-six, python-packaging): Adjust to inherit from their bootstrap versions.master
parent
c738a054ca
commit
05e3638bb9
|
@ -50,6 +50,7 @@
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
|
#:use-module (gnu packages python-build)
|
||||||
#:use-module (gnu packages python-check)
|
#:use-module (gnu packages python-check)
|
||||||
#:use-module (gnu packages python-xyz)
|
#:use-module (gnu packages python-xyz)
|
||||||
#:use-module (gnu packages sphinx)
|
#:use-module (gnu packages sphinx)
|
||||||
|
|
|
@ -56,6 +56,7 @@
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
|
#:use-module (gnu packages python-build)
|
||||||
#:use-module (gnu packages python-web)
|
#:use-module (gnu packages python-web)
|
||||||
#:use-module (gnu packages python-xyz)
|
#:use-module (gnu packages python-xyz)
|
||||||
#:use-module (gnu packages rrdtool)
|
#:use-module (gnu packages rrdtool)
|
||||||
|
|
|
@ -27,6 +27,7 @@
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages gnupg)
|
#:use-module (gnu packages gnupg)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
|
#:use-module (gnu packages python-build)
|
||||||
#:use-module (gnu packages python-check)
|
#:use-module (gnu packages python-check)
|
||||||
#:use-module (gnu packages python-crypto)
|
#:use-module (gnu packages python-crypto)
|
||||||
#:use-module (gnu packages python-web)
|
#:use-module (gnu packages python-web)
|
||||||
|
|
|
@ -86,6 +86,7 @@
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages popt)
|
#:use-module (gnu packages popt)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
|
#:use-module (gnu packages python-build)
|
||||||
#:use-module (gnu packages python-check)
|
#:use-module (gnu packages python-check)
|
||||||
#:use-module (gnu packages python-web)
|
#:use-module (gnu packages python-web)
|
||||||
#:use-module (gnu packages python-xyz)
|
#:use-module (gnu packages python-xyz)
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
(define-module (gnu packages python-build)
|
(define-module (gnu packages python-build)
|
||||||
|
#:use-module (gnu packages)
|
||||||
#:use-module ((guix licenses) #:prefix license:)
|
#:use-module ((guix licenses) #:prefix license:)
|
||||||
#:use-module (guix build-system python)
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix download)
|
#:use-module (guix download)
|
||||||
|
@ -107,6 +108,32 @@ Language (TOML) configuration files.")
|
||||||
(description "This package provides a Python parser for TOML-0.4.0.")
|
(description "This package provides a Python parser for TOML-0.4.0.")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
|
(define-public python-six-bootstrap
|
||||||
|
(package
|
||||||
|
(name "python-six-bootstrap")
|
||||||
|
(version "1.15.0")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (pypi-uri "six" version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0n82108wxn5giff50hd9ykjhd3zl7cndabdasi6568yvbh1rqqrh"))))
|
||||||
|
(build-system python-build-system)
|
||||||
|
(arguments `(#:tests? #f)) ;to avoid pytest dependency
|
||||||
|
(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-bootstrap
|
||||||
|
(package-with-python2 python-six-bootstrap))
|
||||||
|
|
||||||
(define-public python-pep517-bootstrap
|
(define-public python-pep517-bootstrap
|
||||||
(hidden-package
|
(hidden-package
|
||||||
(package
|
(package
|
||||||
|
@ -131,6 +158,93 @@ Language (TOML) configuration files.")
|
||||||
"Wrappers to build Python packages using PEP 517 hooks.")
|
"Wrappers to build Python packages using PEP 517 hooks.")
|
||||||
(license license:expat))))
|
(license license:expat))))
|
||||||
|
|
||||||
|
(define-public python-pyparsing
|
||||||
|
(package
|
||||||
|
(name "python-pyparsing")
|
||||||
|
(version "2.4.7")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (pypi-uri "pyparsing" version))
|
||||||
|
(sha256
|
||||||
|
(base32 "1hgc8qrbq1ymxbwfbjghv01fm3fbpjwpjwi0bcailxxzhf3yq0y2"))))
|
||||||
|
(build-system python-build-system)
|
||||||
|
(outputs '("out" "doc"))
|
||||||
|
(arguments
|
||||||
|
`(#:tests? #f ;no test target
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
(add-after 'install 'install-doc
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(let* ((doc (string-append (assoc-ref outputs "doc")
|
||||||
|
"/share/doc/" ,name "-" ,version))
|
||||||
|
(html-doc (string-append doc "/html"))
|
||||||
|
(examples (string-append doc "/examples")))
|
||||||
|
(mkdir-p html-doc)
|
||||||
|
(mkdir-p examples)
|
||||||
|
(for-each
|
||||||
|
(lambda (dir tgt)
|
||||||
|
(map (lambda (file)
|
||||||
|
(install-file file tgt))
|
||||||
|
(find-files dir ".*")))
|
||||||
|
(list "docs" "htmldoc" "examples")
|
||||||
|
(list doc html-doc examples))))))))
|
||||||
|
(home-page "https://github.com/pyparsing/pyparsing")
|
||||||
|
(synopsis "Python parsing class library")
|
||||||
|
(description
|
||||||
|
"The pyparsing module is an alternative approach to creating and
|
||||||
|
executing simple grammars, vs. the traditional lex/yacc approach, or the use
|
||||||
|
of regular expressions. The pyparsing module provides a library of classes
|
||||||
|
that client code uses to construct the grammar directly in Python code.")
|
||||||
|
(license license:expat)))
|
||||||
|
|
||||||
|
(define-public python-pyparsing-2.4.7
|
||||||
|
(package
|
||||||
|
(inherit python-pyparsing)
|
||||||
|
(version "2.4.7")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (pypi-uri "pyparsing" version))
|
||||||
|
(sha256
|
||||||
|
(base32 "1hgc8qrbq1ymxbwfbjghv01fm3fbpjwpjwi0bcailxxzhf3yq0y2"))))))
|
||||||
|
|
||||||
|
(define-public python2-pyparsing
|
||||||
|
(package-with-python2 python-pyparsing))
|
||||||
|
|
||||||
|
(define-public python-packaging-bootstrap
|
||||||
|
(package
|
||||||
|
(name "python-packaging-bootstrap")
|
||||||
|
(version "20.0")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (pypi-uri "packaging" version))
|
||||||
|
;; XXX: The URL in the patch file is wrong, it should be
|
||||||
|
;; <https://github.com/pypa/packaging/pull/256>.
|
||||||
|
(patches (search-patches "python-packaging-test-arch.patch"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1y2ip3a4ykkpgnwgn85j6hkspcl0cg3mzms97f40mk57vwqq67gy"))))
|
||||||
|
(build-system python-build-system)
|
||||||
|
(arguments `(#:tests? #f)) ;disabled to avoid extra dependencies
|
||||||
|
(propagated-inputs
|
||||||
|
`(("python-pyparsing" ,python-pyparsing)
|
||||||
|
("python-six-bootstrap" ,python-six-bootstrap)))
|
||||||
|
(home-page "https://github.com/pypa/packaging")
|
||||||
|
(synopsis "Core utilities for Python packages")
|
||||||
|
(description "Packaging is a Python module for dealing with Python packages.
|
||||||
|
It offers an interface for working with package versions, names, and dependency
|
||||||
|
information.")
|
||||||
|
;; From 'LICENSE': This software is made available under the terms of
|
||||||
|
;; *either* of the licenses found in LICENSE.APACHE or LICENSE.BSD.
|
||||||
|
;; Contributions to this software is made under the terms of *both* these
|
||||||
|
;; licenses.
|
||||||
|
(license (list license:asl2.0 license:bsd-2))))
|
||||||
|
|
||||||
|
(define-public python2-packaging-bootstrap
|
||||||
|
(package-with-python2 python-packaging-bootstrap))
|
||||||
|
|
||||||
;;; The name 'python-pypa-build' is chosen rather than 'python-build' to avoid
|
;;; The name 'python-pypa-build' is chosen rather than 'python-build' to avoid
|
||||||
;;; a name clash with python-build from (guix build-system python).
|
;;; a name clash with python-build from (guix build-system python).
|
||||||
(define-public python-pypa-build
|
(define-public python-pypa-build
|
||||||
|
|
|
@ -2424,48 +2424,20 @@ in the current session, Python, and the OS.")
|
||||||
(license license:bsd-3)))
|
(license license:bsd-3)))
|
||||||
|
|
||||||
(define-public python-six
|
(define-public python-six
|
||||||
(package
|
(package/inherit python-six-bootstrap
|
||||||
(name "python-six")
|
(name "python-six")
|
||||||
(version "1.15.0")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (pypi-uri "six" version))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"0n82108wxn5giff50hd9ykjhd3zl7cndabdasi6568yvbh1rqqrh"))))
|
|
||||||
(build-system python-build-system)
|
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases
|
`(#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(replace 'check
|
(replace 'check
|
||||||
(lambda _
|
(lambda _
|
||||||
(invoke "py.test" "-v"))))))
|
(invoke "pytest" "-v"))))))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("python-pytest" ,python-pytest-bootstrap)))
|
`(("python-pytest" ,python-pytest-bootstrap)))))
|
||||||
(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
|
(define-public python2-six
|
||||||
(package-with-python2 python-six))
|
(package-with-python2 python-six))
|
||||||
|
|
||||||
(define-public python-six-bootstrap
|
|
||||||
(package
|
|
||||||
(inherit python-six)
|
|
||||||
(name "python-six-bootstrap")
|
|
||||||
(native-inputs `())
|
|
||||||
(arguments `(#:tests? #f))))
|
|
||||||
|
|
||||||
(define-public python2-six-bootstrap
|
|
||||||
(package-with-python2 python-six-bootstrap))
|
|
||||||
|
|
||||||
(define-public python-schedule
|
(define-public python-schedule
|
||||||
(package
|
(package
|
||||||
(name "python-schedule")
|
(name "python-schedule")
|
||||||
|
@ -5907,61 +5879,6 @@ parse and apply unified diffs. It has features such as:
|
||||||
@end itemize")
|
@end itemize")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
(define-public python-pyparsing
|
|
||||||
(package
|
|
||||||
(name "python-pyparsing")
|
|
||||||
(version "2.4.6")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (pypi-uri "pyparsing" version))
|
|
||||||
(sha256
|
|
||||||
(base32 "17wn5zlijc9m9zj26gy3f541y7smpj8rfhl51d025c2gm210b0sc"))))
|
|
||||||
(build-system python-build-system)
|
|
||||||
(outputs '("out" "doc"))
|
|
||||||
(arguments
|
|
||||||
`(#:tests? #f ; no test target
|
|
||||||
#:phases
|
|
||||||
(modify-phases %standard-phases
|
|
||||||
(add-after 'install 'install-doc
|
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
|
||||||
(let* ((doc (string-append (assoc-ref outputs "doc")
|
|
||||||
"/share/doc/" ,name "-" ,version))
|
|
||||||
(html-doc (string-append doc "/html"))
|
|
||||||
(examples (string-append doc "/examples")))
|
|
||||||
(mkdir-p html-doc)
|
|
||||||
(mkdir-p examples)
|
|
||||||
(for-each
|
|
||||||
(lambda (dir tgt)
|
|
||||||
(map (lambda (file)
|
|
||||||
(install-file file tgt))
|
|
||||||
(find-files dir ".*")))
|
|
||||||
(list "docs" "htmldoc" "examples")
|
|
||||||
(list doc html-doc examples))
|
|
||||||
#t))))))
|
|
||||||
(home-page "https://github.com/pyparsing/pyparsing")
|
|
||||||
(synopsis "Python parsing class library")
|
|
||||||
(description
|
|
||||||
"The pyparsing module is an alternative approach to creating and
|
|
||||||
executing simple grammars, vs. the traditional lex/yacc approach, or the use
|
|
||||||
of regular expressions. The pyparsing module provides a library of classes
|
|
||||||
that client code uses to construct the grammar directly in Python code.")
|
|
||||||
(license license:expat)))
|
|
||||||
|
|
||||||
(define-public python2-pyparsing
|
|
||||||
(package-with-python2 python-pyparsing))
|
|
||||||
|
|
||||||
(define-public python-pyparsing-2.4.7
|
|
||||||
(package
|
|
||||||
(inherit python-pyparsing)
|
|
||||||
(version "2.4.7")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (pypi-uri "pyparsing" version))
|
|
||||||
(sha256
|
|
||||||
(base32 "1hgc8qrbq1ymxbwfbjghv01fm3fbpjwpjwi0bcailxxzhf3yq0y2"))))))
|
|
||||||
|
|
||||||
(define-public python-numpydoc
|
(define-public python-numpydoc
|
||||||
(package
|
(package
|
||||||
(name "python-numpydoc")
|
(name "python-numpydoc")
|
||||||
|
@ -18550,28 +18467,15 @@ several utilities, as well as an API for building localization tools.")
|
||||||
(package-with-python2 python-translate-toolkit))
|
(package-with-python2 python-translate-toolkit))
|
||||||
|
|
||||||
(define-public python-packaging
|
(define-public python-packaging
|
||||||
(package
|
(package/inherit python-packaging-bootstrap
|
||||||
(name "python-packaging")
|
(name "python-packaging")
|
||||||
(version "20.0")
|
|
||||||
(source
|
|
||||||
(origin
|
|
||||||
(method url-fetch)
|
|
||||||
(uri (pypi-uri "packaging" version))
|
|
||||||
;; XXX: The URL in the patch file is wrong, it should be
|
|
||||||
;; <https://github.com/pypa/packaging/pull/256>.
|
|
||||||
(patches (search-patches "python-packaging-test-arch.patch"))
|
|
||||||
(sha256
|
|
||||||
(base32
|
|
||||||
"1y2ip3a4ykkpgnwgn85j6hkspcl0cg3mzms97f40mk57vwqq67gy"))))
|
|
||||||
(build-system python-build-system)
|
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases (modify-phases %standard-phases
|
`(#:phases (modify-phases %standard-phases
|
||||||
(replace 'check
|
(replace 'check
|
||||||
(lambda* (#:key tests? #:allow-other-keys)
|
(lambda* (#:key tests? #:allow-other-keys)
|
||||||
(if tests?
|
(if tests?
|
||||||
(invoke "py.test" "-vv")
|
(invoke "pytest" "-vv")
|
||||||
(format #t "test suite not run~%"))
|
(format #t "test suite not run~%")))))))
|
||||||
#t)))))
|
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("python-pretend" ,python-pretend)
|
`(("python-pretend" ,python-pretend)
|
||||||
("python-pytest" ,python-pytest)))
|
("python-pytest" ,python-pytest)))
|
||||||
|
@ -18592,37 +18496,6 @@ information.")
|
||||||
(define-public python2-packaging
|
(define-public python2-packaging
|
||||||
(package-with-python2 python-packaging))
|
(package-with-python2 python-packaging))
|
||||||
|
|
||||||
;; Variants with minimal dependencies, for bootstrapping Pytest.
|
|
||||||
(define-public python-packaging-bootstrap
|
|
||||||
(hidden-package
|
|
||||||
(package/inherit
|
|
||||||
python-packaging
|
|
||||||
(name "python-packaging-bootstrap")
|
|
||||||
(arguments
|
|
||||||
(substitute-keyword-arguments (package-arguments python-packaging)
|
|
||||||
((#:phases phases)
|
|
||||||
`(modify-phases ,phases
|
|
||||||
(add-after 'unpack 'fix-dependencies
|
|
||||||
(lambda* (#:key tests? #:allow-other-keys)
|
|
||||||
(substitute* "setup.py" (("\"six\"") ""))))))
|
|
||||||
((#:tests? _ #f) #f)))
|
|
||||||
(native-inputs '())
|
|
||||||
(propagated-inputs
|
|
||||||
`(("python-pyparsing" ,python-pyparsing))))))
|
|
||||||
|
|
||||||
(define-public python2-packaging-bootstrap
|
|
||||||
(hidden-package
|
|
||||||
(package/inherit
|
|
||||||
python2-packaging
|
|
||||||
(name "python2-packaging-bootstrap")
|
|
||||||
(native-inputs '())
|
|
||||||
(propagated-inputs
|
|
||||||
`(("python-pyparsing" ,python2-pyparsing)
|
|
||||||
("python-six" ,python2-six-bootstrap)))
|
|
||||||
(arguments
|
|
||||||
`(#:tests? #f
|
|
||||||
,@(package-arguments python2-packaging))))))
|
|
||||||
|
|
||||||
(define-public python-relatorio
|
(define-public python-relatorio
|
||||||
(package
|
(package
|
||||||
(name "python-relatorio")
|
(name "python-relatorio")
|
||||||
|
|
|
@ -48,6 +48,7 @@
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
|
#:use-module (gnu packages python-build)
|
||||||
#:use-module (gnu packages python-web)
|
#:use-module (gnu packages python-web)
|
||||||
#:use-module (gnu packages python-xyz)
|
#:use-module (gnu packages python-xyz)
|
||||||
#:use-module (gnu packages qt)
|
#:use-module (gnu packages qt)
|
||||||
|
|
Reference in New Issue