summaryrefslogtreecommitdiff
path: root/gnu/packages/databases.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/databases.scm')
-rw-r--r--gnu/packages/databases.scm69
1 files changed, 49 insertions, 20 deletions
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 4a7aaf7519..a7c406dc25 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -923,7 +923,23 @@ organized in a hash table or B+ tree.")
version ".tar.gz"))
(sha256
(base32
- "0cdwa4094x3yx7vn98xykvnlp9rngvd58d19vs3vh5hrvggccg93"))))
+ "0cdwa4094x3yx7vn98xykvnlp9rngvd58d19vs3vh5hrvggccg93"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Adjust the bundled gnulib to work with glibc 2.28. See e.g.
+ ;; "m4-gnulib-libio.patch". This is a phase rather than patch
+ ;; or snippet to work around <https://bugs.gnu.org/32347>.
+ (substitute* (find-files "lib" "\\.c$")
+ (("#if defined _IO_ftrylockfile")
+ "#if defined _IO_EOF_SEEN"))
+ (substitute* "lib/stdio-impl.h"
+ (("^/\\* BSD stdio derived implementations")
+ (string-append "#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN\n"
+ "# define _IO_IN_BACKUP 0x100\n"
+ "#endif\n\n"
+ "/* BSD stdio derived implementations")))
+ #t))))
(build-system gnu-build-system)
;; Running tests in parallel leads to test failures and crashes in
@@ -1457,15 +1473,15 @@ columns, primary keys, unique constraints and relationships.")
(define-public perl-dbd-mysql
(package
(name "perl-dbd-mysql")
- (version "4.047")
+ (version "4.048")
(source
(origin
(method url-fetch)
- (uri (string-append "mirror://cpan/authors/id/C/CA/CAPTTOFU/"
+ (uri (string-append "mirror://cpan/authors/id/M/MI/MICHIELB/"
"DBD-mysql-" version ".tar.gz"))
(sha256
(base32
- "0idizgr0hr7sj92fbdlb3gv6cva15jkpaq28wrdw4j4p7awx2mls"))))
+ "1zqmch6c9gq06z90mkmk1skajk2kaggriw19ym5w04l7wv5gydqp"))))
(build-system perl-build-system)
(arguments
`(#:phases
@@ -1767,19 +1783,32 @@ trees (LSM), for sustained throughput under random insert workloads.")
;; configure.ac: WiredTiger requires a 64-bit build.
(supported-systems '("x86_64-linux" "mips64el-linux" "aarch64-linux"))))
+(define-public wiredtiger-3
+ (package
+ (inherit wiredtiger)
+ (name "wiredtiger")
+ (version "3.1.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://source.wiredtiger.com/releases/wiredtiger-"
+ version ".tar.bz2"))
+ (sha256
+ (base32
+ "014awypv579ascg4jbx4pndj2wld337m79yyzrzyr7hxrff139jx"))))))
+
(define-public guile-wiredtiger
(package
(name "guile-wiredtiger")
- (version "0.6.3")
+ (version "0.7.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://framagit.org/a-guile-mind/guile-wiredtiger.git")
- (commit "070ed68139d99c279f058a6c293f00292d35dbd7")))
+ (commit "340ad4bc2ff4dcc6216a2f5c6f9172ca320ac66b")))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
- "14rna97wsylajzxfif95wnblq85csgcfc666gh5dl0ssgd7x8llh"))))
+ "15j36bvxxzil7qpwlmh1rffqpva3ynvrcpqhhqbj2c9208ayz595"))))
(build-system gnu-build-system)
(arguments
'(#:parallel-tests? #f ;; tests can't be run in parallel, yet.
@@ -1787,21 +1816,19 @@ trees (LSM), for sustained throughput under random insert workloads.")
(list (string-append "--with-libwiredtiger-prefix="
(assoc-ref %build-inputs "wiredtiger")))
#:make-flags '("GUILE_AUTO_COMPILE=0")))
- ;; TODO: Remove microkanren.scm when we have a separate package
- ;; for it.
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("pkg-config" ,pkg-config)))
(inputs
- `(("wiredtiger" ,wiredtiger)
+ `(("wiredtiger" ,wiredtiger-3)
("guile" ,guile-2.2)))
(propagated-inputs
- `(("guile-lib" ,guile-lib))) ;for (htmlprag)
+ `(("guile-bytestructures" ,guile-bytestructures)))
(synopsis "WiredTiger bindings for GNU Guile")
(description
"This package provides Guile bindings to the WiredTiger ``NoSQL''
-database. Various higher level database abstractions.")
+database.")
(home-page "https://framagit.org/a-guile-mind/guile-wiredtiger")
(license license:gpl3+)))
@@ -2416,13 +2443,13 @@ SQLAlchemy Database Toolkit for Python.")
(define-public python-pickleshare
(package
(name "python-pickleshare")
- (version "0.7.4")
+ (version "0.7.5")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pickleshare" version))
(sha256
- (base32 "0yvk14dzxk7g6qpr7iw23vzqbsr0dh4ij4xynkhnzpfz4xr2bac4"))))
+ (base32 "1jmghg3c53yp1i8cm6pcrm280ayi8621rwyav9fac7awjr3kss47"))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@@ -2669,12 +2696,14 @@ parsing code in hiredis. It primarily speeds up parsing of multi bulk replies."
`(#:tests? #f))
(home-page "https://github.com/jamesls/fakeredis")
(synopsis "Fake implementation of redis API for testing purposes")
- (description "Fakeredis is a pure python implementation of the redis-py
-python client that simulates talking to a redis server. This was created for a
-single purpose: to write unittests. Setting up redis is not hard, but many time
- you want to write unittests that do not talk to an external server (such as
-redis). This module now allows tests to simply use this module as a reasonable
-substitute for redis.")
+ (description
+ "Fakeredis is a pure-Python implementation of the redis-py Python client
+that simulates talking to a redis server. It was created for a single purpose:
+to write unit tests.
+
+Setting up redis is not hard, but one often wants to write unit tests that don't
+talk to an external server such as redis. This module can be used as a
+reasonable substitute.")
(license license:bsd-3)))
(define-public python2-fakeredis