Subject: [bug#54539] [PATCH v2 08/30] gnu: databases: Autoload unless used by Guix.

From: Maxime Devos <[email-masked]>
Date: Sat, 3 Sep 2022 18:43:10 +0200

See first commit in the series for the procedure.
---
 gnu/packages/databases.scm | 212 ++++++++++++++++++++++---------------
 1 file changed, 128 insertions(+), 84 deletions(-)

diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 209ad0f278..c41e9b9e52 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -76,90 +76,134 @@
 
 (define-module (gnu packages databases)
   #:use-module (gnu packages)
-  #:use-module (gnu packages admin)
-  #:use-module (gnu packages algebra)
-  #:use-module (gnu packages autotools)
-  #:use-module (gnu packages avahi)
-  #:use-module (gnu packages base)
-  #:use-module (gnu packages bash)
-  #:use-module (gnu packages bison)
-  #:use-module (gnu packages boost)
-  #:use-module (gnu packages check)
-  #:use-module (gnu packages cmake)
-  #:use-module (gnu packages compression)
-  #:use-module (gnu packages cpp)
-  #:use-module (gnu packages crypto)
-  #:use-module (gnu packages curl)
-  #:use-module (gnu packages cyrus-sasl)
-  #:use-module (gnu packages dbm)
-  #:use-module (gnu packages docbook)
-  #:use-module (gnu packages emacs)
-  #:use-module (gnu packages flex)
-  #:use-module (gnu packages freedesktop)
-  #:use-module (gnu packages gawk)
-  #:use-module (gnu packages gcc)
-  #:use-module (gnu packages gettext)
-  #:use-module (gnu packages glib)
-  #:use-module (gnu packages gnome)
-  #:use-module (gnu packages gnupg)
-  #:use-module (gnu packages golang)
-  #:use-module (gnu packages gperf)
-  #:use-module (gnu packages gtk)
-  #:use-module (gnu packages guile)
-  #:use-module (gnu packages icu4c)
-  #:use-module (gnu packages jemalloc)
-  #:use-module (gnu packages language)
-  #:use-module (gnu packages libedit)
-  #:use-module (gnu packages libevent)
-  #:use-module (gnu packages linux)
-  #:use-module (gnu packages lisp)
-  #:use-module (gnu packages lisp-xyz)
-  #:use-module (gnu packages llvm)
-  #:use-module (gnu packages logging)
-  #:use-module (gnu packages man)
-  #:use-module (gnu packages maths)
-  #:use-module (gnu packages multiprecision)
-  #:use-module (gnu packages ncurses)
-  #:use-module (gnu packages networking)
-  #:use-module (gnu packages onc-rpc)
-  #:use-module (gnu packages openstack)
-  #:use-module (gnu packages pantheon)
-  #:use-module (gnu packages parallel)
-  #:use-module (gnu packages pcre)
-  #:use-module (gnu packages perl)
-  #:use-module (gnu packages perl-check)
-  #:use-module (gnu packages perl-web)
-  #:use-module (gnu packages pkg-config)
-  #:use-module (gnu packages popt)
-  #:use-module (gnu packages protobuf)
-  #:use-module (gnu packages python)
-  #:use-module (gnu packages python-build)
-  #:use-module (gnu packages python-check)
-  #:use-module (gnu packages python-crypto)
-  #:use-module (gnu packages python-science)
-  #:use-module (gnu packages python-web)
-  #:use-module (gnu packages python-xyz)
-  #:use-module (gnu packages qt)
-  #:use-module (gnu packages rdf)
-  #:use-module (gnu packages readline)
-  #:use-module (gnu packages regex)
-  #:use-module (gnu packages rpc)
-  #:use-module (gnu packages ruby)
-  #:use-module (gnu packages serialization)
-  #:use-module (gnu packages sphinx)
-  #:use-module (gnu packages ssh)
-  #:use-module (gnu packages sqlite)
-  #:use-module (gnu packages syncthing)           ;for go-github-com-lib-pq
-  #:use-module (gnu packages tcl)
-  #:use-module (gnu packages terminals)
-  #:use-module (gnu packages texinfo)
-  #:use-module (gnu packages textutils)
-  #:use-module (gnu packages time)
-  #:use-module (gnu packages tls)
-  #:use-module (gnu packages valgrind)
-  #:use-module (gnu packages web)
-  #:use-module (gnu packages xdisorg)
-  #:use-module (gnu packages xml)
+  #:autoload (gnu packages admin) (inetutils)
+  #:autoload (gnu packages algebra) (bc)
+  #:autoload (gnu packages autotools) (autoconf automake libtool)
+  #:autoload (gnu packages base)
+  (coreutils glibc-locales grep patch sed tzdata-for-tests which)
+  #:autoload (gnu packages bash) (bash)
+  #:use-module (gnu packages bison) ; required for "guix build -d guix"
+  #:autoload (gnu packages boost) (boost boost-for-mysql)
+  #:autoload (gnu packages check)
+  (check googlebenchmark googletest
+         python-aiounittest
+         python-flexmock
+         python-mock python-nose
+         python-parameterized
+         python-pytest python-pytest-asyncio python-pytest-cov
+         python-pytest-runner python-pytest-xdist)
+  #:autoload (gnu packages cmake)
+  (cmake cmake-minimal)
+  #:use-module (gnu packages compression) ; required for "guix build guix"
+  #:autoload (gnu packages cpp) (xsimd)
+  #:autoload (gnu packages curl) (curl)
+  #:autoload (gnu packages cyrus-sasl) (cyrus-sasl)
+  #:autoload (gnu packages dbm) (bdb)
+  #:autoload (gnu packages docbook)
+  (docbook2x docbook-sgml-4.2 docbook-xml docbook-xml-4.2)
+  #:autoload (gnu packages flex) (flex)
+  #:autoload (gnu packages gawk) (gawk)
+  #:autoload (gnu packages gcc) (gcc-11)
+  #:autoload (gnu packages gettext) (gettext-minimal)
+  #:autoload (gnu packages glib) (glib)
+  #:autoload (gnu packages gnome)
+  (gsettings-desktop-schemas libgda libgee libsecret vala)
+  #:autoload (gnu packages gnupg) (libgcrypt)
+  #:autoload (gnu packages golang)
+  (go-gopkg-in-check-v1
+   go-gopkg-in-yaml-v2
+   go-github-com-go-sql-driver-mysql
+   go-github-com-mattn-go-sqlite3
+   go-github-com-olekukonko-tablewriter
+   go-github-com-pkg-errors
+   go-github-com-sourcegraph-jsonrpc2
+   go-github-com-stretchr-testify
+   go-golang-org-x-crypto
+   go-golang-org-x-sys
+   go-golang-org-x-xerrors)
+  #:autoload (gnu packages gperf) (gperf)
+  #:autoload (gnu packages gtk) (gtk+ gtksourceview-3)
+  #:autoload (gnu packages guile) (guile2.2-bytestructures guile-2.2)
+  #:autoload (gnu packages icu4c) (icu4c-67)
+  #:autoload (gnu packages jemalloc) (jemalloc)
+  #:autoload (gnu packages language)
+  (perl-lingua-en-inflect-number
+   perl-lingua-en-inflect-phrase
+   perl-lingua-en-tagger
+   perl-string-toidentifier-en)
+  #:autoload (gnu packages libedit) (editline)
+  #:autoload (gnu packages libevent) (libevent)
+  #:use-module (gnu packages linux) ; required by "guix build -d guix"
+  #:autoload (gnu packages lisp) (buildapp sbcl)
+  #:autoload (gnu packages lisp-xyz)
+  (sbcl-alexandria sbcl-cl-abnf sbcl-cl-base64 sbcl-cl-csv sbcl-cl-fad
+   sbcl-cl-log sbcl-cl-markdown sbcl-cl-mustache sbcl-cl-ppcre
+   sbcl-cl-sqlite sbcl-closer-mop sbcl-command-line-arguments
+   sbcl-db3 sbcl-drakma sbcl-esrap sbcl-flexi-streams sbcl-ixf
+   sbcl-local-time sbcl-lparallel sbcl-metabang-bind sbcl-mssql
+   sbcl-postmodern sbcl-py-configparser sbcl-qmynd sbcl-quri
+   sbcl-split-sequence sbcl-trivial-backtrace sbcl-usocket sbcl-uuid
+   sbcl-yason sbcl-zs3)
+  #:autoload (gnu packages llvm)
+  (libcxx+libcxxabi-6 libcxxabi-6 clang-6)
+  #:autoload (gnu packages logging) (glog)
+  #:autoload (gnu packages man) (txt2man)
+  #:autoload (gnu packages maths) (double-conversion)
+  #:autoload (gnu packages multiprecision) (libtommath)
+  #:use-module (gnu packages ncurses) ; required by "guix build -d guix"
+  #:autoload (gnu packages networking) (pproxy)
+  #:autoload (gnu packages onc-rpc) (libtirpc rpcsvc-proto)
+  #:autoload (gnu packages openstack) (python-stevedore)
+  #:autoload (gnu packages pantheon) (granite)
+  #:autoload (gnu packages parallel) (parallel)
+  #:autoload (gnu packages pcre) (pcre2)
+  #:use-module (gnu packages perl) ; required by "guix build -d guix"
+  #:autoload (gnu packages perl-check)
+  (perl-test-deep perl-test-differences perl-test-dir perl-test-exception
+                  perl-test-file perl-test-file-contents perl-test-mockmodule
+                  perl-test-mockobject perl-test-nowarnings perl-test-pod
+                  perl-test-script perl-test-warn)
+  #:autoload (gnu packages perl-web) (perl-uri-db)
+  #:autoload (gnu packages pkg-config) (pkg-config)
+  #:autoload (gnu packages popt) (gflags)
+  #:autoload (gnu packages protobuf) (protobuf)
+  #:autoload (gnu packages python) (python python-wrapper)
+  #:autoload (gnu packages python-build) (python-setuptools-scm)
+  #:autoload (gnu packages python-check) (python-mypy)
+  #:autoload (gnu packages python-crypto) (python-cryptography python-pyaes)
+  #:autoload (gnu packages python-science) (python-pandas)
+  #:autoload (gnu packages python-web)
+  (python-rapidjson python-urllib3 python-uvloop)
+  #:autoload (gnu packages python-xyz)
+  (python-aiopg
+   python-async-timeout python-cli-helpers python-click python-configobj
+   python-croniter python-cython python-cython-3 python-decorator python-editor
+   python-greenlet python-ipython-sql python-mako python-numpy python-packaging
+   python-prompt-toolkit python-psutil python-pygments python-pyyaml
+   python-setproctitle python-six python-sortedcontainers python-tabulate
+   python-tenacity python-typing-extensions)
+  #:autoload (gnu packages qt)
+  (qcustomplot qhexedit qscintilla qtbase-5 qttools-5)
+  #:autoload (gnu packages readline) (readline)
+  #:autoload (gnu packages regex) (re2)
+  #:autoload (gnu packages rpc) (apache-thrift grpc)
+  #:autoload (gnu packages ruby)
+  (ruby ruby-httpclient ruby-multi-json ruby-progress_bar ruby-rubyzip
+        ruby-thor)
+  #:autoload (gnu packages sphinx) (python-sphinx)
+  #:autoload (gnu packages ssh) (libssh2)
+  #:autoload (gnu packages sqlite) (sqlite sqlite-next)
+  #:autoload (gnu packages syncthing) (go-github-com-lib-pq)
+  #:autoload (gnu packages tcl) (tcl)
+  #:autoload (gnu packages texinfo) (texinfo)
+  #:autoload (gnu packages textutils)
+  (go-github.com-mattn-go-runewidth utf8proc)
+  #:autoload (gnu packages time)
+  (python-ciso8601 python-dateutil python-iso8601 python-pendulum python-pytz)
+  #:use-module (gnu packages tls) ; required by "guix build -d guix"
+  #:autoload (gnu packages web) (perl-encode-locale perl-uri rapidjson)
+  #:autoload (gnu packages xdisorg) (python-pyperclip)
+  #:use-module (gnu packages xml) ; required by "guix build -d guix"
   #:use-module (guix gexp)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
-- 
2.37.2