Hello, Felix Gruber writes: > * gnu/packages/databases.scm (datasette): New variable. > --- > gnu/packages/databases.scm | 47 ++++++++++++++++++++++++++++++++++++++ > 1 file changed, 47 insertions(+) > > diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm > index d9ea2bba34..72960396fc 100644 > --- a/gnu/packages/databases.scm > +++ b/gnu/packages/databases.scm > @@ -59,6 +59,7 @@ > ;;; Copyright © 2022 muradm > ;;; Copyright © 2022 Thomas Albers Raviola > ;;; Copyright © 2021, 2022 jgart > +;;; Copyright © 2023 Felix Gruber > ;;; > ;;; This file is part of GNU Guix. > ;;; > @@ -5049,3 +5050,49 @@ (define-public python-dogpile.cache > provides API hooks which integrate these cache backends with the locking > mechanism of @code{dogpile}.") > (license license:expat))) > + > +(define-public datasette > + (package > + (name "datasette") > + (version "0.64.2") > + (source > + (origin > + (method url-fetch) > + (uri (pypi-uri "datasette" version)) > + (sha256 > + (base32 > + "1z2qwj7gmyph4dnbr44p332f9ydpv7c4z5jiyai12bmgsgdnxqg9")))) > + (build-system pyproject-build-system) > + (arguments > + (list > + #:tests? #f ; pypi package contains no tests That's a lame excuse for disabling the test suite, in my opinion (and I know it can be tempting to use it!) :-). Please fetch from git when there are no tests in the sdist releases (which is increasingly common, it seems). > + #:phases > + #~(modify-phases %standard-phases > + (add-after 'unpack 'loosen-requirements Nitpick: I call these phases 'relax-requirements. > + (lambda _ > + ;; The package needlessly specifies exact versions > + ;; of dependencies, when it works fine with others. > + (substitute* "setup.py" > + (("(black)==[0-9\\.]+" all package) > + package))))))) The above only affects the 'black' package, right? Since the 'all' binding is not used, it can be set to '_' instead. > + (propagated-inputs (list python-aiofiles > + python-asgi-csrf > + python-asgiref > + python-click-7 > + python-click-default-group-wheel > + python-httpx > + python-hupper > + python-itsdangerous > + python-janus > + python-jinja2 > + python-mergedeep > + python-pint > + python-pluggy-next > + python-pyyaml > + python-uvicorn)) > + (home-page "https://datasette.io/") > + (synopsis "Multi-tool for exploring and publishing data") > + (description "Datasette is a tool for exploring and publishing data. > +It helps people take data of any shape or size and publish that as an > +interactive, explorable website and accompanying API.") > + (license license:asl2.0))) It otherwise looks very good! Apart from enabling the tests suite where applicable, my comments are mostly cosmetic, so a v2 and we should be good! Thank you for the contribution! -- Maxim