From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id SE9uO+bpdGG9DgEAgWs5BA (envelope-from ) for ; Sun, 24 Oct 2021 07:06:46 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id 0EzjNubpdGGoMgAAbx9fmQ (envelope-from ) for ; Sun, 24 Oct 2021 05:06:46 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 0022522DD0 for ; Sun, 24 Oct 2021 07:06:45 +0200 (CEST) Received: from localhost ([::1]:50138 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1meViW-0002lg-Mn for larch@yhetil.org; Sun, 24 Oct 2021 01:06:44 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:49174) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1meVh6-0002jS-FI for emacs-orgmode@gnu.org; Sun, 24 Oct 2021 01:05:20 -0400 Received: from relay-egress-host.us-east-2.a.mail.umich.edu ([18.217.159.240]:60310 helo=forgiving-culhwch.relay-egress.a.mail.umich.edu) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1meVh3-00006I-4e for emacs-orgmode@gnu.org; Sun, 24 Oct 2021 01:05:16 -0400 Received: from valued-bakeneko.authn-relay.a.mail.umich.edu (ip-10-0-74-28.us-east-2.compute.internal [10.0.74.28]) by forgiving-culhwch.relay-egress.a.mail.umich.edu with ESMTPS id 6174E987.ED5D8.21CF4963.2681599; Sun, 24 Oct 2021 01:05:11 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=umich.edu; s=relay-2018-08-29; t=1635051911; bh=e1/9BaisSpfkq7WZZn3d4rnw1xEHyWs1bT+f2E/WJbk=; h=To:cc:From:Subject:In-reply-to:References:Date; b=TdVtdNIUW2TgDQwLauuesFxTWfdcHSud9qQ6CD/lH2JeNHNvVvFwMi6dQj3lb0qyE pzBYqhwZILEw4hqF7SBBEt7cKo2Vy8Kt5PTimCVUTJGa8bRuOrbIfY2kXJpTnjn85H M6xfmWWwAZdduaKlbaib51n1N1FYExv5qDKrhmGFWSzGJdnXU/ZdDmpm5JbYTxVisn /s4+z602LSbSc81ipGuoWFGzPl+nYSxdcUzfiu9AMQJyLfOB5OKHNLT0Nmq9JDOlgF Q01cFkQutyBvT/irusM188RrvdkLe272QT7S5UJD++0/Btvg28ceMsGdwBMloziVlM 0cOszFMdXicBw== Received: from localhost (Mismatch [95.14.69.235]) by valued-bakeneko.authn-relay.a.mail.umich.edu with ESMTPSA id 6174E986.971D7.68B4D59C.24239; Sun, 24 Oct 2021 01:05:11 -0400 To: Tim Cross From: Greg Minshall Subject: Re: Fwd: errors when using org-agenda In-reply-to: References: <733d6598-0efd-519d-ba13-08d127256b87@gmail.com> <3dd9032d-c18e-47ec-a26d-a3c2f1e3cbf7@gmail.com> <1366768.1634984772@apollo2.minshall.org> Comments: In-reply-to Tim Cross message dated "Sat, 23 Oct 2021 22:34:02 +1100." X-Mailer: MH-E 8.6+git; nmh 1.7.1; GNU Emacs 27.2 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <1522774.1635051905.1@apollo2.minshall.org> Content-Transfer-Encoding: quoted-printable Date: Sun, 24 Oct 2021 08:05:05 +0300 Message-ID: <1522775.1635051905@apollo2.minshall.org> Received-SPF: pass client-ip=18.217.159.240; envelope-from=minshall@umich.edu; helo=forgiving-culhwch.relay-egress.a.mail.umich.edu X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: emacs-orgmode@gnu.org Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1635052006; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=e1/9BaisSpfkq7WZZn3d4rnw1xEHyWs1bT+f2E/WJbk=; b=ePCnVPMFgAtILLf0m2WXJ/JqZnDUliKGFk74bV27cVM6KaRWfkUubX39ZWyarY1lMv7tGS usDdN7ppZiwlENIFrl/LMZdxx6nilnJfEu+eTvxoQm4UPTByVzFR9+ynqAxG4l0TPnr+XP qZRRsalAQAFmDA+CVvqwvy+1JrFV1Ke4XWqnGR3O8m7Mhe3LPFw20q7H/1J+fztB32tJqf LotGeGry2Vb4Zi0SmPqkfQ7oErQJNLpM9Dn05z98mnwFIOYQW1a0addlSHRmA9CJ2o8k5s TJicqV7gyOpRg8WZmRV2BbaWllQSWI1mc47V9Amrpo+N6Cm55R0SYlq1xHNK6g== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1635052006; a=rsa-sha256; cv=none; b=sBUfjH0Mqs4aCD9A6HrcxtNT6HzluUo9x11t3PWCbG10+XqP19TPnD05mIbYCu3VxGTNw5 gRdKD5e6ZcPLwJXtvoF4cl3MescnxjVFgeOTFfiVr2LDqykPR6Wibmz3sBJpOmApESOkAn c8M8LEvfS6l9ppTFLLEJJq7VGnmQexIzDJdD8vhmk3b5jvGuZ3EptTmEu+ICvOIgaN0I+C 8KYzdVV+oKbcpRnOcGMRsM7DR49p0V2ihXiB2Q38B3n7P3/oLZiPlFL6S8RWB2WON+E+ZD T4PYIq68vAgyeTG36UuLjx6tUmhHPgk7WazAO2BRbbwWW4ucIRcr91mfmsWUqg== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=umich.edu header.s=relay-2018-08-29 header.b=TdVtdNIU; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Spam-Score: -3.12 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=umich.edu header.s=relay-2018-08-29 header.b=TdVtdNIU; dmarc=pass (policy=none) header.from=umich.edu; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Queue-Id: 0022522DD0 X-Spam-Score: -3.12 X-Migadu-Scanner: scn0.migadu.com X-TUID: AUQ61L/V5yQu Tim, i wonder if the emacs variable `load-history` might be of (approximate) help? i submit a starter routine below. as the comments say: caveat, caveat, caveat. i don't think something as uncertain as this would be a candidate for normal run-time checking (and, i'm not even sure when one would want to run such a thing -- maybe as each module is loaded, if it were faster). but, maybe it could be run as part of `M-x org-submit-bug-report`? either to notify the user, or to include with the bug report? wdyt? (such a nice acronym!) cheers, Greg ---- notice the canned list of files. one could, i suspect, go find where org.el came from, then use all the .el files there. (or the union of all the files in *all* the directories that loaded an org.el.) ---- (defun org--check-load-history (&optional where) "check to see if there *appears* to *maybe* have be a \"mixed installation\" of org-mode running. if there appear to be more than one directory holding org package(-like) files, the names of those directories, along with the relevant files in each, are returned as a vector of explanatory strings. = this routine is subject to both type I and type II errors (false positives, false negatives). we have a canned list of org .el file names, and we look to see if those files exist in more than one directory that has been loaded (using the `load-list` variable). if there does not appear to be the possibility of a \"mixed installation\", the if the optional argument WHERE is non-nil, and there is only one directory containing org package(-like) files, that directory name is returned. if WHERE is nil, nil is returned." (require 'seq) (require 's) (let* ((org-files '("ob-lob.el" "oc-bibtex.el" "org-crypt.el" "org-persist.el" "ob-C.el" "ob-lua.el" "oc-csl.el" "org-ctags.el" "org-plot.el" "ob-R.el" "ob-makefile.el" "oc-natbib.el" "org-datetree.el" "o= rg-protocol.el" "ob-awk.el" "ob-matlab.el" "oc.el" "org-duration.el" "org-refi= le.el" "ob-calc.el" "ob-maxima.el" "ol-bbdb.el" "org-element.el" "org= -src.el" "ob-clojure.el" "ob-ocaml.el" "ol-bibtex.el" "org-entities.el"= "org-table.el" "ob-comint.el" "ob-octave.el" "ol-docview.el" "org-faces.el" "= org-tempo.el" "ob-core.el" "ob-org.el" "ol-doi.el" "org-feed.el" "org-timer.= el" "ob-css.el" "ob-perl.el" "ol-eshell.el" "org-footnote.el" "org= -version.el" "ob-ditaa.el" "ob-plantuml.el" "ol-eww.el" "org-goto.el" "org-= version.el~" "ob-dot.el" "ob-processing.el" "ol-gnus.el" "org-habit.el" "or= g.el" "ob-emacs-lisp.el" "ob-python.el" "ol-info.el" "org-id.el" "ox= -ascii.el" "ob-eshell.el" "ob-ref.el" "ol-irc.el" "org-indent.el" "ox-bea= mer.el" "ob-eval.el" "ob-ruby.el" "ol-man.el" "org-inlinetask.el" "ox-= html.el" "ob-exp.el" "ob-sass.el" "ol-mhe.el" "org-install.el" "ox-ical= endar.el" "ob-forth.el" "ob-scheme.el" "ol-rmail.el" "org-keys.el" "ox-k= oma-letter.el" "ob-fortran.el" "ob-screen.el" "ol-w3m.el" "org-lint.el" "ox-l= atex.el" "ob-gnuplot.el" "ob-sed.el" "ol.el" "org-list.el" "ox-man.el" "ob-groovy.el" "ob-shell.el" "org-agenda.el" "org-loaddefs.el"= "ox-md.el" "ob-haskell.el" "ob-sql.el" "org-archive.el" "org-loaddefs.el~= " "ox-odt.el" "ob-java.el" "ob-sqlite.el" "org-attach-git.el" "org-macro.el"= "ox-org.el" "ob-js.el" "ob-table.el" "org-attach.el" "org-macs.el" "ox-pub= lish.el" "ob-julia.el" "ob-tangle.el" "org-capture.el" "org-mobile.el" = "ox-texinfo.el" "ob-latex.el" "ob.el" "org-clock.el" "org-mouse.el" "ox.el" "ob-lilypond.el" "oc-basic.el" "org-colview.el" "org-num.el" "ob-lisp.el" "oc-biblatex.el" "org-compat.el" "org-pcomplete.e= l")) (possibles (seq-map (lambda (x) (cons (file-name-directory (car x)) (list (file-name-base (car x))))) (seq-filter (lambda (x) (let ((bn (file-name-nondirectory (car x)))) (seq-contains-p org-files bn (lambda (e elt) (s-match (concat "= ^" e "$") elt))))) load-history)))) (let ((uniques (seq-uniq (seq-map 'car possibles)))) (if (eq 1 (length uniques)) (if where ; this is the good outcome (car uniques)) (seq-map (lambda (dir) (let ((joined (s-join " " (seq-map 'cadr (seq-filter (lambda (e) (progn (equal (car e) dir))) possibles))))) (s-lex-format "from ${dir} have: ${joined}"))) uniques)))))