syl20bnr / spacemacs

A community-driven Emacs distribution - The best editor is neither Emacs nor Vim, it's Emacs *and* Vim!
http://spacemacs.org
GNU General Public License v3.0
23.71k stars 4.9k forks source link

Creating gists fails with (wrong-type-argument stringp nil) #15093

Closed robbyoconnor closed 3 years ago

robbyoconnor commented 3 years ago

Description :octocat:

Creating gists fails with

Reproduction guide :beetle:

Observed behaviour: :eyes: :broken_heart:

Error (wrong-type-argument stringp nil) is thrown.

Expected behaviour: :heart: :smile:

Gist is created and URL is placed in my clipboard

System Info :computer:

Backtrace :paw_prints:

Debugger entered--Lisp error: (wrong-type-argument stringp nil)
  menu-bar-update-yank-menu(nil nil)
  #<subr kill-new>(nil)
  apply(#<subr kill-new> nil)
  kill-new(nil)
  (let ((location (eieio-oref gist ':html-url))) (gist-list-reload 'current-user t) (message gist-created-fmt location) (if gist-view-gist (progn (browse-url location))) (kill-new location))
  gist-created-callback(#<gh-gist-gist gh-gist-gist-155d2df7b1b6>)
  funcall(gist-created-callback #<gh-gist-gist gh-gist-gist-155d2df7b1b6>)
  (let ((gh-profile-current-profile (symbol-value G613))) (funcall (or (symbol-value G612) 'gist-created-callback) gist))
  (lambda (G612 G613 gist) (let ((gh-profile-current-profile (symbol-value G613))) (funcall (or (symbol-value G612) 'gist-created-callback) gist)))(--cb-- --profile-- #<gh-gist-gist gh-gist-gist-155d2df7b1b6>)
  apply((lambda (G612 G613 gist) (let ((gh-profile-current-profile (symbol-value G613))) (funcall (or (symbol-value G612) 'gist-created-callback) gist))) --cb-- --profile-- #<gh-gist-gist gh-gist-gist-155d2df7b1b6>)
  (lambda (&rest --cl-rest--) (apply #'(lambda (G612 G613 gist) (let ((gh-profile-current-profile ...)) (funcall (or ... ...) gist))) '--cb-- '--profile-- --cl-rest--))(#<gh-gist-gist gh-gist-gist-155d2df7b1b6>)
  funcall((lambda (&rest --cl-rest--) (apply #'(lambda (G612 G613 gist) (let ((gh-profile-current-profile ...)) (funcall (or ... ...) gist))) '--cb-- '--profile-- --cl-rest--)) #<gh-gist-gist gh-gist-gist-155d2df7b1b6>)
  (cond ((and (object-p cb) (object-of-class-p cb 'gh-url-callback)) (gh-url-callback-run cb resp)) ((or (functionp cb) (symbolp cb)) (funcall cb data)) (t (apply (car cb) data (cdr cb))))
  (while --dolist-tail-- (setq cb (car --dolist-tail--)) (cond ((and (object-p cb) (object-of-class-p cb 'gh-url-callback)) (gh-url-callback-run cb resp)) ((or (functionp cb) (symbolp cb)) (funcall cb data)) (t (apply (car cb) data (cdr cb)))) (object-remove-from-list resp :callbacks cb) (setq --dolist-tail-- (cdr --dolist-tail--)))
  (let ((--dolist-tail-- (funcall copy-list (eieio-oref resp ':callbacks))) cb) (while --dolist-tail-- (setq cb (car --dolist-tail--)) (cond ((and (object-p cb) (object-of-class-p cb 'gh-url-callback)) (gh-url-callback-run cb resp)) ((or (functionp cb) (symbolp cb)) (funcall cb data)) (t (apply (car cb) data (cdr cb)))) (object-remove-from-list resp :callbacks cb) (setq --dolist-tail-- (cdr --dolist-tail--))))
  (let ((data (eieio-oref resp ':data))) (let ((--dolist-tail-- (funcall copy-list (eieio-oref resp ':callbacks))) cb) (while --dolist-tail-- (setq cb (car --dolist-tail--)) (cond ((and (object-p cb) (object-of-class-p cb 'gh-url-callback)) (gh-url-callback-run cb resp)) ((or (functionp cb) (symbolp cb)) (funcall cb data)) (t (apply (car cb) data (cdr cb)))) (object-remove-from-list resp :callbacks cb) (setq --dolist-tail-- (cdr --dolist-tail--)))))
  (let ((copy-list #'(lambda (list) (if (consp list) (let (...) (while ... ...) (prog1 ... ...)) (car list))))) (let ((data (eieio-oref resp ':data))) (let ((--dolist-tail-- (funcall copy-list (eieio-oref resp ':callbacks))) cb) (while --dolist-tail-- (setq cb (car --dolist-tail--)) (cond ((and (object-p cb) (object-of-class-p cb ...)) (gh-url-callback-run cb resp)) ((or (functionp cb) (symbolp cb)) (funcall cb data)) (t (apply (car cb) data (cdr cb)))) (object-remove-from-list resp :callbacks cb) (setq --dolist-tail-- (cdr --dolist-tail--))))))
  (lambda (resp) (let ((copy-list #'(lambda (list) (if ... ... ...)))) (let ((data (eieio-oref resp ':data))) (let ((--dolist-tail-- (funcall copy-list ...)) cb) (while --dolist-tail-- (setq cb (car --dolist-tail--)) (cond (... ...) (... ...) (t ...)) (object-remove-from-list resp :callbacks cb) (setq --dolist-tail-- (cdr --dolist-tail--)))))) resp)(#<gh-api-paged-response gh-api-paged-response-155d2f43ddf8>)
  apply((lambda (resp) (let ((copy-list #'(lambda (list) (if ... ... ...)))) (let ((data (eieio-oref resp ':data))) (let ((--dolist-tail-- (funcall copy-list ...)) cb) (while --dolist-tail-- (setq cb (car --dolist-tail--)) (cond (... ...) (... ...) (t ...)) (object-remove-from-list resp :callbacks cb) (setq --dolist-tail-- (cdr --dolist-tail--)))))) resp) #<gh-api-paged-response gh-api-paged-response-155d2f43ddf8>)
  #f(compiled-function (cl-cnm resp) #<bytecode 0x146f8cdb4657be3b>)(#f(compiled-function (&rest cnm-args) #<bytecode -0x19569fd0e18f263d>) #<gh-api-paged-response gh-api-paged-response-155d2f43ddf8>)
  apply(#f(compiled-function (cl-cnm resp) #<bytecode 0x146f8cdb4657be3b>) #f(compiled-function (&rest cnm-args) #<bytecode -0x19569fd0e18f263d>) #<gh-api-paged-response gh-api-paged-response-155d2f43ddf8>)
  #f(compiled-function (&rest args) #<bytecode 0x1fc5dbd5f410de1f>)(#<gh-api-paged-response gh-api-paged-response-155d2f43ddf8>)
  apply(#f(compiled-function (&rest args) #<bytecode 0x1fc5dbd5f410de1f>) #<gh-api-paged-response gh-api-paged-response-155d2f43ddf8> nil)
  gh-url-response-run-callbacks(#<gh-api-paged-response gh-api-paged-response-155d2f43ddf8>)
  (if (eieio-oref resp ':data-received) (gh-url-response-run-callbacks resp) resp)
  (lambda (resp callback) (object-add-to-list resp :callbacks callback t) (if (eieio-oref resp ':data-received) (gh-url-response-run-callbacks resp) resp))(#<gh-api-paged-response gh-api-paged-response-155d2f43ddf8> (lambda (&rest --cl-rest--) (apply #'(lambda (G612 G613 gist) (let ((gh-profile-current-profile ...)) (funcall (or ... ...) gist))) '--cb-- '--profile-- --cl-rest--)))
  apply((lambda (resp callback) (object-add-to-list resp :callbacks callback t) (if (eieio-oref resp ':data-received) (gh-url-response-run-callbacks resp) resp)) (#<gh-api-paged-response gh-api-paged-response-155d2f43ddf8> (lambda (&rest --cl-rest--) (apply #'(lambda (G612 G613 gist) (let (...) (funcall ... gist))) '--cb-- '--profile-- --cl-rest--))))
  #f(compiled-function (cl-cnm resp callback) #<bytecode -0x1a3c410b34617dee>)(#f(compiled-function (&rest cnm-args) #<bytecode 0x2a86e595e70d8be>) #<gh-api-paged-response gh-api-paged-response-155d2f43ddf8> (lambda (&rest --cl-rest--) (apply #'(lambda (G612 G613 gist) (let ((gh-profile-current-profile ...)) (funcall (or ... ...) gist))) '--cb-- '--profile-- --cl-rest--)))
  apply(#f(compiled-function (cl-cnm resp callback) #<bytecode -0x1a3c410b34617dee>) #f(compiled-function (&rest cnm-args) #<bytecode 0x2a86e595e70d8be>) (#<gh-api-paged-response gh-api-paged-response-155d2f43ddf8> (lambda (&rest --cl-rest--) (apply #'(lambda (G612 G613 gist) (let (...) (funcall ... gist))) '--cb-- '--profile-- --cl-rest--))))
  #f(compiled-function (&rest args) #<bytecode 0x1130497b0d5be005>)(#<gh-api-paged-response gh-api-paged-response-155d2f43ddf8> (lambda (&rest --cl-rest--) (apply #'(lambda (G612 G613 gist) (let ((gh-profile-current-profile ...)) (funcall (or ... ...) gist))) '--cb-- '--profile-- --cl-rest--)))
  apply(#f(compiled-function (&rest args) #<bytecode 0x1130497b0d5be005>) #<gh-api-paged-response gh-api-paged-response-155d2f43ddf8> (lambda (&rest --cl-rest--) (apply #'(lambda (G612 G613 gist) (let ((gh-profile-current-profile ...)) (funcall (or ... ...) gist))) '--cb-- '--profile-- --cl-rest--)))
  gh-url-add-response-callback(#<gh-api-paged-response gh-api-paged-response-155d2f43ddf8> (lambda (&rest --cl-rest--) (apply #'(lambda (G612 G613 gist) (let ((gh-profile-current-profile ...)) (funcall (or ... ...) gist))) '--cb-- '--profile-- --cl-rest--)))
  (let* ((api (gist-get-api)) (gist (make-instance 'gh-gist-gist-stub :public (or (not private) json-false) :description (or description "") :files files)) (resp (gh-gist-new api gist))) (gh-url-add-response-callback resp (let ((--cl-profile-- (make-symbol "--profile--")) (--cl-cb-- (make-symbol "--cb--"))) (progn (let* ((v --cl-profile--)) (set v (eieio-oref api ':profile))) (let* ((v --cl-cb--)) (set v callback))) (list 'lambda '(&rest --cl-rest--) (list 'apply (list 'function #'(lambda ... ...)) (list 'quote --cl-cb--) (list 'quote --cl-profile--) '--cl-rest--)))))
  gist-internal-new((#<gh-gist-gist-file gh-gist-gist-file-155d30fe12de>) t nil nil)
  (let* ((file (or (buffer-file-name) (buffer-name))) (name (file-name-nondirectory file)) (ext (or (cdr (assoc major-mode gist-supported-modes-alist)) (file-name-extension file) "txt")) (proposal-fname (concat (file-name-sans-extension name) "." ext)) (fname (gist-ask-for-filename-maybe proposal-fname)) (files (list (make-instance 'gh-gist-gist-file :filename fname :content (buffer-substring begin end))))) (gist-internal-new files private (gist-ask-for-description-maybe) callback))
  gist-region(1 516 t)
  gist-region-private(1 516)
  gist-buffer-private()
  funcall-interactively(gist-buffer-private)
  command-execute(gist-buffer-private)
robbyoconnor commented 3 years ago

cc @syl20bnr @smile13241324 @bmag(not sure if you're still around, I've been a bit detached)

lebensterben commented 3 years ago

can confirm. we should instead remove gist package until it's maintained again.

robbyoconnor commented 3 years ago

Is there one that is maintained @lebensterben ?

robbyoconnor commented 3 years ago

PR made #15098

lebensterben commented 3 years ago

@robbyoconnor unfortunately nope AFAIK. the owner of the repo is apparently still alive as he has deleted some comments earlier this year. But there's no sign of continuing maintainance.

robbyoconnor commented 3 years ago

@lebensterben then just removing it is fine.