aboutsummaryrefslogtreecommitdiff
path: root/.gitignore
blob: 0f74b5da3d0679472d5a9ab2ca83b2778a6f793d (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
*.eps
*.go
*.log
*.mo
*.pdf
*.png
*.tar.xz
*.tmp
*~
.#*
\#*\#
,*
/ABOUT-NLS
/INSTALL
/aclocal.m4
/autom4te.cache
/build-aux/ar-lib
/build-aux/compile
/build-aux/config.guess
/build-aux/config.rpath
/build-aux/config.sub
/build-aux/depcomp
/build-aux/install-sh
/build-aux/mdate-sh
/build-aux/missing
/build-aux/test-driver
/build-aux/texinfo.tex
/config.status
/configure
/doc/*.1
/doc/.dirstamp
/doc/contributing.*.texi
/doc/guix*.aux
/doc/guix*.cp
/doc/guix*.cps
/doc/guix*.fn
/doc/guix*.fns
/doc/guix*.html
/doc/guix*.info
/doc/guix*.info-[0-9]
/doc/guix*.ky
/doc/guix*.pg
/doc/guix*.toc
/doc/guix*.t2p
/doc/guix*.tp
/doc/guix*.vr
/doc/guix*.vrs
/doc/guix.*.texi
/doc/guix-cookbook.*.texi
/doc/guix.aux
/doc/guix.cp
/doc/guix.cps
/doc/guix.fn
/doc/guix.fns
/doc/guix.html
/doc/guix.info
/doc/guix.info-[0-9]
/doc/guix.ky
/doc/guix.pg
/doc/guix.toc
/doc/guix.t2p
/doc/guix.tp
/doc/guix.vr
/doc/guix.vrs
/doc/os-config-bare-bones.texi
/doc/os-config-desktop.texi
/doc/stamp-vti
/doc/version.texi
/doc/version-*.texi
/etc/committer.scm
/etc/gnu-store.mount
/etc/guix-daemon.cil
/etc/guix-daemon.conf
/etc/guix-daemon.service
/etc/guix-publish.conf
/etc/guix-publish.service
/etc/guix-gc.service
/etc/init.d/guix-daemon
/etc/openrc/guix-daemon
/guix-*
/guix/config.scm
/libformat.a
/libstore.a
/libutil.a
/m4/*
/m4/ChangeLog
/m4/gettext.m4
/m4/iconv.m4
/m4/lib-ld.m4
/m4/lib-link.m4
/m4/lib-prefix.m4
/m4/nls.m4
/m4/po.m4
/m4/progtest.m4
/nix/config.h
/nix/config.h.in
/po/doc/*.mo
/po/doc/*.pot
/po/guix/*.gmo
/po/guix/*.insert-header
/po/guix/*.mo
/po/guix/ChangeLog
/po/guix/Makefile.in.in
/po/guix/Makevars.template
/po/guix/POTFILES
/po/guix/Rules-quot
/po/guix/boldquot.sed
/po/guix/en@boldquot.*
/po/guix/en@quot.*
/po/guix/guix.pot
/po/guix/insert-header.sin
/po/guix/quot.sed
/po/guix/remove-potcdate.sed
/po/guix/remove-potcdate.sin
/po/guix/stamp-po
/po/packages/*.gmo
/po/packages/*.insert-header
/po/packages/*.mo
/po/packages/ChangeLog
/po/packages/Makefile.in.in
/po/packages/Makevars.template
/po/packages/POTFILES
/po/packages/Rules-quot
/po/packages/boldquot.sed
/po/packages/en@boldquot.*
/po/packages/en@quot.*
/po/packages/guix-packages.pot
/po/packages/insert-header.sin
/po/packages/quot.sed
/po/packages/remove-potcdate.sed
/po/packages/remove-potcdate.sin
/po/packages/stamp-po
/pre-inst-env
/release-*
/scripts/guix
/t-*/
/test-env
/test-tmp
/tests/*.trs
/tests/services/*.trs
GPATH
GRTAGS
GTAGS
Makefile
Makefile.in
config.cache
stamp-h[0-9]
.am[0-9]*/
.dirstamp
.deps
tmp
/doc/os-config-lightweight-desktop.texi
/nix/scripts/download
/.tarball-version
/.version
/doc/stamp-*
/gnu/packages/bootstrap
/gnu/packages/aux-files/guile-guile-launcher.o
/guile
.DS_Store
.mumi/current-issue
l "guix-package->pypi-name, new URL style" "certbot" (guix-package->pypi-name (dummy-package "foo" (source (dummy-origin (uri "https://pypi.org/packages/a2/3b/4756e6a0ceb14e084042a2a65c615d68d25621c6fd446d0fc10d14c4ce7d/certbot-0.8.1.tar.gz")))))) (test-equal "guix-package->pypi-name, several URLs" "cram" (guix-package->pypi-name (dummy-package "foo" (source (dummy-origin (uri (list "https://bitheap.org/cram/cram-0.7.tar.gz" (pypi-uri "cram" "0.7")))))))) (test-equal "guix-package->pypi-name, honor 'upstream-name'" "bar-3" (guix-package->pypi-name (dummy-package "foo" (properties '((upstream-name . "bar-3")))))) (test-equal "specification->requirement-name" '("Fizzy" "PickyThing" "SomethingWithMarker" "requests" "pip") (map specification->requirement-name test-specifications)) (test-equal "parse-requires.txt" (list '("foo" "bar") '("pytest")) (mock ((ice-9 ports) call-with-input-file call-with-input-string) (parse-requires.txt test-requires.txt))) (test-equal "parse-requires.txt - Beaker" (list '() '("Mock" "coverage")) (mock ((ice-9 ports) call-with-input-file call-with-input-string) (parse-requires.txt test-requires.txt-beaker))) (test-equal "parse-wheel-metadata, with extras" (list '("wrapt" "bar") '("tox" "bumpversion")) (mock ((ice-9 ports) call-with-input-file call-with-input-string) (parse-wheel-metadata test-metadata-with-extras))) (test-equal "parse-wheel-metadata, with extras - Jedi" (list '("parso") '("pytest")) (mock ((ice-9 ports) call-with-input-file call-with-input-string) (parse-wheel-metadata test-metadata-with-extras-jedi))) (test-equal "find-project-url, with numpy" "numpy" (find-project-url "numpy" "https://files.pythonhosted.org/packages/0a/c8/a62767a6b374a0dfb02d2a0456e5f56a372cdd1689dbc6ffb6bf1ddedbc0/numpy-1.22.1.zip")) (test-equal "find-project-url, uWSGI" "uwsgi" (find-project-url "uWSGI" "https://files.pythonhosted.org/packages/24/fd/93851e4a076719199868d4c918cc93a52742e68370188c1c570a6e42a54f/uwsgi-2.0.20.tar.gz")) (test-equal "find-project-url, flake8-array-spacing" "flake8_array_spacing" (find-project-url "flake8-array-spacing" "https://files.pythonhosted.org/packages/a4/21/ff29b901128b681b7de7a2787b3aeb3e1f3cba4a8c0cffa9712cbff016bc/flake8_array_spacing-0.2.0.tar.gz")) (test-equal "find-project-url, foo/goo" "foo" (find-project-url "foo" "https://files.pythonhosted.org/packages/f0/f00/goo-0.0.0.tar.gz")) (test-assert "pypi->guix-package, no wheel" (let ((tarball (pypi-tarball "foo-1.0.0" `(("src/bizarre.egg-info/requires.txt" ,test-requires.txt)))) (twice (lambda (lst) (append lst lst)))) (with-pypi (twice `(("/foo-1.0.0.tar.gz" 200 ,(file-dump tarball)) ("/foo-1.0.0-py2.py3-none-any.whl" 404 "") ("/foo/json" 200 ,(lambda (port) (display (foo-json) port))))) (match (pypi->guix-package "foo") (`(package (name "python-foo") (version "1.0.0") (source (origin (method url-fetch) (uri (pypi-uri "foo" version)) (sha256 (base32 ,(? string? hash))))) (build-system pyproject-build-system) (propagated-inputs (list python-bar python-foo)) (native-inputs (list python-pytest)) (home-page "http://example.com") (synopsis "summary") (description "summary.") (license license:lgpl2.0)) (and (string=? default-sha256/base32 hash) (equal? (pypi->guix-package "foo" #:version "1.0.0") (pypi->guix-package "foo")) (guard (c ((error? c) #t)) (pypi->guix-package "foo" #:version "42")))) (x (pk 'fail x #f)))))) (test-assert "pypi->guix-package, no wheel, no requires.txt, but pyproject.toml" (let ((tarball (pypi-tarball "foo-1.0.0" `(("pyproject.toml" ,test-pyproject.toml)))) (twice (lambda (lst) (append lst lst)))) (with-pypi (twice `(("/foo-1.0.0.tar.gz" 200 ,(file-dump tarball)) ("/foo-1.0.0-py2.py3-none-any.whl" 404 "") ("/foo/json" 200 ,(lambda (port) (display (foo-json) port))))) ;; Not clearing the memoization cache here would mean returning the value ;; computed in the previous test. (invalidate-memoization! pypi->guix-package) (match (pypi->guix-package "foo") (`(package (name "python-foo") (version "1.0.0") (source (origin (method url-fetch) (uri (pypi-uri "foo" version)) (sha256 (base32 ,(? string? hash))))) (build-system pyproject-build-system) (propagated-inputs (list python-dummy-dep-a python-dummy-dep-b)) (native-inputs (list python-dummy-build-dep-a python-dummy-build-dep-b python-dummy-test-dep-a python-dummy-test-dep-b)) (home-page "http://example.com") (synopsis "summary") (description "summary.") (license license:lgpl2.0)) (and (string=? default-sha256/base32 hash) (equal? (pypi->guix-package "foo" #:version "1.0.0") (pypi->guix-package "foo")) (guard (c ((error? c) #t)) (pypi->guix-package "foo" #:version "42")))) (x (pk 'fail x #f)))))) (test-assert "pypi->guix-package, no wheel, but requires.txt and pyproject.toml" (let ((tarball (pypi-tarball "foo-1.0.0" `(("foo-1.0.0/pyproject.toml" ,test-pyproject.toml) ("foo-1.0.0/bizarre.egg-info/requires.txt" ,test-requires.txt)))) (twice (lambda (lst) (append lst lst)))) (with-pypi (twice `(("/foo-1.0.0.tar.gz" 200 ,(file-dump tarball)) ("/foo-1.0.0-py2.py3-none-any.whl" 404 "") ("/foo/json" 200 ,(lambda (port) (display (foo-json) port))))) ;; Not clearing the memoization cache here would mean returning the value ;; computed in the previous test. (invalidate-memoization! pypi->guix-package) (match (pypi->guix-package "foo") (`(package (name "python-foo") (version "1.0.0") (source (origin (method url-fetch) (uri (pypi-uri "foo" version)) (sha256 (base32 ,(? string? hash))))) (build-system pyproject-build-system) ;; Information from requires.txt and pyproject.toml is combined. (propagated-inputs (list python-bar python-dummy-dep-a python-dummy-dep-b python-foo)) (native-inputs (list python-dummy-build-dep-a python-dummy-build-dep-b python-dummy-test-dep-a python-dummy-test-dep-b python-pytest)) (home-page "http://example.com") (synopsis "summary") (description "summary.") (license license:lgpl2.0)) (and (string=? default-sha256/base32 hash) (equal? (pypi->guix-package "foo" #:version "1.0.0") (pypi->guix-package "foo")) (guard (c ((error? c) #t)) (pypi->guix-package "foo" #:version "42")))) (x (pk 'fail x #f)))))) (test-skip (if (which "zip") 0 1)) (test-assert "pypi->guix-package, no requires.txt, but wheel." (let ((tarball (pypi-tarball "foo-1.0.0" '(("foo-1.0.0/foo.egg-info/.empty" "")))) (wheel (wheel-file "foo-1.0.0" `(("METADATA" ,test-metadata))))) (with-pypi `(("/foo-1.0.0.tar.gz" 200 ,(file-dump tarball)) ("/foo-1.0.0-py2.py3-none-any.whl" 200 ,(file-dump wheel)) ("/foo/json" 200 ,(lambda (port) (display (foo-json) port)))) ;; Not clearing the memoization cache here would mean returning the value ;; computed in the previous test. (invalidate-memoization! pypi->guix-package) (match (pypi->guix-package "foo") (`(package (name "python-foo") (version "1.0.0") (source (origin (method url-fetch) (uri (pypi-uri "foo" version)) (sha256 (base32 ,(? string? hash))))) (build-system pyproject-build-system) (propagated-inputs (list python-bar python-baz)) (native-inputs (list python-pytest)) (home-page "http://example.com") (synopsis "summary") (description "summary.") (license license:lgpl2.0)) (string=? default-sha256/base32 hash)) (x (pk 'fail x #f)))))) (test-assert "pypi->guix-package, no usable requirement file, no wheel." (let ((tarball (pypi-tarball "foo-1.0.0" '(("foo.egg-info/.empty" ""))))) (with-pypi `(("/foo-1.0.0.tar.gz" 200 ,(file-dump tarball)) ("/foo-1.0.0-py2.py3-none-any.whl" 404 "") ("/foo/json" 200 ,(lambda (port) (display (foo-json) port)))) ;; Not clearing the memoization cache here would mean returning the ;; value computed in the previous test. (invalidate-memoization! pypi->guix-package) (match (pypi->guix-package "foo") (`(package (name "python-foo") (version "1.0.0") (source (origin (method url-fetch) (uri (pypi-uri "foo" version)) (sha256 (base32 ,(? string? hash))))) (build-system pyproject-build-system) (home-page "http://example.com") (synopsis "summary") (description "summary.") (license license:lgpl2.0)) (string=? default-sha256/base32 hash)) (x (pk 'fail x #f)))))) (test-assert "pypi->guix-package, package name contains \"-\" followed by digits" (let ((tarball (pypi-tarball "foo-99-1.0.0" `(("src/bizarre.egg-info/requires.txt" ,test-requires.txt))))) (with-pypi `(("/foo-99-1.0.0.tar.gz" 200 ,(file-dump tarball)) ("/foo-99-1.0.0-py2.py3-none-any.whl" 404 "") ("/foo-99/json" 200 ,(lambda (port) (display (foo-json #:name "foo-99") port)))) (match (pypi->guix-package "foo-99") (`(package (name "python-foo-99") (version "1.0.0") (source (origin (method url-fetch) (uri (pypi-uri "foo-99" version)) (sha256 (base32 ,(? string? hash))))) (properties (quote (("upstream-name" . "foo-99")))) (build-system pyproject-build-system) (propagated-inputs (list python-bar python-foo)) (native-inputs (list python-pytest)) (home-page "http://example.com") (synopsis "summary") (description "summary.") (license license:lgpl2.0)) (string=? default-sha256/base32 hash)) (x (pk 'fail x #f)))))) (test-equal "package-latest-release" (list '("foo-1.0.0.tar.gz") '("foo-1.0.0.tar.gz.asc") (list (upstream-input (name "bar") (downstream-name "python-bar") (type 'propagated)) (upstream-input (name "foo") (downstream-name "python-foo") (type 'propagated)) (upstream-input (name "pytest") (downstream-name "python-pytest") (type 'native)))) (let ((tarball (pypi-tarball "foo-1.0.0" `(("src/bizarre.egg-info/requires.txt" ,test-requires.txt))))) (with-pypi `(("/foo-1.0.0.tar.gz" 200 ,(file-dump tarball)) ("/foo-1.0.0-py2.py3-none-any.whl" 404 "") ("/foo/json" 200 ,(lambda (port) (display (foo-json) port)))) (define source (package-latest-release (dummy-package "python-foo" (version "0.1.2") (source (dummy-origin (method url-fetch) (uri (pypi-uri "foo" version)))) (build-system python-build-system)) (list %pypi-updater))) (list (map basename (upstream-source-urls source)) (map basename (upstream-source-signature-urls source)) (upstream-source-inputs source))))) (test-end "pypi") (delete-file-recursively sample-directory) ;; Local Variables: ;; eval: (put 'with-pypi 'scheme-indent-function 1) ;; End: