From 29834aab6f63de3acbd0d514779a2c39b0fdc2da Mon Sep 17 00:00:00 2001 From: takeokunn Date: Mon, 17 Aug 2026 16:49:48 +0900 Subject: [PATCH] refactor: follow the cl-prolog-kit / cl-dataflow-kit rename nerima-lisp/cl-prolog was renamed to cl-prolog-kit (v1.5.0) and cl-dataflow to cl-dataflow-kit (v1.2.0). The ASDF system names and CL package names moved with the repositories, so `cl-prolog:` no longer resolves and `:depends-on "cl-prolog"` no longer finds a system. Updated here: the flake input's Nix variable name and URL, the ASDF :depends-on entries, every package-qualified symbol reference, and the prose that names either package. flake.lock was regenerated with `nix flake lock`, not hand-edited. This also moves the pin forward to the current release rather than carrying the old one, since the tag the old pin named no longer contains a system under the old name. --- cl-cli.asd | 2 +- docs/src/getting-started.md | 4 ++-- flake.lock | 16 ++++++++-------- flake.nix | 20 ++++++++++---------- run-tests.lisp | 6 +++--- t/helpers-prolog.lisp | 14 +++++++------- t/package.lisp | 4 ++-- 7 files changed, 33 insertions(+), 33 deletions(-) diff --git a/cl-cli.asd b/cl-cli.asd index b02a1cc..611f38e 100644 --- a/cl-cli.asd +++ b/cl-cli.asd @@ -158,7 +158,7 @@ ;; `cl-cli/demo` belongs to the PORTABLE half: it depends on nothing but ;; `cl-cli`, so t/demo-test.lisp runs under the ECL gate too -- which is the ;; only thing that would notice the demo growing an SBCL-only form. - :depends-on ("cl-cli" "cl-cli/demo" "cl-weave" "cl-prolog/weave" "cl-json-kit" + :depends-on ("cl-cli" "cl-cli/demo" "cl-weave" "cl-prolog-kit/weave" "cl-json-kit" #+sbcl "cl-cli/concurrent") :serial t :components ((:file "t/package") diff --git a/docs/src/getting-started.md b/docs/src/getting-started.md index bcd39d4..2fa59ed 100644 --- a/docs/src/getting-started.md +++ b/docs/src/getting-started.md @@ -18,7 +18,7 @@ git clone https://github.com/nerima-lisp/cl-cli ~/common-lisp/cl-cli === "Nix (recommended for development)" - The flake wires up [`cl-prolog`](https://github.com/nerima-lisp/cl-prolog), + The flake wires up [`cl-prolog-kit`](https://github.com/nerima-lisp/cl-prolog-kit), [`cl-weave`](https://github.com/nerima-lisp/cl-weave), [`cl-process-kit`](https://github.com/nerima-lisp/cl-process-kit) (plus its own [`cl-boundary-kit`](https://github.com/nerima-lisp/cl-boundary-kit) / @@ -48,7 +48,7 @@ git clone https://github.com/nerima-lisp/cl-cli ~/common-lisp/cl-cli === "Running the test suite without Nix" - Clone `cl-prolog`, `cl-weave`, and `cl-json-kit` where ASDF can find + Clone `cl-prolog-kit`, `cl-weave`, and `cl-json-kit` where ASDF can find them, the same way as `cl-cli` above, then run `run-tests.lisp` at the repository root: diff --git a/flake.lock b/flake.lock index d8dad02..141c3f4 100644 --- a/flake.lock +++ b/flake.lock @@ -158,20 +158,20 @@ "type": "github" } }, - "cl-prolog": { + "cl-prolog-kit": { "flake": false, "locked": { - "lastModified": 1785918678, - "narHash": "sha256-Xr2Ga1qzz08MApO5N4v+bs/wmCC4FdJlYyjsC8TnXxU=", + "lastModified": 1786948477, + "narHash": "sha256-3qn9W1Jmbxnr0Si77J7Klo26oX/zjgBVwb5ye74NsTY=", "owner": "nerima-lisp", - "repo": "cl-prolog", - "rev": "7581f72c7d080afd4c863e1d44010ccb5d7258ad", + "repo": "cl-prolog-kit", + "rev": "239368e1001bc3a8576d45770c9e91da11515d09", "type": "github" }, "original": { "owner": "nerima-lisp", - "ref": "v1.4.3", - "repo": "cl-prolog", + "ref": "v1.5.0", + "repo": "cl-prolog-kit", "type": "github" } }, @@ -258,7 +258,7 @@ "cl-log-kit": "cl-log-kit", "cl-nix-forge": "cl-nix-forge", "cl-process-kit": "cl-process-kit", - "cl-prolog": "cl-prolog", + "cl-prolog-kit": "cl-prolog-kit", "cl-weave": "cl-weave", "nixpkgs": "nixpkgs", "paredit-cli": "paredit-cli", diff --git a/flake.nix b/flake.nix index 0ab167f..630da9a 100644 --- a/flake.nix +++ b/flake.nix @@ -13,7 +13,7 @@ # `apps.default` pair and the devShell -- is the single `mkPackageFlake` # call below. PACKAGE_STANDARD.md distributes that shape as a *template* # copied by hand into 21 repositories, and the copies drift: cl-weave and - # cl-prolog have already converged on the preset, and this file's 357 hand- + # cl-prolog-kit have already converged on the preset, and this file's 357 hand- # written lines were the last copy in the set still re-deriving all of it. # # Pinned to a release TAG like every other input: a bare @@ -72,8 +72,8 @@ flake = false; }; - cl-prolog = { - url = "github:nerima-lisp/cl-prolog/v1.4.3"; + cl-prolog-kit = { + url = "github:nerima-lisp/cl-prolog-kit/v1.5.0"; flake = false; }; @@ -154,7 +154,7 @@ cl-nix-forge, paredit-cli, cl-weave, - cl-prolog, + cl-prolog-kit, cl-process-kit, cl-boundary-kit, cl-log-kit, @@ -257,18 +257,18 @@ lisp = ctx.pkgs.sbcl; }; - # `cl-prolog/weave` is one of four systems cl-prolog.asd defines, and its - # `:depends-on` names both `cl-prolog` (resolved out of that same file, so + # `cl-prolog-kit/weave` is one of four systems cl-prolog-kit.asd defines, and its + # `:depends-on` names both `cl-prolog-kit` (resolved out of that same file, so # nothing to pass) and `cl-weave` (which is not, so it is passed). The # ASDF system name carries a slash; `pname` cannot, since it becomes a # store path component. clPrologWeaveSystem = ctx: lisp: siblingSystem ctx { - pname = "cl-prolog-weave"; - source = cl-prolog; - asdName = "cl-prolog.asd"; - lispSystem = "cl-prolog/weave"; + pname = "cl-prolog-kit-weave"; + source = cl-prolog-kit; + asdName = "cl-prolog-kit.asd"; + lispSystem = "cl-prolog-kit/weave"; inherit lisp; lispDependencies = [ (clWeaveSystem ctx lisp) ]; }; diff --git a/run-tests.lisp b/run-tests.lisp index 24214b9..b56fabd 100644 --- a/run-tests.lisp +++ b/run-tests.lisp @@ -46,9 +46,9 @@ (list :env "CL_HOST_KIT_SOURCE_DIR" :local (merge-pathnames #P"cl-host-kit/" dependency-parent) :asd #P"cl-host-kit.asd") - (list :env "CL_PROLOG_SOURCE_DIR" - :local (merge-pathnames #P"cl-prolog/" dependency-parent) - :asd #P"cl-prolog.asd") + (list :env "CL_PROLOG_KIT_SOURCE_DIR" + :local (merge-pathnames #P"cl-prolog-kit/" dependency-parent) + :asd #P"cl-prolog-kit.asd") (list :env "CL_JSON_KIT_SOURCE_DIR" :local (merge-pathnames #P"cl-json-kit/" dependency-parent) :asd #P"cl-json-kit.asd") diff --git a/t/helpers-prolog.lisp b/t/helpers-prolog.lisp index 40baf0c..9513aa7 100644 --- a/t/helpers-prolog.lisp +++ b/t/helpers-prolog.lisp @@ -35,7 +35,7 @@ (defparameter *prolog-atom-package* (find-package :cl-cli/test) "Fixed package for interning Prolog atoms. -Predicate and atom identity in cl-prolog is symbol identity, so facts must be +Predicate and atom identity in cl-prolog-kit is symbol identity, so facts must be interned into the same package the query literals in the test files are read into (CL-CLI/TESTS). Interning into the volatile *PACKAGE* makes rulebases non-reproducible: under the CL-USER runtime the suite uses, derived predicates @@ -49,7 +49,7 @@ would land in the wrong package and the engine would raise EXISTENCE_ERROR.") (integer value))) (defun prolog-fact (&rest term) - (cl-prolog:make-clause term)) + (cl-prolog-kit:make-clause term)) (defun option-atom (option) (prolog-atom (option-key option))) @@ -184,12 +184,12 @@ would land in the wrong package and the engine would raise EXISTENCE_ERROR.") "The full (predicate . arity) vocabulary the consumer-migration contracts query. Kept as an explicit list so the contract surface is documented in one place and -so absent facts fail cleanly instead of raising cl-prolog's existence_error.") +so absent facts fail cleanly instead of raising cl-prolog-kit's existence_error.") (defun consumer-migration-schema-clauses () "Declare every contract predicate with a never-succeeding guard clause. -cl-prolog raises the ISO existence_error(procedure, Name/Arity) for a query +cl-prolog-kit raises the ISO existence_error(procedure, Name/Arity) for a query whose predicate has no clauses at all. A :fails contract such as \"nshell script stays optional\" (app-positional-required has zero facts when no positional is required) would therefore error instead of failing. Seeding a @@ -197,15 +197,15 @@ positional is required) would therefore error instead of failing. Seeding a mirrors how src/option-relations.lisp declares :requires/:conflicts. The guard adds no solutions, so :succeeds and :set contracts are unaffected." (loop for (name arity) in *consumer-migration-contract-predicates* - collect (cl-prolog:make-clause + collect (cl-prolog-kit:make-clause (cons (prolog-atom (symbol-name name)) (loop for index below arity collect (intern (format nil "?G~D" index) *prolog-atom-package*))) - (list (list 'cl-prolog:fail))))) + (list (list 'cl-prolog-kit:fail))))) (defun consumer-migration-rulebase () - (cl-prolog:make-rulebase + (cl-prolog-kit:make-rulebase :clauses (append (consumer-migration-schema-clauses) (mapcan #'app->prolog-clauses diff --git a/t/package.lisp b/t/package.lisp index 5647723..a353dc4 100644 --- a/t/package.lisp +++ b/t/package.lisp @@ -1,10 +1,10 @@ (defpackage #:cl-cli/test (:use #:cl #:cl-cli) - (:import-from #:cl-prolog + (:import-from #:cl-prolog-kit #:assertz #:make-rulebase #:query-prolog) - (:import-from #:cl-prolog/weave + (:import-from #:cl-prolog-kit/weave #:deftest-queries) (:import-from #:cl-weave #:assert-mutation-score