Message ID | 20191018204206.15154-1-glv@posteo.net |
---|---|
State | Accepted |
Headers | show |
Series | Add graph Common Lisp library and dependencies. | expand |
Thanks for this patch. Everything is looking good, except the last patch where you should add an extra commit for the 'dot' package. Regarding the .asd patch: the lack of inferred package support is a general issue with our current build system. Ideally, we could support it directly. See this discussion for more details: https://gitlab.common-lisp.net/asdf/asdf/issues/10 Would you be interested in working on it? It might not be too hard :p
Pierre Neidhardt skribis: > Thanks for this patch. > > Everything is looking good, except the last patch where you should add an > extra commit for the 'dot' package. > > Regarding the .asd patch: the lack of inferred package support is a > general issue with our current build system. Ideally, we could support > it directly. See this discussion for more details: > > https://gitlab.common-lisp.net/asdf/asdf/issues/10 > > Would you be interested in working on it? It might not be too hard :p Ok, I'll put 'sbcl-graph-dot' and 'sbcl-graph-json' in their own commits. Also, I saw that there is a 'graph.scm' file with definitions of graph related packages. Should I put 'sbcl-graph', 'sbcl-graph-dot' and 'sbcl-graph-json' in it, or should I keep them in 'lisp.scm'?
Guillaume Le Vaillant <glv@posteo.net> writes: > Also, I saw that there is a 'graph.scm' file with definitions of graph > related packages. Should I put 'sbcl-graph', 'sbcl-graph-dot' and > 'sbcl-graph-json' in it, or should I keep them in 'lisp.scm'? In my understanding, file separation works as follows: 1. Make sure the file compilation graph is as simple as possible. 2. If 1. does not apply (e.g. same complexity is both cases), place the package where it's most relevant. 3. If neither 1 nor 2 apply, that is, if a package is relevant in both files, well, do what suits you best :) Here my intuition would be to leave them in lisp.scm. Cheers!
Merged, thanks!
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index bb2a589578..e407093348 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -7833,3 +7833,33 @@ Clojure, as well as several expansions on the idea.") (define-public ecl-arrows (sbcl-package->ecl-package sbcl-arrows)) + +(define-public sbcl-cl-heap + (package + (name "sbcl-cl-heap") + (version "0.1.6") + (source + (origin + (method url-fetch) + (uri (string-append "https://common-lisp.net/project/cl-heap/releases/" + "cl-heap_" version ".tar.gz")) + (sha256 + (base32 + "163hb07p2nxz126rpq3cj5dyala24n0by5i5786n2qcr1w0bak4i")))) + (build-system asdf-build-system/sbcl) + (native-inputs + `(("xlunit" ,sbcl-xlunit))) + (arguments + `(#:test-asd-file "cl-heap-tests.asd")) + (synopsis "Heap and priority queue data structures for Common Lisp") + (description + "CL-HEAP provides various implementations of heap data structures (a +binary heap and a Fibonacci heap) as well as an efficient priority queue.") + (home-page "https://common-lisp.net/project/cl-heap/") + (license license:gpl3+))) + +(define-public cl-heap + (sbcl-package->cl-source-package sbcl-cl-heap)) + +(define-public ecl-cl-heap + (sbcl-package->ecl-package sbcl-cl-heap))