;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2016 Andy Patterson <ajpatter@uwaterloo.ca>
;;; Copyright © 2016 Danny Milosavljevic <dannym+a@scratchpost.org>
-;;; Copyright © 2016, 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2016, 2017, 2018, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017, 2018 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2017, 2020 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017 Jelle Licht <jlicht@fsfe.org>
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
+;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
+;;; Copyright © 2020 Lars-Dominik Braun <ldb@leibniz-psychology.org>
;;;
;;; This file is part of GNU Guix.
;;;
"@code{mgo} (pronounced as mango) is a MongoDB driver for the Go language.
It implements a rich selection of features under a simple API following
standard Go idioms.")
- (home-page "http://labix.org/mgo")
+ (home-page "https://labix.org/mgo")
(license license:bsd-2)))
(define-public ephemeralpg
(package
(name "ephemeralpg")
- (version "2.8")
+ (version "3.0")
(source
(origin
(method url-fetch)
(uri (string-append
- "http://eradman.com/ephemeralpg/code/ephemeralpg-"
+ "https://eradman.com/ephemeralpg/code/ephemeralpg-"
version ".tar.gz"))
(sha256
- (base32 "1dpfxsd8a52psx3zlfbqkw53m35w28qwyb87a8anz143x6gnkkr4"))))
+ (base32 "1j0g7g114ma7y7sadbng5p1ss1zsm9zpicm77qspym6565733vvh"))))
(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))
+ (delete 'configure) ; no configure script
(add-after 'install 'wrap
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
"/bin")
,(string-append (assoc-ref inputs "postgresql")
"/bin")
- ;; For getsocket
+ ;; For getsocket.
,(string-append out "/bin")))))
- #t)))))
+ #t)))
+ #:test-target "test"))
(inputs
`(("postgresql" ,postgresql)
("util-linux" ,util-linux)))
(native-inputs
- `(("ruby" ,ruby)))
- (home-page "http://eradman.com/ephemeralpg/")
+ ;; For tests.
+ `(("ruby" ,ruby)
+ ("which" ,which)))
+ (home-page "https://eradman.com/ephemeralpg/")
(synopsis "Run temporary PostgreSQL databases")
(description
"@code{pg_tmp} creates temporary PostgreSQL databases, suitable for tasks
("python" ,python-2)
("python2-pymongo" ,python2-pymongo)
("python2-pyyaml" ,python2-pyyaml)
- ("tzdata" ,tzdata)))
+ ("tzdata" ,tzdata-for-tests)))
(arguments
`(#:scons ,scons-python2
#:phases
(assoc-ref %outputs "out")
"/lib"))
#:make-flags (list "CFLAGS=-fPIC")))
- (home-page "http://fallabs.com/qdbm")
+ (home-page "https://fallabs.com/qdbm/")
(synopsis "Key-value database")
(description "QDBM is a library of routines for managing a
database. The database is a simple data file containing key-value
(define-public rocksdb
(package
(name "rocksdb")
- (version "6.6.4")
+ (version "6.7.3")
(source (origin
(method git-fetch)
(uri (git-reference
(file-name (git-file-name name version))
(sha256
(base32
- "1h7y31b05w4vv4v509l368j9qlbv5assmdq9hp2788zipqbpywc0"))
+ "19nacd7fb98i97ir07jjsk3l1vf7zzq04c4nqywizq8wakcx99s9"))
(modules '((guix build utils)))
(snippet
'(begin
(name "sparql-query")
(version "1.1")
(source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/tialaramex/"
- name "/archive/" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/tialaramex/sparql-query")
+ (commit version)))
(sha256
- (base32 "0yq3k20472rv8npcc420q9ab6idy584g5y0q501d360k5q0ggr8w"))
- (file-name (string-append name "-" version ".tar.gz"))))
+ (base32 "0a84a89idpjhj9w2y3fmvzv7ldps1cva1kxvfmh897k02kaniwxk"))
+ (file-name (git-file-name name version))))
(build-system gnu-build-system)
(inputs
- `(("readline" ,readline)
- ("ncurses" ,ncurses)
+ `(("curl" ,curl)
("glib" ,glib)
("libxml2" ,libxml2)
- ("curl" ,curl)))
+ ("ncurses" ,ncurses)
+ ("readline" ,readline)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(arguments
(description "Redis is an advanced key-value cache and store. Redis
supports many data structures including strings, hashes, lists, sets, sorted
sets, bitmaps and hyperloglogs.")
- (home-page "http://redis.io/")
+ (home-page "https://redis.io/")
(license license:bsd-3)))
(define-public kyotocabinet
(define-public python2-peewee
(package-with-python2 python-peewee))
+(define-public python-tortoise-orm
+ (package
+ (name "python-tortoise-orm")
+ (version "0.16.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "tortoise-orm" version))
+ (sha256
+ (base32
+ "0wr7p4v0b16ypm9fcpwpl99kf491m6w3jkd13xcsgq13fy73fbqc"))))
+ (build-system python-build-system)
+ ;; Disable tests for now. They pull in a lot of dependencies.
+ (arguments `(#:tests? #f))
+ (native-inputs
+ `(("python-asynctest" ,python-asynctest)
+ ("python-nose2" ,python-nose2)))
+ (propagated-inputs
+ `(("python-aiosqlite" ,python-aiosqlite)
+ ("python-pypika" ,python-pypika)
+ ("python-ciso8601" ,python-ciso8601)
+ ("python-typing-extensions"
+ ,python-typing-extensions)))
+ (home-page
+ "https://github.com/tortoise/tortoise-orm")
+ (synopsis
+ "Easy async ORM for python, built with relations in mind")
+ (description
+ "Tortoise ORM is an easy-to-use asyncio ORM (Object Relational Mapper)
+inspired by Django. Tortoise ORM was build with relations in mind and
+admiration for the excellent and popular Django ORM. It’s engraved in its
+design that you are working not with just tables, you work with relational
+data.")
+ (license license:asl2.0)))
+
(define-public sqlcipher
(package
(name "sqlcipher")
(define-public python-orator
(package
(name "python-orator")
- (version "0.9.7")
+ (version "0.9.9")
(source (origin
(method url-fetch)
(uri (pypi-uri "orator" version))
(sha256
(base32
- "14r58z64fdp76ixnvmi4lni762b405ynmsx6chr1qihs3yl9zn6c"))))
+ "0mbgybz63ryhr9p1f4glnls5c57jp6il3dw0kf97f3pj80687rvg"))))
(build-system python-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'loosen-dependencies
- ;; Tests are not actually run since they are not included with the
- ;; distributed package, but dependencies are checked.
- (lambda _
- (substitute* "setup.py"
- ((",<.*'") "'")
- (("flexmock==0.9.7") "flexmock")
- ;; The pytest-mock package is out of date, so we remove minimum
- ;; version requirement.
- (("pytest-mock.*'") "pytest-mock'"))
- #t)))))
- (native-inputs
- `(("python-pytest-mock" ,python-pytest-mock)
- ("python-pytest" ,python-pytest)
- ("python-flexmock" ,python-flexmock)))
+ ;; FIXME: Tests are not distributed with PyPI, and the repository
+ ;; does not contain setup.py. How to test?
+ (arguments '(#:tests? #f))
(propagated-inputs
`(("python-backpack" ,python-backpack)
("python-blinker" ,python-blinker)
("python-pendulum" ,python-pendulum)
("python-pyaml" ,python-pyaml)
("python-pygments" ,python-pygments)
+ ("python-pyyaml" ,python-pyyaml)
("python-simplejson" ,python-simplejson)
("python-six" ,python-six)
("python-wrapt" ,python-wrapt)))
(define-public python-alembic
(package
(name "python-alembic")
- (version "1.0.11")
+ (version "1.4.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "alembic" version))
+ (patches (search-patches "python-alembic-exceptions-cause.patch"))
(sha256
(base32
- "1k5hag0vahd5vrf9abx8fdj2whrwaw2iq2yp736mmxnbsn5xkdyd"))))
+ "0a4hzn76csgbf1px4f5vfm256byvjrqkgi9869nkcjrwjn35c6kr"))))
(build-system python-build-system)
+ (arguments
+ '(#:phases (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (invoke "pytest" "-vv"))))))
(native-inputs
`(("python-mock" ,python-mock)
("python-pytest-cov" ,python-pytest-cov)))
(define-public python2-apsw
(package-with-python2 python-apsw))
+(define-public python-aiosqlite
+ (package
+ (name "python-aiosqlite")
+ (version "0.12.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "aiosqlite" version))
+ (sha256
+ (base32
+ "1w8248yz85xyzvvh4jaxnc59fqil45aka6h82kn1rcih4rjxbnn1"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-aiounittest" ,python-aiounittest)))
+ (home-page "https://github.com/jreese/aiosqlite")
+ (synopsis
+ "Asyncio bridge for sqlite3")
+ (description
+ "The package aiosqlite replicates the standard sqlite3 module, but with
+async versions of all the standard connection and cursor methods, and context
+managers for automatically closing connections.")
+ (license license:expat)))
+
(define-public python2-neo4j-driver
(package
(name "python2-neo4j-driver")
(define-public python-fakeredis
(package
(name "python-fakeredis")
- (version "0.8.2")
+ (version "1.2.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "fakeredis" version))
(sha256
(base32
- "0zncahj3byyasyfx9i7k991ph0n0lq8v3a21pqri5qxn9564bk9r"))))
+ "1s12mn4q4hz7402139khn9fx56kibj7nn0d6w81hn0zs07b90wpc"))))
(build-system python-build-system)
(arguments
;; no tests
`(#:tests? #f))
+ (propagated-inputs
+ `(("python-sortedcontainers" ,python-sortedcontainers)))
(home-page "https://github.com/jamesls/fakeredis")
(synopsis "Fake implementation of redis API for testing purposes")
(description
(define-public python2-sql
(package-with-python2 python-sql))
+(define-public python-pypika
+ (package
+ (name "python-pypika")
+ (version "0.37.2")
+ (source
+ (origin (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/kayak/pypika.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "089z1c778q1fwhzsc88ws8j5gm2hgxknibabn4wpax8rz2bfs3ck"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-parameterized" ,python-parameterized)))
+ (home-page "https://github.com/kayak/pypika")
+ (synopsis "SQL query builder API for Python")
+ (description
+ "PyPika is a python SQL query builder that exposes the full richness of
+the SQL language using a syntax that reflects the resulting query.")
+ (license license:asl2.0)))
+
(define-public mongo-tools
(package
(name "mongo-tools")
("sqlite" ,sqlite)
("odbc" ,unixodbc)
("boost" ,boost)
- ("mysql" ,mysql)))
+ ("mariadb:dev" ,mariadb "dev")
+ ("mariadb:lib" ,mariadb "lib")))
(arguments
`(#:tests? #f ; Tests may require running database management systems.
#:phases
(add-after 'unpack 'fix-lib-path
(lambda _
(substitute* "CMakeLists.txt"
- (("set\\(SOCI_LIBDIR \"lib64\"\\)") "")))))))
+ (("set\\(SOCI_LIBDIR \"lib64\"\\)") ""))
+ #t)))))
(synopsis "C++ Database Access Library")
(description
"SOCI is an abstraction layer for several database backends, including