1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-05-27 19:41:50 +02:00

import: pypi: Do not consider requirements.txt files.

PyPI packages are mandated to have a setup.py file, which contains a listing
of the required dependencies.  The setuptools/distutils machinery embed
metadata in the archives they produce, which contains this information. There
is no need nor gain to collect the requirements from a "requirements.txt"
file, as it is not the true record of dependencies for PyPI packages and may
contain extraneous requirements or not exist at all.

* guix/import/pypi.scm (guess-requirements): Update comment.
[guess-requirements-from-source]: Do not attempt to parse the file
requirements.txt.  Streamline logic.
* tests/pypi.scm (test-requires.txt): Rename from test-requirements, to hint
at the file being tested.
("pypi->guix-package"): Adapt so that the fake package contains a requires.txt
file rather than a requirements.txt file.
("pypi->guix-package, wheels"): Likewise.
This commit is contained in:
Maxim Cournoyer
2019-03-28 00:26:00 -04:00
parent 0f0651295e
commit 01589acc5e
2 changed files with 25 additions and 33 deletions
+12 -11
View File
@@ -23,7 +23,7 @@
#:use-module (gcrypt hash)
#:use-module (guix tests)
#:use-module (guix build-system python)
#:use-module ((guix build utils) #:select (delete-file-recursively which))
#:use-module ((guix build utils) #:select (delete-file-recursively which mkdir-p))
#:use-module (srfi srfi-64)
#:use-module (ice-9 match))
@@ -55,11 +55,12 @@
(define test-source-hash
"")
(define test-requirements
"# A comment
(define test-requires.txt "\
# A comment
# A comment after a space
bar
baz > 13.37")
baz > 13.37
")
(define test-metadata
"{
@@ -107,10 +108,10 @@ baz > 13.37")
(match url
("https://example.com/foo-1.0.0.tar.gz"
(begin
(mkdir "foo-1.0.0")
(with-output-to-file "foo-1.0.0/requirements.txt"
(mkdir-p "foo-1.0.0/foo.egg-info/")
(with-output-to-file "foo-1.0.0/foo.egg-info/requires.txt"
(lambda ()
(display test-requirements)))
(display test-requires.txt)))
(system* "tar" "czvf" file-name "foo-1.0.0/")
(delete-file-recursively "foo-1.0.0")
(set! test-source-hash
@@ -157,11 +158,11 @@ baz > 13.37")
(lambda (url file-name)
(match url
("https://example.com/foo-1.0.0.tar.gz"
(begin
(mkdir "foo-1.0.0")
(with-output-to-file "foo-1.0.0/requirements.txt"
(begin
(mkdir-p "foo-1.0.0/foo.egg-info/")
(with-output-to-file "foo-1.0.0/foo.egg-info/requires.txt"
(lambda ()
(display test-requirements)))
(display test-requires.txt)))
(system* "tar" "czvf" file-name "foo-1.0.0/")
(delete-file-recursively "foo-1.0.0")
(set! test-source-hash