magit / forge

Work with Git forges from the comfort of Magit
GNU General Public License v3.0
1.31k stars 116 forks source link

Error when opening magit-status #626

Closed offbyone closed 8 months ago

offbyone commented 8 months ago

When first invoking magit-status interactively, I get an error arising from forge-get-repository. I am using forge from the most recent ref as of now, https://github.com/magit/forge/commit/b16b6ec4f7612f5a8fc6d50133cc6189f062c183

Debugger entered--Lisp error: (args-out-of-range [#<forge-database forge-database-5bb1ca4a> "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTEyNjEzNTQ=" "MDEwOlJlcG9zaXRvcnkxMjYxMzU0" "github.com" "github" "heaven" "api.github.com" "github.com" "origin" nil "2011-01-16T20:52:25Z" "2023-06-06T19:07:05Z" nil nil "Rails app and CLI for deploying GitHub application..." nil "master" nil nil nil nil t t nil 13 151 eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound nil "/Users/offbyone/org/repo/" eieio--unbound] 35)
  #f(compiled-function (class db row &optional resolve) #<bytecode -0x13a0e36e579e31d0>)(forge-github-repository #<forge-database forge-database-5bb1ca4a> (github "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTEyNjEzNTQ=" "MDEwOlJlcG9zaXRvcnkxMjYxMzU0" "github.com" "github" "heaven" "api.github.com" "github.com" "origin" nil "2011-01-16T20:52:25Z" "2023-06-06T19:07:05Z" nil nil "Rails app and CLI for deploying GitHub application..." nil "master" nil nil nil nil t t nil 13 151 eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound nil "/Users/offbyone/org/repo/" eieio--unbound))
  apply(#f(compiled-function (class db row &optional resolve) #<bytecode -0x13a0e36e579e31d0>) forge-github-repository (#<forge-database forge-database-5bb1ca4a> (github "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTEyNjEzNTQ=" "MDEwOlJlcG9zaXRvcnkxMjYxMzU0" "github.com" "github" "heaven" "api.github.com" "github.com" "origin" nil "2011-01-16T20:52:25Z" "2023-06-06T19:07:05Z" nil nil "Rails app and CLI for deploying GitHub application..." nil "master" nil nil nil nil t t nil 13 151 eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound nil "/Users/offbyone/org/repo/" eieio--unbound)))
  closql--remake-instance(forge-github-repository #<forge-database forge-database-5bb1ca4a> (github "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTEyNjEzNTQ=" "MDEwOlJlcG9zaXRvcnkxMjYxMzU0" "github.com" "github" "heaven" "api.github.com" "github.com" "origin" nil "2011-01-16T20:52:25Z" "2023-06-06T19:07:05Z" nil nil "Rails app and CLI for deploying GitHub application..." nil "master" nil nil nil nil t t nil 13 151 eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound nil "/Users/offbyone/org/repo/" eieio--unbound))
  #f(compiled-function (&rest rest) "((GITHOST OWNER NAME) &optional REMOTE DEMAND)\n\nReturn the repository identified by GITHOST, OWNER and NAME.\nSee `forge-alist' for valid Git hosts." #<bytecode 0x1d101b8ed09cfa2a>)(("github.com" "github" "heaven") "origin" full)
  apply(#f(compiled-function (&rest rest) "((GITHOST OWNER NAME) &optional REMOTE DEMAND)\n\nReturn the repository identified by GITHOST, OWNER and NAME.\nSee `forge-alist' for valid Git hosts." #<bytecode 0x1d101b8ed09cfa2a>) ("github.com" "github" "heaven") ("origin" full))
  forge-get-repository(("github.com" "github" "heaven") "origin" full)
  #f(compiled-function (url &optional remote demand) "Return the repository at URL." #<bytecode -0x141d4a25351a301e>)("https://github.com/org/repo.git" "origin" full)
  apply(#f(compiled-function (url &optional remote demand) "Return the repository at URL." #<bytecode -0x141d4a25351a301e>) "https://github.com/org/repo.git" ("origin" full))
  forge-get-repository("https://github.com/org/repo.git" "origin" full)
  #f(compiled-function (demand &optional remote) "Return the current forge repository.\n\nFirst check if `forge-buffer-repository', or if that is nil, then\nthe repository for `forge-buffer-topic', satisfies DEMAND.  If so,\nthen return that repository.\n\nOtherwise return the repository for `default-directory', if that\nexists and satisfies DEMAND.  If that fails too, then return nil\nor signal an error, depending on DEMAND." #<bytecode 0x507c16f248b35fb>)(full)
  apply(#f(compiled-function (demand &optional remote) "Return the current forge repository.\n\nFirst check if `forge-buffer-repository', or if that is nil, then\nthe repository for `forge-buffer-topic', satisfies DEMAND.  If so,\nthen return that repository.\n\nOtherwise return the repository for `default-directory', if that\nexists and satisfies DEMAND.  If that fails too, then return nil\nor signal an error, depending on DEMAND." #<bytecode 0x507c16f248b35fb>) full nil)
  forge-get-repository(full)
  forge-bug-reference-setup()
  run-hooks(change-major-mode-after-body-hook special-mode-hook magit-section-mode-hook magit-mode-hook magit-status-mode-hook)
  apply(run-hooks (change-major-mode-after-body-hook special-mode-hook magit-section-mode-hook magit-mode-hook magit-status-mode-hook))
  run-mode-hooks(magit-status-mode-hook)
  magit-status-mode()
  magit-setup-buffer-internal(magit-status-mode nil ((magit-buffer-diff-args ("--no-ext-diff")) (magit-buffer-diff-files nil) (magit-buffer-log-args ("-n256" "--decorate")) (magit-buffer-log-files nil)))
  magit-status-setup-buffer("/Users/offbyone/org/repo/spec/support/")
  magit-status(nil ((3 . 9) (("/Users/offbyone/org/repo/" "remote" "get-url" "origin") . "https://github.com/org/repo.git") (("/Users/offbyone/org/repo/" . config) . #<hash-table equal 142/145 0xa03acd07>) (("/Users/offbyone/org/repo/" . magit-toplevel) . "/Users/offbyone/org/repo/") (("/Users/offbyone/org/repo/" "rev-parse" "--show-toplevel") . "/Users/offbyone/org/repo") (("/Users/offbyone/org/repo/" magit-gitdir) . "/Users/offbyone/org/repo/.git/") (("/Users/offbyone/org/repo/" "rev-parse" "--git-dir") . ".git") (("/Users/offbyone/org/repo/spec/support/" . magit-toplevel) . "/Users/offbyone/org/repo/") (("/Users/offbyone/org/repo/spec/support/" "rev-parse" "--show-toplevel") . "/Users/offbyone/org/repo")))
  funcall-interactively(magit-status nil ((3 . 9) (("/Users/offbyone/org/repo/" "remote" "get-url" "origin") . "https://github.com/org/repo.git") (("/Users/offbyone/org/repo/" . config) . #<hash-table equal 142/145 0xa03acd07>) (("/Users/offbyone/org/repo/" . magit-toplevel) . "/Users/offbyone/org/repo/") (("/Users/offbyone/org/repo/" "rev-parse" "--show-toplevel") . "/Users/offbyone/org/repo") (("/Users/offbyone/org/repo/" magit-gitdir) . "/Users/offbyone/org/repo/.git/") (("/Users/offbyone/org/repo/" "rev-parse" "--git-dir") . ".git") (("/Users/offbyone/org/repo/spec/support/" . magit-toplevel) . "/Users/offbyone/org/repo/") (("/Users/offbyone/org/repo/spec/support/" "rev-parse" "--show-toplevel") . "/Users/offbyone/org/repo")))
  command-execute(magit-status)

~If I immediately re-invoke magit-status then the status buffer appears, but without forge data.~ Edit: this appears not to be the case for all repositories, only some of them.

tarsius commented 8 months ago

Have you tried turning it off and on again?

(If a package is already loaded when you update it, then that does not cause the new version to be loaded. You may even end up with a franken version, with some libraries loaded from the old version and some from the new. Even worse, the old version may leak into the byte-code compiled for the new version, making it necessary to reinstall the package.)

offbyone commented 8 months ago

I definitely have; this is after running doom upgrade, which as far as I believe should recompile all the bytecode as well.

That having been said, in an abundance of caution, I'll wipe all .elc files from my installation and re-attempt, and report back. Stand by...

tarsius commented 8 months ago

Yesterday I learned that doing a clean install is a bit more involved when using straight. Checkout https://github.com/magit/forge/issues/598#issuecomment-1928068226 and make sure you follow those instructions.

offbyone commented 8 months ago

I followed those instructions, to no avail. I blew away all .elc files in my emacs, and deleted ~/.config/emacs/.local/straight/*/{closql,emacsql,forge}

Debugger entered--Lisp error: (args-out-of-range [#<forge-database forge-database-4cfe7b28> "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM6cHVsbHJlcTI5MD..." "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM=" 290810 open "fluffyf-x" "Decrease web " "2023-09-29T17:06:43Z" "0" nil nil t nil nil nil "master" "github/github" "fluffyf-x/rescaling-unicorn-for-proxinma" "github" "github/github" nil "<!-- Authors: Please fill out this form carefully ..." eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound nil "5284f7f6d1f0fb9854004aa634b5f3d4ed5b84b6" "b7bf713cfdc95405c951f06e8dce6124cd4c20af" nil "PR_kwADzluOho4" nil] 40)
  #f(compiled-function (class db row &optional resolve) #<bytecode 0x1bbe390a0c61ce30>)(forge-pullreq #<forge-database forge-database-4cfe7b28> (pullreq "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM6cHVsbHJlcTI5MD..." "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM=" 290810 open "fluffyf-x" "Proxima: Increase Unicorn API & Decrease web " "2023-09-29T17:06:43Z" "0" nil nil t nil nil nil "master" "github/github" "fluffyf-x/rescaling-unicorn-for-proxinma" "github" "github/github" nil "<!-- Authors: Please fill out this form carefully ..." eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound nil "5284f7f6d1f0fb9854004aa634b5f3d4ed5b84b6" "b7bf713cfdc95405c951f06e8dce6124cd4c20af" nil "PR_kwADzluOho4" nil))
  apply(#f(compiled-function (class db row &optional resolve) #<bytecode 0x1bbe390a0c61ce30>) forge-pullreq (#<forge-database forge-database-4cfe7b28> (pullreq "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM6cHVsbHJlcTI5MD..." "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM=" 290810 open "fluffyf-x" "Proxima: Increase Unicorn API & Decrease web " "2023-09-29T17:06:43Z" "0" nil nil t nil nil nil "master" "github/github" "fluffyf-x/rescaling-unicorn-for-proxinma" "github" "github/github" nil "<!-- Authors: Please fill out this form carefully ..." eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound nil "5284f7f6d1f0fb9854004aa634b5f3d4ed5b84b6" "b7bf713cfdc95405c951f06e8dce6124cd4c20af" nil "PR_kwADzluOho4" nil)))
  closql--remake-instance(forge-pullreq #<forge-database forge-database-4cfe7b28> (pullreq "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM6cHVsbHJlcTI5MD..." "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM=" 290810 open "fluffyf-x" "Proxima: Increase Unicorn API & Decrease web " "2023-09-29T17:06:43Z" "0" nil nil t nil nil nil "master" "github/github" "fluffyf-x/rescaling-unicorn-for-proxinma" "github" "github/github" nil "<!-- Authors: Please fill out this form carefully ..." eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound nil "5284f7f6d1f0fb9854004aa634b5f3d4ed5b84b6" "b7bf713cfdc95405c951f06e8dce6124cd4c20af" nil "PR_kwADzluOho4" nil))
  #f(compiled-function (row) #<bytecode -0x6adabb790891843>)((pullreq "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM6cHVsbHJlcTI5MD..." "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM=" 290810 open "fluffyf-x" "Proxima: Increase Unicorn API & Decrease web " "2023-09-29T17:06:43Z" "0" nil nil t nil nil nil "master" "github/github" "fluffyf-x/rescaling-unicorn-for-proxinma" "github" "github/github" nil "<!-- Authors: Please fill out this form carefully ..." eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound nil "5284f7f6d1f0fb9854004aa634b5f3d4ed5b84b6" "b7bf713cfdc95405c951f06e8dce6124cd4c20af" nil "PR_kwADzluOho4" nil))
  mapcar(#f(compiled-function (row) #<bytecode -0x6adabb790891843>) (... ... ... ... ... ... ... ... ... ... ... ... ... ... ...))
  #f(compiled-function (db &optional pred class) #<bytecode 0xc95c0e7ec7fe7a2>)(#<forge-database forge-database-4cfe7b28> nil forge-pullreq)
  apply(#f(compiled-function (db &optional pred class) #<bytecode 0xc95c0e7ec7fe7a2>) #<forge-database forge-database-4cfe7b28> (nil forge-pullreq))
  closql-entries(#<forge-database forge-database-4cfe7b28> nil forge-pullreq)
  #f(compiled-function (cl--cnm db) #<bytecode 0x24b6d0fe7d6f8b9>)(#f(compiled-function (&rest args) #<bytecode 0x13d0e00b97c1b09d>) #<forge-database forge-database-4cfe7b28>)
  apply(#f(compiled-function (cl--cnm db) #<bytecode 0x24b6d0fe7d6f8b9>) #f(compiled-function (&rest args) #<bytecode 0x13d0e00b97c1b09d>) #<forge-database forge-database-4cfe7b28>)
  #f(compiled-function (db) #<bytecode 0xace2fd1308a2d3d>)(#<forge-database forge-database-4cfe7b28>)
  apply(#f(compiled-function (db) #<bytecode 0xace2fd1308a2d3d>) #<forge-database forge-database-4cfe7b28> nil)
  closql--db-update-schema(#<forge-database forge-database-4cfe7b28>)
  #f(compiled-function (class &optional livep connection-class) #<bytecode 0x14621fb759df93e0>)(forge-database nil nil)
  apply(#f(compiled-function (class &optional livep connection-class) #<bytecode 0x14621fb759df93e0>) forge-database (nil nil))
  closql-db(forge-database nil nil)
  forge-db()
  forge-connect-database-once()
  run-hooks(change-major-mode-after-body-hook special-mode-hook magit-section-mode-hook magit-mode-hook magit-status-mode-hook)
  apply(run-hooks (change-major-mode-after-body-hook special-mode-hook magit-section-mode-hook magit-mode-hook magit-status-mode-hook))
  run-mode-hooks(magit-status-mode-hook)
  magit-status-mode()
  magit-setup-buffer-internal(magit-status-mode nil ((magit-buffer-diff-args ("--no-ext-diff")) (magit-buffer-diff-files nil) (magit-buffer-log-args ("-n256" "--decorate")) (magit-buffer-log-files nil)))
  (let* ((default-directory directory) (d (magit-diff--get-value 'magit-status-mode magit-status-use-buffer-arguments)) (l (magit-log--get-value 'magit-status-mode magit-status-use-buffer-arguments)) (file (and magit-status-goto-file-position (magit-file-relative-name))) (line (and file (save-restriction (widen) (line-number-at-pos)))) (col (and file (save-restriction (widen) (current-column)))) (buf (magit-setup-buffer-internal #'magit-status-mode nil (list (list 'magit-buffer-diff-args (nth 0 d)) (list 'magit-buffer-diff-files (nth 1 d)) (list 'magit-buffer-log-args (nth 0 l)) (list 'magit-buffer-log-files (nth 1 l)))))) (if file (progn (save-current-buffer (set-buffer buf) (let ((staged (magit-get-section ...))) (if (and staged (car ...)) (magit-diff--goto-position file line col staged) (let (...) (if ... nil ...))))))) buf)
  magit-status-setup-buffer("/Users/offbyone/org/repo/spec/support/")
  (if directory (let ((toplevel (magit-toplevel directory))) (setq directory (file-name-as-directory (expand-file-name directory))) (if (and toplevel (file-equal-p directory toplevel)) (magit-status-setup-buffer directory) (if (y-or-n-p (if toplevel (format "%s is a repository.  Create another in %s? " toplevel directory) (format "Create repository in %s? " directory))) (progn (setq magit--refresh-cache nil) (magit-init directory))))) (magit-status-setup-buffer default-directory))
  (let ((magit--refresh-cache (or cache (list (cons 0 0))))) (if directory (let ((toplevel (magit-toplevel directory))) (setq directory (file-name-as-directory (expand-file-name directory))) (if (and toplevel (file-equal-p directory toplevel)) (magit-status-setup-buffer directory) (if (y-or-n-p (if toplevel (format "%s is a repository.  Create another in %s? " toplevel directory) (format "Create repository in %s? " directory))) (progn (setq magit--refresh-cache nil) (magit-init directory))))) (magit-status-setup-buffer default-directory)))
  (closure (t) (&optional directory cache) "Show the status of the current Git repository in a..." (interactive (let ((magit--refresh-cache (list (cons 0 0)))) (list (and (or current-prefix-arg (not ...)) (progn (magit--assert-usable-git) (magit-read-repository ...))) magit--refresh-cache))) (let ((magit--refresh-cache (or cache (list (cons 0 0))))) (if directory (let ((toplevel (magit-toplevel directory))) (setq directory (file-name-as-directory (expand-file-name directory))) (if (and toplevel (file-equal-p directory toplevel)) (magit-status-setup-buffer directory) (if (y-or-n-p ...) (progn ... ...)))) (magit-status-setup-buffer default-directory))))(nil ((4 . 5) (("/Users/offbyone/org/repo/" . config) . #<hash-table equal 142/145 0x4c1916f1>) (("/Users/offbyone/org/repo/" . magit-toplevel) . "/Users/offbyone/org/repo/") (("/Users/offbyone/org/repo/" "rev-parse" "--show-toplevel") . "/Users/offbyone/org/repo") (("/Users/offbyone/org/repo/spec/support/" . magit-toplevel) . "/Users/offbyone/org/repo/") (("/Users/offbyone/org/repo/spec/support/" "rev-parse" "--show-toplevel") . "/Users/offbyone/org/repo")))
  apply((closure (t) (&optional directory cache) "Show the status of the current Git repository in a..." (interactive (let ((magit--refresh-cache (list (cons 0 0)))) (list (and (or current-prefix-arg (not ...)) (progn (magit--assert-usable-git) (magit-read-repository ...))) magit--refresh-cache))) (let ((magit--refresh-cache (or cache (list (cons 0 0))))) (if directory (let ((toplevel (magit-toplevel directory))) (setq directory (file-name-as-directory (expand-file-name directory))) (if (and toplevel (file-equal-p directory toplevel)) (magit-status-setup-buffer directory) (if (y-or-n-p ...) (progn ... ...)))) (magit-status-setup-buffer default-directory)))) (nil ((4 . 5) (("/Users/offbyone/org/repo/" . config) . #<hash-table equal 142/145 0x4c1916f1>) (("/Users/offbyone/org/repo/" . magit-toplevel) . "/Users/offbyone/org/repo/") (("/Users/offbyone/org/repo/" "rev-parse" "--show-toplevel") . "/Users/offbyone/org/repo") (("/Users/offbyone/org/repo/spec/support/" . magit-toplevel) . "/Users/offbyone/org/repo/") (("/Users/offbyone/org/repo/spec/support/" "rev-parse" "--show-toplevel") . "/Users/offbyone/org/repo"))))
  magit-status(nil ((4 . 5) (("/Users/offbyone/org/repo/" . config) . #<hash-table equal 142/145 0x4c1916f1>) (("/Users/offbyone/org/repo/" . magit-toplevel) . "/Users/offbyone/org/repo/") (("/Users/offbyone/org/repo/" "rev-parse" "--show-toplevel") . "/Users/offbyone/org/repo") (("/Users/offbyone/org/repo/spec/support/" . magit-toplevel) . "/Users/offbyone/org/repo/") (("/Users/offbyone/org/repo/spec/support/" "rev-parse" "--show-toplevel") . "/Users/offbyone/org/repo")))
  funcall-interactively(magit-status nil ((4 . 5) (("/Users/offbyone/org/repo/" . config) . #<hash-table equal 142/145 0x4c1916f1>) (("/Users/offbyone/org/repo/" . magit-toplevel) . "/Users/offbyone/org/repo/") (("/Users/offbyone/org/repo/" "rev-parse" "--show-toplevel") . "/Users/offbyone/org/repo") (("/Users/offbyone/org/repo/spec/support/" . magit-toplevel) . "/Users/offbyone/org/repo/") (("/Users/offbyone/org/repo/spec/support/" "rev-parse" "--show-toplevel") . "/Users/offbyone/org/repo")))
  command-execute(magit-status)
offbyone commented 8 months ago

No code differences, as far as I can tell:

$ cd /Users/offbyone/.config/emacs/.local/straight/repos/forge/
$ git fetch --all
$ git diff origin/main
# no diff
$ cd ../emacsql/
$ git fetch --all
$ git diff origin/main
# no diff
$ cd ../closql/
$ git fetch --all
$ git diff origin/main
# no diff
tarsius commented 8 months ago

What does (oref-default 'forge-database version)) return?

In a new Emacs instance call (forge-db) and check if a message Please update %s package (database schema version %s < %s) is shown in the *Messages* buffer.

tarsius commented 8 months ago

Two new columns were indeed added to the repository recently. The database version was bumped in e65a0a53a466f0127228f328bb3d36d485c62e45, which also adds the new columns to existing databases.

offbyone commented 8 months ago
(oref-default 'forge-database version)
12 (#o14, #xc, ?\C-l)
Copying Forge database to /Users/offbyone/.config/emacs/.local/etc/forge/forge-database-v9-20240206-1146.sqlite...done
Upgrading Forge database from version 9 to 10...
Entering debugger...

And then in the debugger:

Debugger entered--Lisp error: (args-out-of-range [#<forge-database forge-database-4f9e697c> "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM6cHVsbHJlcTI5MD..." "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM=" 290810 open "fluffyf-x" "Increase Unicorn API & Decrease web " "2023-09-29T17:06:43Z" "0" nil nil t nil nil nil "master" "github/github" "fluffyf-x/rescaling-unicorn-for-proxinma" "github" "github/github" nil "<!-- Authors: Please fill out this form carefully ..." eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound nil "5284f7f6d1f0fb9854004aa634b5f3d4ed5b84b6" "b7bf713cfdc95405c951f06e8dce6124cd4c20af" nil "PR_kwADzluOho4" nil] 40)
  #f(compiled-function (class db row &optional resolve) #<bytecode 0x100427f1a861ce30>)(forge-pullreq #<forge-database forge-database-4f9e697c> (pullreq "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM6cHVsbHJlcTI5MD..." "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM=" 290810 open "fluffyf-x" "Increase Unicorn API & Decrease web " "2023-09-29T17:06:43Z" "0" nil nil t nil nil nil "master" "github/github" "fluffyf-x/rescaling-unicorn-for-proxinma" "github" "github/github" nil "<!-- Authors: Please fill out this form carefully ..." eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound nil "5284f7f6d1f0fb9854004aa634b5f3d4ed5b84b6" "b7bf713cfdc95405c951f06e8dce6124cd4c20af" nil "PR_kwADzluOho4" nil))
  apply(#f(compiled-function (class db row &optional resolve) #<bytecode 0x100427f1a861ce30>) forge-pullreq (#<forge-database forge-database-4f9e697c> (pullreq "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM6cHVsbHJlcTI5MD..." "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM=" 290810 open "fluffyf-x" "Increase Unicorn API & Decrease web " "2023-09-29T17:06:43Z" "0" nil nil t nil nil nil "master" "github/github" "fluffyf-x/rescaling-unicorn-for-proxinma" "github" "github/github" nil "<!-- Authors: Please fill out this form carefully ..." eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound nil "5284f7f6d1f0fb9854004aa634b5f3d4ed5b84b6" "b7bf713cfdc95405c951f06e8dce6124cd4c20af" nil "PR_kwADzluOho4" nil)))
  closql--remake-instance(forge-pullreq #<forge-database forge-database-4f9e697c> (pullreq "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM6cHVsbHJlcTI5MD..." "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM=" 290810 open "fluffyf-x" "Increase Unicorn API & Decrease web " "2023-09-29T17:06:43Z" "0" nil nil t nil nil nil "master" "github/github" "fluffyf-x/rescaling-unicorn-for-proxinma" "github" "github/github" nil "<!-- Authors: Please fill out this form carefully ..." eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound nil "5284f7f6d1f0fb9854004aa634b5f3d4ed5b84b6" "b7bf713cfdc95405c951f06e8dce6124cd4c20af" nil "PR_kwADzluOho4" nil))
  #f(compiled-function (row) #<bytecode -0x6adcbd10b039583>)((pullreq "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM6cHVsbHJlcTI5MD..." "Z2l0aHViLmNvbTowMTA6UmVwb3NpdG9yeTM=" 290810 open "fluffyf-x" "Increase Unicorn API & Decrease web " "2023-09-29T17:06:43Z" "0" nil nil t nil nil nil "master" "github/github" "fluffyf-x/rescaling-unicorn-for-proxinma" "github" "github/github" nil "<!-- Authors: Please fill out this form carefully ..." eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound eieio--unbound nil "5284f7f6d1f0fb9854004aa634b5f3d4ed5b84b6" "b7bf713cfdc95405c951f06e8dce6124cd4c20af" nil "PR_kwADzluOho4" nil))
  mapcar(#f(compiled-function (row) #<bytecode -0x6adcbd10b039583>) (... ... ... ... ... ... ... ... ... ... ... ... ... ... ...))
  #f(compiled-function (db &optional pred class) #<bytecode 0x1d34b785f5789fa2>)(#<forge-database forge-database-4f9e697c> nil forge-pullreq)
  apply(#f(compiled-function (db &optional pred class) #<bytecode 0x1d34b785f5789fa2>) #<forge-database forge-database-4f9e697c> (nil forge-pullreq))
  closql-entries(#<forge-database forge-database-4f9e697c> nil forge-pullreq)
  #f(compiled-function (cl--cnm db) #<bytecode 0x383d095e6c0a939>)(#f(compiled-function (&rest args) #<bytecode 0x13d0e00b97c1b09d>) #<forge-database forge-database-4f9e697c>)
  apply(#f(compiled-function (cl--cnm db) #<bytecode 0x383d095e6c0a939>) #f(compiled-function (&rest args) #<bytecode 0x13d0e00b97c1b09d>) #<forge-database forge-database-4f9e697c>)
  #f(compiled-function (db) #<bytecode 0xace2fd1308a2d3d>)(#<forge-database forge-database-4f9e697c>)
  apply(#f(compiled-function (db) #<bytecode 0xace2fd1308a2d3d>) #<forge-database forge-database-4f9e697c> nil)
  closql--db-update-schema(#<forge-database forge-database-4f9e697c>)
  #f(compiled-function (class &optional livep connection-class) #<bytecode 0x756a26f88fb7fa0>)(forge-database nil nil)
  apply(#f(compiled-function (class &optional livep connection-class) #<bytecode 0x756a26f88fb7fa0>) forge-database (nil nil))
  closql-db(forge-database nil nil)
  forge-db()
  eval-expression((forge-db) nil nil 127)
  funcall-interactively(eval-expression (forge-db) nil nil 127)
  command-execute(eval-expression)

(as an aside, thank you for the time you're taking on this!)

tarsius commented 8 months ago

I forgot that I cannot use objects while updating the schemata. I've fixed that now and have tested upgrading from v9 to v12.

offbyone commented 8 months ago

I can confirm that this patch fixed both of the issues I've encountered. Many thanks!