summaryrefslogtreecommitdiff
path: root/guix/import/pypi.scm
AgeCommit message (Expand)Author
2016-07-26import: pypi: Correctly handle new-style URLs....Fixes <http://bugs.gnu.org/23997>. * guix/import/pypi.scm (guix-package->pypi-name): Rewrite using 'basename' and 'hyphen-package-name->name+version'. * tests/pypi.scm ("guix-package->pypi-name, old URL style") ("guix-package->pypi-name, new URL style"): New tests. Ludovic Courtès
2016-06-25import: pypi: do not fail when 'run_requires' is missing from the metadata....* guix/import/pypi.scm (read-wheel-metadata): do not crash when 'run_requires' is missing from the metadata. Cyril Roelandt
2016-06-14import: pypi: read requirements from wheels....* doc/guix.tex (Invoking guix import): Mention that the pypi importer works better with "unzip". * guix/import/pypi.scm (latest-wheel-release, wheel-url->extracted-directory): New procedures. * tests/pypi.scm (("pypi->guix-package, wheels"): New test. Cyril Roelandt
2016-04-15upstream: Pass a package object to updaters....* guix/upstream.scm (package-update-path): Pass PACKAGE to 'latest-release'. * guix/gnu-maintenance.scm (latest-release*) (latest-gnome-release, latest-xorg-release): Adjust accordingly. * guix/import/cran.scm (latest-cran-release): (latest-bioconductor-release): Likewise. * guix/import/elpa.scm (latest-release): Likewise. * guix/import/gem.scm (latest-release): Likewise. * guix/import/github.scm (latest-release): Likewise. * guix/import/hackage.scm (latest-release): Likewise. * guix/import/pypi.scm (latest-release): Likewise. Ludovic Courtès
2016-03-19import: pypi: Emit 'pypi-uri' only when it yields the right URL....Fixes <http://bugs.gnu.org/23062>. Reported by Danny Milosavljevic <dannym@scratchpost.org>. * guix/import/pypi.scm (make-pypi-sexp): Check whether 'pypi-uri' returns SOURCE-URL and fall back to the full URL otherwise. * tests/pypi.scm ("pypi->guix-package"): Adjust expected URI accordingly. Co-authored-by: Danny Milosavljevic <dannym@scratchpost.org> Ludovic Courtès
2015-12-01import: pypi: Updater silently ignores packages without source....Reported by Andreas Enge <andreas@enge.fr> at <https://lists.gnu.org/archive/html/guix-devel/2015-11/msg00764.html>. * guix/import/pypi.scm (&missing-source-error): New error type. (latest-source-release): Raise it instead of using 'error'. (pypi->guix-package): Guard against it and use 'leave' to report the error. (latest-release): Guard against it and return #f when caught. Ludovic Courtès
2015-11-04import: pypi: Make downloads silent....* guix/import/pypi.scm (pypi-fetch): Wrap body in 'call-with-output-file' and 'with-error-to-port'. Ludovic Courtès
2015-11-04import: pypi: Add missing copyright line....* guix/import/pypi.scm: Add missing copyright line for bab020d. Ludovic Courtès
2015-11-03import: pypi: add updater...* guix/import/pypi.scm (guix-package->pypi-name, latest-release): New procedures. (%pypi-updater): New variable. * guix/scripts/refresh.scm (%updaters): Add %PYPI-UPDATER. * doc/guix.texi (Invoking guix refresh): Mention PyPI Cyril Roelandt
2015-11-03import: pypi: Use "pypi-uri" instead of building the URL manually....* guix/import/pypi.scm (make-pypi-sexp): Use "pypi-uri". * tests/pypi.scm: Update the tests accordingly. Cyril Roelandt
2015-10-05import: pypi: Remove unused procedure....* guix/import/pypi.scm (join): Remove. Ludovic Courtès
2015-08-27import: pypi: Move generally useful procedures to utils module....* guix/import/pypi.scm (make-pypi-sexp): Factorize license to symbol conversion code. (string->license, snake-case, guix-hash-url): Move from here... * guix/import/utils.scm: ... to here. (license->symbol): New procedure. David Thompson
2015-07-21import: pypi: Improve warning message....* guix/import/pypi.scm (guess-requirements): Add missing newline and quotes in warning. Ludovic Courtès
2015-06-24import: pypi: Detect inputs....* guix/import/pypi.scm (python->package-name, maybe-inputs, compute-inputs, guess-requirements): New procedures. * guix/import/pypi.scm (guix-hash-url): Now takes a filename instead of an URL as input. * guix/import/pypi.scm (make-pypi-sexp): Now tries to generate the inputs automagically. * tests/pypi.scm: Update the test. Cyril Roelandt
2015-01-09import: Factorize utility functions....* guix/import/pypi.scm (hash-table->alist, flatten, assoc-ref*, url-fetch, json-fetch): Pull procedures from here into... * guix/import/utils.scm: Here and... * guix/import/json.scm: Here. New file. * Makefile.am (MODULE)[HAVE_GUILE_JSON]: Add it. * guix/import/gnu.scm (file-sha256): Move from here to... * guix/hash.scm: Here. * tests/pypi.scm (pypi->guix-package): Update mock module reference. Eric Bavier
2014-11-05import: pypi: Gracefully handle non-existent packages....Fixes <http://bugs.gnu.org/18831>. Reported by Ian Denhardt <ian@zenhack.net>. * guix/import/pypi.scm (url-fetch, json-fetch, pypi-fetch): Augment docstring to mention #f on failure. (pypi->guix-package): Likewise, and actually return #f on failure. * guix/scripts/import/pypi.scm (guix-import-pypi): Call 'leave' when 'pypi->guix-package' returns #f. Ludovic Courtès
2014-10-22guix import pypi: Fix a typo in a docstring....* guix/import/pypi.scm (snake-case): Fix documentation. Cyril Roelandt
2014-10-22guix import pypi: do not add "python-" to a package name if it's already there....* guix/import/pypi.scm (make-pypi-sexp): test whether the package name starts with "python-" before modifying it. Cyril Roelandt
2014-10-22guix import pypi: add the Apache License 2.0...* guix/import/pypi.scm (string->license): add ASL2.0. Cyril Roelandt
2014-09-29import: Add PyPI importer....* guix/snix.scm: Delete. * guix/import/snix.scm: New file. * guix/import/pypi.scm: New file. * guix/import/utils.scm: New file. * guix/scripts/import/nix.scm: New file. * guix/scripts/import/pypi.scm: New file. * tests/pypi.scm: New file. * tests/snix.scm: Import (guix import snix) module. * guix/scripts/import.scm (%default-options, %options): Delete. (%standard-import-options, importers): New variables. (show-help): List importers. (guix-import): Factor out Nix-specific logic. Delegate to correct importer based upon first argument. * configure.ac (HAVE_GUILE_JSON): New conditional. * Makefile.am (MODULES): Add new files and remove 'guix/snix.scm'. (SCM_TESTS): Add 'tests/pypi.scm' if guile-json is installed. David Thompson