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.scm128
1 files changed, 72 insertions, 56 deletions
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 5c0c7e232f..a7fc19f5c1 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -219,6 +219,7 @@
(base32 "1dg3g66az17z4snxxw7cslqdkrvbx2nnyry73yi77yp0vpri1lz8"))))
(arguments
(list
+ #:tests? #f
#:configure-flags
#~(list "-DBUILD_EXTENSIONS=autocomplete;icu;json;parquet;tpch;"
;; There is no git checkout from which to read the version tag.
@@ -1676,11 +1677,12 @@ pictures, sounds, or video.")
(list #:imported-modules `((guix build union)
,@%cmake-build-system-modules)
#:modules `(,@%cmake-build-system-modules
+ ((guix build gnu-build-system) #:prefix gnu:)
+ (guix build utils)
(guix build union)
(ice-9 match))
#:configure-flags #~(list "-DAPACHE_ONLY=ON"
"-DSEND_TELEMETRY_DEFAULT=OFF")
- #:test-target "regresschecklocal"
#:phases
#~(modify-phases (@ (guix build cmake-build-system) %standard-phases)
(add-after 'unpack 'patch-install-location
@@ -1749,7 +1751,9 @@ pictures, sounds, or video.")
(("histogram_test\\.sql\\.in")
"#histogram_test.sql.in")))))))
(add-after 'prepare-tests 'check
- (assoc-ref %standard-phases 'check)))))
+ (lambda* (#:rest args)
+ (apply (assoc-ref gnu:%standard-phases 'check)
+ #:test-target "regresschecklocal" args))))))
(inputs (list openssl postgresql))
(home-page "https://www.timescale.com/")
(synopsis "Time-series extension for PostgreSQL")
@@ -3734,16 +3738,19 @@ can autogenerate peewee models using @code{pwiz}, a model generator.")
(define-public python-pypika-tortoise
(package
(name "python-pypika-tortoise")
- (version "0.1.6")
+ (version "0.3.2")
(source
(origin
- (method url-fetch)
- (uri (pypi-uri "pypika-tortoise" version))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/tortoise/pypika-tortoise")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
- (base32 "0dmzpsnlqjjz0vm0r9xjk69xfsm235bpnk3jccr8ww4s8y7qc0nq"))))
+ (base32 "1pz7i9vgjwzzvacjjkvr5xbcmphn52xv993zbks602is844k0pp0"))))
(build-system pyproject-build-system)
(native-inputs
- (list poetry python-setuptools))
+ (list python-poetry-core python-pytest))
(home-page "https://github.com/tortoise/pypika-tortoise")
(synopsis "Pypika fork for tortoise-orm")
(description "Pypika-tortoise is a fork of pypika which has been
@@ -3818,6 +3825,34 @@ reuses most of @code{pymysql} and @code{aiomysql} but rewrites the core
protocol with Cython for performance.")
(license license:asl2.0)))
+(define-public python-asyncodbc
+ (package
+ (name "python-asyncodbc")
+ (version "0.1.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/tortoise/asyncodbc")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0fdcvx2r09vsxx3zw8zvj7ww6wyby8sk3r2a3174nfngiajbi6g1"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list #:tests? #f)) ;tests fail similarly to python-pyodbc
+ (native-inputs
+ (list python-poetry-core
+ unixodbc))
+ (propagated-inputs
+ (list python-pyodbc))
+ (home-page "https://github.com/tortoise/asyncodbc")
+ (synopsis "Access ODBC databases with asyncio")
+ (description "This package provides an improved fork of
+@code{python-aioodbc}, and makes it possible to Access ODBC databases with
+@code{python-asyncio}.")
+ (license license:asl2.0)))
+
(define-public python-aiomysql
(package
(name "python-aiomysql")
@@ -3843,7 +3878,7 @@ of PyMySQL. @code{aiomysql} tries to preserve the same API as the
(define-public python-tortoise-orm
(package
(name "python-tortoise-orm")
- (version "0.20.0")
+ (version "0.22.2")
(source
(origin
(method git-fetch)
@@ -3852,16 +3887,31 @@ of PyMySQL. @code{aiomysql} tries to preserve the same API as the
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "19rgyvs2y9gn27x71y7djdz6rb6bszgvprv55q1hr4266wy6g999"))))
+ (base32 "1xzwywvb3898hm41vwkzn785ziqprxh6lcf0lpmrgfcsc9qnnhzk"))))
(build-system pyproject-build-system)
- ;; The test suite relies on asynctest, which is abandoned and doesn't
- ;; support Python >= 3.8.
- (arguments '(#:tests? #f))
+ (arguments
+ (list
+ #:test-flags
+ #~(list "-k" (string-join
+ (list "not test_enum" ; Fixed in the next release.
+ ;; tortoise.exceptions.OperationalError
+ "test_delete"
+ "test_delete_limit"
+ "test_delete_limit_order_by"
+ "test_update_with_limit_ordering")
+ " and not "))))
(native-inputs
- (list poetry))
+ (list python-asyncodbc
+ python-fastapi
+ python-poetry-core
+ python-psycopg
+ python-psycopg-pool
+ python-pydantic-2
+ python-pyodbc
+ python-pytest))
(propagated-inputs
(list python-aiomysql
- python-aiosqlite-0.17
+ python-aiosqlite
python-asyncmy
python-asyncpg
python-ciso8601
@@ -3974,30 +4024,24 @@ development.")
(define-public python-pyodbc
(package
(name "python-pyodbc")
- (version "4.0.35")
+ (version "5.2.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pyodbc" version))
(sha256
- (base32 "1j7577acd2f16zifw49ajg0aw7vm0pdg6jxrr1dlaa5rx14azfcj"))
+ (base32 "1xd88k6rngm9n8z3klb0g94csa9m8sk7df544vpfxpf816cf72yy"))
(modules '((guix build utils)))
(snippet
;; Delete precompiled binaries. The corresponding source is included.
#~(for-each delete-file (find-files "." "\\.pyc$")))))
- (build-system python-build-system)
- (inputs
- (list unixodbc))
+ (build-system pyproject-build-system)
+ (inputs (list unixodbc))
+ (native-inputs (list python-pytest python-setuptools python-wheel))
(arguments
- ;; XXX Tests fail with ‘Can't open lib 'SQL Server Native Client 10.0' :
- ;; file not found (0) (SQLDriverConnect)")’.
- (list #:tests? #f
- #:phases
- #~(modify-phases %standard-phases
- (replace 'check
- (lambda* (#:key tests? #:allow-other-keys)
- (when tests?
- (invoke "python3" "tests3/test.py")))))))
+ ;; XXX Tests fail with [unixODBC][Driver Manager]Data source name not
+ ;; found and no default driver specified (0) (SQLDriverConnect)
+ (list #:tests? #f))
(home-page "https://github.com/mkleehammer/pyodbc")
(synopsis "Python ODBC Library")
(description "@code{python-pyodbc} provides a Python DB-API driver
@@ -4595,33 +4639,6 @@ async versions of all the standard connection and cursor methods, and context
managers for automatically closing connections.")
(license license:expat)))
-(define-public python-aiosqlite-0.17
- (package
- (inherit python-aiosqlite)
- (version "0.17.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/omnilib/aiosqlite")
- (commit (string-append "v" version))))
- (file-name (git-file-name (package-name python-aiosqlite)
- version))
- (sha256
- (base32
- "1agh7b9g7rgryvb8flph85i8m80ai1rinpljxzlsrs0s0y616qgg"))))
- (build-system pyproject-build-system)
- (arguments
- '(#:phases (modify-phases %standard-phases
- (replace 'check
- (lambda* (#:key tests? #:allow-other-keys)
- (if tests?
- (invoke "python" "-m" "unittest" "aiosqlite.tests")
- (format #t "test suite not run~%")))))))
- (propagated-inputs
- (list python-typing-extensions))
- (native-inputs
- (list python-flit-core python-aiounittest))))
-
(define-public python-databases
(package
(name "python-databases")
@@ -5276,7 +5293,6 @@ with integrated support for finding required rows quickly.")
(build-system cmake-build-system)
(arguments
(list
- #:cmake cmake ;needs 3.25+
#:tests? #f
#:phases
#~(modify-phases %standard-phases