X-Git-Url: https://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/3b458d5462e6bbd852c2dc5c6670d5655abf53f5..fd423e4df7580819fe7ca01c1ed4361e078bcec2:/gnu/packages/databases.scm diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index e77209d391..c3626187ce 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -32,6 +32,11 @@ ;;; Copyright © 2017 Kristofer Buffington ;;; Copyright © 2018 Amirouche Boubekki ;;; Copyright © 2018 Joshua Sierles, Nextjournal +;;; Copyright © 2018 Maxim Cournoyer +;;; Copyright © 2019 Jack Hill +;;; Copyright © 2019 Alex Griffin +;;; Copyright © 2019 Gábor Boskovits +;;; Copyright © 2019 Pierre Langlois ;;; ;;; This file is part of GNU Guix. ;;; @@ -66,6 +71,8 @@ #:use-module (gnu packages cyrus-sasl) #:use-module (gnu packages dbm) #:use-module (gnu packages emacs) + #:use-module (gnu packages flex) + #:use-module (gnu packages gcc) #:use-module (gnu packages gettext) #:use-module (gnu packages glib) #:use-module (gnu packages gnupg) @@ -78,6 +85,7 @@ #:use-module (gnu packages linux) #:use-module (gnu packages man) #:use-module (gnu packages ncurses) + #:use-module (gnu packages onc-rpc) #:use-module (gnu packages parallel) #:use-module (gnu packages pcre) #:use-module (gnu packages perl) @@ -87,11 +95,13 @@ #:use-module (gnu packages popt) #:use-module (gnu packages python) #:use-module (gnu packages python-crypto) + #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) #:use-module (gnu packages rdf) #:use-module (gnu packages readline) #:use-module (gnu packages ruby) #:use-module (gnu packages serialization) + #:use-module (gnu packages sphinx) #:use-module (gnu packages sqlite) #:use-module (gnu packages tcl) #:use-module (gnu packages terminals) @@ -103,7 +113,9 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix bzr-download) #:use-module (guix git-download) + #:use-module (guix build-system emacs) #:use-module (guix build-system gnu) #:use-module (guix build-system go) #:use-module (guix build-system perl) @@ -122,12 +134,13 @@ (name "4store") (version "1.1.6") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/4store/4store/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/4store/4store.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 "004fmcf1w75zhc1x3zc6kc97j4jqn2v5nhk6yb3z3cpfrhzi9j50")) + (base32 "1kzdfmwpzy64cgqlkcz5v4klwx99w0jk7afckyf7yqbqb4rydmpk")) (patches (search-patches "4store-unset-preprocessor-directive.patch" "4store-fix-buildsystem.patch")))) (build-system gnu-build-system) @@ -150,12 +163,6 @@ ("cyrus-sasl" ,cyrus-sasl) ("openssl" ,openssl) ("util-linux" ,util-linux))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'generate-configure - (lambda _ - (invoke "sh" "autogen.sh")))))) ;; http://www.4store.org has been down for a while now. (home-page "https://github.com/4store/4store") (synopsis "Clustered RDF storage and query engine") @@ -209,6 +216,68 @@ standard Go idioms.") (home-page "http://labix.org/mgo") (license license:bsd-2))) +(define-public ephemeralpg + (package + (name "ephemeralpg") + (version "2.8") + (source + (origin + (method url-fetch) + (uri (string-append + "http://eradman.com/ephemeralpg/code/ephemeralpg-" + version ".tar.gz")) + (sha256 + (base32 "1dpfxsd8a52psx3zlfbqkw53m35w28qwyb87a8anz143x6gnkkr4")))) + (build-system gnu-build-system) + (arguments + '(#:make-flags (list "CC=gcc" + (string-append "PREFIX=" %output)) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'check + (lambda* (#:key inputs #:allow-other-keys) + ;; The intention for one test is to test without PostgreSQL on + ;; the $PATH, so replace the test $PATH with just the util-linux + ;; bin, which contains getopt. It will hopefully be possible to + ;; remove this for releases after 2.8. + (substitute* "test.rb" + (("/bin:/usr/bin") + (string-append (assoc-ref inputs "util-linux") + "/bin"))) + ;; Set the LC_ALL=C as some tests use sort, and the locale + ;; affects the order. It will hopefully be possible to remove + ;; this for releases after 2.8. + (setenv "LC_ALL" "C") + (invoke "ruby" "test.rb") + #t)) + (add-after 'install 'wrap + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/pg_tmp") + `("PATH" ":" prefix + (,(string-append (assoc-ref inputs "util-linux") + "/bin") + ,(string-append (assoc-ref inputs "postgresql") + "/bin") + ;; For getsocket + ,(string-append out "/bin"))))) + #t))))) + (inputs + `(("postgresql" ,postgresql) + ("util-linux" ,util-linux))) + (native-inputs + `(("ruby" ,ruby))) + (home-page "http://eradman.com/ephemeralpg/") + (synopsis "Run temporary PostgreSQL databases") + (description + "@code{pg_tmp} creates temporary PostgreSQL databases, suitable for tasks +like running software test suites. Temporary databases created with +@code{pg_tmp} have a limited shared memory footprint and are automatically +garbage-collected after a configurable number of seconds (the default is +60).") + (license license:isc))) + (define-public es-dump-restore (package (name "es-dump-restore") @@ -240,7 +309,7 @@ ElasticSearch server") (define-public leveldb (package (name "leveldb") - (version "1.21") + (version "1.22") (source (origin (method git-fetch) (uri (git-reference @@ -249,13 +318,13 @@ ElasticSearch server") (file-name (git-file-name name version)) (sha256 (base32 - "00v0w6883z7a6204894j59nd5v6dazn3c8hvh3sbczv4wiabppw2")))) + "0qrnhiyq7r4wa1a4wi82zgns35smj94mcjsc7kfs1k6ia9ys79z7")))) (build-system cmake-build-system) (arguments `(#:configure-flags '("-DBUILD_SHARED_LIBS=ON" "-DLEVELDB_BUILD_TESTS=ON"))) (inputs `(("snappy" ,snappy))) - (home-page "http://leveldb.org/") + (home-page "https://github.com/google/leveldb") (synopsis "Fast key-value storage library") (description "LevelDB is a fast key-value storage library that provides an ordered @@ -265,14 +334,14 @@ mapping from string keys to string values.") (define-public memcached (package (name "memcached") - (version "1.5.13") + (version "1.5.16") (source (origin (method url-fetch) (uri (string-append "https://memcached.org/files/memcached-" version ".tar.gz")) (sha256 - (base32 "0qsdkjrns4f02lmabq8c7mzl5n4382q2p6a0dvmsjdcpjisagqb1")))) + (base32 "0nnccb697jhdn5gqrh3phibzs6xr4nf4ryv7nmyv5vf11n4jr8j5")))) (build-system gnu-build-system) (inputs `(("libevent" ,libevent) @@ -284,6 +353,125 @@ and generic API, and was originally intended for use with dynamic web applications.") (license license:bsd-3))) +(define-public libmemcached + (package + (name "libmemcached") + (version "1.0.18") + ;; We build from the sources since we want to build the extra HTML + ;; documentation which is not included with the release. + (source (origin + (method bzr-fetch) + (uri (bzr-reference + (url "lp:libmemcached/1.0") + (revision (string-append "tag:" version)))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1842s4dxdh21gdr46q4dgxigidcs6dkqnbnqjwb9l8r0bqx5nb10")))) + (build-system gnu-build-system) + (native-inputs + `(("memcached" ,memcached) + ("libtool" ,libtool) + ("autoconf" ,autoconf) + ("automake" ,automake) + ("bison" ,bison) + ("flex" ,flex) + ("perl" ,perl) + ("python-sphinx" ,python-sphinx))) ;to build the HTML doc. + (inputs + `(("libevent" ,libevent) + ("cyrus-sasl" ,cyrus-sasl))) + (outputs '("out" "doc")) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-before 'bootstrap 'fix-configure.ac + ;; Move the AC_CONFIG_AUX_DIR macro use under AC_INIT, otherwise we + ;; get the error ``configure: error: cannot find install-sh, + ;; install.sh, or shtool in "." "./.." "./../.."`` (see: + ;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=19539 and + ;; https://bugs.launchpad.net/libmemcached/+bug/1803922). + (lambda _ + (delete-file "bootstrap.sh") ;not useful in the context of Guix + (substitute* "configure.ac" + (("^AC_CONFIG_AUX_DIR\\(\\[build-aux\\]\\).*") "") + (("(^AC_INIT.*)" anchor) + (string-append anchor "AC_CONFIG_AUX_DIR([build-aux])\n"))) + #t)) + (add-before 'bootstrap 'disable-failing-tests + ;; See: https://bugs.launchpad.net/libmemcached/+bug/1803926 + (lambda _ + ;; Mark some heavily failing test suites as expected to fail. + (substitute* "Makefile.am" + (("(XFAIL_TESTS =[^\n]*)" xfail_tests) + (string-append xfail_tests " tests/testudp" + " tests/libmemcached-1.0/testapp" + " tests/libmemcached-1.0/testsocket"))) + ;; Disable two tests of the unittest test suite. + (substitute* "libtest/unittest.cc" + ((".*echo_fubar_BINARY \\},.*") "") + ((".*application_doesnotexist_BINARY \\},.*") "")) + #t)) + (add-after 'disable-dns-tests 'build-and-install-html-doc + (lambda* (#:key outputs #:allow-other-keys) + (let ((html (string-append (assoc-ref outputs "doc") + "/share/doc/libmemcached/html/"))) + (invoke "make" "install-html") + ;; Cleanup useless files. + (for-each delete-file-recursively + (map (lambda (x) (string-append html x)) + '("_sources" ".doctrees" ".buildinfo")))) + #t))))) + (home-page "https://libmemcached.org/") + (synopsis "C++ library for memcached") + (description "libMemcached is a library to use memcached in C/C++ +applications. It comes with a complete reference guide and documentation of +the API, and provides features such as: +@itemize +@item Asynchronous and synchronous transport support +@item Consistent hashing and distribution +@item Tunable hashing algorithm to match keys +@item Access to large object support +@item Local replication +@end itemize") + (license license:bsd-3))) + +(define-public python-pylibmc + (package + (name "python-pylibmc") + (version "1.6.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pylibmc" version)) + (sha256 + (base32 "1sg7d9j0v6g3xg3finf4l1hb72c13vcyyi6rqrc9shbx903d93ca")))) + (build-system python-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-before 'check 'start-memcached-daemon + ;; The test suite requires a memcached server. + (lambda _ + (invoke "memcached" "-d")))))) + (native-inputs + `(("memcached" ,memcached) + ("python-nose" ,python-nose))) + (inputs + `(("libmemcached" ,libmemcached) + ("zlib" ,zlib) + ("cyrus-sasl" ,cyrus-sasl))) + (home-page "http://sendapatch.se/projects/pylibmc/") + (synopsis "Python client for memcached") + (description + "@code{pylibmc} is a client in Python for memcached. It is a wrapper +around TangentOrg’s libmemcached library, and can be used as a drop-in +replacement for the code@{python-memcached} library.") + (license license:bsd-3))) + +(define-public python2-pylibmc + (package-with-python2 python-pylibmc)) + (define-public mongodb (package (name "mongodb") @@ -310,7 +498,7 @@ applications.") (search-patch "mongodb-support-unknown-linux-distributions.patch"))))) (build-system scons-build-system) (inputs - `(("openssl" ,openssl) + `(("openssl" ,openssl-1.0) ("pcre" ,pcre) ,@(match (%current-system) ((or "x86_64-linux" "aarch64-linux" "mips64el-linux") @@ -350,6 +538,15 @@ applications.") ,(format #f "--jobs=~a" (parallel-job-count)) "--ssl"))) (modify-phases %standard-phases + (add-after 'unpack 'patch + (lambda _ + ;; Remove use of GNU extensions in parse_number_test.cpp, to + ;; allow compiling with GCC 7 or later + ;; https://jira.mongodb.org/browse/SERVER-28063 + (substitute* "src/mongo/base/parse_number_test.cpp" + (("0xabcab\\.defdefP-10") + "687.16784283419838")) + #t)) (add-after 'unpack 'scons-propagate-environment (lambda _ ;; Modify the SConstruct file to arrange for @@ -417,7 +614,7 @@ RDBMS systems (which are deep in functionality).") (define-public mysql (package (name "mysql") - (version "5.7.23") + (version "5.7.27") (source (origin (method url-fetch) (uri (list (string-append @@ -429,7 +626,7 @@ RDBMS systems (which are deep in functionality).") name "-" version ".tar.gz"))) (sha256 (base32 - "0rbc3xsc11lq2dm0ip6gxa16c06hi74scb97x5cw7yhbabaz4c07")))) + "1fhv16zr46pxm1j8vb8x8mh3nwzglg01arz8gnazbmjqldr5idpq")))) (build-system cmake-build-system) (arguments `(#:configure-flags @@ -466,12 +663,15 @@ RDBMS systems (which are deep in functionality).") #t)))))) (native-inputs `(("bison" ,bison) - ("perl" ,perl))) + ("perl" ,perl) + ("pkg-config" ,pkg-config))) (inputs `(("boost" ,boost-for-mysql) ("libaio" ,libaio) + ("libtirpc" ,libtirpc) ("ncurses" ,ncurses) ("openssl" ,openssl) + ("rpcsvc-proto" ,rpcsvc-proto) ; rpcgen ("zlib" ,zlib))) (home-page "https://www.mysql.com/") (synopsis "Fast, easy to use, and popular database") @@ -484,15 +684,15 @@ Language.") (define-public mariadb (package (name "mariadb") - (version "10.1.38") + (version "10.1.41") (source (origin (method url-fetch) - (uri (string-append "https://downloads.mariadb.org/f/" - name "-" version "/source/" - name "-" version ".tar.gz")) + (uri (string-append "https://downloads.mariadb.com/MariaDB" + "/mariadb-" version "/source/mariadb-" + version ".tar.gz")) (sha256 (base32 - "0zq77w3ff9q781fn8cv46vy1v4ggb8vjarjvk51k653x4gyg9wfa")) + "1wh0073lqw3d9xs150bf2q3qvjwa6886mfi9khmsn7p8vapw6irb")) (patches (search-patches "mariadb-client-test-32bit.patch")) (modules '((guix build utils))) (snippet @@ -527,6 +727,10 @@ Language.") ;; For now, disable the features that that use libarchive (xtrabackup). "-DWITH_LIBARCHIVE=OFF" + ;; Disable the TokuDB engine, because its test suite frequently fails, + ;; and loading it crashes the server: . + "-DTOKUDB_OK=OFF" + ;; Ensure the system libraries are used. "-DWITH_JEMALLOC=yes" "-DWITH_PCRE=system" @@ -574,9 +778,6 @@ Language.") ;; 2030-12-31. See for details. "main.mysqldump" - ;; XXX: Fails sporadically. - "innodb_fts.crash_recovery" - ;; FIXME: This test fails on i686: ;; -myisampack: Can't create/write to file (Errcode: 17 "File exists") ;; +myisampack: Can't create/write to file (Errcode: 17 "File exists) @@ -647,6 +848,10 @@ Language.") #t)))))) (native-inputs `(("bison" ,bison) + ;; XXX: On armhf, use GCC 5 to work around . + ,@(if (string-prefix? "armhf" (%current-system)) + `(("gcc", gcc-5)) + '()) ("perl" ,perl))) (inputs `(("jemalloc" ,jemalloc) @@ -654,7 +859,6 @@ Language.") ("libxml2" ,libxml2) ("ncurses" ,ncurses) ("pcre" ,pcre) - ("snappy" ,snappy) ("xz" ,xz) ("zlib" ,zlib))) (propagated-inputs @@ -674,14 +878,14 @@ as a drop-in replacement of MySQL.") (define-public postgresql (package (name "postgresql") - (version "10.7") + (version "10.10") (source (origin (method url-fetch) (uri (string-append "https://ftp.postgresql.org/pub/source/v" version "/postgresql-" version ".tar.bz2")) (sha256 (base32 - "1piyfcrcqscjhnnwn91kdvr764s7d0qz4lgygf9bl6qc71ji1vdz")) + "0lzj46dwd9cw94gnqm36bxd7jlhfdyqjrfzr3c4xd3prfn2rnkxd")) (patches (search-patches "postgresql-disable-resolve_symlinks.patch")))) (build-system gnu-build-system) (arguments @@ -717,18 +921,31 @@ TIMESTAMP. It also supports storage of binary large objects, including pictures, sounds, or video.") (license (license:x11-style "file://COPYRIGHT")))) +(define-public postgresql-11 + (package + (inherit postgresql) + (name "postgresql") + (version "11.5") + (source (origin + (method url-fetch) + (uri (string-append "https://ftp.postgresql.org/pub/source/v" + version "/postgresql-" version ".tar.bz2")) + (sha256 + (base32 + "106ikalvrilihlvhq7xj7snq98hgbgq6qsgjrd252wgw1c327pvz")))))) + (define-public postgresql-9.6 (package (inherit postgresql) (name "postgresql") - (version "9.6.12") + (version "9.6.15") (source (origin (method url-fetch) (uri (string-append "https://ftp.postgresql.org/pub/source/v" version "/postgresql-" version ".tar.bz2")) (sha256 (base32 - "114xay230xia2fagisxahs5fc2mza8hmmkr6ibd7nxllp938931f")))))) + "02hp69h2p02asfblkaahblzdz2zmawd2r11h6237y5j7yadgxn9w")))))) (define-public python-pymysql (package @@ -802,8 +1019,7 @@ organized in a hash table or B+ tree.") (assoc-ref %build-inputs "bash:include") "/include/bash")))) - (native-inputs `(("emacs" ,emacs-minimal) - ("bc" ,bc) + (native-inputs `(("bc" ,bc) ("bash:include" ,bash "include") ("check" ,check) ("libuuid" ,util-linux) @@ -822,6 +1038,26 @@ types are supported, as is encryption.") (license license:gpl3+) (home-page "https://www.gnu.org/software/recutils/"))) +(define-public emacs-recutils + (package + (inherit recutils) + (name "emacs-recutils") + (build-system emacs-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'change-directory + (lambda _ + (chdir "etc") + #t))))) + (native-inputs '()) + (inputs '()) + (synopsis "Emacs mode for working with recutils database files") + (description "This package provides an Emacs major mode @code{rec-mode} +for working with GNU Recutils text-based, human-editable databases. It +supports editing, navigation, and querying of recutils database files +including field and record folding."))) + (define-public rocksdb (package (name "rocksdb") @@ -988,17 +1224,15 @@ for example from a shell script.") (define-public sqitch (package (name "sqitch") - (version "0.9999") + (version "1.0.0") (source (origin (method url-fetch) (uri (string-append - "mirror://cpan/authors/id/D/DW/DWHEELER/App-Sqitch-" - version - ".tar.gz")) + "mirror://cpan/authors/id/D/DW/DWHEELER/App-Sqitch-v" + version ".tar.gz")) (sha256 - (base32 - "1cvj8grs3bzc4g7dw1zc26g4biv1frav18sq0fkvi2kk0q1aigzm")))) + (base32 "0p4wraqiscvwmmsvfqfy65blgsilwpvd9zj4d2zvm2xdx70ncr7l")))) (build-system perl-build-system) (arguments '(#:phases @@ -1042,7 +1276,6 @@ for example from a shell script.") ("perl-dbi" ,perl-dbi) ("perl-devel-stacktrace" ,perl-devel-stacktrace) ("perl-encode-locale" ,perl-encode-locale) - ("perl-file-homedir" ,perl-file-homedir) ("perl-hash-merge" ,perl-hash-merge) ("perl-ipc-run3" ,perl-ipc-run3) ("perl-ipc-system-simple" ,perl-ipc-system-simple) @@ -1105,14 +1338,14 @@ changes.") (define-public tdb (package (name "tdb") - (version "1.4.0") + (version "1.4.2") (source (origin (method url-fetch) (uri (string-append "https://www.samba.org/ftp/tdb/tdb-" version ".tar.gz")) (sha256 (base32 - "0d9d2f1c83gmmq30bkfs50yb8399mr9xjjzscma4kyq0ajf75861")))) + "0jh0iqbb6pkvqrqn033w5g6gwa4bdgkvp49z0qpkk3h2wk6b4h4h")))) (build-system gnu-build-system) (arguments '(#:phases @@ -1376,7 +1609,7 @@ columns, primary keys, unique constraints and relationships.") #:tests? #f)) (propagated-inputs `(("perl-dbi" ,perl-dbi) - ("mysql" ,mysql))) + ("mysql" ,mariadb))) (home-page "https://metacpan.org/release/DBD-mysql") (synopsis "DBI MySQL interface") (description "This package provides a MySQL driver for the Perl5 @@ -1732,7 +1965,7 @@ database.") (define-public perl-db-file (package (name "perl-db-file") - (version "1.843") + (version "1.852") (source (origin (method url-fetch) @@ -1742,7 +1975,7 @@ database.") ".tar.gz")) (sha256 (base32 - "0sildz1i3fmh949w1scpjsyjx0cbmfw0yna3y70mc6vbwp8y696y")))) + "14c30xyqx9c1hxw40bqbzls41al8gmklxv5jbk2kknmn4dsrbdrs")))) (build-system perl-build-system) (inputs `(("bdb" ,bdb))) (native-inputs `(("perl-test-pod" ,perl-test-pod))) @@ -1942,20 +2175,19 @@ for ODBC.") (define-public python-pyodbc (package (name "python-pyodbc") - (version "4.0.26") + (version "4.0.27") (source (origin (method url-fetch) (uri (pypi-uri "pyodbc" version)) (sha256 - (base32 "1qrxnf7ji5hml7z4y669k4wmk3iz2pcsr05bnn1n912asash09z5")) + (base32 "1kd2i7hc1330cli72vawzby17c3039cqn1aba4i0zrjnpghjhmib")) (file-name (string-append name "-" version ".tar.gz")))) (build-system python-build-system) (inputs `(("unixodbc" ,unixodbc))) (arguments - `(;; No unit tests exist. - #:tests? #f)) + `(#:tests? #f)) ; no unit tests exist (home-page "https://github.com/mkleehammer/pyodbc") (synopsis "Python ODBC Library") (description "@code{python-pyodbc} provides a Python DB-API driver @@ -2002,13 +2234,13 @@ etc., and an SQL engine for performing simple SQL queries.") (define-public python-lmdb (package (name "python-lmdb") - (version "0.94") + (version "0.95") (source (origin (method url-fetch) (uri (pypi-uri "lmdb" version)) (sha256 (base32 - "1zh38gvkqw1jm5105if6rr7ccbgyxr7k2rm5ygb9ab3bq82pyaww")) + "0nx9f193gzl33r1lbqhb96h1igya7pz8wmahr8m9x5zgc05hal91")) (modules '((guix build utils))) (snippet ;; Delete bundled lmdb source files. @@ -2272,14 +2504,14 @@ You might also want to install the following optional dependencies: (define-public python-alembic (package (name "python-alembic") - (version "1.0.2") + (version "1.0.11") (source (origin (method url-fetch) (uri (pypi-uri "alembic" version)) (sha256 (base32 - "0asqz9mwc4w8bsar1icv3ik9jslxrj3gv3yxgmhc6nc6r9qbkg04")))) + "1k5hag0vahd5vrf9abx8fdj2whrwaw2iq2yp736mmxnbsn5xkdyd")))) (build-system python-build-system) (native-inputs `(("python-mock" ,python-mock) @@ -2290,8 +2522,7 @@ You might also want to install the following optional dependencies: ("python-mako" ,python-mako) ("python-editor" ,python-editor))) (home-page "https://bitbucket.org/zzzeek/alembic") - (synopsis - "Database migration tool for SQLAlchemy") + (synopsis "Database migration tool for SQLAlchemy") (description "Alembic is a lightweight database migration tool for usage with the SQLAlchemy Database Toolkit for Python.") @@ -2492,12 +2723,11 @@ database).") "0kv4a1icwdav8jpl7qvnr931lw5h3v22ids6lwq6qpi1hjzf33pz")))) (build-system python-build-system) (native-inputs - `(("mariadb" ,mariadb) - ("nose" ,python-nose) + `(("nose" ,python-nose) ("mock" ,python-mock) ("py.test" ,python-pytest))) (inputs - `(("mysql" ,mysql) + `(("mysql" ,mariadb) ("libz" ,zlib) ("openssl" ,openssl))) (home-page "https://github.com/PyMySQL/mysqlclient-python") @@ -2571,13 +2801,13 @@ reasonable substitute.") (define-public python-redis (package (name "python-redis") - (version "3.2.1") + (version "3.3.8") (source (origin (method url-fetch) (uri (pypi-uri "redis" version)) (sha256 - (base32 "0wwj8il4c3aff15xwwcjfci367zxsakq05ps1a2il6yavp91i94c")))) + (base32 "0fyxzqax7lcwzwhvnz0i0q6v62hxyv1mv52ywx3bpff9a2vjz8lq")))) (build-system python-build-system) ;; Tests require a running Redis server. (arguments '(#:tests? #f)) @@ -2635,7 +2865,7 @@ is designed to have a low barrier to entry.") (home-page "https://github.com/benjolitz/trollius-redis") (synopsis "Port of asyncio-redis to trollius") (description "@code{trollius-redis} is a Redis client for Python - trollius. It is an asynchronious IO (PEP 3156) implementation of the + trollius. It is an asynchronous IO (PEP 3156) implementation of the Redis protocol.") (license license:bsd-2))) @@ -2773,7 +3003,7 @@ transforms idiomatic python function calls to well-formed SQL queries.") (native-inputs `(("go-github.com-howeyc-gopass" ,go-github.com-howeyc-gopass) ("go-github.com-jessevdk-go-flags" ,go-github.com-jessevdk-go-flags) - ("go-golang.org-x-crypto-ssh-terminal" ,go-golang.org-x-crypto-ssh-terminal) + ("go-golang-org-x-crypto" ,go-golang-org-x-crypto) ("go-gopkg.in-mgo.v2" ,go-gopkg.in-mgo.v2) ("go-gopkg.in-tomb.v2" ,go-gopkg.in-tomb.v2) ("go-github.com-nsf-termbox-go" ,go-github.com-nsf-termbox-go) @@ -2905,7 +3135,7 @@ algorithm implementations.") ("python-pandas" ,python-pandas) ("python-six" ,python-six))) (native-inputs - `(("cmake" ,cmake) + `(("cmake" ,cmake-minimal) ("python-cython" ,python-cython) ("python-pytest" ,python-pytest) ("python-pytest-runner" ,python-pytest-runner) @@ -2919,3 +3149,24 @@ NumPy, and other traditional Python scientific computing packages.") (define-public python2-pyarrow (package-with-python2 python-pyarrow)) + +(define-public python-crate + (package + (name "python-crate") + (version "0.23.2") + (source (origin + (method url-fetch) + (uri (pypi-uri "crate" version)) + (sha256 + (base32 + "0ngmlvi320c5gsxab0s7qgq0ck4jdlcwvb6lbjhnfprafdp56vvx")))) + (build-system python-build-system) + (propagated-inputs + `(("python-urllib3" ,python-urllib3))) + (home-page "https://github.com/crate/crate-python") + (synopsis "CrateDB Python client") + (description + "This package provides a Python client library for CrateDB. +It implements the Python DB API 2.0 specification and includes support for +SQLAlchemy.") + (license license:asl2.0)))