From debbugs-submit-bounces@debbugs.gnu.org Tue Mar 04 15:57:52 2025 Received: (at submit) by debbugs.gnu.org; 4 Mar 2025 20:57:52 +0000 Received: from localhost ([127.0.0.1]:33169 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tpZKq-00085s-3x for submit@debbugs.gnu.org; Tue, 04 Mar 2025 15:57:52 -0500 Received: from lists.gnu.org ([2001:470:142::17]:50320) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tpZKk-00085Z-Ru for submit@debbugs.gnu.org; Tue, 04 Mar 2025 15:57:50 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tpZKe-0002he-71 for bug-gnu-emacs@gnu.org; Tue, 04 Mar 2025 15:57:40 -0500 Received: from mr4.vodafonemail.de ([145.253.228.164]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tpZKb-00050g-JE for bug-gnu-emacs@gnu.org; Tue, 04 Mar 2025 15:57:39 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vodafonemail.de; s=vfde-mb-mr2-23sep; t=1741121849; bh=J2XiqJleSdGEbWfHXseBLsschw58Zp6r6aS5C7m4Elk=; h=From:To:Subject:Date:Message-ID:Content-Type:From; b=cg1N/I4I+eDdR5Kw6LwuPeJaiXM4Nxv2WR+1XxSkrpz+sRFNMcRipW9nm8c8pvxTh pOSC8f0AYjhPBwJnnsqU7uBOiP/NVHEKJ64/rbyoN12rSe9SbRQRIGGmc4D+NpIE2N nJPDaaBar1NFu2rYwnQO18GJUCQaJFd3JCDIxZfE= Received: from smtp.vodafone.de (unknown [10.0.0.2]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by mr4.vodafonemail.de (Postfix) with ESMTPS id 4Z6p0T1qyJz1xvl for ; Tue, 4 Mar 2025 20:57:28 +0000 (UTC) Received: from sappc2 (port-83-236-15-135.dynamic.as20676.net [83.236.15.135]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (prime256v1) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp.vodafone.de (Postfix) with ESMTPSA id 4Z6p0M4vDGz90q8 for ; Tue, 4 Mar 2025 20:57:19 +0000 (UTC) From: Jens Schmidt To: bug-gnu-emacs@gnu.org Subject: 31.0.50; `unload-feature' unbinds NEW-ALIAS and BASE-VARIABLE of variable alias Date: Tue, 04 Mar 2025 21:57:18 +0100 Message-ID: <87sensbjkh.fsf@sappc2.fritz.box> MIME-Version: 1.0 Content-Type: text/plain X-purgate-server: smtpa07 X-purgate-type: clean X-purgate: clean X-purgate-size: 5060 X-purgate-ID: 155817::1741121844-775A5CDD-485D82F0/0/0 Received-SPF: pass client-ip=145.253.228.164; envelope-from=jschmidt4gnu@vodafonemail.de; helo=mr4.vodafonemail.de X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 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, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) 1. `defalias' on builtin variable, like in vhdl-mode.el: ./progmodes/vhdl-mode.el:2331: (defvaralias 'vhdl-last-input-event 'last-input-event) Start with "emacs -Q", then execute with C-j in *scratch*: (require 'vhdl-mode) vhdl-mode (unload-feature 'vhdl-mode) => Lisp error: (error "Built-in variables may not be unbound") makunbound(vhdl-last-input-event) #f(compiled-function (x) #)(vhdl-last-input-event) apply(#f(compiled-function (x) #) vhdl-last-input-event nil) loadhist-unload-element(vhdl-last-input-event) unload-feature(vhdl-mode) 2. `define-obsolete-variable-alias' on non-builtin, like this: ./net/shr.el:164:(define-obsolete-variable-alias 'shr-external-browser 'browse-url-secondary-browser-function "27.1") Start with "emacs -Q", then execute with C-j in *scratch*: (require 'browse-url) browse-url browse-url-secondary-browser-function browse-url-default-browser (require 'shr) shr (unload-feature 'shr) nil browse-url-secondary-browser-function => Lisp error: (void-variable browse-url-secondary-browser-function) My understanding is that `unload-feature' in case 1. tries to unbind BASE-VARIABLE of the alias, and not NEW-ALIAS, and fails to do so and in case 2. unbinds both CURRENT-NAME and OBSOLETE-NAME. I would expect that in these cases `unload-feature' should unbind NEW-ALIAS/OBSOLETE-NAME from the feature being unloaded, but leave BASE-VARIABLE/CURRENT-NAME unchanged. (Except of course if both items of the alias originate from the same feature.) In GNU Emacs 31.0.50 (build 3, x86_64-pc-linux-gnu, GTK+ Version 3.24.38, cairo version 1.16.0) of 2025-03-04 built on sappc2 Repository revision: e978737f57ef8447bba5796dd945ac185fcadffa Repository branch: master Windowing system distributor 'The X.Org Foundation', version 11.0.12201009 System Description: Debian GNU/Linux 12 (bookworm) Configured using: 'configure --with-native-compilation --with-mailutils' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF TOOLKIT_SCROLL_BARS WEBP X11 XDBE XIM XINERAMA XINPUT2 XPM XRANDR GTK3 ZLIB Important settings: value of $LC_COLLATE: POSIX value of $LC_TIME: POSIX value of $LANG: en_US.UTF-8 value of $XMODIFIERS: @im=ibus locale-coding-system: utf-8-unix Major mode: Lisp Interaction Minor modes in effect: tooltip-mode: t global-eldoc-mode: t eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t minibuffer-regexp-mode: t line-number-mode: t indent-tabs-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: None found. Features: (shadow sort mail-extr comp-run bytecomp byte-compile comp-common rx emacsbug lisp-mnt message mailcap yank-media puny dired dired-loaddefs rfc822 mml mml-sec password-cache epa derived epg rfc6068 epg-config gnus-util text-property-search time-date subr-x mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader cl-loaddefs cl-lib sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win term/common-win x-dnd touch-screen tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads dbusbind inotify lcms2 dynamic-setting system-font-setting font-render-setting cairo gtk x-toolkit xinput2 x multi-tty move-toolbar make-network-process tty-child-frames native-compile emacs) Memory information: ((conses 16 58395 9074) (symbols 48 6196 0) (strings 32 15316 2044) (string-bytes 1 469694) (vectors 16 9916) (vector-slots 8 139508 9528) (floats 8 23 12) (intervals 56 263 0) (buffers 984 11)) From debbugs-submit-bounces@debbugs.gnu.org Wed Mar 05 07:34:01 2025 Received: (at 76748) by debbugs.gnu.org; 5 Mar 2025 12:34:01 +0000 Received: from localhost ([127.0.0.1]:35990 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tpnwn-0007TP-7p for submit@debbugs.gnu.org; Wed, 05 Mar 2025 07:34:01 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:52508) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tpnwl-0007TA-LT for 76748@debbugs.gnu.org; Wed, 05 Mar 2025 07:34:00 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tpnwd-0002VD-Gz; Wed, 05 Mar 2025 07:33:52 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=V3uyqtIurtWe81KipDTNK2FdLLHx21ggd9HEP/CbBnQ=; b=FFj3VlSFIG66 2nDZSoGFLdHVsjmV0zxqYQy1iQNX9PZce/v/NdjFqqPqd5ZyhIe8pJxalmwbRyASmr2Gs4ciwddB4 femdE+CCQJ7xRdg5JFViKt5T4wTMDkLQCsH1ggrOs8aNtsYmpZDCvq5WdgLiohIItBS5FtuAuiIeo zfwMBeqZXOXt4OSLr79QTLdCWYHPGc0wy/N64YajpiUh1I12TZ4Rk3nWfDfmaJlUwTvAKgcpweTXd DYYuR0jwWYSvwFvO1dSyI7qTxB2S3xl/bRSuK1kBfTu5P3PYDnsqLBAEDIpl+Kyu4K4uIva7OLuSm 7pCBgp6dDc08aZPdzWZy1w==; Date: Wed, 05 Mar 2025 14:33:49 +0200 Message-Id: <86ikonpsgi.fsf@gnu.org> From: Eli Zaretskii To: Jens Schmidt , Stefan Monnier In-Reply-To: <87sensbjkh.fsf@sappc2.fritz.box> (bug-gnu-emacs@gnu.org) Subject: Re: bug#76748: 31.0.50; `unload-feature' unbinds NEW-ALIAS and BASE-VARIABLE of variable alias References: <87sensbjkh.fsf@sappc2.fritz.box> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 76748 Cc: 76748@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Date: Tue, 04 Mar 2025 21:57:18 +0100 > From: Jens Schmidt via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" > > 1. `defalias' on builtin variable, like in vhdl-mode.el: > > ./progmodes/vhdl-mode.el:2331: (defvaralias 'vhdl-last-input-event 'last-input-event) > > Start with "emacs -Q", then execute with C-j in *scratch*: > > (require 'vhdl-mode) > vhdl-mode > > (unload-feature 'vhdl-mode) > => > Lisp error: (error "Built-in variables may not be unbound") > makunbound(vhdl-last-input-event) > #f(compiled-function (x) #)(vhdl-last-input-event) > apply(#f(compiled-function (x) #) vhdl-last-input-event nil) > loadhist-unload-element(vhdl-last-input-event) > unload-feature(vhdl-mode) > > 2. `define-obsolete-variable-alias' on non-builtin, like this: > > ./net/shr.el:164:(define-obsolete-variable-alias 'shr-external-browser 'browse-url-secondary-browser-function "27.1") > > Start with "emacs -Q", then execute with C-j in *scratch*: > > (require 'browse-url) > browse-url > > browse-url-secondary-browser-function > browse-url-default-browser > > (require 'shr) > shr > > (unload-feature 'shr) > nil > > browse-url-secondary-browser-function > => Lisp error: (void-variable browse-url-secondary-browser-function) > > My understanding is that `unload-feature' in > > case 1. tries to unbind BASE-VARIABLE of the alias, and not NEW-ALIAS, > and fails to do so and in > > case 2. unbinds both CURRENT-NAME and OBSOLETE-NAME. > > I would expect that in these cases `unload-feature' should unbind > NEW-ALIAS/OBSOLETE-NAME from the feature being unloaded, but leave > BASE-VARIABLE/CURRENT-NAME unchanged. (Except of course if both items > of the alias originate from the same feature.) Stefan, any suggestions? From debbugs-submit-bounces@debbugs.gnu.org Wed Mar 12 16:37:13 2025 Received: (at 76748) by debbugs.gnu.org; 12 Mar 2025 20:37:13 +0000 Received: from localhost ([127.0.0.1]:51880 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tsSpF-0006AX-5L for submit@debbugs.gnu.org; Wed, 12 Mar 2025 16:37:13 -0400 Received: from mr5.vodafonemail.de ([145.253.228.165]:59656) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tsSpC-0006AA-Gu for 76748@debbugs.gnu.org; Wed, 12 Mar 2025 16:37:11 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vodafonemail.de; s=vfde-mb-mr2-23sep; t=1741811824; bh=6Rr/dQxDT0dBDZqxfzyg68vGVX/Z/E6bs8LE7wuEaL4=; h=Message-ID:Date:User-Agent:Subject:To:References:From: Content-Language:In-Reply-To:Content-Type:From; b=yuCqyH6hpg/uQn4+5Ni7wI/IsA7+eNCE3XlaZhEKlcGybUU5fHKG6sp30WonECSdt krSPGm3zvJOKANLL1bl/rzv4ZZEPvPxDfriR3XW6rvPL8Wc4tpNTY+7CgmS+ex8BTS JC1AXI6Y2LzklXpMO/WMG81fnTZkaXo0NVRhiVr4= Received: from smtp.vodafone.de (unknown [10.0.0.2]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by mr5.vodafonemail.de (Postfix) with ESMTPS id 4ZCj9C5sPzz1yT9; Wed, 12 Mar 2025 20:36:59 +0000 (UTC) Received: from [192.168.178.41] (port-92-199-221-145.dynamic.as20676.net [92.199.221.145]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp.vodafone.de (Postfix) with ESMTPSA id 4ZCj8w5SkQz8sWw; Wed, 12 Mar 2025 20:36:45 +0000 (UTC) Message-ID: <5bd13a32-5988-4358-bbce-0d8a9146345b@vodafonemail.de> Date: Wed, 12 Mar 2025 21:36:40 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#76748: 31.0.50; `unload-feature' unbinds NEW-ALIAS and BASE-VARIABLE of variable alias To: Stefan Monnier References: <87sensbjkh.fsf@sappc2.fritz.box> <86ikonpsgi.fsf@gnu.org> From: Jens Schmidt Content-Language: de-DE-frami, en-US In-Reply-To: <86ikonpsgi.fsf@gnu.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-purgate-server: smtpa05 X-purgate-type: clean X-purgate: clean X-purgate-size: 2159 X-purgate-ID: 155817::1741811815-27FD969F-F0F9A382/0/0 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 76748 Cc: Eli Zaretskii , 76748@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) On 2025-03-05 13:33, Eli Zaretskii wrote: >> Date: Tue, 04 Mar 2025 21:57:18 +0100 >> From: Jens Schmidt via "Bug reports for GNU Emacs, >> the Swiss army knife of text editors" >> >> 1. `defalias' on builtin variable, like in vhdl-mode.el: >> >> ./progmodes/vhdl-mode.el:2331: (defvaralias 'vhdl-last-input-event 'last-input-event) >> >> Start with "emacs -Q", then execute with C-j in *scratch*: >> >> (require 'vhdl-mode) >> vhdl-mode >> >> (unload-feature 'vhdl-mode) >> => >> Lisp error: (error "Built-in variables may not be unbound") >> makunbound(vhdl-last-input-event) >> #f(compiled-function (x) #)(vhdl-last-input-event) >> apply(#f(compiled-function (x) #) vhdl-last-input-event nil) >> loadhist-unload-element(vhdl-last-input-event) >> unload-feature(vhdl-mode) >> >> 2. `define-obsolete-variable-alias' on non-builtin, like this: >> >> ./net/shr.el:164:(define-obsolete-variable-alias 'shr-external-browser 'browse-url-secondary-browser-function "27.1") >> >> Start with "emacs -Q", then execute with C-j in *scratch*: >> >> (require 'browse-url) >> browse-url >> >> browse-url-secondary-browser-function >> browse-url-default-browser >> >> (require 'shr) >> shr >> >> (unload-feature 'shr) >> nil >> >> browse-url-secondary-browser-function >> => Lisp error: (void-variable browse-url-secondary-browser-function) >> >> My understanding is that `unload-feature' in >> >> case 1. tries to unbind BASE-VARIABLE of the alias, and not NEW-ALIAS, >> and fails to do so and in >> >> case 2. unbinds both CURRENT-NAME and OBSOLETE-NAME. >> >> I would expect that in these cases `unload-feature' should unbind >> NEW-ALIAS/OBSOLETE-NAME from the feature being unloaded, but leave >> BASE-VARIABLE/CURRENT-NAME unchanged. (Except of course if both items >> of the alias originate from the same feature.) > > Stefan, any suggestions? Gentle ping to Stefan ... ... thanks! From debbugs-submit-bounces@debbugs.gnu.org Wed Mar 12 17:01:38 2025 Received: (at 76748) by debbugs.gnu.org; 12 Mar 2025 21:01:38 +0000 Received: from localhost ([127.0.0.1]:51959 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tsTCs-0007P7-52 for submit@debbugs.gnu.org; Wed, 12 Mar 2025 17:01:38 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:31897) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tsTCq-0007Ok-3a for 76748@debbugs.gnu.org; Wed, 12 Mar 2025 17:01:36 -0400 Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 0C4594437AB; Wed, 12 Mar 2025 17:01:30 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1741813289; bh=Js/PV/LmGFdnmZ71qAMIF2bOxzAswEu6r14D/kVkfQs=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=XX1yAt/RKZkFwMOV0DnacPFkizLnHUP3FO0yL8TMv/qukl6aSahCBaBoQAA1yy0VT nimsxSuYmLpKJ5Z9uzpP66S4NYwERmaR/+RSfeKsFEc4kJSUetvHyau7M1J3PFEObG D6w0ci9aoHzztJ6b25+OnZs+CXWhxg5rJF/Wacyf2Ov7QwKiHXDrX3zMF/4MWI0a9T 4hyXkySDUNeWZzBdHl3we5YfmSSKQwMg/yhFqkFSMaSJ9cHcwMwvvm/zKQvUZ2ez3x 0tiBNFWtmrlwKQ6WOuwbFNdf5siI47f+cB5480Xor9Jp0LVebptKSsUbqwBR5z3vWc zTa6cjeIxMgMg== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 0A0414437AD; Wed, 12 Mar 2025 17:01:29 -0400 (EDT) Received: from lechazo (lechon.iro.umontreal.ca [132.204.27.242]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id F13FB1203D7; Wed, 12 Mar 2025 17:01:28 -0400 (EDT) From: Stefan Monnier To: Jens Schmidt Subject: Re: bug#76748: 31.0.50; `unload-feature' unbinds NEW-ALIAS and BASE-VARIABLE of variable alias In-Reply-To: <5bd13a32-5988-4358-bbce-0d8a9146345b@vodafonemail.de> (Jens Schmidt's message of "Wed, 12 Mar 2025 21:36:40 +0100") Message-ID: References: <87sensbjkh.fsf@sappc2.fritz.box> <86ikonpsgi.fsf@gnu.org> <5bd13a32-5988-4358-bbce-0d8a9146345b@vodafonemail.de> Date: Wed, 12 Mar 2025 17:01:28 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL 0.212 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 76748 Cc: Eli Zaretskii , 76748@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) >> Stefan, any suggestions? > Gentle ping to Stefan ... Not sure what is expected from me, here. This looks like a plain bug to me, with a good recipe to reproduce and diagnose it. Stefan From debbugs-submit-bounces@debbugs.gnu.org Wed Mar 12 18:18:39 2025 Received: (at 76748) by debbugs.gnu.org; 12 Mar 2025 22:18:39 +0000 Received: from localhost ([127.0.0.1]:52108 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tsUPO-0002dX-TR for submit@debbugs.gnu.org; Wed, 12 Mar 2025 18:18:39 -0400 Received: from mr4.vodafonemail.de ([145.253.228.164]:57718) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tsUPK-0002dA-SL for 76748@debbugs.gnu.org; Wed, 12 Mar 2025 18:18:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vodafonemail.de; s=vfde-mb-mr2-23sep; t=1741817908; bh=cp5z6TWtby7YHmmjuUOVGjAxhk1832NFuzNJJlAyINM=; h=Message-ID:Date:User-Agent:Subject:To:References:From: Content-Language:In-Reply-To:Content-Type:From; b=jO8NHxW9rA8or0eOZNMc30O0fSFo6GQUFcfTjXRD6nnYuxnh2o5alqCI6//0oH56W I15n5MlIuwSNUOUOy+aayuhhArNBfM3tInBI4BT3tpW1GVvRK2/4IDNqdJkarglMCC T0a3sttywy5vJx+SNwASM1U8kBGkzBcpmog7hffw= Received: from smtp.vodafone.de (unknown [10.0.0.2]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by mr4.vodafonemail.de (Postfix) with ESMTPS id 4ZClQD1vbMz1y4Q; Wed, 12 Mar 2025 22:18:28 +0000 (UTC) Received: from [192.168.178.41] (port-92-199-221-145.dynamic.as20676.net [92.199.221.145]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp.vodafone.de (Postfix) with ESMTPSA id 4ZClQ10rKVz918c; Wed, 12 Mar 2025 22:18:13 +0000 (UTC) Message-ID: Date: Wed, 12 Mar 2025 23:18:11 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#76748: 31.0.50; `unload-feature' unbinds NEW-ALIAS and BASE-VARIABLE of variable alias To: Stefan Monnier References: <87sensbjkh.fsf@sappc2.fritz.box> <86ikonpsgi.fsf@gnu.org> <5bd13a32-5988-4358-bbce-0d8a9146345b@vodafonemail.de> From: Jens Schmidt Content-Language: de-DE-frami, en-US In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-purgate-server: smtpa02 X-purgate-type: clean X-purgate: clean X-purgate-size: 513 X-purgate-ID: 155817::1741817904-5D7F8EC8-9D64138B/0/0 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 76748 Cc: Eli Zaretskii , 76748@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) On 2025-03-12 22:01, Stefan Monnier wrote: > Not sure what is expected from me, here. > This looks like a plain bug to me, with a good recipe to reproduce and > diagnose it. Is there a way to undo a `defvaralias' from Lisp? Meaning a hypothetical function `unalias' so that after (defvar foo nil "Foo") (defvaralias 'bar 'foo "Bar") (unalias 'bar) `foo' is untouched, but everything about `bar' forgotten. I haven't found one, but then I haven't been searching very thoroughly. From debbugs-submit-bounces@debbugs.gnu.org Wed Mar 12 18:21:14 2025 Received: (at 76748) by debbugs.gnu.org; 12 Mar 2025 22:21:14 +0000 Received: from localhost ([127.0.0.1]:52122 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tsURu-0002oQ-2a for submit@debbugs.gnu.org; Wed, 12 Mar 2025 18:21:14 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:26504) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tsURT-0002mx-Q9 for 76748@debbugs.gnu.org; Wed, 12 Mar 2025 18:20:48 -0400 Received: from pmg1.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id C2D091001EE; Wed, 12 Mar 2025 18:20:40 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1741818040; bh=MvrYB+igAnXlze7wLzHXBrB+qPsk5ohCKltLVKrLy8M=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=fT0kJNiTj2N2r9bMYAE8ifqFBe9ZPrtLN/zRGjJQMqVbmeucHGSqpXnDn2tqTBQgr CBb1jkw2Zepi9bjFPCKG+maUhZQUvRzssWHRyQJZUqnfk5BPT/7vTyMKwtH64YuKW7 TxZOY0Ks2v7+lpTs6nqjFBMInasgv8ACJ1iBK5tU6CbidVAEnYIYWRvqYes8LrPGf2 vJNSQ72Eu2ml+RBAUWiH02XixNm88YmD//jO9kL7mAuyDLeUS5gIBYFtivK82xYW/G FZrDb2uidUhBOIplpxKPYXrMDeWhRR1BWJGpm4juYKeFoPjssitvCqwAz7hCtgMy40 pcr3Sul9vGQpQ== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id 3D56A100035; Wed, 12 Mar 2025 18:20:40 -0400 (EDT) Received: from lechazo (lechon.iro.umontreal.ca [132.204.27.242]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 2C0A412067B; Wed, 12 Mar 2025 18:20:40 -0400 (EDT) From: Stefan Monnier To: Jens Schmidt Subject: Re: bug#76748: 31.0.50; `unload-feature' unbinds NEW-ALIAS and BASE-VARIABLE of variable alias In-Reply-To: (Jens Schmidt's message of "Wed, 12 Mar 2025 23:18:11 +0100") Message-ID: References: <87sensbjkh.fsf@sappc2.fritz.box> <86ikonpsgi.fsf@gnu.org> <5bd13a32-5988-4358-bbce-0d8a9146345b@vodafonemail.de> Date: Wed, 12 Mar 2025 18:20:39 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL 0.104 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 76748 Cc: Eli Zaretskii , 76748@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Is there a way to undo a `defvaralias' from Lisp? I think there is currently no such thing, no. Stefan From debbugs-submit-bounces@debbugs.gnu.org Wed Mar 12 18:42:26 2025 Received: (at 76748) by debbugs.gnu.org; 12 Mar 2025 22:42:26 +0000 Received: from localhost ([127.0.0.1]:52184 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tsUmQ-0003p4-C4 for submit@debbugs.gnu.org; Wed, 12 Mar 2025 18:42:26 -0400 Received: from mr4.vodafonemail.de ([145.253.228.164]:36466) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tsUmN-0003op-MB for 76748@debbugs.gnu.org; Wed, 12 Mar 2025 18:42:24 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vodafonemail.de; s=vfde-mb-mr2-23sep; t=1741819337; bh=zX36j0ILdUs/W6osRrQ+xcYNLemv3zsHOxFLHPmbTCI=; h=Message-ID:Date:User-Agent:Subject:To:References:From: Content-Language:In-Reply-To:Content-Type:From; b=D4ZVgk/V4iPGUO+SCdnYmZRkeKk09qwYcOY6zhfnKVWaBtl4Clx/7eJP094HQpluC rFh6NbTsYm+4pO+v3wX1EpEYCug/i/coaJDXEd8cO6Vm2V0B2Udsqns6Ri9LKM739N cCvAmaD/BeluK97gBbQUts7+4feWuCuFJsvm45q4= Received: from smtp.vodafone.de (unknown [10.0.0.2]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by mr4.vodafonemail.de (Postfix) with ESMTPS id 4ZClxj6HWmz1y44; Wed, 12 Mar 2025 22:42:17 +0000 (UTC) Received: from [192.168.178.41] (port-92-199-221-145.dynamic.as20676.net [92.199.221.145]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp.vodafone.de (Postfix) with ESMTPSA id 4ZClxS6MLDz8sX6; Wed, 12 Mar 2025 22:42:01 +0000 (UTC) Message-ID: <209c11b2-d6e5-4479-80ec-3dbf1849628c@vodafonemail.de> Date: Wed, 12 Mar 2025 23:41:55 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#76748: 31.0.50; `unload-feature' unbinds NEW-ALIAS and BASE-VARIABLE of variable alias To: Stefan Monnier References: <87sensbjkh.fsf@sappc2.fritz.box> <86ikonpsgi.fsf@gnu.org> <5bd13a32-5988-4358-bbce-0d8a9146345b@vodafonemail.de> From: Jens Schmidt Content-Language: de-DE-frami, en-US In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-purgate-server: smtpa04 X-purgate-type: clean X-purgate: clean X-purgate-size: 439 X-purgate-ID: 155817::1741819333-4B4BA246-A1997FEC/0/0 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 76748 Cc: Eli Zaretskii , 76748@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) On 2025-03-12 23:20, Stefan Monnier wrote: > I think there is currently no such thing, no. Thanks. So the way to go here would be to implement a function like that, presumably in eval.c (plus update of Elisp manual, NEWS, tests, etc.), and then use that function to fix function `unload-feature', correct? I can give it a try, but please expect me asking more questions when it comes to Emacs C code ... Thanks again! From debbugs-submit-bounces@debbugs.gnu.org Wed Mar 12 18:53:58 2025 Received: (at 76748) by debbugs.gnu.org; 12 Mar 2025 22:53:58 +0000 Received: from localhost ([127.0.0.1]:52200 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tsUxZ-0004Jm-KG for submit@debbugs.gnu.org; Wed, 12 Mar 2025 18:53:57 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:14334) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tsUxW-0004JV-J1 for 76748@debbugs.gnu.org; Wed, 12 Mar 2025 18:53:55 -0400 Received: from pmg1.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id 6C2FF1001EE; Wed, 12 Mar 2025 18:53:48 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1741820027; bh=kAQqL0pSrm3RIEeb/tVzbx3ZI3dvEhWJJLD15jc2bM4=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=iAiNEixxJ0OQQwv6IEq7rE11bxfphWxYOy0PvSZ7EM5SB8Mn6EqUxn/TaogxoVDPz zUY0NMlrGNLfsx1yQl7ZHk+CvV2qtDz4Y+CY/eWLWoEwFcCaeA2j3depwR9UYeHW8Q cmKn4D7pdP0lxnCe5OBG6WVO/im0SMxCoNAm4PirW4JqNlOvMmn2JYGOIHXF7HVwYr X08Pl2w2AwvfVPUe7glA+WVt61d95Udmpgxswoxck8J0lea4riaSV0kiduKAg0u0Zq BCAwHIISLUEpbw4gQZjZthVzLm3YKvxNbPwX+T+FNUtwlFyotIo6a/rwFdpNvXdOYj EllWVEYzLUQog== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id B9412100035; Wed, 12 Mar 2025 18:53:47 -0400 (EDT) Received: from lechazo (lechon.iro.umontreal.ca [132.204.27.242]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id A93B61206A7; Wed, 12 Mar 2025 18:53:47 -0400 (EDT) From: Stefan Monnier To: Jens Schmidt Subject: Re: bug#76748: 31.0.50; `unload-feature' unbinds NEW-ALIAS and BASE-VARIABLE of variable alias In-Reply-To: <209c11b2-d6e5-4479-80ec-3dbf1849628c@vodafonemail.de> (Jens Schmidt's message of "Wed, 12 Mar 2025 23:41:55 +0100") Message-ID: References: <87sensbjkh.fsf@sappc2.fritz.box> <86ikonpsgi.fsf@gnu.org> <5bd13a32-5988-4358-bbce-0d8a9146345b@vodafonemail.de> <209c11b2-d6e5-4479-80ec-3dbf1849628c@vodafonemail.de> Date: Wed, 12 Mar 2025 18:53:47 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL 0.103 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 76748 Cc: Eli Zaretskii , 76748@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) >> I think there is currently no such thing, no. > Thanks. So the way to go here would be to implement a function > like that, presumably in eval.c (plus update of Elisp manual, > NEWS, tests, etc.), and then use that function to fix function > `unload-feature', correct? Sounds right. You could also choose to keep that function "internal" and not document it in the manual/NEWS (like we did for `internal-make-var-non-special`), mostly justified in case its semantics is delicate/messy/ugly. > I can give it a try, but please expect me asking more questions > when it comes to Emacs C code ... Sounds great! Stefan From debbugs-submit-bounces@debbugs.gnu.org Fri Mar 14 18:14:36 2025 Received: (at 76748) by debbugs.gnu.org; 14 Mar 2025 22:14:36 +0000 Received: from localhost ([127.0.0.1]:36652 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ttDIZ-0001De-Dg for submit@debbugs.gnu.org; Fri, 14 Mar 2025 18:14:35 -0400 Received: from mr4.vodafonemail.de ([145.253.228.164]:41600) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ttDIW-0001DN-HB for 76748@debbugs.gnu.org; Fri, 14 Mar 2025 18:14:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vodafonemail.de; s=vfde-mb-mr2-23sep; t=1741990466; bh=HP1npKUXRic8o4lpPnakFAyyRLrGd8cVx8jn5lpdMuk=; h=Content-Type:Message-ID:Date:User-Agent:Subject:To:References: From:Content-Language:In-Reply-To:From; b=WTOp5zKdzRF6Kz58ZC5KitA25aLIg1MSV3H9CcNhpbQwL+FZL9KweCKzOChHzbEQB LrRqGGBFoFMaUdVXQ9XZIJNc69GF8dfCLcRAQ85qCIGOGh65zlun+jdwvM23yuun79 ve2ZqhkmPB8gNkC1Qhhxz+cNK6RuC3Zs6/Inq04Y= Received: from smtp.vodafone.de (unknown [10.0.0.2]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by mr4.vodafonemail.de (Postfix) with ESMTPS id 4ZDzDf1bdkz1y0s; Fri, 14 Mar 2025 22:14:26 +0000 (UTC) Received: from [192.168.1.37] (5.129.22.93.rev.sfr.net [93.22.129.5]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp.vodafone.de (Postfix) with ESMTPSA id 4ZDzDL0xMMz8sl5; Fri, 14 Mar 2025 22:14:06 +0000 (UTC) Content-Type: multipart/mixed; boundary="------------GjI2bZ5Pugg0dj1ZxyPH0Cl1" Message-ID: <3fd110ac-ebb1-40c4-bc49-02a7fa452f8c@vodafonemail.de> Date: Fri, 14 Mar 2025 23:14:05 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#76748: 31.0.50; `unload-feature' unbinds NEW-ALIAS and BASE-VARIABLE of variable alias To: Stefan Monnier References: <87sensbjkh.fsf@sappc2.fritz.box> <86ikonpsgi.fsf@gnu.org> <5bd13a32-5988-4358-bbce-0d8a9146345b@vodafonemail.de> <209c11b2-d6e5-4479-80ec-3dbf1849628c@vodafonemail.de> From: Jens Schmidt Content-Language: de-DE-frami, en-US In-Reply-To: X-purgate-server: smtpa06 X-purgate-type: clean X-purgate: clean X-purgate-size: 6282 X-purgate-ID: 155817::1741990461-2CD5D098-2CF470C5/0/0 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 76748 Cc: Eli Zaretskii , 76748@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) This is a multi-part message in MIME format. --------------GjI2bZ5Pugg0dj1ZxyPH0Cl1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 2025-03-12 23:53, Stefan Monnier wrote: > You could also choose to keep that function "internal" > and not document it in the manual/NEWS (like we did for > `internal-make-var-non-special`), mostly justified in case its > semantics is delicate/messy/ugly. I decided to do exactly that - if anybody else except `unload-feature' is ever going to need that function, she/he can do the documentation. Will add some tests, anyway, when the rest of this has been decided upon. Adding the function `internal-delete-indirect-variable' and calling it from loadhist.el was easy enough (too easy?), please see the attached patch for a first draft. I decided that the right way to unbind an alias, as far as `unload-feature' is concerned, is to make it a regular variable and unbind that. More questions: 1. I have a bad feeling about butting in between 1st class citizens makunbound and fmakunbound in data.c, but couldn't find a better other place for that function. 2. Before or after switching the variable from an alias to a plain one in `internal-delete-indirect-variable', do I somehow need to clean or zero ...val->alias before overwriting it as ...val->value with "Fset (symbol, Qunbound);"? 3. defvaralias attaches the new alias to the load history as symbol. One could also attach it as (Fcons (Qalias, new_alias)) and provide a new cl method loadhist-unload-element for that case instead of handling aliases together with regular symbols. Finally, `defvaralias' and `define-obsolete-variable-alias' have a number of other side-effects, which I have not covered in function `internal-delete-indirect-variable'. Please let me know if I should care about any of these: 4. defvaralias potentially calls notify_variable_watchers (new_alias, base_variable, Qdefvaralias, Qnil); 5. defvaralias declares both new alias and base symbol as special. 6. defvaralias sets XSYMBOL (new_alias)->u.s.trapped_write = XSYMBOL (base_variable)->u.s.trapped_write; 7. defvaralias puts the alias docstring into the variable-documentation property. 8. define-obsolete-variable-alias copies properties `saved-value', `saved-variable-comment' from the obsolete to the non-obsolete symbol. 9. define-obsolete-variable-alias sets property `byte-obsolete-variable' on the obsolete symbol. Thanks. --------------GjI2bZ5Pugg0dj1ZxyPH0Cl1 Content-Type: text/x-patch; charset=UTF-8; name="0001-Correctly-unload-variable-aliases.patch" Content-Disposition: attachment; filename="0001-Correctly-unload-variable-aliases.patch" Content-Transfer-Encoding: base64 RnJvbSBkOTliZjA1MjkyMWY1ODlhYzkwYzg1MDY1NmZhMmM0NDU1OWU5MjE4IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKZW5zIFNjaG1pZHQgPGpzY2htaWR0NGdudUB2b2Rh Zm9uZW1haWwuZGU+CkRhdGU6IEZyaSwgMTQgTWFyIDIwMjUgMjM6MDc6MTEgKzAxMDAKU3Vi amVjdDogW1BBVENIXSBDb3JyZWN0bHkgdW5sb2FkIHZhcmlhYmxlIGFsaWFzZXMuCgoqIHNy Yy9kYXRhLmMgKEZpbnRlcm5hbF9kZWxldGVfaW5kaXJlY3RfdmFyaWFibGUpOiBBZGQgbmV3 IGZ1bmN0aW9uLgoqIGxpc3AvbG9hZGhpc3QuZWwgKGxvYWRoaXN0LXVubG9hZC1lbGVtZW50 KTogVXNlIGl0IGZvciB2YXJpYWJsZQphbGlhc2VzLiAgKEJ1ZyM3Njc0OCkKLS0tCiBsaXNw L2xvYWRoaXN0LmVsIHwgMTAgKysrKysrKy0tLQogc3JjL2RhdGEuYyAgICAgICB8IDE3ICsr KysrKysrKysrKysrKysrCiAyIGZpbGVzIGNoYW5nZWQsIDI0IGluc2VydGlvbnMoKyksIDMg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGlzcC9sb2FkaGlzdC5lbCBiL2xpc3AvbG9h ZGhpc3QuZWwKaW5kZXggMWE2ZjQzNDU2MWUuLjEwYjYxZjE4NGQ2IDEwMDY0NAotLS0gYS9s aXNwL2xvYWRoaXN0LmVsCisrKyBiL2xpc3AvbG9hZGhpc3QuZWwKQEAgLTIxMSw5ICsyMTEs MTMgQEAgbG9hZGhpc3QtdW5sb2FkLWVsZW1lbnQKICAgICAgIChraWxsLWxvY2FsLXZhcmlh YmxlIHgpKSkKICAgKGlmIChhbmQgKGJvdW5kcCB4KSAodGltZXJwIChzeW1ib2wtdmFsdWUg eCkpKQogICAgICAgKGNhbmNlbC10aW1lciAoc3ltYm9sLXZhbHVlIHgpKSkKLSAgOzsgR2V0 IHJpZCBvZiB0aGUgZGVmYXVsdCBiaW5kaW5nIGlmIHdlIGNhbi4KLSAgKHVubGVzcyAobG9j YWwtdmFyaWFibGUtaWYtc2V0LXAgeCkKLSAgICAobWFrdW5ib3VuZCB4KSkpCisgIChjb25k CisgICA7OyAiVW5iaW5kIiBpbmRpcmVjdCB2YXJpYWJsZS4KKyAgICgobm90IChlcSAoaW5k aXJlY3QtdmFyaWFibGUgeCkgeCkpCisgICAgKGludGVybmFsLWRlbGV0ZS1pbmRpcmVjdC12 YXJpYWJsZSB4KSkKKyAgIDs7IEdldCByaWQgb2YgdGhlIGRlZmF1bHQgYmluZGluZyBpZiB3 ZSBjYW4uCisgICAoKG5vdCAobG9jYWwtdmFyaWFibGUtaWYtc2V0LXAgeCkpCisgICAgKG1h a3VuYm91bmQgeCkpKSkKIAogKGNsLWRlZm1ldGhvZCBsb2FkaGlzdC11bmxvYWQtZWxlbWVu dCAoKHggKGhlYWQgZGVmaW5lLXR5cGUpKSkKICAgKGxldCogKChuYW1lIChjZHIgeCkpKQpk aWZmIC0tZ2l0IGEvc3JjL2RhdGEuYyBiL3NyYy9kYXRhLmMKaW5kZXggNWQxYzA2NWU3ODUu LmZjYTFmNzNmNDY0IDEwMDY0NAotLS0gYS9zcmMvZGF0YS5jCisrKyBiL3NyYy9kYXRhLmMK QEAgLTc3Myw2ICs3NzMsMjIgQEAgREVGVU4gKCJtYWt1bmJvdW5kIiwgRm1ha3VuYm91bmQs IFNtYWt1bmJvdW5kLCAxLCAxLCAwLAogICByZXR1cm4gc3ltYm9sOwogfQogCitERUZVTiAo ImludGVybmFsLWRlbGV0ZS1pbmRpcmVjdC12YXJpYWJsZSIsIEZpbnRlcm5hbF9kZWxldGVf aW5kaXJlY3RfdmFyaWFibGUsIFNpbnRlcm5hbF9kZWxldGVfaW5kaXJlY3RfdmFyaWFibGUs CisgICAgICAgMSwgMSwgMCwKKyAgICAgICBkb2M6IC8qIFVuZGVjbGFyZSBTWU1CT0wgYXMg dmFyaWFibGUgYWxpYXMsIHRoZW4gdW5iaW5kIGl0LgorSWYgU1lNQk9MIGlzIG5vdCBhIHZh cmlhYmxlIGFsaWFzLCB1bmJpbmQgaXQgbGlrZSBgbWFrdW5ib3VuZCcgZG9lcy4KK1JldHVy biBTWU1CT0wuICAqLykKKyAgKHJlZ2lzdGVyIExpc3BfT2JqZWN0IHN5bWJvbCkKK3sKKyAg Q0hFQ0tfU1lNQk9MIChzeW1ib2wpOworICBpZiAoU1lNQk9MX0NPTlNUQU5UX1AgKHN5bWJv bCkpCisgICAgeHNpZ25hbDEgKFFzZXR0aW5nX2NvbnN0YW50LCBzeW1ib2wpOworICBlbHNl IGlmIChYU1lNQk9MIChzeW1ib2wpLT51LnMucmVkaXJlY3QgPT0gU1lNQk9MX1ZBUkFMSUFT KQorICAgIFhTWU1CT0wgKHN5bWJvbCktPnUucy5yZWRpcmVjdCA9IFNZTUJPTF9QTEFJTlZB TDsKKyAgRnNldCAoc3ltYm9sLCBRdW5ib3VuZCk7CisgIHJldHVybiBzeW1ib2w7Cit9CisK IERFRlVOICgiZm1ha3VuYm91bmQiLCBGZm1ha3VuYm91bmQsIFNmbWFrdW5ib3VuZCwgMSwg MSwgMCwKICAgICAgICBkb2M6IC8qIE1ha2UgU1lNQk9MJ3MgZnVuY3Rpb24gZGVmaW5pdGlv biBiZSBuaWwuCiBSZXR1cm4gU1lNQk9MLgpAQCAtNDI2Myw2ICs0Mjc5LDcgQEAgI2RlZmlu ZSBQVVRfRVJST1Ioc3ltLCB0YWlsLCBtc2cpCQkJXAogICBkZWZzdWJyICgmU3JlbW92ZV9w b3NfZnJvbV9zeW1ib2wpOwogICBkZWZzdWJyICgmU3Bvc2l0aW9uX3N5bWJvbCk7CiAgIGRl ZnN1YnIgKCZTbWFrdW5ib3VuZCk7CisgIGRlZnN1YnIgKCZTaW50ZXJuYWxfZGVsZXRlX2lu ZGlyZWN0X3ZhcmlhYmxlKTsKICAgZGVmc3ViciAoJlNmbWFrdW5ib3VuZCk7CiAgIGRlZnN1 YnIgKCZTYm91bmRwKTsKICAgZGVmc3ViciAoJlNmYm91bmRwKTsKLS0gCjIuMzkuNQoK --------------GjI2bZ5Pugg0dj1ZxyPH0Cl1-- From debbugs-submit-bounces@debbugs.gnu.org Fri Mar 14 19:13:48 2025 Received: (at 76748) by debbugs.gnu.org; 14 Mar 2025 23:13:48 +0000 Received: from localhost ([127.0.0.1]:36740 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ttEDr-0004GG-Lo for submit@debbugs.gnu.org; Fri, 14 Mar 2025 19:13:48 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:65321) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ttEDp-0004Fy-8T for 76748@debbugs.gnu.org; Fri, 14 Mar 2025 19:13:45 -0400 Received: from pmg1.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id 20ACB100180; Fri, 14 Mar 2025 19:13:39 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1741994018; bh=NYph2cjFuMLvkFFXiuVqJ/MVxqFV+tR3v3r6diYt9HA=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=a0c/7rXr2npQszWntxU7sE6XLxjyme4a5Bu0FVVxOh2MjkP53dzh//u/hhoAecVYM jngNQvFrx+I4GQbZEB8ni0skHdUlYw3wAMDed37WE8U6hJsVMFAmCygglrjnsVx56Q 9ImiYGz3f4ROBj7shGmSWkModRNcVzMuAXdgVDPqZOgHTII6khXJb3xo6ZV1279rre lLltjZR3sb1o1qoeyKkHQzpkaNZLxao7ZYyG0PEHXJJs13UsXd0cEyCDxosQitbmN7 MRcTUk4IU0eomUDFxFfesiBNTmgYxouyxuRaaiHIFhAC6tOClV2E0y1W1gl0P7yIL0 OtutnfT1eRmiA== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id 3EA36100146; Fri, 14 Mar 2025 19:13:38 -0400 (EDT) Received: from pastel (unknown [104.247.242.5]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 06A87120331; Fri, 14 Mar 2025 19:13:37 -0400 (EDT) From: Stefan Monnier To: Jens Schmidt Subject: Re: bug#76748: 31.0.50; `unload-feature' unbinds NEW-ALIAS and BASE-VARIABLE of variable alias In-Reply-To: <3fd110ac-ebb1-40c4-bc49-02a7fa452f8c@vodafonemail.de> Message-ID: References: <87sensbjkh.fsf@sappc2.fritz.box> <86ikonpsgi.fsf@gnu.org> <5bd13a32-5988-4358-bbce-0d8a9146345b@vodafonemail.de> <209c11b2-d6e5-4479-80ec-3dbf1849628c@vodafonemail.de> <3fd110ac-ebb1-40c4-bc49-02a7fa452f8c@vodafonemail.de> Date: Fri, 14 Mar 2025 19:13:37 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL -1.136 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain KAM_STOCKGEN 1.5 Email Contains Generic Pump & Dump Stock Tip X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 76748 Cc: Eli Zaretskii , 76748@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) >> You could also choose to keep that function "internal" >> and not document it in the manual/NEWS (like we did for >> `internal-make-var-non-special`), mostly justified in case its >> semantics is delicate/messy/ugly. > > I decided to do exactly that - if anybody else except `unload-feature' > is ever going to need that function, she/he can do the documentation. > Will add some tests, anyway, when the rest of this has been decided > upon. At first, I thought it would be better to make it official, but seeing the number of details you encountered in the semantics, I think you made the right call: it's fairly delicate/messy/ugly. > More questions: > > 1. I have a bad feeling about butting in between 1st class citizens > makunbound and fmakunbound in data.c, but couldn't find a better > other place for that function. I think I'd put it just after `Fdefvaralias`. > 2. Before or after switching the variable from an alias to a plain one > in `internal-delete-indirect-variable', do I somehow need to clean or > zero ...val->alias before overwriting it as ...val->value with > "Fset (symbol, Qunbound);"? No, I think the way you do it is fine. > 3. defvaralias attaches the new alias to the load history as symbol. > One could also attach it as (Fcons (Qalias, new_alias)) and provide a > new cl method loadhist-unload-element for that case instead of handling > aliases together with regular symbols. Indeed, we could, but I don't see a strong need for that. > Finally, `defvaralias' and `define-obsolete-variable-alias' have a > number of other side-effects, which I have not covered in function > `internal-delete-indirect-variable'. Please let me know if I should > care about any of these: > > 4. defvaralias potentially calls > > notify_variable_watchers (new_alias, base_variable, Qdefvaralias, Qnil); I guess we could add a corresponding "unalias" event, indeed. Not sure it's worth the trouble, tho, since your code will already call the watcher because of the `Fset`: for debug purposes (which is what watchers are designed for) that should be sufficient. > 5. defvaralias declares both new alias and base symbol as special. No need to undo that. > 6. defvaralias sets > > XSYMBOL (new_alias)->u.s.trapped_write = > XSYMBOL (base_variable)->u.s.trapped_write; We already have a mess here, AFAICT, because `add-variable-watcher` doesn't keep those two in-sync, so I wouldn't worry. > 7. defvaralias puts the alias docstring into the variable-documentation > property. I think this does need to be undone. > 8. define-obsolete-variable-alias copies properties `saved-value', > `saved-variable-comment' from the obsolete to the non-obsolete > symbol. This doesn't need to be undone, I think. > 9. define-obsolete-variable-alias sets property `byte-obsolete-variable' > on the obsolete symbol. Hmm... I guess in practice it'd be marginally more often useful if we undo this, but that's just a wild guess. I think you forgot: 10. We don't know if the variable was `boundp` before it was turned into an alias, so maybe setting it to `Qunbound` is not the right way to "undo the defvaralias". But yeah, I wouldn't worry about it either. > +DEFUN ("internal-delete-indirect-variable", Finternal_delete_indirect_variable, Sinternal_delete_indirect_variable, > + 1, 1, 0, > + doc: /* Undeclare SYMBOL as variable alias, then unbind it. > +If SYMBOL is not a variable alias, unbind it like `makunbound' does. > +Return SYMBOL. */) > + (register Lisp_Object symbol) > +{ > + CHECK_SYMBOL (symbol); > + if (SYMBOL_CONSTANT_P (symbol)) > + xsignal1 (Qsetting_constant, symbol); > + else if (XSYMBOL (symbol)->u.s.redirect == SYMBOL_VARALIAS) > + XSYMBOL (symbol)->u.s.redirect = SYMBOL_PLAINVAL; > + Fset (symbol, Qunbound); > + return symbol; > +} I think I'd signal an error if SYMBOL is not a variable alias (and then you can get rid of the `SYMBOL_CONSTANT_P` test). Stefan From debbugs-submit-bounces@debbugs.gnu.org Sat Mar 15 05:04:50 2025 Received: (at 76748) by debbugs.gnu.org; 15 Mar 2025 09:04:50 +0000 Received: from localhost ([127.0.0.1]:38794 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ttNRp-0007RM-WE for submit@debbugs.gnu.org; Sat, 15 Mar 2025 05:04:50 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:37018) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ttNRn-0007R6-86 for 76748@debbugs.gnu.org; Sat, 15 Mar 2025 05:04:48 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ttNRh-0006qW-9f; Sat, 15 Mar 2025 05:04:41 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=pRuy2tsPl/J3F7vNL6TAiT/KdjwWrvFVo2XHT8xP4FM=; b=LHwQw39yA/Vb DDPV7EJL0y4jmtfTvBPnm54hxRucObxB16+Rvic8QKZMhb19YqCLjqsFlvMtZAa4S8rUUukqOjMwH 1mcWibJEwZTeRMtvb50HTCsLLw33f8/syQHKbdxbk38BD53SuJ1S5YFshoaULBaipgz9MAn24RdoQ 41vypOx9VABD0H8uPU1IAlNYO7WaL4qA1Lg0KSD5ZYVFNjUG7PYMdSus5QFrvcuJw4Y5mdSEczcMr ztso3xzuDshevK9oG9Sl2ODdbVw26yUvBXWKsXZHOzafBRqHoekO+2Im3kpDIH8Uf63cmVxh+nvZ9 vVtpQRvtz1RDVS2eCL8ZEg==; Date: Sat, 15 Mar 2025 11:04:37 +0200 Message-Id: <86seney89m.fsf@gnu.org> From: Eli Zaretskii To: Jens Schmidt In-Reply-To: <3fd110ac-ebb1-40c4-bc49-02a7fa452f8c@vodafonemail.de> (message from Jens Schmidt on Fri, 14 Mar 2025 23:14:05 +0100) Subject: Re: bug#76748: 31.0.50; `unload-feature' unbinds NEW-ALIAS and BASE-VARIABLE of variable alias References: <87sensbjkh.fsf@sappc2.fritz.box> <86ikonpsgi.fsf@gnu.org> <5bd13a32-5988-4358-bbce-0d8a9146345b@vodafonemail.de> <209c11b2-d6e5-4479-80ec-3dbf1849628c@vodafonemail.de> <3fd110ac-ebb1-40c4-bc49-02a7fa452f8c@vodafonemail.de> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 76748 Cc: monnier@iro.umontreal.ca, 76748@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Date: Fri, 14 Mar 2025 23:14:05 +0100 > Cc: 76748@debbugs.gnu.org, Eli Zaretskii > From: Jens Schmidt > > +DEFUN ("internal-delete-indirect-variable", Finternal_delete_indirect_variable, Sinternal_delete_indirect_variable, > + 1, 1, 0, > + doc: /* Undeclare SYMBOL as variable alias, then unbind it. > +If SYMBOL is not a variable alias, unbind it like `makunbound' does. > +Return SYMBOL. */) Please say "Internal use only" in the doc string. Thanks. From debbugs-submit-bounces@debbugs.gnu.org Sat Mar 15 12:57:52 2025 Received: (at 76748) by debbugs.gnu.org; 15 Mar 2025 16:57:52 +0000 Received: from localhost ([127.0.0.1]:43357 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ttUpc-0003QW-2i for submit@debbugs.gnu.org; Sat, 15 Mar 2025 12:57:52 -0400 Received: from mr3.vodafonemail.de ([145.253.228.163]:39468) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ttUpY-0003Q6-VA for 76748@debbugs.gnu.org; Sat, 15 Mar 2025 12:57:50 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vodafonemail.de; s=vfde-mb-mr2-23sep; t=1742057863; bh=hU1rO6d3+3aENzp46pNLDMPRx+s09nEnHH8MHAqL61Y=; h=Message-ID:Date:User-Agent:Subject:To:References:From: Content-Language:In-Reply-To:Content-Type:From; b=Qh7VgYEBxAgTA821GxRhvY6jiTctpYHntxoZEMHMwgL0F4KLwOre9G6PzOTrHAlgk B00e3rILc+L3oopfxPdUe2A082cvYO5T7Xt87Y9IkCn+JOOJFOWc7cr8KZx5d05295 V8AkqYAjA2pEV2G/sWwN1FZW2omvTMeQmadvJ+28= Received: from smtp.vodafone.de (unknown [10.0.0.2]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by mr3.vodafonemail.de (Postfix) with ESMTPS id 4ZFS8l01Xhz2G0s; Sat, 15 Mar 2025 16:57:42 +0000 (UTC) Received: from [192.168.1.37] (5.129.22.93.rev.sfr.net [93.22.129.5]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp.vodafone.de (Postfix) with ESMTPSA id 4ZFS8V2f4Yz90q8; Sat, 15 Mar 2025 16:57:27 +0000 (UTC) Message-ID: <42eecf59-24d0-4913-8a25-7080699713d2@vodafonemail.de> Date: Sat, 15 Mar 2025 17:57:25 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#76748: 31.0.50; `unload-feature' unbinds NEW-ALIAS and BASE-VARIABLE of variable alias To: Stefan Monnier References: <87sensbjkh.fsf@sappc2.fritz.box> <86ikonpsgi.fsf@gnu.org> <5bd13a32-5988-4358-bbce-0d8a9146345b@vodafonemail.de> <209c11b2-d6e5-4479-80ec-3dbf1849628c@vodafonemail.de> <3fd110ac-ebb1-40c4-bc49-02a7fa452f8c@vodafonemail.de> From: Jens Schmidt Content-Language: de-DE-frami, en-US In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-purgate-server: smtpa07 X-purgate-type: clean X-purgate: clean X-purgate-size: 767 X-purgate-ID: 155817::1742057858-D0C24F16-ECD35012/0/0 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 76748 Cc: Eli Zaretskii , 76748@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Thanks for your review. I'll implement your recommendations (and Eli's), but here is one more general question, which came to me only now: What's the general purpose of `unload-history'? If I understand the Elisp manual ((elisp) Unloading) correctly, the main intention of unloading a library is to reclaim memory: You can discard the functions and variables loaded by a library to reclaim memory for other Lisp objects. Plus `unload-history' currently does not really try to be overly thorough in its cleanup: Docstrings of variables survive the cleanup, for example, and so do faces. So another, less invasive option to fix this bug might be to just skip variable aliases in `unload-history' and not call `makunbound' on them. WDYT? From debbugs-submit-bounces@debbugs.gnu.org Sat Mar 15 15:14:00 2025 Received: (at 76748) by debbugs.gnu.org; 15 Mar 2025 19:14:00 +0000 Received: from localhost ([127.0.0.1]:43624 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ttWxM-0002wC-7m for submit@debbugs.gnu.org; Sat, 15 Mar 2025 15:14:00 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:33999) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ttWxJ-0002vX-VE for 76748@debbugs.gnu.org; Sat, 15 Mar 2025 15:13:58 -0400 Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id E943444099A; Sat, 15 Mar 2025 15:13:49 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1742066028; bh=H6mCF1PlGDboe3o6Sgql5B0x+pc+KNLX0mjA5Ulk09s=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=cYfDEYnFVJjA5RViRi/hK2/HMC2TQQ6EmFQn+tn+zawg+/pN8JzqX8hEn3rjsEAPI KrbF5WuGi/2aP2A5Wq1TGleXPuUMeaG56kthtn1RKhAiv17FIUKVAlO7w8HzC4Se6H N8sZWTmWFRqPpHQnWH8Qm1ycbpAA9ktvnOk+50xMnHX7bEKsv11i9I90hHJWFWjeMi vquAfdU1DBDzjS6Hr8vGer2BWt3hmNh5cYlqVkU48tu2ZkdPF6jKc2GODZ7o6bFgT4 GUF/0NpNQvBv6sc0NpxrFO0GBWt+lrxCPDe2SIfyKxzhGi1p19XWL4TRmYfwgPQ+i0 RFJQPh2HS/uYQ== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 8517644095D; Sat, 15 Mar 2025 15:13:48 -0400 (EDT) Received: from alfajor (unknown [104.247.242.5]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 526DC120371; Sat, 15 Mar 2025 15:13:48 -0400 (EDT) From: Stefan Monnier To: Jens Schmidt Subject: Re: bug#76748: 31.0.50; `unload-feature' unbinds NEW-ALIAS and BASE-VARIABLE of variable alias In-Reply-To: <42eecf59-24d0-4913-8a25-7080699713d2@vodafonemail.de> Message-ID: References: <87sensbjkh.fsf@sappc2.fritz.box> <86ikonpsgi.fsf@gnu.org> <5bd13a32-5988-4358-bbce-0d8a9146345b@vodafonemail.de> <209c11b2-d6e5-4479-80ec-3dbf1849628c@vodafonemail.de> <3fd110ac-ebb1-40c4-bc49-02a7fa452f8c@vodafonemail.de> <42eecf59-24d0-4913-8a25-7080699713d2@vodafonemail.de> Date: Sat, 15 Mar 2025 15:13:37 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL -0.391 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 76748 Cc: Eli Zaretskii , 76748@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Thanks for your review. I'll implement your recommendations (and > Eli's), but here is one more general question, which came to me > only now: What's the general purpose of `unload-history'? Good question. I don't know. I never use it. The times I've heard people mention it, they tended to use it so as to be able to unload an old version of a package and then load a newer version in its place without having to restart Emacs. And I got to hear about it because, well, that doesn't work reliably. > So another, less invasive option to fix this bug might be to just > skip variable aliases in `unload-history' and not call `makunbound' > on them. That would be the poor man's choice, but given you already wrote the code to do it better, I wouldn't make that choice. Stefan From debbugs-submit-bounces@debbugs.gnu.org Sat Mar 15 17:51:07 2025 Received: (at 76748) by debbugs.gnu.org; 15 Mar 2025 21:51:07 +0000 Received: from localhost ([127.0.0.1]:43910 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ttZPM-0005wv-R6 for submit@debbugs.gnu.org; Sat, 15 Mar 2025 17:51:07 -0400 Received: from mr3.vodafonemail.de ([145.253.228.163]:41298) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ttZPH-0005vQ-MG for 76748@debbugs.gnu.org; Sat, 15 Mar 2025 17:51:01 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vodafonemail.de; s=vfde-mb-mr2-23sep; t=1742075453; bh=ZooHvhzSAO+184rCWN1NtSI5Dbe5TBzEc+JWCu72CtU=; h=Content-Type:Message-ID:Date:User-Agent:Subject:To:References: From:Content-Language:In-Reply-To:From; b=k7WkjkIAK1b/boGfgDaktb85cQveOsABpptx7q8Wn6Kcza5pZDpQ18Rv+in8e/noV uofWYyfeuhDNEicBtvcrLVNtIpoTvwDklshbS6OG/u+1QOX7kbo/L04ToX/o6coC6e 2Qe0lzVu1FqoO+uBDO1s4hSQgbXxhPNu3OkIgX2g= Received: from smtp.vodafone.de (unknown [10.0.0.2]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by mr3.vodafonemail.de (Postfix) with ESMTPS id 4ZFZg13s37z2GFq; Sat, 15 Mar 2025 21:50:52 +0000 (UTC) Received: from [192.168.1.37] (5.129.22.93.rev.sfr.net [93.22.129.5]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp.vodafone.de (Postfix) with ESMTPSA id 4ZFZfm151Lz8sl8; Sat, 15 Mar 2025 21:50:36 +0000 (UTC) Content-Type: multipart/mixed; boundary="------------5wAhl7dWVUnjFaEIHtYEe5tz" Message-ID: <5e72add7-41c2-4d43-96ec-030997b35e27@vodafonemail.de> Date: Sat, 15 Mar 2025 22:50:34 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#76748: 31.0.50; `unload-feature' unbinds NEW-ALIAS and BASE-VARIABLE of variable alias To: Stefan Monnier References: <87sensbjkh.fsf@sappc2.fritz.box> <86ikonpsgi.fsf@gnu.org> <5bd13a32-5988-4358-bbce-0d8a9146345b@vodafonemail.de> <209c11b2-d6e5-4479-80ec-3dbf1849628c@vodafonemail.de> <3fd110ac-ebb1-40c4-bc49-02a7fa452f8c@vodafonemail.de> <42eecf59-24d0-4913-8a25-7080699713d2@vodafonemail.de> From: Jens Schmidt Content-Language: de-DE-frami, en-US In-Reply-To: X-purgate-server: smtpa06 X-purgate-type: clean X-purgate: clean X-purgate-size: 9283 X-purgate-ID: 155817::1742075448-D4C2B5B9-A6FF4BBB/0/0 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 76748 Cc: Eli Zaretskii , 76748@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) This is a multi-part message in MIME format. --------------5wAhl7dWVUnjFaEIHtYEe5tz Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 2025-03-15 20:13, Stefan Monnier wrote: > That would be the poor man's choice, but given you already wrote the > code to do it better, I wouldn't make that choice. Ok, kept the other choice, implemented your and Eli's feedback, added tests, both for the new function and for unloading a feature that defines a variable alias. Please see the attached patch. Thanks --------------5wAhl7dWVUnjFaEIHtYEe5tz Content-Type: text/x-patch; charset=UTF-8; name="0001-Correctly-unload-variable-aliases.patch" Content-Disposition: attachment; filename="0001-Correctly-unload-variable-aliases.patch" Content-Transfer-Encoding: base64 RnJvbSA1ODI4Y2QzNWJhMmQ3OWI0ZjRjZTYyNzY0NjNkOWE1MjUyZGMxNzlkIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKZW5zIFNjaG1pZHQgPGpzY2htaWR0NGdudUB2b2Rh Zm9uZW1haWwuZGU+CkRhdGU6IEZyaSwgMTQgTWFyIDIwMjUgMjM6MDc6MTEgKzAxMDAKU3Vi amVjdDogW1BBVENIXSBDb3JyZWN0bHkgdW5sb2FkIHZhcmlhYmxlIGFsaWFzZXMuCgoqIHNy Yy9ldmFsLmMgKEZpbnRlcm5hbF9kZWxldGVfaW5kaXJlY3RfdmFyaWFibGUpOiBBZGQgZnVu Y3Rpb24uCiogbGlzcC9sb2FkaGlzdC5lbCAobG9hZGhpc3QtdW5sb2FkLWVsZW1lbnQpOiBV c2UgaXQgZm9yIHZhcmlhYmxlCmFsaWFzZXMuCiogdGVzdC9zcmMvZXZhbC10ZXN0cy5lbCAo ZXZhbC10ZXN0cy0taW50ZXJuYWwtZGVsZXRlLWluZGlyZWN0LXZhcmlhYmxlKToKVGVzdCBm dW5jdGlvbiBgaW50ZXJuYWwtZGVsZXRlLWluZGlyZWN0LXZhcmlhYmxlJy4KKiB0ZXN0L2xp c3AvbG9hZGhpc3QtdGVzdHMuZWwgKGxvYWRoaXN0LXRlc3QtdW5sb2FkLWZlYXR1cmUtYWxp YXMpOgoqIHRlc3QvbGlzcC9sb2FkaGlzdC1yZXNvdXJjZXMvbG9hZGhpc3QtLWFsaWFzLmVs OiBUZXN0IHVubG9hZGluZyBvZgpmZWF0dXJlcyB0aGF0IGRlZmluZSB2YXJpYWJsZSBhbGlh c2VzLiAgKEJ1ZyM3Njc0OCkKLS0tCiBsaXNwL2xvYWRoaXN0LmVsICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfCAxMCArKysrKy0tCiBzcmMvZXZhbC5jICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfCAxOSArKysrKysrKysrKysrCiAuLi4vbG9hZGhpc3Qt cmVzb3VyY2VzL2xvYWRoaXN0LS1hbGlhcy5lbCAgICAgfCAyOCArKysrKysrKysrKysrKysr KysrCiB0ZXN0L2xpc3AvbG9hZGhpc3QtdGVzdHMuZWwgICAgICAgICAgICAgICAgICAgfCAg OCArKysrKysKIHRlc3Qvc3JjL2V2YWwtdGVzdHMuZWwgICAgICAgICAgICAgICAgICAgICAg ICB8IDEyICsrKysrKysrCiA1IGZpbGVzIGNoYW5nZWQsIDc0IGluc2VydGlvbnMoKyksIDMg ZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgdGVzdC9saXNwL2xvYWRoaXN0LXJl c291cmNlcy9sb2FkaGlzdC0tYWxpYXMuZWwKCmRpZmYgLS1naXQgYS9saXNwL2xvYWRoaXN0 LmVsIGIvbGlzcC9sb2FkaGlzdC5lbAppbmRleCAxYTZmNDM0NTYxZS4uMTBiNjFmMTg0ZDYg MTAwNjQ0Ci0tLSBhL2xpc3AvbG9hZGhpc3QuZWwKKysrIGIvbGlzcC9sb2FkaGlzdC5lbApA QCAtMjExLDkgKzIxMSwxMyBAQCBsb2FkaGlzdC11bmxvYWQtZWxlbWVudAogICAgICAgKGtp bGwtbG9jYWwtdmFyaWFibGUgeCkpKQogICAoaWYgKGFuZCAoYm91bmRwIHgpICh0aW1lcnAg KHN5bWJvbC12YWx1ZSB4KSkpCiAgICAgICAoY2FuY2VsLXRpbWVyIChzeW1ib2wtdmFsdWUg eCkpKQotICA7OyBHZXQgcmlkIG9mIHRoZSBkZWZhdWx0IGJpbmRpbmcgaWYgd2UgY2FuLgot ICAodW5sZXNzIChsb2NhbC12YXJpYWJsZS1pZi1zZXQtcCB4KQotICAgIChtYWt1bmJvdW5k IHgpKSkKKyAgKGNvbmQKKyAgIDs7ICJVbmJpbmQiIGluZGlyZWN0IHZhcmlhYmxlLgorICAg KChub3QgKGVxIChpbmRpcmVjdC12YXJpYWJsZSB4KSB4KSkKKyAgICAoaW50ZXJuYWwtZGVs ZXRlLWluZGlyZWN0LXZhcmlhYmxlIHgpKQorICAgOzsgR2V0IHJpZCBvZiB0aGUgZGVmYXVs dCBiaW5kaW5nIGlmIHdlIGNhbi4KKyAgICgobm90IChsb2NhbC12YXJpYWJsZS1pZi1zZXQt cCB4KSkKKyAgICAobWFrdW5ib3VuZCB4KSkpKQogCiAoY2wtZGVmbWV0aG9kIGxvYWRoaXN0 LXVubG9hZC1lbGVtZW50ICgoeCAoaGVhZCBkZWZpbmUtdHlwZSkpKQogICAobGV0KiAoKG5h bWUgKGNkciB4KSkpCmRpZmYgLS1naXQgYS9zcmMvZXZhbC5jIGIvc3JjL2V2YWwuYwppbmRl eCA1ZGU3MjNjZjNiYy4uMzM1ZmRhZThhYjkgMTAwNjQ0Ci0tLSBhL3NyYy9ldmFsLmMKKysr IGIvc3JjL2V2YWwuYwpAQCAtNzIwLDYgKzcyMCwyNCBAQCBERUZVTiAoImRlZnZhcmFsaWFz IiwgRmRlZnZhcmFsaWFzLCBTZGVmdmFyYWxpYXMsIDIsIDMsIDAsCiAgIHJldHVybiBiYXNl X3ZhcmlhYmxlOwogfQogCitERUZVTiAoImludGVybmFsLWRlbGV0ZS1pbmRpcmVjdC12YXJp YWJsZSIsIEZpbnRlcm5hbF9kZWxldGVfaW5kaXJlY3RfdmFyaWFibGUsIFNpbnRlcm5hbF9k ZWxldGVfaW5kaXJlY3RfdmFyaWFibGUsCisgICAgICAgMSwgMSwgMCwKKyAgICAgICBkb2M6 IC8qIEludGVybmFsIHVzZSBvbmx5LgorVW5kZWNsYXJlIFNZTUJPTCBhcyB2YXJpYWJsZSBh bGlhcywgdGhlbiB1bmJpbmQgaXQuCitSZXR1cm4gU1lNQk9MLiAgKi8pCisgIChyZWdpc3Rl ciBMaXNwX09iamVjdCBzeW1ib2wpCit7CisgIENIRUNLX1NZTUJPTCAoc3ltYm9sKTsKKyAg aWYgKFhTWU1CT0wgKHN5bWJvbCktPnUucy5yZWRpcmVjdCAhPSBTWU1CT0xfVkFSQUxJQVMp CisgICAgeHNpZ25hbDIgKFFlcnJvciwKKwkgICAgICBidWlsZF9zdHJpbmcgKCJDYW5ub3Qg dW5kZWNsYXJlIGEgdmFyaWFibGUgdGhhdCBpcyBub3QgYW4gYWxpYXMiKSwKKwkgICAgICBz eW1ib2wpOworICBYU1lNQk9MIChzeW1ib2wpLT51LnMucmVkaXJlY3QgPSBTWU1CT0xfUExB SU5WQUw7CisgIEZwdXQgKHN5bWJvbCwgUXZhcmlhYmxlX2RvY3VtZW50YXRpb24sIFFuaWwp OworICBGc2V0IChzeW1ib2wsIFF1bmJvdW5kKTsKKyAgcmV0dXJuIHN5bWJvbDsKK30KKwog c3RhdGljIHVuaW9uIHNwZWNiaW5kaW5nICoKIGRlZmF1bHRfdG9wbGV2ZWxfYmluZGluZyAo TGlzcF9PYmplY3Qgc3ltYm9sKQogewpAQCAtNDQ4OCw2ICs0NTA2LDcgQEAgc3ltc19vZl9l dmFsICh2b2lkKQogICBkZWZzdWJyICgmU2RlZnZhcl8xKTsKICAgZGVmc3ViciAoJlNkZWZ2 YXJhbGlhcyk7CiAgIERFRlNZTSAoUWRlZnZhcmFsaWFzLCAiZGVmdmFyYWxpYXMiKTsKKyAg ZGVmc3ViciAoJlNpbnRlcm5hbF9kZWxldGVfaW5kaXJlY3RfdmFyaWFibGUpOwogICBkZWZz dWJyICgmU2RlZmNvbnN0KTsKICAgZGVmc3ViciAoJlNkZWZjb25zdF8xKTsKICAgZGVmc3Vi ciAoJlNpbnRlcm5hbF9fZGVmaW5lX3VuaW5pdGlhbGl6ZWRfdmFyaWFibGUpOwpkaWZmIC0t Z2l0IGEvdGVzdC9saXNwL2xvYWRoaXN0LXJlc291cmNlcy9sb2FkaGlzdC0tYWxpYXMuZWwg Yi90ZXN0L2xpc3AvbG9hZGhpc3QtcmVzb3VyY2VzL2xvYWRoaXN0LS1hbGlhcy5lbApuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uOTZmMWI3N2M0OGQKLS0tIC9k ZXYvbnVsbAorKysgYi90ZXN0L2xpc3AvbG9hZGhpc3QtcmVzb3VyY2VzL2xvYWRoaXN0LS1h bGlhcy5lbApAQCAtMCwwICsxLDI4IEBACis7OzsgbG9hZGhpc3QtLWFsaWFzLmVsIC0tLSBE dW1teSBwYWNrYWdlIGZvciBsb2FkaGlzdC10ZXN0cyAgLSotIGxleGljYWwtYmluZGluZzog dDsgLSotCisKKzs7IENvcHlyaWdodCAoQykgMjAyNSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b24sIEluYy4KKworOzsgQXV0aG9yOiBKZW5zIFNjaG1pZHQgPGpzY2htaWR0NGdudUB2b2Rh Zm9uZW1haWwuZGU+CisKKzs7IFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KKwor OzsgR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0 IGFuZC9vciBtb2RpZnkKKzs7IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVy YWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Cis7OyB0aGUgRnJlZSBTb2Z0d2Fy ZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgorOzsg KGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKworOzsgR05VIEVtYWNzIGlz IGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCis7OyBi dXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJy YW50eSBvZgorOzsgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB UiBQVVJQT1NFLiAgU2VlIHRoZQorOzsgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9y IG1vcmUgZGV0YWlscy4KKworOzsgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBv ZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKzs7IGFsb25nIHdpdGggR05VIEVt YWNzLiAgSWYgbm90LCBzZWUgPGh0dHBzOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKwor Ozs7IENvZGU6CisKKyhkZWZ2YXJhbGlhcyAnbG9hZGhpc3QtLWFsaWFzLWxhc3QtaW5wdXQt ZXZlbnQgJ2xhc3QtaW5wdXQtZXZlbnQKKyAgIkFsaWFzIG9uIGJ1aWx0LWluIHZhcmlhYmxl LiIpCisKKyhwcm92aWRlICdsb2FkaGlzdC0tYWxpYXMpCis7OzsgbG9hZGhpc3QtLWFsaWFz LmVsIGVuZHMgaGVyZQpkaWZmIC0tZ2l0IGEvdGVzdC9saXNwL2xvYWRoaXN0LXRlc3RzLmVs IGIvdGVzdC9saXNwL2xvYWRoaXN0LXRlc3RzLmVsCmluZGV4IDBmMWNlZGY5YzdmLi4zYmM4 YmJiMDE4OSAxMDA2NDQKLS0tIGEvdGVzdC9saXNwL2xvYWRoaXN0LXRlc3RzLmVsCisrKyBi L3Rlc3QvbGlzcC9sb2FkaGlzdC10ZXN0cy5lbApAQCAtMTAxLDQgKzEwMSwxMiBAQCBsb2Fk aGlzdC10ZXN0cy11bmxvYWQtZmVhdHVyZS1ub3RuZXN0ZWQKICAgKHNob3VsZCAobnVsbCAo Z2V0ICdsb2FkaGlzdC0tYmFyLWRlYyAnZnVuY3Rpb24taGlzdG9yeSkpKQogICAoc2hvdWxk IChudWxsIChnZXQgJ2xvYWRoaXN0LS1mb28taW5jICdmdW5jdGlvbi1oaXN0b3J5KSkpKQog CisoZXJ0LWRlZnRlc3QgbG9hZGhpc3QtdGVzdC11bmxvYWQtZmVhdHVyZS1hbGlhcyAoKQor ICAiQ2hlY2sgdGhhdCBidWcjNzY3NDggaGFzIGJlZW4gZml4ZWQuIgorICAoYWRkLXRvLWxp c3QgJ2xvYWQtcGF0aCAoZXhwYW5kLWZpbGUtbmFtZQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgImxvYWRoaXN0LXJlc291cmNlcy8iCisgICAgICAgICAgICAgICAgICAgICAgICAg ICBsb2FkaGlzdC0tdGVzdHMtZGlyKSkKKyAgKGxvYWQgImxvYWRoaXN0LS1hbGlhcyIgbmls IHQpCisgICh1bmxvYWQtZmVhdHVyZSAnbG9hZGhpc3QtLWFsaWFzKSkKKwogOzs7IGxvYWRo aXN0LXRlc3RzLmVsIGVuZHMgaGVyZQpkaWZmIC0tZ2l0IGEvdGVzdC9zcmMvZXZhbC10ZXN0 cy5lbCBiL3Rlc3Qvc3JjL2V2YWwtdGVzdHMuZWwKaW5kZXggYzVhNDZiNjJlZTIuLjY0YTEw OGY4NzQ0IDEwMDY0NAotLS0gYS90ZXN0L3NyYy9ldmFsLXRlc3RzLmVsCisrKyBiL3Rlc3Qv c3JjL2V2YWwtdGVzdHMuZWwKQEAgLTI4Miw2ICsyODIsMTggQEAgZXZhbC10ZXN0cy1kZWZ2 YXJhbGlhcwogICAoc2hvdWxkLWVycm9yIChkZWZ2YXJhbGlhcyAnZXZhbC10ZXN0cy0tbXkt YyAnZXZhbC10ZXN0cy0tbXktZCkKICAgICAgICAgICAgICAgICA6dHlwZSAnY3ljbGljLXZh cmlhYmxlLWluZGlyZWN0aW9uKSkKIAorKGVydC1kZWZ0ZXN0IGV2YWwtdGVzdHMtLWludGVy bmFsLWRlbGV0ZS1pbmRpcmVjdC12YXJpYWJsZSAoKQorICAoZGVmdmFyIGV2YWwtdGVzdHMt LWktZC1pLXYtdmFyICdmb28pCisgIChkZWZ2YXJhbGlhcyAnZXZhbC10ZXN0cy0taS1kLWkt di12YXIxICdldmFsLXRlc3RzLS1pLWQtaS12LXZhciAiRG9jIHN0cmluZy4iKQorICAoaW50 ZXJuYWwtZGVsZXRlLWluZGlyZWN0LXZhcmlhYmxlICdldmFsLXRlc3RzLS1pLWQtaS12LXZh cjEpCisKKyAgKHNob3VsZCAoZXEgKGluZGlyZWN0LXZhcmlhYmxlICdldmFsLXRlc3RzLS1p LWQtaS12LXZhcjEpCisgICAgICAgICAgICAgICdldmFsLXRlc3RzLS1pLWQtaS12LXZhcjEp KQorICAoc2hvdWxkLW5vdCAoYm91bmRwICdldmFsLXRlc3RzLS1pLWQtaS12LXZhcjEpKQor ICAoc2hvdWxkLW5vdCAoZ2V0ICdldmFsLXRlc3RzLS1pLWQtaS12LXZhcjEgJ3ZhcmlhYmxl LWRvY3VtZW50YXRpb24pKQorCisgIChzaG91bGQtZXJyb3IgKGludGVybmFsLWRlbGV0ZS1p bmRpcmVjdC12YXJpYWJsZSAnZXZhbC10ZXN0cy0taS1kLWktdi12YXIpKSkKKwogKGRlZnZh ciBldmFsLXRlc3RzL2dsb2JhbC12YXIgJ2dsb2JhbC12YWx1ZSkKIChkZWZ2YXItbG9jYWwg ZXZhbC10ZXN0cy9idWZmZXItbG9jYWwtdmFyICdkZWZhdWx0LXZhbHVlKQogKGVydC1kZWZ0 ZXN0IGV2YWwtdGVzdHMvZGVmYXVsdC12YWx1ZSAoKQotLSAKMi4zOS41Cgo= --------------5wAhl7dWVUnjFaEIHtYEe5tz-- From debbugs-submit-bounces@debbugs.gnu.org Sun Mar 16 00:12:26 2025 Received: (at 76748-done) by debbugs.gnu.org; 16 Mar 2025 04:12:26 +0000 Received: from localhost ([127.0.0.1]:44741 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ttfMP-00085u-Qi for submit@debbugs.gnu.org; Sun, 16 Mar 2025 00:12:26 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:38099) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ttfMM-00084x-2V for 76748-done@debbugs.gnu.org; Sun, 16 Mar 2025 00:12:23 -0400 Received: from pmg1.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id 2ED9E1001AC; Sun, 16 Mar 2025 00:12:15 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1742098330; bh=+SvW1Ri0Znqfhbzfp6VB/uM1W0gBwcNn/lmSKayqDyw=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=OgOlNchAtTayY4HbOcmWrqEpR899T6ooaUfvTdYP+b+Yir2EECz+1hG5IrKwtmQaU QCACxTZWpskThAVlV/V3rUR7y4yKOgsQvBx0kThcVRegIyc9aGizYfClAH4dmeU5mZ wCzggsEfG/MuvFUN7i582f8ATeoN8ZPWMWMjJZsNFsdiXbpUUYw5QGWOq7tkRk4hTa WhbUUk6PaZE2TSuFTDZVkUwq3dLtNKxp5DRVJZDbjVVG9zv/I8hc8aj0M8RDldBBn5 Qd9R11OSyQFnvBg3ADFVzM/kh1HB1KeyFT1rj5WQXEPvHUul6YWZNX9S7l2C1mTZfD Wd3IiV50bGJvg== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id 6D07F100154; Sun, 16 Mar 2025 00:12:10 -0400 (EDT) Received: from alfajor (unknown [104.247.242.5]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 3C19212062E; Sun, 16 Mar 2025 00:12:10 -0400 (EDT) From: Stefan Monnier To: Jens Schmidt Subject: Re: bug#76748: 31.0.50; `unload-feature' unbinds NEW-ALIAS and BASE-VARIABLE of variable alias In-Reply-To: <5e72add7-41c2-4d43-96ec-030997b35e27@vodafonemail.de> Message-ID: References: <87sensbjkh.fsf@sappc2.fritz.box> <86ikonpsgi.fsf@gnu.org> <5bd13a32-5988-4358-bbce-0d8a9146345b@vodafonemail.de> <209c11b2-d6e5-4479-80ec-3dbf1849628c@vodafonemail.de> <3fd110ac-ebb1-40c4-bc49-02a7fa452f8c@vodafonemail.de> <42eecf59-24d0-4913-8a25-7080699713d2@vodafonemail.de> <5e72add7-41c2-4d43-96ec-030997b35e27@vodafonemail.de> Date: Sun, 16 Mar 2025 00:12:09 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL -0.381 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 76748-done Cc: Eli Zaretskii , 76748-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > Please see the attached patch. Thanks, pushed to `master` closing, Stefan From debbugs-submit-bounces@debbugs.gnu.org Sun Mar 16 03:04:54 2025 Received: (at 76748) by debbugs.gnu.org; 16 Mar 2025 07:04:54 +0000 Received: from localhost ([127.0.0.1]:45111 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tti3J-0003pH-9j for submit@debbugs.gnu.org; Sun, 16 Mar 2025 03:04:54 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:33102) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tti3D-0003nS-O3 for 76748@debbugs.gnu.org; Sun, 16 Mar 2025 03:04:50 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tti35-0001zR-16; Sun, 16 Mar 2025 03:04:39 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=O57gE/04rQOvGSCzrie51V0R+dzK8EFz6k4sGwYX4kw=; b=ANNm4x8fKjY6 wghisYwR2s7gTn2x7/p5OaoqyLEyillnE8ymfNgHGpYj6YDydg41v6LO0aWSU2CWLgDJxx7jZt7a1 Cz5FmHJoG/J2V34ronNuqXUGac4s/qL7XWb4UgrT73QUFyeYnR1+VX2FPDzON3W9wUQ8XTtUmkbHt E92r3GMQZTQOdf0aMFPDLz5wqRJB+1QSe2+4JzKNuZcSvJbo0q9sYFTIIbQcUkdoNkua2dkpUzJJw In5zNFaJONiwLRpD9uKObgP9WzxfAtJHHuJkdWg4IVvAY/uKaTFXP+MF5NC9xrSFM1nQO5AnoAu/+ 1Pl9Pxa9ghJV45kLfQbWNg==; Date: Sun, 16 Mar 2025 09:04:34 +0200 Message-Id: <868qp5v4l9.fsf@gnu.org> From: Eli Zaretskii To: Stefan Monnier In-Reply-To: (message from Stefan Monnier on Sun, 16 Mar 2025 00:12:09 -0400) Subject: Re: bug#76748: 31.0.50; `unload-feature' unbinds NEW-ALIAS and BASE-VARIABLE of variable alias References: <87sensbjkh.fsf@sappc2.fritz.box> <86ikonpsgi.fsf@gnu.org> <5bd13a32-5988-4358-bbce-0d8a9146345b@vodafonemail.de> <209c11b2-d6e5-4479-80ec-3dbf1849628c@vodafonemail.de> <3fd110ac-ebb1-40c4-bc49-02a7fa452f8c@vodafonemail.de> <42eecf59-24d0-4913-8a25-7080699713d2@vodafonemail.de> <5e72add7-41c2-4d43-96ec-030997b35e27@vodafonemail.de> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 76748 Cc: jschmidt4gnu@vodafonemail.de, 76748@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Stefan Monnier > Cc: Eli Zaretskii , 76748-done@debbugs.gnu.org > Date: Sun, 16 Mar 2025 00:12:09 -0400 > > > Please see the attached patch. > > Thanks, pushed to `master` closing, I think you forgot to push. From debbugs-submit-bounces@debbugs.gnu.org Sun Mar 16 12:53:13 2025 Received: (at 76748) by debbugs.gnu.org; 16 Mar 2025 16:53:13 +0000 Received: from localhost ([127.0.0.1]:50512 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ttrEf-0002K5-HL for submit@debbugs.gnu.org; Sun, 16 Mar 2025 12:53:13 -0400 Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:52749) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ttrEc-0002Jc-Cd for 76748@debbugs.gnu.org; Sun, 16 Mar 2025 12:53:11 -0400 Received: from pmg1.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id 5E76B1001AC; Sun, 16 Mar 2025 12:53:03 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1742143982; bh=OXc+Qi4U0melC+Wl595CWgybgp7bWG5j3c/INv9XaxE=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=jfZPgjEhI2P+X1zqZBaOGPBn9SJPrGbiWJO2qu8ue0ijIV8qEQe7C5XJu243QxlUl Ao6g1X1dOOTAJk8wPUQlzRsQo8+4D8TYfeMLqeWiIdKLEHK4+gtKEIhiVLR/yayZJv 7T1H4v3Zw41hKGIPawOCPBFRXEiK/b2m8uYBhjeTBMDkEMlphwcQ7pDdcXEROtKWPq R4FdtoJoW4MHDlti+xTGNSH8oVGEbpNIKy8iabwEbFFPedWwNdhycFyotrFLFkNq+Z b/uBJMqf/I/LLbMfETWJfCHNXu9I6J1QtdnEZbK9ywTQa+qKNkQfJgi4mdLvu0lTyE HIJCTd+OqVFhA== Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id BF53C100146; Sun, 16 Mar 2025 12:53:02 -0400 (EDT) Received: from alfajor (unknown [104.247.242.5]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 897E812027F; Sun, 16 Mar 2025 12:53:02 -0400 (EDT) From: Stefan Monnier To: Eli Zaretskii Subject: Re: bug#76748: 31.0.50; `unload-feature' unbinds NEW-ALIAS and BASE-VARIABLE of variable alias In-Reply-To: <868qp5v4l9.fsf@gnu.org> Message-ID: References: <87sensbjkh.fsf@sappc2.fritz.box> <86ikonpsgi.fsf@gnu.org> <5bd13a32-5988-4358-bbce-0d8a9146345b@vodafonemail.de> <209c11b2-d6e5-4479-80ec-3dbf1849628c@vodafonemail.de> <3fd110ac-ebb1-40c4-bc49-02a7fa452f8c@vodafonemail.de> <42eecf59-24d0-4913-8a25-7080699713d2@vodafonemail.de> <5e72add7-41c2-4d43-96ec-030997b35e27@vodafonemail.de> <868qp5v4l9.fsf@gnu.org> Date: Sun, 16 Mar 2025 12:53:01 -0400 User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain X-SPAM-INFO: Spam detection results: 0 ALL_TRUSTED -1 Passed through trusted hosts only via SMTP AWL -0.378 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain X-SPAM-LEVEL: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 76748 Cc: jschmidt4gnu@vodafonemail.de, 76748@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > I think you forgot to push. I like the way you think, Stefan From unknown Sat Jun 21 03:12:52 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Mon, 14 Apr 2025 11:24:09 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator