From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id aLYuA+T4rF5rawAA0tVLHw (envelope-from ) for ; Sat, 02 May 2020 04:36:52 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id mCNrFe34rF66OQAA1q6Kng (envelope-from ) for ; Sat, 02 May 2020 04:37:01 +0000 Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:470:142::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 BA65D943319 for ; Sat, 2 May 2020 04:36:59 +0000 (UTC) Received: from localhost ([::1]:41158 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jUjta-0006bB-TG for larch@yhetil.org; Sat, 02 May 2020 00:36:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:47806) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jUjtD-0006b0-Vh for emacs-orgmode@gnu.org; Sat, 02 May 2020 00:36:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.90_1) (envelope-from ) id 1jUjtD-0005G6-06 for emacs-orgmode@gnu.org; Sat, 02 May 2020 00:36:35 -0400 Received: from pb-smtp2.pobox.com ([64.147.108.71]:57615) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jUjtC-0005EQ-B5 for emacs-orgmode@gnu.org; Sat, 02 May 2020 00:36:34 -0400 Received: from pb-smtp2.pobox.com (unknown [127.0.0.1]) by pb-smtp2.pobox.com (Postfix) with ESMTP id 17EB55D6DC; Sat, 2 May 2020 00:36:32 -0400 (EDT) (envelope-from kyle@kyleam.com) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=from:to :subject:in-reply-to:references:date:message-id:mime-version :content-type:content-transfer-encoding; s=sasl; bh=PsWO/XJNqA3T bX/iWJJUgLnafSk=; b=H91qMUYDG0KB9Xa216OOZHRPYdcGloZxCz4+wgnYi0vR pqCTJUnUz5i6fP9wWoioB7SHrpU+bRpvqYZc3f7/Ipd8Bd/6+bmKHjyJa3CwtdcL Tio4i+spYAVSkpLGwRxxP24i+jfxRgJ+qFf82SXUfJtE5dyIMmKgcWx/oBSTHsk= Received: from pb-smtp2.nyi.icgroup.com (unknown [127.0.0.1]) by pb-smtp2.pobox.com (Postfix) with ESMTP id 017935D6DA; Sat, 2 May 2020 00:36:32 -0400 (EDT) (envelope-from kyle@kyleam.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=kyleam.com; h=from:to:subject:in-reply-to:references:date:message-id:mime-version:content-type:content-transfer-encoding; s=mesmtp; bh=ujiJvPHZsL72BGN5qfdfX2wKZMQVdXenGIuieXacW1o=; b=A4oAuMGmCbjlJOSqLYzLD1V+ihF3Kuciz9GsWitErM/i74EzafZlwOGq75IxcG8ZMkwW0wi4YLBeG0JQ36cFe/vO/wqEaj+MNrnwPLOUtin6MR2QFks5z1rQR7QJjSE8gs1HtlKxuYjlh+uoc/AmIVfgmWqE+zPibPBnN+3gQLA= Received: from localhost (unknown [45.33.91.115]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by pb-smtp2.pobox.com (Postfix) with ESMTPSA id 634DC5D6D9; Sat, 2 May 2020 00:36:31 -0400 (EDT) (envelope-from kyle@kyleam.com) From: Kyle Meyer To: Christoffer =?utf-8?Q?Stjernl=C3=B6f?= , emacs-orgmode@gnu.org Subject: Re: Bug: Org-drill defines advice causing infinite recursion [9.3.6 (release_9.3.6-465-g4fde1c @ /home/christoffer/.emacs.d/straight/build/org/)] In-Reply-To: References: Date: Sat, 02 May 2020 04:36:17 +0000 Message-ID: <87r1w3kl6m.fsf@kyleam.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Pobox-Relay-ID: 7EEF1102-8C2E-11EA-9C9C-D1361DBA3BAF-24757444!pb-smtp2.pobox.com Received-SPF: pass client-ip=64.147.108.71; envelope-from=kyle@kyleam.com; helo=pb-smtp2.pobox.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/05/02 00:36:32 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 64.147.108.71 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: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Scanner: scn0 X-Spam-Score: -1.21 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=pobox.com header.s=sasl header.b=H91qMUYD; dkim=pass header.d=kyleam.com header.s=mesmtp header.b=A4oAuMGm; dmarc=none; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 2001:470:142::17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Scan-Result: default: False [-1.21 / 13.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; GENERIC_REPUTATION(0.00)[-0.49473255378793]; TO_DN_SOME(0.00)[]; R_SPF_ALLOW(-0.20)[+ip6:2001:470:142::/48:c]; IP_REPUTATION_HAM(0.00)[asn: 22989(0.16), country: US(-0.00), ip: 2001:470:142::17(-0.49)]; DWL_DNSWL_FAIL(0.00)[kyleam.com:server fail,2001:470:142::17:server fail]; MX_GOOD(-0.50)[cached: eggs.gnu.org]; RCPT_COUNT_TWO(0.00)[2]; DKIM_TRACE(0.00)[pobox.com:+,kyleam.com:+]; MAILLIST(-0.20)[mailman]; FORGED_RECIPIENTS_MAILLIST(0.00)[]; RCVD_IN_DNSWL_FAIL(0.00)[2001:470:142::17:server fail]; MIME_TRACE(0.00)[0:+]; RCVD_TLS_LAST(0.00)[]; ASN(0.00)[asn:22989, ipnet:2001:470:142::/48, country:US]; FROM_NEQ_ENVFROM(0.00)[kyle@kyleam.com,emacs-orgmode-bounces@gnu.org]; MID_RHS_MATCH_FROM(0.00)[]; TAGGED_FROM(0.00)[larch=yhetil.org]; ARC_NA(0.00)[]; R_DKIM_ALLOW(-0.20)[pobox.com:s=sasl,kyleam.com:s=mesmtp]; URIBL_BLOCKED(0.00)[kyleam.com:dkim,loop54.com:email,gitlab.com:url,pobox.com:dkim]; FROM_HAS_DN(0.00)[]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[kyleam.com]; HAS_LIST_UNSUB(-0.01)[]; RCVD_COUNT_SEVEN(0.00)[8]; FORGED_SENDER_MAILLIST(0.00)[] X-TUID: yyrzPH/3jPm8 Hi, Sorry for the slow reply. Christoffer Stjernl=C3=B6f writes: > Org-drill defines the following advice: > > (when (version< org-version "9.2") > (advice-add 'org-get-tags :around #'org-drill-get-tags-advice)) > > (defun org-drill-get-tags-advice (orig-fun &rest args) > ;; the two arg call obsoletes get-local-tags > (if (=3D 2 (length args)) > ;; and we don't want any byte compile errors > (if (fboundp 'org-get-local-tags) (org-get-local-tags)) > ;; the non-arg version doesn't return inherited tags, but > ;; get-tags-at does. > (org-get-tags-at))) > > The function being called at the end, org-get-tags-at, has the unfortunate > definition: > > (define-obsolete-function-alias 'org-get-tags-at 'org-get-tags "Org > 9.2") Hmm, but the advice is being added only if the Org version is before 9.2, and in that case org-get-tags-at is a separate function, not an alias. So that seems like that should be fine. However ... > This results in the advice calling the function it advises, leading to > infinite recursion. > > Is the version check around the advice addition accidentally inverted? Or > is there anything else I'm missing? ... if you're actually hitting into an infinite recursion, then I of course trust that more than my reasoning. Because you don't explicitly say that you are and based on your reported Org version being after 9.2, I'm guessing your conclusion was based solely on reading the code. If there is an issue, though, note that org-drill.el is no longer in the Org tree as of 2c8e8b4a1 (contrib: Remove Org Drill, 2019-07-11). I believe it's maintained at .