summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHartmut Goebel <h.goebel@crazy-compilers.com>2021-08-25 23:52:51 +0200
committerHartmut Goebel <h.goebel@crazy-compilers.com>2021-09-21 21:00:24 +0200
commit505057f223c8f3d19b886e2cd5aff457845ec52c (patch)
tree65cdefc0291100dce002b2f7b90ddfce68692620
parent6486a66cceabf2c25f1bcfe17ff748dac59ea58c (diff)
gnu: Add python-tablib.
* gnu/packages/python-xyz.scm (python-tablib): New variable.
-rw-r--r--gnu/packages/python-xyz.scm46
1 files changed, 46 insertions, 0 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 6444326efb..a9e17ad444 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -26630,3 +26630,49 @@ Braintree Gateway. Braintree is a US-based payments service provider.")
HTML/XML from a Python program in an intuitive, lightweight, customizable and
pythonic way.")
(license license:expat)))
+
+(define-public python-tablib
+ (package
+ (name "python-tablib")
+ (version "3.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "tablib" version))
+ (sha256
+ (base32 "03f1z6jq6rf67gwhbm9ma4rydm8h447a5nh5lcs5l8jg8l4aqg7q"))))
+ (build-system python-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (setenv "PYTHONPATH"
+ (string-append (getcwd) "/build/lib:"
+ (getenv "PYTHONPATH")))
+ (invoke "pytest")))))))
+ (native-inputs
+ `(("python-pandas" ,python-pandas) ;; required for test-suite
+ ("python-pytest" ,python-pytest)
+ ("python-pytest-cov" ,python-pytest-cov)
+ ("python-setuptools-scm" ,python-setuptools-scm)))
+ (propagated-inputs
+ `(("python-markuppy" ,python-markuppy)
+ ("python-odfpy" ,python-odfpy)
+ ("python-openpyxl" ,python-openpyxl)
+ ("python-pyyaml" ,python-pyyaml)
+ ("python-tabulate" ,python-tabulate)
+ ("python-xlrd" ,python-xlrd)
+ ("python-xlwt" ,python-xlwt)))
+ (home-page "https://tablib.readthedocs.io")
+ (synopsis "Format agnostic tabular data library")
+ (description "@code{tablib} is a format-agnostic tabular dataset library,
+written in Python. Supported output formats are Excel (Sets + Books),
+JSON (Sets + Books), YAML (Sets + Books), HTML (Sets), Jira (Sets),
+TSV (Sets), ODS (Sets), CSV (Sets), and DBF (Sets).
+
+@code{tablib} also supports Pandas DataFrames (Sets). Anyhow, since pandas is
+quite huge, this Guix package doesn't depend on pandas. In case, just also
+install @code{python-pandas}.")
+ (license license:expat)))