--- Begin Message ---
Subject: |
[PATCH 00/10] Add csvkit. |
Date: |
Thu, 13 Jun 2019 16:01:26 +0100 |
Hello Guix!
Here are patches to add csvkit [0] and its dependencies to guix. It provides
various useful commands to deal with CSV data.
A lot of the packages come from the same https://github.com/wireservice
account and their documentation is built the same way so I've added them in a
new 'wireservice.scm' file, so they could inherit from the same package
definition.
What do you think?
Thanks,
Pierre
[0]: https://csvkit.readthedocs.io/en/latest
Pierre Langlois (10):
gnu: Add python-slugify.
gnu: Add python-pytimeparse.
gnu: Add python-crate.
gnu: Add python-dbfread.
gnu: Add python-leather.
gnu: Add python-agate.
gnu: Add python-agate-sql.
gnu: Add python-agate-dbf.
gnu: Add python-agate-excel.
gnu: Add csvkit.
gnu/local.mk | 3 +
gnu/packages/databases.scm | 25 ++
gnu/packages/patches/csvkit-fix-tests.patch | 45 +++
.../python-slugify-depend-on-unidecode.patch | 22 ++
gnu/packages/python-web.scm | 31 ++
gnu/packages/python-xyz.scm | 22 ++
gnu/packages/time.scm | 21 ++
gnu/packages/wireservice.scm | 266 ++++++++++++++++++
8 files changed, 435 insertions(+)
create mode 100644 gnu/packages/patches/csvkit-fix-tests.patch
create mode 100644
gnu/packages/patches/python-slugify-depend-on-unidecode.patch
create mode 100644 gnu/packages/wireservice.scm
--
2.22.0
--- End Message ---
--- Begin Message ---
Subject: |
Re: [bug#36194] [PATCH 05/10] gnu: Add python-leather. |
Date: |
Sun, 07 Jul 2019 15:47:11 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) |
Hi Pierre!
I applied the whole series after tweaking two descriptions.
Two minor comments:
Pierre Langlois <address@hidden> skribis:
> +;; Base package definition for packages from https://github.com/wireservice.
> +;; This is done so we can share how to run tests and build documentation.
> +(define base-package
> + (package
> + (name #f)
> + (version #f)
> + (source #f)
> + (home-page #f)
> + (synopsis #f)
> + (description #f)
> + (build-system python-build-system)
As a matter of style, I would prefer to never have fields with a value
of an invalid type, as is the case above; if one forgets to override
these fields, we end up with an incorrect package.
What about using ‘python-leather’ as the base package and defining a
macro like:
(define-syntax-rule (wireservice-package fields ...)
(package
(build-system python-build-system)
(arguments (package-arguments python-leather))
(native-inputs (package-native-inputs python-leather))
fields ...))
?
> diff --git a/gnu/packages/patches/csvkit-fix-tests.patch
> b/gnu/packages/patches/csvkit-fix-tests.patch
> new file mode 100644
> index 0000000000..e62b601fe4
> --- /dev/null
> +++ b/gnu/packages/patches/csvkit-fix-tests.patch
> @@ -0,0 +1,45 @@
> +diff --git a/tests/test_utilities/test_csvsql.py
> b/tests/test_utilities/test_csvsql.py
> +index e6ec4af..4f47980 100644
> +--- a/tests/test_utilities/test_csvsql.py
> ++++ b/tests/test_utilities/test_csvsql.py
> +@@ -197,7 +197,7 @@ class TestCSVSQL(CSVKitTestCase, EmptyFileTests):
> + utility.run()
For your future self and for your fellow hackers ;-), it’d be great if
you could add just a couple of lines at the top of each patch stating
(1) where they come from, and (2) what they do.
Thanks for the patch series, and apologies for the delay!
Ludo’.
--- End Message ---