Subject: 28.0.50; Error: "Agenda file ... is not in Org mode"
From: Michael Heerdegen <[email-masked]>
To: [email-masked]
Cc: Lars Ingebrigtsen <[email-masked]>
Date: Wed, 17 Feb 2021 00:49:17 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello,

ok, this one is new - two days old maybe?

When starting Emacs (with my config) I get:

| Debugger entered--Lisp error: (error "Agenda file /home/micha/gnu-emacs/todo/todo.org is not in Org mode")
|   signal(error ("Agenda file /home/micha/gnu-emacs/todo/todo.org is not in Org mode"))
|   error("Agenda file %s is not in Org mode" "/home/micha/gnu-emacs/todo/todo.org")
|   #f(compiled-function (file date &rest args) #<bytecode 0x8dfabcc8948981f>)("/home/micha/gnu-emacs/todo/todo.org" (2 17 2021) :deadline :scheduled :timestamp :sexp)
|   apply(#f(compiled-function (file date &rest args) #<bytecode 0x8dfabcc8948981f>) ("/home/micha/gnu-emacs/todo/todo.org" (2 17 2021) :deadline :scheduled :timestamp :sexp))
|   (mapcar #'(lambda (entry) (let ((entry-tags (get-text-property 0 'tags entry))) (cond ((equal "past-scheduled" (get-text-property 0 ... entry)) nil) ((member "noalarmclock" entry-tags) nil) ((and (member "alarmclock" entry-tags) (not ...)) (org-add-props entry nil 'time-of-day 0)) (t entry)))) (apply org-agenda-get-day-entries-orig args))
|   (delq nil (mapcar #'(lambda (entry) (let ((entry-tags (get-text-property 0 ... entry))) (cond ((equal "past-scheduled" ...) nil) ((member "noalarmclock" entry-tags) nil) ((and ... ...) (org-add-props entry nil ... 0)) (t entry)))) (apply org-agenda-get-day-entries-orig args)))
|   (let ((entries (delq nil (mapcar #'(lambda (entry) (let ... ...)) (apply org-agenda-get-day-entries-orig args))))) (let ((--dolist-tail-- entries)) (while --dolist-tail-- (let ((e (car --dolist-tail--))) (if (get-text-property 1 'time-of-day e) (progn (let (...) (put-text-property 0 ... ... ... txt)))) (setq --dolist-tail-- (cdr --dolist-tail--))))) entries)
|   org-agenda-get-day-entries("/home/micha/gnu-emacs/todo/todo.org" (2 17 2021) :deadline :scheduled :timestamp :sexp)
|   apply(org-agenda-get-day-entries "/home/micha/gnu-emacs/todo/todo.org" (2 17 2021) (:deadline :scheduled :timestamp :sexp))
|   org-agenda-to-appt(nil (closure ((#:--err) cl-struct-my-register-with-annotation-tags cl-struct-register-backup-tags info-lookup-alist edebug-backtrace-buffer wdired-allow-to-change-permissions cl-struct-my-dired-marked-files-tags company-active-map company-idle-delay @@@my-interned-symbol-that-no-one-ever-used@@@ my-minibuffer---is-_-mode-map my-recorded-backtrace t) (entry) (let ((entry-taglist (get-text-property 0 'tags entry)) (location-tags '("apolda" "aalen"))) (not (or (cl-intersection (remove (downcase ...) location-tags) entry-taglist))))) :deadline :scheduled :timestamp :sexp)
|   apply(org-agenda-to-appt nil (closure ((#:--err) cl-struct-my-register-with-annotation-tags cl-struct-register-backup-tags info-lookup-alist edebug-backtrace-buffer wdired-allow-to-change-permissions cl-struct-my-dired-marked-files-tags company-active-map company-idle-delay @@@my-interned-symbol-that-no-one-ever-used@@@ my-minibuffer---is-_-mode-map my-recorded-backtrace t) (entry) (let ((entry-taglist (get-text-property 0 'tags entry)) (location-tags '("apolda" "aalen"))) (not (or (cl-intersection (remove (downcase ...) location-tags) entry-taglist))))) (:deadline :scheduled :timestamp :sexp))
|   (progn (fset 'org-agenda-get-day-entries #:vnew) (fset 'appt-add #:vnew) (apply org-agenda-to-appt-function refresh (funcall (or filter-fun #'identity) filter) (funcall (or get-args-fun #'identity) args)))
|   (unwind-protect (progn (fset 'org-agenda-get-day-entries #:vnew) (fset 'appt-add #:vnew) (apply org-agenda-to-appt-function refresh (funcall (or filter-fun #'identity) filter) (funcall (or get-args-fun #'identity) args))) (fset 'org-agenda-get-day-entries #:old) (fset 'appt-add #:old))
|   (let* ((#:vnew #'(lambda (time msg warntime) (if (and (stringp warntime) (not ...)) (progn (setq warntime ...))) (if (alarm-clock-org-agenda-to-alarm-clock--time-ok-p time warntime) (progn (let ... ...))))) (#:vnew #'(lambda (&rest args) (let ((entries ...)) (let (...) (while --dolist-tail-- ...)) entries))) (#:old (symbol-function 'org-agenda-get-day-entries)) (#:old (symbol-function 'appt-add))) (unwind-protect (progn (fset 'org-agenda-get-day-entries #:vnew) (fset 'appt-add #:vnew) (apply org-agenda-to-appt-function refresh (funcall (or filter-fun #'identity) filter) (funcall (or get-args-fun #'identity) args))) (fset 'org-agenda-get-day-entries #:old) (fset 'appt-add #:old)))
|   (let ((org-agenda-get-day-entries-orig (symbol-function 'org-agenda-get-day-entries))) (let* ((#:vnew #'(lambda (time msg warntime) (if (and ... ...) (progn ...)) (if (alarm-clock-org-agenda-to-alarm-clock--time-ok-p time warntime) (progn ...)))) (#:vnew #'(lambda (&rest args) (let (...) (let ... ...) entries))) (#:old (symbol-function 'org-agenda-get-day-entries)) (#:old (symbol-function 'appt-add))) (unwind-protect (progn (fset 'org-agenda-get-day-entries #:vnew) (fset 'appt-add #:vnew) (apply org-agenda-to-appt-function refresh (funcall (or filter-fun #'identity) filter) (funcall (or get-args-fun #'identity) args))) (fset 'org-agenda-get-day-entries #:old) (fset 'appt-add #:old))))
|   (closure ((predicate) (get-args-fun) (filter-fun) alarm-clock-in-mode-line-mode cl-struct-alarm-clock-tags t) (org-agenda-to-appt-function &optional refresh filter &rest args) (let ((org-agenda-get-day-entries-orig (symbol-function 'org-agenda-get-day-entries))) (let* ((#:vnew #'(lambda ... ... ...)) (#:vnew #'(lambda ... ...)) (#:old (symbol-function 'org-agenda-get-day-entries)) (#:old (symbol-function 'appt-add))) (unwind-protect (progn (fset 'org-agenda-get-day-entries #:vnew) (fset 'appt-add #:vnew) (apply org-agenda-to-appt-function refresh (funcall ... filter) (funcall ... args))) (fset 'org-agenda-get-day-entries #:old) (fset 'appt-add #:old)))))(org-agenda-to-appt nil (closure ((#:--err) cl-struct-my-register-with-annotation-tags cl-struct-register-backup-tags info-lookup-alist edebug-backtrace-buffer wdired-allow-to-change-permissions cl-struct-my-dired-marked-files-tags company-active-map company-idle-delay @@@my-interned-symbol-that-no-one-ever-used@@@ my-minibuffer---is-_-mode-map my-recorded-backtrace t) (entry) (let ((entry-taglist (get-text-property 0 'tags entry)) (location-tags '("apolda" "aalen"))) (not (or (cl-intersection (remove (downcase ...) location-tags) entry-taglist))))) :deadline :scheduled :timestamp :sexp)
|   apply((closure ((predicate) (get-args-fun) (filter-fun) alarm-clock-in-mode-line-mode cl-struct-alarm-clock-tags t) (org-agenda-to-appt-function &optional refresh filter &rest args) (let ((org-agenda-get-day-entries-orig (symbol-function 'org-agenda-get-day-entries))) (let* ((#:vnew #'(lambda ... ... ...)) (#:vnew #'(lambda ... ...)) (#:old (symbol-function 'org-agenda-get-day-entries)) (#:old (symbol-function 'appt-add))) (unwind-protect (progn (fset 'org-agenda-get-day-entries #:vnew) (fset 'appt-add #:vnew) (apply org-agenda-to-appt-function refresh (funcall ... filter) (funcall ... args))) (fset 'org-agenda-get-day-entries #:old) (fset 'appt-add #:old))))) org-agenda-to-appt nil (closure ((#:--err) cl-struct-my-register-with-annotation-tags cl-struct-register-backup-tags info-lookup-alist edebug-backtrace-buffer wdired-allow-to-change-permissions cl-struct-my-dired-marked-files-tags company-active-map company-idle-delay @@@my-interned-symbol-that-no-one-ever-used@@@ my-minibuffer---is-_-mode-map my-recorded-backtrace t) (entry) (let ((entry-taglist (get-text-property 0 'tags entry)) (location-tags '("apolda" "aalen"))) (not (or (cl-intersection (remove (downcase ...) location-tags) entry-taglist))))) (:deadline :scheduled :timestamp :sexp))
|   org-agenda-to-alarm-clock()
|   apply(org-agenda-to-alarm-clock nil)
|   timer-event-handler([t 24621 40944 0 86400 org-agenda-to-alarm-clock nil nil 0])

The `org-agenda-to-alarm-clock' is my own stuff, but the error happens
in an ordinary `org-agenda-get-day-entries' call.  Haven't looked
further, haven't studied the changes yet.  Does the backtrace ring a
bell?  What I can say is that bootstrapping doesn't "fix" it.  The
problem started to appear yesterday after fetching and rebuilding, say,
around 28 hours ago.  The day before (I build daily) the thing worked.

Sorry, I have no recipe, if you need to reproduce this you will at least
need an org file with scheduled entries, then you could try to open the
org agenda with entries for that file, or try to call
`org-agenda-get-day-entries' directly like the appearance in the
backtrace.  Or tell me when I could try something on my side.

TIA,

Michael.

In GNU Emacs 28.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.24, cairo version 1.16.0)
 of 2021-02-17 built on drachen
Repository revision: 415330dde314fe53870c246466f6a48aa5cef395
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12010000
System Description: Debian GNU/Linux bullseye/sid