diff options
Diffstat (limited to 'gnu/packages/lisp-xyz.scm')
-rw-r--r-- | gnu/packages/lisp-xyz.scm | 385 |
1 files changed, 167 insertions, 218 deletions
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index 51d74bd8af..03e474831d 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -10,7 +10,7 @@ ;;; Copyright © 2017, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Benjamin Slade <slade@jnanam.net> ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com> -;;; Copyright © 2018, 2020, 2021 Pierre Neidhardt <mail@ambrevar.xyz> +;;; Copyright © 2018, 2020, 2021, 2022 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2018, 2019 Pierre Langlois <pierre.langlois@gmx.com> ;;; Copyright © 2019, 2020 Katherine Cox-Buday <cox.katherine.e@gmail.com> ;;; Copyright © 2019 Jesse Gildersleve <jessejohngildersleve@protonmail.com> @@ -266,12 +266,6 @@ implementation with no external dependencies.") (native-inputs `(("fare-utils" ,sbcl-fare-utils) ("hu.dwim.stefil" ,sbcl-hu.dwim.stefil))) - (arguments - `(#:asd-files '("asdf-finalizers.asd" - "list-of.asd" - "asdf-finalizers-test.asd") - #:asd-systems '("asdf-finalizers" - "list-of"))) (home-page "https://gitlab.common-lisp.net/asdf/asdf-finalizers") (synopsis "Enforced calling of finalizers for Lisp code") (description "This library allows you to implement and enforce proper @@ -366,7 +360,6 @@ or cl-launch for portable processing of command-line arguments.") (base32 "1b3nqbb4pj377lxl47rfgrs82pidadnrc65l48bk553c2f59b52w")))) (build-system asdf-build-system/sbcl) (native-inputs - ;; Tests only. (list sbcl-rt)) (inputs `(("cl+ssl" ,sbcl-cl+ssl) @@ -374,10 +367,7 @@ or cl-launch for portable processing of command-line arguments.") ("split-sequence" ,sbcl-split-sequence) ("usocket" ,sbcl-usocket))) (arguments - `(#:asd-systems '("cl-irc") ;; Some inexisting "c" system is - ;; found by guix otherwise. - #:asd-files '("cl-irc.asd") - #:test-asd-file "test/cl-irc-test.asd")) + `(#:asd-test-systems '("cl-irc-test"))) (synopsis "IRC client library for Common Lisp") (description "@code{cl-irc} is a Common Lisp IRC client library that features (partial) DCC, CTCP and all relevant commands from the IRC @@ -868,8 +858,7 @@ ANSI-compliant Common Lisp implementations.") (inputs (list sbcl-cl-ppcre sbcl-cl-unicode)) (arguments - `(#:tests? #f ; tests fail with "Component :CL-PPCRE-TEST not found" - #:phases + `(#:phases (modify-phases %standard-phases (add-after 'unpack 'disable-ppcre ;; cl-ppcre and cl-ppcre-unicode are put in different packages @@ -997,8 +986,11 @@ anti-aliased vectorial paths.") "11rhc6h501dwcik2igkszz7b9n515cr99m5pjh4r2qfwgiri6ysa")))) (build-system asdf-build-system/sbcl) (arguments - '(#:tests? #f ; spatial-trees.test requires spatial-trees.nns - #:test-asd-file "spatial-trees.test.asd")) + ;; We cannot build "spatial-trees-viz" here because it depends on + ;; mcclim which depends on spatial-trees. FIXME: Break the circle. + '(#:asd-systems '("spatial-trees" "spatial-trees.nns"))) + (inputs + (list sbcl-alexandria sbcl-optima sbcl-iterate)) (native-inputs (list sbcl-fiveam)) (home-page "https://github.com/rpav/spatial-trees") @@ -1450,8 +1442,7 @@ utilities that make it even easier to manipulate text in Common Lisp. It has (base32 "0jsqah1znzqilxnw5vannb083ayk0d7phkackqzwwqkyg5hpn6pq")))) (build-system asdf-build-system/sbcl) (arguments - '(#:asd-files '("trivial-features.asd") - ;; FIXME: Tests disabled because of a circular dependency between + '(;; FIXME: Tests disabled because of a circular dependency between ;; trivial-features and cffi. #:tests? #f)) ;; (native-inputs @@ -2383,9 +2374,7 @@ processes that doesn't run under Emacs. Lisp processes created by sbcl-pythonic-string-reader sbcl-slime-swank)) (arguments - `(#:asd-files '("mgl-pax.asdf.asd" - "mgl-pax.asd") - #:asd-systems '("mgl-pax" + `(#:asd-systems '("mgl-pax" "mgl-pax/navigate" "mgl-pax/document" "mgl-pax/transcribe") @@ -3032,11 +3021,6 @@ is statically typed so there are differences.") (string-append (assoc-ref outputs "out") "/include/grovel"))))) - #:asd-files '("cffi.asd" - "cffi-toolchain.asd" - "cffi-grovel.asd" - "cffi-libffi.asd" - "cffi-uffi-compat.asd") #:asd-systems '("cffi" "cffi-libffi" "cffi-uffi-compat"))) @@ -3397,16 +3381,7 @@ Lisp implementations.") ("trivial-features" ,sbcl-trivial-features) ("trivial-garbage" ,sbcl-trivial-garbage))) (arguments - `(#:asd-files '("gtk/cl-cffi-gtk.asd" - "glib/cl-cffi-gtk-glib.asd" - "gobject/cl-cffi-gtk-gobject.asd" - "gio/cl-cffi-gtk-gio.asd" - "cairo/cl-cffi-gtk-cairo.asd" - "pango/cl-cffi-gtk-pango.asd" - "gdk-pixbuf/cl-cffi-gtk-gdk-pixbuf.asd" - "gdk/cl-cffi-gtk-gdk.asd") - #:test-asd-file "test/cl-cffi-gtk-test.asd" - ;; TODO: Tests fail with memory fault. + `(;; TODO: Tests fail with memory fault. ;; See https://github.com/Ferada/cl-cffi-gtk/issues/24. #:tests? #f #:phases @@ -4534,12 +4509,6 @@ addition, removal, and random selection.") (sha256 (base32 "1wrrhbj3r4lph5y3hhfbv4g2pvg24hbgl06irq9lyiycy3bgai4w")))) (build-system asdf-build-system/sbcl) - (arguments - ;; Test system must be loaded before, otherwise tests fail with: - ;; Component QURI-ASD::QURI-TEST not found, required by #<SYSTEM - ;; "quri">. - '(#:asd-systems '("quri-test" - "quri"))) (native-inputs (list sbcl-prove)) (inputs (list sbcl-babel sbcl-split-sequence sbcl-cl-utilities sbcl-alexandria)) @@ -4777,8 +4746,7 @@ Only minimal changes required to make your CLOS objects serializable.") ;; Error while trying to load definition for system fast-io-test from ;; pathname [...]/fast-io-test.asd: The function CHECKL:DEFINE-TEST-OP ;; is undefined. - '(#:tests? #f - #:asd-files '("fast-io.asd"))) + '(#:tests? #f)) (native-inputs (list sbcl-fiveam sbcl-checkl)) (inputs @@ -4797,6 +4765,45 @@ streams (though primarily the former, while wrapping the latter).") (define-public ecl-fast-io (sbcl-package->ecl-package sbcl-fast-io)) +(define-public sbcl-legion + (let ((commit "599cca19f0e34246814621f7fe90322221c2e263") + (revision "1")) + (package + (name "sbcl-legion") + (version (git-version "0.1.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/fukamachi/legion/") + (commit commit))) + (file-name (git-file-name "cl-legion" version)) + (sha256 + (base32 "0583pw0mf8bd4dj42w2xrlzcwfkl8q28n1bh8dpxxfg93crx4si6")))) + (build-system asdf-build-system/sbcl) + (native-inputs + (list sbcl-prove sbcl-local-time)) + (inputs + (list + sbcl-bordeaux-threads + sbcl-cl-speedy-queue + sbcl-vom)) + (home-page "https://github.com/fukamachi/legion") + (synopsis "Simple multithreading worker mechanism for Common Lisp") + (description + "This library provides a simple multithreading worker mechanism.") + (license license:bsd-3)))) + +(define-public cl-legion + (sbcl-package->cl-source-package sbcl-legion)) + +(define-public ecl-legion + (package + (inherit (sbcl-package->ecl-package sbcl-legion)) + (arguments + ;; Tests get stuck forever + (list #:tests? #f)))) + (define-public sbcl-jonathan (let ((commit "1f448b4f7ac8265e56e1c02b32ce383e65316300") (revision "1")) @@ -4813,12 +4820,8 @@ streams (though primarily the former, while wrapping the latter).") (sha256 (base32 "14x4iwz3mbag5jzzzr4sb6ai0m9r4q4kyypbq32jmsk2dx1hi807")))) (build-system asdf-build-system/sbcl) - (arguments - ;; Tests fail with: Component JONATHAN-ASD::JONATHAN-TEST not found, - ;; required by #<SYSTEM "jonathan">. Why? - `(#:tests? #f)) (native-inputs - (list sbcl-prove)) + (list sbcl-prove sbcl-legion)) (inputs (list sbcl-cl-syntax sbcl-fast-io sbcl-proc-parse sbcl-cl-ppcre)) (home-page "https://rudolph-miller.github.io/jonathan/overview.html") @@ -4947,7 +4950,6 @@ reset to 0 and you're able to read it again.") "lack-util" "lack-middleware-backtrace" "lack-middleware-static") - #:test-asd-file "t-lack.asd" ;; XXX: Component :CLACK not found #:tests? #f)) (home-page "https://github.com/fukamachi/lack") @@ -5675,8 +5677,6 @@ whole lot more into a single form.") (base32 "01wsr1aap3jdzhn4hrqjbhsjx6qci9dbd3gh4gayv1p49rbg8aqr")))) (build-system asdf-build-system/sbcl) - (arguments - `(#:test-asd-file "test/fare-utils-test.asd")) (native-inputs (list sbcl-hu.dwim.stefil)) (synopsis "Collection of utilities and data structures") @@ -5887,12 +5887,7 @@ formats.") ("split-sequence" ,sbcl-split-sequence) ("swap-bytes" ,sbcl-swap-bytes))) (arguments - '(#:asd-files '("iolib.asdf.asd" - "iolib.conf.asd" - "iolib.common-lisp.asd" - "iolib.base.asd" - "iolib.asd") - #:asd-systems '("iolib" + '(#:asd-systems '("iolib" "iolib/os") #:phases (modify-phases %standard-phases @@ -6075,11 +6070,6 @@ XSD type library.") (list sbcl-alexandria)) (native-inputs (list sbcl-prove)) - (arguments - ;; FIXME: Test fails with the following, why? - ;; Component "cl-reexport-test" not found, required by - ;; #<SYSTEM "cl-reexport-test"> - `(#:tests? #f)) (synopsis "Reexport external symbols in other Common Lisp packages") (description "Cl-reexport makes a package reexport symbols which are external @@ -6223,10 +6213,6 @@ neat APIs and connection-pooling. It is meant to supersede Drakma.") `(("alexandria" ,sbcl-alexandria))) (native-inputs (list sbcl-fiveam)) - (arguments - `(#:test-asd-file "lisp-namespace.test.asd" - ;; XXX: Component LISP-NAMESPACE-ASD::LISP-NAMESPACE.TEST not found - #:tests? #f)) (synopsis "LISP-N, or extensible namespaces in Common Lisp") (description "Common Lisp already has major 2 namespaces, function namespace and value namespace (or variable namespace), but there are actually @@ -6378,8 +6364,6 @@ to support this, especially for reasoning on types, are also included.") ("trivia.trivial" ,sbcl-trivia.trivial))) (native-inputs (list sbcl-fiveam)) - (arguments - `(#:test-asd-file "type-i.test.asd")) (synopsis "Type inference utility on unary predicates for Common Lisp") (description "This library tries to provide a way to detect what kind of type the given predicate is trying to check. This is different from inferring @@ -6421,8 +6405,7 @@ the return type of a function.") (list sbcl-eos)) (arguments ;; XXX: Circular dependencies: tests depend on optima.ppcre which depends on optima. - `(#:tests? #f - #:test-asd-file "optima.test.asd")) + `(#:tests? #f)) (synopsis "Optimized pattern matching library for Common Lisp") (description "Optima is a fast pattern matching library which uses optimizing techniques widely used in the functional programming world.") @@ -6560,7 +6543,6 @@ be faster and more extensible than Optima.") "trivia.quasiquote" "trivia.cffi" "trivia.fset") - #:test-asd-file "trivia.test.asd" #:phases (modify-phases %standard-phases (add-after 'unpack 'fix-build @@ -6635,8 +6617,7 @@ various string metrics in Common Lisp: (native-inputs (list sbcl-prove)) (arguments - `(#:asd-systems '("str") - #:test-asd-file "str.test.asd")) + `(#:asd-systems '("str"))) (synopsis "Modern, consistent and terse Common Lisp string manipulation library") (description "A modern and consistent Common Lisp string manipulation library that focuses on modernity, simplicity and discoverability: @@ -7032,8 +7013,7 @@ which implements a set of utilities.") (inputs `(("metatilities-base" ,sbcl-metatilities-base))) (arguments - '(#:asd-files '("cl-containers.asd") - #:phases + '(#:phases (modify-phases %standard-phases (add-after 'unpack 'relax-version-checks (lambda _ @@ -7085,9 +7065,6 @@ decisions becomes significantly easier.") ("cl-containers" ,sbcl-cl-containers) ("local-time" ,sbcl-local-time) ("periods" ,sbcl-periods))) - (arguments - '(#:asd-files '("fprog.asd" - "cambl.asd"))) (synopsis "Commoditized amounts and balances for Common Lisp") (description "CAMBL is a Common Lisp library providing a convenient facility for @@ -7429,9 +7406,6 @@ of C+GObject libraries without the need of writing dedicated bindings.") (sha256 (base32 "1asdq6xllmsvfw5fky9wblqcx9isac9jrrlkfl7vyxcq1wxrnflx")))) (build-system asdf-build-system/sbcl) - (arguments - `(#:asd-files '("cl-slug-test.asd" "cl-slug.asd") - #:asd-systems '("cl-slug-test" "cl-slug"))) (native-inputs (list sbcl-prove)) (inputs @@ -7790,7 +7764,7 @@ forms in parallel.") (native-inputs (list sbcl-xlunit)) (arguments - `(#:test-asd-file "cl-heap-tests.asd")) + '(#:asd-test-systems '("cl-heap-tests"))) (synopsis "Heap and priority queue data structures for Common Lisp") (description "CL-HEAP provides various implementations of heap data structures (a @@ -8762,7 +8736,17 @@ continuations of the @code{cl-cont} library.") (base32 "11fcnd03ybzz37rkg3z0wsb727yqgcd9gn70sccfb34l89ia279k")))) (build-system asdf-build-system/sbcl) (arguments - `(#:test-asd-file "test.vas-string-metrics.asd")) + '(#:asd-test-systems '("test.vas-string-metrics") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-test-asd + (lambda _ + (substitute* "test.vas-string-metrics.asd" + ((":depends-on") + (string-append + ":perform (test-op (op c) (symbol-call :vas-string-metrics :run-tests))" + "\n" + " :depends-on")))))))) (home-page "https://github.com/vsedach/vas-string-metrics") (synopsis "String distance algorithms for Common Lisp") (description @@ -9595,12 +9579,7 @@ them as PNG files.") (native-inputs (list sbcl-fiveam)) (arguments - `(#:test-asd-file "hdf5-cffi.test.asd" - ;; Tests depend on hdf5-cffi.examples.asd in addition to hdf5-cffi.asd, - ;; I don't know if there is a way to tell asdf-build-system to load - ;; an additional system first, so tests are disabled. - #:tests? #f - #:phases + `(#:phases (modify-phases %standard-phases (add-after 'unpack 'fix-paths (lambda* (#:key inputs #:allow-other-keys) @@ -9782,9 +9761,7 @@ the elements in compound type specifier, e.g. @code{dimensions} in `(("trivia" ,sbcl-trivia) ("alexandria" ,sbcl-alexandria))) (native-inputs - (list sbcl-fiveam)) - (arguments - `(#:test-asd-file "type-r.test.asd"))))) + (list sbcl-fiveam))))) (define-public cl-type-r (sbcl-package->cl-source-package sbcl-type-r)) @@ -9824,8 +9801,7 @@ correctly.") (native-inputs (list sbcl-fiveam)) (arguments - `(#:asd-systems '("trivialib.type-unify") - #:test-asd-file "trivialib.type-unify.test.asd"))))) + `(#:asd-systems '("trivialib.type-unify")))))) (define-public cl-trivialib-type-unify (sbcl-package->cl-source-package sbcl-trivialib-type-unify)) @@ -9907,10 +9883,7 @@ code. The main target of this macro is speed.") ("trivial-cltl2" ,sbcl-trivial-cltl2) ("type-r" ,sbcl-type-r))) (native-inputs - (list sbcl-fiveam)) - (arguments - `(#:asd-files '("specialized-function.asd") - #:test-asd-file "specialized-function.test.asd"))))) + (list sbcl-fiveam))))) (define-public cl-specialized-function (sbcl-package->cl-source-package sbcl-specialized-function)) @@ -9947,10 +9920,7 @@ additional form that is considered as a candidate for a constant.") ("iterate" ,sbcl-iterate) ("lisp-namespace" ,sbcl-lisp-namespace))) (native-inputs - (list sbcl-fiveam)) - (arguments - `(#:asd-files '("constantfold.asd") - #:test-asd-file "constantfold.test.asd"))))) + (list sbcl-fiveam))))) (define-public cl-constantfold (sbcl-package->cl-source-package sbcl-constantfold)) @@ -9988,10 +9958,7 @@ type correctness in Common Lisp. It is based on CLtL2 extensions.") ("iterate" ,sbcl-iterate) ("type-r" ,sbcl-type-r))) (native-inputs - (list sbcl-fiveam)) - (arguments - `(#:asd-files '("gtype.asd") - #:test-asd-file "gtype.test.asd"))))) + (list sbcl-fiveam))))) (define-public cl-gtype (sbcl-package->cl-source-package sbcl-gtype)) @@ -10022,9 +9989,7 @@ type correctness in Common Lisp. It is based on CLtL2 extensions.") (base32 "15m4spbgayawnw5jjz04zfp0jnk9g6hgq5fmr648hzjzj50j1d78")))) (build-system asdf-build-system/sbcl) (arguments - `(#:test-asd-file "numcl.test.asd" - #:asd-files '("numcl.asd") - ;; Tests often fail because they require a dynamic-space-size much + `(;; Tests often fail because they require a dynamic-space-size much ;; bigger than the default one. Disable them for now. #:tests? #f)) (native-inputs @@ -10099,8 +10064,8 @@ lightweight messaging kernel.") (sbcl-package->ecl-package sbcl-pzmq)) (define-public sbcl-clss - (let ((revision "1") - (commit "2a8e8615ab55870d4ca01928f3ed3bbeb4e75c8d")) + (let ((revision "2") + (commit "f62b849189c5d1be378f0bd3d403cda8d4fe310b")) (package (name "sbcl-clss") (version (git-version "0.3.1" revision commit)) @@ -10112,7 +10077,7 @@ lightweight messaging kernel.") (url "https://github.com/Shinmera/clss") (commit commit))) (sha256 - (base32 "0la4dbcda78x29szanylccrsljqrn9d1mhh569sqkyp44ni5fv91")) + (base32 "1033dchpanhcgxl5qfhr80aw9adbp9bvllhzvvy5p9mrfnidd1fv")) (file-name (git-file-name name version)))) (inputs (list sbcl-array-utils sbcl-plump)) @@ -10412,7 +10377,6 @@ interface for MySQL, PostgreSQL and SQLite.") (build-system asdf-build-system/sbcl) (arguments `(#:tests? #f ; TODO: Fix use of deprecated ASDF functions - #:asd-files '("uffi.asd") #:phases (modify-phases %standard-phases (add-after 'unpack 'fix-permissions @@ -10487,13 +10451,8 @@ interface for MySQL, PostgreSQL and SQLite.") ("uffi" ,sbcl-uffi) ("zlib" ,zlib))) (arguments - `(#:asd-files '("clsql.asd" - "clsql-uffi.asd" - "clsql-sqlite3.asd" - "clsql-postgresql.asd" - "clsql-postgresql-socket3.asd" - "clsql-mysql.asd") - #:asd-systems '("clsql" + `(#:asd-systems '("clsql" + "clsql-uffi" "clsql-sqlite3" "clsql-postgresql" "clsql-postgresql-socket3" @@ -10596,8 +10555,8 @@ interfaces as well as a functional and an object oriented interface.") (alist-delete "uffi" (package-inputs pkg))) (arguments (substitute-keyword-arguments (package-arguments pkg) - ((#:asd-files asd-files '()) - `(cons "clsql-cffi.asd" ,asd-files))))))) + ((#:asd-systems asd-systems '()) + `(cons "clsql-cffi" ,asd-systems))))))) (define-public sbcl-sycamore (let ((commit "fd2820fec165ad514493426dea209728f64e6d18")) @@ -10788,10 +10747,6 @@ camelCase, PascalCase, snake_case, param-case, CONSTANT_CASE and more.") (sha256 (base32 "1zys29rfkb649rkgl3snxhajk8d5yf7ryxkrwy020kwdh7zdsg7d")))) (build-system asdf-build-system/sbcl) - (arguments - `(#:test-asd-file "modularize-test-module.asd" - #:asd-files '("modularize.asd" "modularize-test-module.asd") - #:asd-systems '("modularize" "modularize-test-module"))) (inputs `(("documentation-utils" ,sbcl-documentation-utils) ("trivial-package-local-nicknames" ,sbcl-trivial-package-local-nicknames))) @@ -10996,6 +10951,58 @@ accompaniment to the standard ANSI facilities.") (define-public ecl-clx-xembed (sbcl-package->ecl-package sbcl-clx-xembed)) +(define-public sbcl-mw-equiv + (let ((commit "3ae871458685b1ef7cd6a996ee22c8c5e738a03d") + (revision "1")) + (package + (name "sbcl-mw-equiv") + (version (git-version "0.1.2" revision commit)) + (home-page "https://github.com/sharplispers/mw-equiv/") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/sharplispers/mw-equiv/") + (commit commit))) + (file-name (git-file-name "cl-mw-equiv" version)) + (sha256 + (base32 "1fl90wp0jp7l90mps53fq0kzb28f10qfr739527h03xwqccyylad")))) + (build-system asdf-build-system/sbcl) + (synopsis "Extensible object equivalence protocol for Common Lisp") + (description "Common Lisp comes with quite some functions to compare +objects for equality, yet none is applicable in every situation and in general +this is hard, as equality of objects depends on the semantics of operations on +them. As consequence, users find themselves regularly in a situation where +they have to roll their own specialized equality test. + +This module provides one of many possible equivalence relations between +standard Common Lisp objects. However, it can be extended for new objects +through a simple CLOS protocol. The rules when two objects are considered +equivalent distinguish between @emph{mutating} and @emph{frozen objects}. A +frozen object is promised not to be mutated in the future in a way that +operations on it can notice the difference. + +We have chosen to compare mutating objects only for identity (pointer +equality), to avoid various problems. Equivalence for frozen objects on the +other hand is established by recursing on the objects' constituent parts and +checking their equivalence. Hence, two objects are equivalent under the +@code{OBJECT=} relation, if they are either identical, or if they are frozen +and structurally equivalent, i.e. their constituents are point-wise +equivalent. + +Since many objects are potentially mutable, but are not necessarily mutated +from a certain point in their life time on, it is possible to promise to the +equivalence relation that they remain frozen for the rest of their life time, +thus enabling coarser equivalence than the often too fine-grained pointer +equality.") + (license license:bsd-2)))) + +(define-public cl-mw-equiv + (sbcl-package->cl-source-package sbcl-mw-equiv)) + +(define-public ecl-mw-equiv + (sbcl-package->ecl-package sbcl-mw-equiv)) + (define-public sbcl-quantile-estimator (package (name "sbcl-quantile-estimator") @@ -11012,9 +11019,11 @@ accompaniment to the standard ANSI facilities.") "0rlswkf0siaabsvvch3dgxmg45fw5w8pd9b7ri2w7a298aya52z9")))) (build-system asdf-build-system/sbcl) (arguments - '(#:asd-files '("quantile-estimator.asd"))) + '(#:asd-test-systems '("quantile-estimator.test"))) (inputs - `(("alexandria" ,sbcl-alexandria))) + (list sbcl-alexandria)) + (native-inputs + (list sbcl-mw-equiv sbcl-prove sbcl-log4cl)) (home-page "https://github.com/deadtrickster/quantile-estimator.cl") (synopsis "Effective computation of biased quantiles over data streams") @@ -11059,13 +11068,7 @@ Streams in ICDE’05.") ("split-sequence" ,sbcl-split-sequence) ("trivial-utf-8" ,sbcl-trivial-utf-8))) (arguments - '(#:asd-files '("prometheus.asd" - "prometheus.collectors.sbcl.asd" - "prometheus.collectors.process.asd" - "prometheus.formats.text.asd" - "prometheus.exposers.hunchentoot.asd" - "prometheus.pushgateway.asd") - #:asd-systems '("prometheus" + '(#:asd-systems '("prometheus" "prometheus.collectors.sbcl" "prometheus.collectors.process" "prometheus.formats.text" @@ -11459,10 +11462,6 @@ format.") (inputs `(("cl-libsvm-format" ,sbcl-cl-libsvm-format) ("cl-store" ,sbcl-cl-store))) - (arguments - `(#:test-asd-file "cl-online-learning-test.asd" - #:asd-systems '("cl-online-learning-test" - "cl-online-learning"))) (home-page "https://github.com/masatoi/cl-online-learning") (synopsis "Online Machine Learning for Common Lisp") (description @@ -11499,8 +11498,7 @@ online linear classification written in Common Lisp.") #t)))) (build-system asdf-build-system/sbcl) (arguments - `(#:asd-files '("cl-mpg123.asd" "cl-mpg123-example.asd") - #:asd-systems '("cl-mpg123" "cl-mpg123-example") + `(#:asd-systems '("cl-mpg123" "cl-mpg123-example") #:phases (modify-phases %standard-phases (add-after 'unpack 'fix-paths @@ -12099,8 +12097,6 @@ both from files on disk, or streams in memory.") sbcl-retrospectiff sbcl-skippy sbcl-zpng)) - (arguments - '(#:asd-files '("opticl.asd"))) (home-page "https://github.com/slyrus/opticl") (synopsis "Image processing library for Common Lisp") (description @@ -12477,8 +12473,7 @@ hu.dwim systems.") ;; ("hu.dwim.stefil" ,cl-hu.dwim.stefil) sbcl-hu.dwim.asdf)) (arguments - `(#:test-asd-file "hu.dwim.defclass-star.test.asd" - ;; Tests require a circular dependency: hu.dwim.stefil -> hu.dwim.def + `(;; Tests require a circular dependency: hu.dwim.stefil -> hu.dwim.def ;; -> hu.dwim.util -> hu.dwim.defclass-star. #:tests? #f)) (home-page "https://github.com/hu-dwim/hu.dwim.defclass-star") @@ -12820,8 +12815,7 @@ that and not limited to a certain server or text format.") ("prove" ,sbcl-prove))) (arguments ;; Tests depend on caveman, which in turns depends on cl-project. - '(#:tests? #f - #:asd-files '("cl-project.asd"))) + '(#:tests? #f)) (synopsis "Generate a skeleton for modern Common Lisp projects") (description "This library provides a modern project skeleton generator. In contract with other generators, CL-Project generates one package per file @@ -12868,12 +12862,7 @@ can begin writing unit tests as soon as the project is generated.") ("trivial-types" ,sbcl-trivial-types) ("prove" ,sbcl-prove))) (arguments - `(#:asd-files '("caveman2.asd" - "caveman2-db.asd" - "caveman2-test.asd" - "caveman-middleware-dbimanager.asd") - #:test-asd-file "caveman2-test.asd" - #:asd-systems '("caveman2" + `(#:asd-systems '("caveman2" "caveman2-db" "caveman2-test" "caveman-middleware-dbimanager") @@ -13127,8 +13116,7 @@ mostly not found in other utility packages.") (base32 "1k4mvrpbqqds2fwjxp1bxmrfmr8ch4dkwhnkbw559knbqshvrlj5")))) (build-system asdf-build-system/sbcl) (arguments - '(#:asd-files '("cl-custom-hash-table.asd") - #:asd-systems '("cl-custom-hash-table"))) + '(#:asd-systems '("cl-custom-hash-table"))) (home-page "https://github.com/metawilm/cl-custom-hash-table") (synopsis "Custom hash tables for Common Lisp") (description "This library allows creation of hash tables with arbitrary @@ -13391,10 +13379,6 @@ predictable cross-platform behavior and some utilities useful for versioning.") (sha256 (base32 "07pfkibaridihg8lbq2czwa4iqifqk24n6rx7bfnv7i49p1ppja1")))) (build-system asdf-build-system/sbcl) - (arguments - `(#:test-asd-file "deploy-test.asd" - #:asd-files '("deploy.asd" - "deploy-test.asd"))) (native-inputs `(("cl-mpg123" ,sbcl-cl-mpg123) ("cl-out123" ,sbcl-cl-out123))) @@ -15098,8 +15082,7 @@ attributes not supported by the Common Lisp standard functions.") ;; Due to the age of this library tests use some deprecated ;; functionality and keep failing. (arguments - '(#:tests? #f - #:asd-files '("cl-difflib.asd"))) + '(#:tests? #f)) (home-page "https://github.com/wiseman/cl-difflib") (synopsis "Compute differences between pairs of sequences") (description @@ -15715,8 +15698,6 @@ immediately.") (inputs `(("cl-fad" ,sbcl-cl-fad) ("html-template" ,sbcl-html-template))) - (arguments - '(#:asd-files '("quickproject.asd"))) (home-page "https://xach.com/lisp/quickproject/") (synopsis "Create Common Lisp project skeletons") (description @@ -15821,7 +15802,7 @@ compiled foreign library collection.") ;; failing test where it's in use. (arguments '(#:tests? #f - #:asd-files '("cl-conspack.asd"))) + #:asd-test-systems '("cl-conspack-test"))) (native-inputs (list sbcl-checkl)) (inputs @@ -16971,8 +16952,7 @@ Common Lisp without any C library bindings.") (arguments ;; FIXME: (Sharlatan-20210523T184237+0100): Tests require `femlisp', which ;; is quite chunky not packaged system yet, enable them when it's packed. - `(#:tests? #f - #:test-asd-file "parser-combinators-tests.asd")) + `(#:tests? #f)) ;; (native-inputs ;; `(("hu.dwim.stefil" ,sbcl-hu.dwim.stefil) ;; ("infix" ,sbcl-femlisp))) @@ -17277,11 +17257,9 @@ needed. The low-level command API is fully mapped however.") (sha256 (base32 "0ysw1kwiqlf8kzllhnz8v3q40dmvwf83fzq8bfkbmwy5hfjh3pxp")))) (build-system asdf-build-system/sbcl) - (arguments - ;; FIXME: (Sharlatan-20210527T203118+0100): FLOW-VISUALIZER requires - ;; COMMONQT which is not packed yet and required tweaks with QT. Remove - ;; this when it's ready. - `(#:asd-files '("flow.asd"))) + ;; FIXME: (Sharlatan-20210527T203118+0100): FLOW-VISUALIZER requires + ;; COMMONQT which is not packed yet and required tweaks with QT. Remove + ;; this when it's ready. (inputs `(("closer-mop" ,sbcl-closer-mop) ("documentation-utils" ,sbcl-documentation-utils))) @@ -17410,8 +17388,6 @@ coverage.") (sha256 (base32 "0izbw2advqm3wailj3dpq6zqfrfirwn14pw5qmqh8i71r51xwmm2")))) (build-system asdf-build-system/sbcl) - (arguments - `(#:asd-files '("cepl.asd" "cepl.build.asd"))) (inputs `(("alexandria" ,sbcl-alexandria) ("bordeaux-threads" ,sbcl-bordeaux-threads) @@ -17809,8 +17785,7 @@ Lisp.") (base32 "04519rg8vc782z097dzlb8nx0skab2fy2zd0m60r6mz2nw8xdvh6")))) (build-system asdf-build-system/sbcl) (arguments - `(#:test-asd-file "cl-posix-mqueue-tests.asd" - #:phases + `(#:phases (modify-phases %standard-phases (add-after 'unpack 'patch-librt-path (lambda* (#:key inputs #:allow-other-keys) @@ -17857,8 +17832,7 @@ to setup.") (base32 "1nm35kvigflfjlmsa8zwdajc61f02fh4sq08jv0wnqylhx8yg2bv")))) (build-system asdf-build-system/sbcl) (arguments - (list #:test-asd-file "glop-test.asd" - #:phases + (list #:phases #~(modify-phases %standard-phases (add-after 'unpack 'patch-lib-paths (lambda* (#:key inputs #:allow-other-keys) @@ -18072,35 +18046,7 @@ tested (as shown in the examples).") (substitute* "evdev-cffi.lisp" (("libevdev.so" all) (string-append (assoc-ref inputs "libevdev") - "/lib/" all))))) - ;; Here we use a custom build phase to work around a compilation bug. - ;; Using 'asdf:compile-system' fails, but using 'asdf:load-system' - ;; succeeds (and also compiles the system). - ;; See https://github.com/Shirakumo/cl-gamepad/issues/8 - (replace 'build - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (source-path (string-append out - "/share/common-lisp/" - (%lisp-type))) - (translations `((,source-path - :**/ :*.*.*) - (,(string-append out - "/lib/common-lisp/" - (%lisp-type)) - :**/ :*.*.*)))) - (setenv "ASDF_OUTPUT_TRANSLATIONS" - (format #f "~S" `(:output-translations - ,translations - :inherit-configuration))) - (setenv "HOME" (assoc-ref outputs "out")) - (with-directory-excursion (string-append source-path - "/cl-gamepad") - (invoke (%lisp-type) - "--eval" "(require :asdf)" - "--eval" "(asdf:load-asd (truename \"cl-gamepad.asd\"))" - "--eval" "(asdf:load-system :cl-gamepad)" - "--eval" "(quit)")))))))) + "/lib/" all)))))))) (inputs `(("cffi" ,sbcl-cffi) ("documentation-utils" ,sbcl-documentation-utils) @@ -20158,10 +20104,6 @@ reference.") (inputs `(("cl-base64" ,sbcl-cl-base64) ("cl-base58" ,sbcl-cl-base58))) - ;; Load order matters for tests, both for file reading and evaluation. - (arguments - `(#:asd-systems '("bit-smasher-test" "bit-smasher") - #:asd-files '("bit-smasher.asd" "bit-smasher-test.asd"))) (home-page "https://github.com/thephoeron/bit-smasher/") (synopsis "Handle bit vectors, bit vector arithmetic, and type conversions") (description @@ -20215,8 +20157,7 @@ decimals, and hexadecimal notation.") (native-inputs (list sbcl-fiveam)) (arguments - `(#:asd-files '("overlord.asd") - #:phases + `(#:phases (modify-phases %standard-phases (add-after 'unpack 'include-overlord/net (lambda _ @@ -20974,9 +20915,6 @@ rendering of the XML Infoset.") (base32 "0yiybl7b9x1f85v0drj0yw9821y3yfhya4n6gycnv5vvx6jp9by4")) (file-name (git-file-name "cl-asd-generator" commit)))) (build-system asdf-build-system/sbcl) - (arguments - `(#:asd-systems '("asd-generator") - #:asd-files '("asd-generator.asd"))) (inputs (list sbcl-cl-fad sbcl-iterate @@ -21456,8 +21394,19 @@ implementation for Common Lisp.") (base32 "1048f6prz2lp859nxwcgghn6n38pc2pb580azzxpdhfcdi0034mj")))) (build-system asdf-build-system/sbcl) (arguments - '(#:asd-files '("src/com.inuoe.jzon.asd" "test/com.inuoe.jzon-tests.asd") - #:asd-systems '("com.inuoe.jzon" "com.inuoe.jzon-tests"))) + '(#:asd-systems '("com.inuoe.jzon") + #:asd-test-systems '("com.inuoe.jzon-tests") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-test-asd + (lambda _ + (substitute* "test/com.inuoe.jzon-tests.asd" + ((":depends-on") + (string-append + ":perform (test-op (op c) (symbol-call :fiveam :run!" + " (find-symbol \"JZON\" :com.inuoe.jzon-tests)))" + "\n" + " :depends-on")))))))) (native-inputs (list sbcl-alexandria sbcl-fiveam |