From mboxrd@z Thu Jan 1 00:00:00 1970 From: Omid Subject: M-x org-publish in 8.3.1 results in error "org-check-agenda-file: Wrong type argument: stringp, nil" Date: Sat, 15 Aug 2015 02:51:22 -0400 Message-ID: <55CEE16A.3070309@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:52949) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZQVJQ-0001pO-42 for emacs-orgmode@gnu.org; Sat, 15 Aug 2015 02:51:29 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZQVJM-0000uX-UK for emacs-orgmode@gnu.org; Sat, 15 Aug 2015 02:51:28 -0400 Received: from mail-yk0-x229.google.com ([2607:f8b0:4002:c07::229]:33871) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZQVJM-0000tn-Pf for emacs-orgmode@gnu.org; Sat, 15 Aug 2015 02:51:24 -0400 Received: by ykdt205 with SMTP id t205so86861558ykd.1 for ; Fri, 14 Aug 2015 23:51:23 -0700 (PDT) Received: from [10.0.0.4] (c-98-230-101-123.hsd1.fl.comcast.net. [98.230.101.123]) by smtp.googlemail.com with ESMTPSA id w62sm3846232ywe.50.2015.08.14.23.51.22 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 14 Aug 2015 23:51:23 -0700 (PDT) List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-org Hello, In Emacs 24.5.1, after updating to the latest Org mode in ELPA (8.3.1-16-gf6aa53-elpa), org-publish results in the error "org-check-agenda-file: Wrong type argument: stringp, nil" on a project that used to publish without errors using the latest Org 8.2. Here is the part of a backtrace of the error (using M-x toggle-debug-on-error) that I believe is relevant Debugger entered--Lisp error: (wrong-type-argument stringp nil) file-exists-p(nil) org-check-agenda-file(nil) byte-code("") [file pos org-agenda-ignore-properties org-todo-keywords-for-agenda org-todo-keywords-1 org-done-keywords-for-agenda bufferp org-check-agenda-file org-get-agenda-file-buffer org-set-regexps-and-options tags-only category org-refresh-category-properties stats org-refresh-stats-properties effort org-refresh-effort-properties appt org-refresh-properties "APPT_WARNTIME" org-appt-warntime append copy-sequence delete-dups org-uniquify-alist buffer-modified-p t nil ((byte-code " [modified restore-buffer-modified-p nil] 2)) remove-text-properties re-search-forward org-at-heading-p add-text-properties point-at-bol org-end-of-subtree format "^\\* .*\\<%s\\>" match-data ((byte-code "" [save-match-data-internal set-match-data evaporate] 3)) org-in-commented-heading-p 0 org-done-keywords org-todo-keyword-alist-for-agenda org-todo-key-alist org-tag-alist-for-agenda org-tag-alist org-tag-persistent-alist list res org-group-tags ...] 5) org-agenda-prepare-buffers((nil)) org-map-entries(#[nil "\300\301 !\207" [org-reduced-level org-current-level] 2]) call-interactively(org-publish record nil) command-execute(org-publish record) execute-extended-command(nil "org-publish") I had to remove the arguments of byte-code() because they contained special characters that couldn't be pasted in email. Searching for this error, the only instance I could find was at https://lists.gnu.org/archive/html/emacs-orgmode/2014-11/msg00343.html reporting a the same error message, but the solution suggested there is already implemented in 8.3 as a fix and is not applicable in this case. The relevant part of org.el is (defun org-check-agenda-file (file) "Make sure FILE exists. If not, ask user what to do." (when (not (file-exists-p file)) (message "Non-existent agenda file %s. [R]emove from list or [A]bort?" (abbreviate-file-name file)) (let ((r (downcase (read-char-exclusive)))) (cond ((equal r ?r) (org-remove-file file) (throw 'nextfile t)) (t (user-error "Abort")))))) How can I solve this problem? Thanks, Omid