From debbugs-submit-bounces@debbugs.gnu.org Tue Aug 03 15:39:02 2021 Received: (at submit) by debbugs.gnu.org; 3 Aug 2021 19:39:02 +0000 Received: from localhost ([127.0.0.1]:41566 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mB0Fi-00040B-37 for submit@debbugs.gnu.org; Tue, 03 Aug 2021 15:39:02 -0400 Received: from lists.gnu.org ([209.51.188.17]:58406) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mB0Fg-000400-M6 for submit@debbugs.gnu.org; Tue, 03 Aug 2021 15:39:01 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:48592) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mB0Fg-0001RO-ET for bug-gnu-emacs@gnu.org; Tue, 03 Aug 2021 15:39:00 -0400 Received: from vr0.sivalik.com ([104.238.130.12]:42604 helo=smtp.sivalik.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mB0Fe-00051S-F8 for bug-gnu-emacs@gnu.org; Tue, 03 Aug 2021 15:39:00 -0400 Received: from hp (pool-96-242-220-29.nwrknj.fios.verizon.net [96.242.220.29]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: rajeev@sivalik.com) by smtp.sivalik.com (Postfix) with ESMTPSA id 6AF935DCF1; Tue, 3 Aug 2021 15:38:48 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=sivalik.com; s=svlk; t=1628019528; bh=SLN6KHfeEfJgIOKqr22J0SGWXPnwcuEECg6jI4zcPhQ=; h=From:To:Subject:Date:From; b=X1CEAs/Cv2F0tNsQN5uzdKXJaOCuNfTPEOz4ylzgTL4vg03R1hbrpUXyYGaWvjAM0 D3AyAW/TqxOra2zyx3mg7jt0egLElnvHvxyUuyH+6o+sd23ZV/JTYqKByyUtrxDq7M lz6caxsAuY7dtmEN9Gp3Iws0aLsLJYK5FphxEpC8= X-No-Archive: yes From: Rajeev N To: bug-gnu-emacs@gnu.org Subject: 27.2.50; map-merge plist return alist Date: Tue, 03 Aug 2021 19:38:48 +0000 Message-ID: <87o8ae71yv.fsf@hm.sivalik.com> MIME-Version: 1.0 Content-Type: text/plain Content-Disposition: inline Received-SPF: pass client-ip=104.238.130.12; envelope-from=rajeev.jnk@sivalik.com; helo=smtp.sivalik.com 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-Spam-Score: -1.4 (-) 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: -2.4 (--) (map-merge 'plist nil '(:a 1)) expected: '(:a 1) got: '((:a . 1)) Also, tested on master. In GNU Emacs 27.2.50 (build 5, x86_64-pc-linux-gnu, GTK+ Version 3.24.24, cairo version 1.16.0) of 2021-07-14 built on hp Repository revision: 7ac411ae2ce91572a2bdb8eaa1ee6ceccf162e35 Repository branch: emacs-27 Windowing system distributor 'The X.Org Foundation', version 11.0.12011000 System Description: Debian GNU/Linux 11 (bullseye) Recent messages: (No files need saving) Opening connection to imap.sivalik.com via tls... Opening connection to imap.sivalik.com...done Opening connection to imap.gmail.com via tls... Opening connection to imap.gmail.com...done nnimap rajeev.sivalik splitting mail...done nnimap binita.gmail splitting mail...done nnimap read 0k from imap.gmail.com Hiding all blocks...done Making completion list... Configured using: 'configure --with-mailutils --with-cairo --prefix=/home/rajeev/tmp/build/em/o/emacs-27' Configured features: XPM JPEG TIFF GIF PNG RSVG CAIRO SOUND GPM DBUS GSETTINGS GLIB NOTIFY INOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE HARFBUZZ M17N_FLT LIBOTF ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS LIBSYSTEMD JSON PDUMPER LCMS2 GMP Important settings: value of $LC_TIME: en_GB.UTF-8 value of $LANG: en_US.UTF-8 value of $XMODIFIERS: @im=ibus locale-coding-system: utf-8-unix Major mode: Messages Minor modes in effect: global-so-long-mode: t global-auto-revert-mode: t shell-dirtrack-mode: t midnight-mode: t display-time-mode: t tooltip-mode: t electric-indent-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t buffer-read-only: t transient-mark-mode: t Load-path shadows: /home/rajeev/.config/emacs/elpa/map-3.0/map hides /home/rajeev/tmp/build/em/o/emacs-27/share/emacs/27.2.50/lisp/emacs-lisp/map Features: (shadow sort emacsbug utf-7 nnml js cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs smerge-mode diff vc-bzr vc-src vc-sccs vc-svn vc-cvs vc-rcs vc-dir ewoc vc vc-dispatcher mm-archive network-stream url-cache edmacro kmacro server cursor-sensor time-stamp bbdb-gnus nnfolder xt-mouse which-func imenu timeclock spam spam-stat gnus-uu yenc semantic/util-modes semantic/util semantic semantic/tag semantic/lex semantic/fw mode-local cedet org-indent reveal mailalias bbdb-message mail-extr ol-eww eww mm-url thingatpt url-queue ol-rmail ol-mhe ol-irc ol-info ol-gnus nnir ol-docview doc-view jka-compr image-mode exif ol-bibtex bibtex ol-bbdb ol-w3m icomplete so-long cl-extra autorevert filenotify bbdb-anniv tramp tramp-loaddefs trampver tramp-integration files-x tramp-compat shell ls-lisp printing ps-print ps-print-loaddefs ps-def lpr web-server web-server-status-codes el/web midnight el/cron backtrace help-mode qp el/wthr el/av el/hass el/fin el/remote el/script type-break cal-iso org-id lunar solar cal-dst holidays hol-loaddefs el/calc olc el/loc term disp-table ehelp dirtrack hideshow dbus parsec gnutls gnus-delay gnus-draft gnus-agent gnus-srvr gnus-score score-mode nnvirtual nntp gnus-cache gnus-msg nndraft nnmh gnus-icalendar org-capture gnus-art mm-uu mml2015 mm-view mml-smime smime dig icalendar sieve sieve-mode sieve-manage sasl sasl-anonymous sasl-login sasl-plain sendmail time ox-odt rng-loc rng-uri rng-parse rng-match rng-dt rng-util rng-pttrn nxml-parse nxml-ns nxml-enc xmltok nxml-util ox-latex ox-icalendar ox-html table ox-ascii ox-publish ox org-element avl-tree generator org-agenda org-refile org-crypt org ob ob-tangle ob-ref ob-lob ob-table ob-exp org-macro org-footnote org-src ob-comint org-pcomplete pcomplete comint ansi-color ring org-list org-faces org-entities noutline outline org-version ob-emacs-lisp ob-core ob-eval org-table ol org-keys org-compat advice org-macs org-loaddefs find-func gnus-sum shr svg xml dom gnus-group gnus-undo gnus-start gnus-cloud nnimap nnmail mail-source utf7 netrc nnoo parse-time iso8601 gnus-spec gnus-int gnus-range message dired dired-loaddefs format-spec rfc822 mml mml-sec epa derived mm-decode mm-bodies mm-encode gmm-utils mailheader gnus-win gnus pp vc-git diff-mode easy-mmode cus-edit cus-start cus-load nnheader gnus-util rmail rmail-loaddefs text-property-search time-date mail-utils wid-edit el/org el/doc el/mail oauth2 url-http url url-proxy url-privacy url-expand url-methods url-history mailcap url-auth mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr url-cookie url-domsuf url-util url-gw nsm rmc puny plstore epg epg-config el/tools el/shell el/webdr el/xmpp el/diary timer-list bbdb-mua el/timer el/util bbdb-com crm mailabbrev bbdb bbdb-site timezone el/bbdb appt diary-lib diary-loaddefs cal-menu calendar cal-loaddefs el/init wombat-theme info package easymenu browse-url url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs eieio-loaddefs password-cache json subr-x map url-vars seq byte-opt gv bytecomp byte-compile cconv cl-loaddefs cl-lib tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode elisp-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core term/tty-colors frame minibuffer cl-generic 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 charscript charprop case-table epa-hook jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote threads dbusbind inotify lcms2 dynamic-setting system-font-setting font-render-setting cairo move-toolbar gtk x-toolkit x multi-tty make-network-process emacs) Memory information: ((conses 16 431082 34150) (symbols 48 37600 22) (strings 32 143406 6634) (string-bytes 1 4765442) (vectors 16 62178) (vector-slots 8 735772 48862) (floats 8 1187 1245) (intervals 56 2500 618) (buffers 1000 78)) From debbugs-submit-bounces@debbugs.gnu.org Tue Aug 03 17:59:38 2021 Received: (at submit) by debbugs.gnu.org; 3 Aug 2021 21:59:39 +0000 Received: from localhost ([127.0.0.1]:41708 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mB2Rm-0007Py-HL for submit@debbugs.gnu.org; Tue, 03 Aug 2021 17:59:38 -0400 Received: from lists.gnu.org ([209.51.188.17]:33516) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mB2Rk-0007Pq-PW for submit@debbugs.gnu.org; Tue, 03 Aug 2021 17:59:37 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:55360) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mB2Rk-0002wa-BS for bug-gnu-emacs@gnu.org; Tue, 03 Aug 2021 17:59:36 -0400 Received: from mout.web.de ([217.72.192.78]:47565) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mB2Ri-0004I7-Sw for bug-gnu-emacs@gnu.org; Tue, 03 Aug 2021 17:59:36 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=web.de; s=dbaedf251592; t=1628027955; bh=wk3NPDs1wTe4vVY90ilglJaKiRor9PsQKj279HVsxFk=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=YAkrGZhCJci7lHOh74Pqh8kkwSGNqfjZe3fUQswSsV7au8vrlLxs//NU8UybUwggd m0QmaS1BTVOO7M1nvAdz4AbGD5dpeglcqmzVvrv4dQLaSSzrbi6x5Fl7DKt9X6XH72 0qZwTZ4unjNm5vWGUAWRQMPBKvomj4qpBegQHH28= X-UI-Sender-Class: c548c8c5-30a9-4db5-a2e7-cb6cb037b8f9 Received: from drachen.dragon ([88.66.201.45]) by smtp.web.de (mrweb103 [213.165.67.124]) with ESMTPSA (Nemesis) id 0M0hfO-1n1CrF1VHy-00unc7; Tue, 03 Aug 2021 23:59:15 +0200 From: Michael Heerdegen To: Rajeev N via "Bug reports for GNU Emacs, the Swiss army knife of text editors" Subject: Re: bug#49848: 27.2.50; map-merge plist return alist References: <87o8ae71yv.fsf@hm.sivalik.com> Date: Tue, 03 Aug 2021 23:59:14 +0200 In-Reply-To: <87o8ae71yv.fsf@hm.sivalik.com> (Rajeev N. via's message of "Tue, 03 Aug 2021 19:38:48 +0000") Message-ID: <877dh2qjf1.fsf@web.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K1:dw3QLMXL6Jzot8iz4srjvr9hphJAxQGiygycXrNJIS+lieV85P0 dyLnj/I6szl0kMCISoHmIKxoBVO6/dS8CSNGE4KJEK1p/FxYQC+Cm8plBf5Std+26Rb1mn7 bmj04su8whIueFpS0G7uKdjJZZyCasBzHPW+eHbji/wSpLXCat2lKX/QpAIyKRJ+fYTofDs qOtIxKsdnpZWTyHU4/+xw== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:Oo6EhIHn8v0=:BfGgurVxARjpaECHNPIwlR bipc96VMfUNwI6pdCVpKQAzlgwNFnyLMWHSwSE+YR82UFNOCNIIdbZRITPZJ8x7YgNIKyz4cm Gv5h/gxo40TDnh9zbYiskv7e7BJxLjoAz0kE+KJFX1VTEaJUkB6Ad7ZZN9hDlaoCnggJKRxOr ozC4AH6x8r+HTLUlwLJTM1oUgfEe8WHMb3fbBusDZBnwJQAUpzn9BPkhVA4OFZGdoaHy+4QhM BamI++DVTVJt8MT8MgpWHdmcfOS5si+i7G8Ig+eOppHaN0WiIq2a05lR7/JruBYWNks6dRRZB +bHTwxNPrM6HPBea/boGnp2oL+i77O52qmPINlV3EcCLTwqHoRiuF+7iG64gQDFR/3G+OWatA gQgHuERstZQxyIcLveot4u5VamJd8Cf2eiok5Fnggy9bbzOyZLvCbfjDgQACO9JgME1Sdudos O6rrT8sbgWhgM4lwDXxnBtIOEZHJciT+/im/FBTk1KCYC/kyBm0gSPrBwyuruilZKI6F5AF6a n/DvDL+UIO1V4vyrBGGjOdC7MmfWWpC1Fgke9DZE+VKt/v6VO+mbc8Bkwc0IXN7K/eZi1wQ3I OCXs2O7H4+mzbTF2B5NOZmf9hcJpv59brW0mXY54ePWlxNAV7xK5bg/BkXAV7Ig/J+Av3tYiU aX1vig2U/OsADPqBZl7Cq03IPlJx7+1peVDVAu/30ow7knigeMPestPawN4QknYTji7ACj2kG kju4QJK+tgJ8Gh4KOUsQr29BXcHoh6Lxs4fA2yubVyunclwpdnB7q1VwUievhfTpUJMh+1ANM AwFKDAvqrDtLHyaqN1Cgmb55eoXA5E4YwJ1aSjpTMqxxT0hK3P8alxxeqEwEeou0fsDeS/etk bUGfwNt5K/m/Z0Z+ljRIzqZJT54CEaXqERw15p81afzJ+CNreFZpz3aUSuDoZbwO9t8TkuDfM JQllBs7o8A7WdkikuSB0j80n8TgF2EEiCNGj0AzZolJ7RfPgV0Vbvme83FETaJL9jnAHYzznU FFhmoEM5fISy+8szE+1XdKa8HB+4fskczmfaTzEkgiukRYWJ2dcUBqgg0rFQvZJEEoaP3jmOk cwdE+NTaHgYBx+K71AkoGt+q7vGvRVz2f4ooxqbtksh8NQOgEWZ1gXb6A== Received-SPF: pass client-ip=217.72.192.78; envelope-from=michael_heerdegen@web.de; helo=mout.web.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, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) X-Debbugs-Envelope-To: submit Cc: Rajeev N , 49848@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: -2.4 (--) Rajeev N via "Bug reports for GNU Emacs, the Swiss army knife of text editors" writes: > (map-merge 'plist nil '(:a 1)) > expected: '(:a 1) > got: '((:a . 1)) I can reproduce this behavior and consider it a bug. The implementation of `map-merge' starts with an empty plist "RESULT" (i.e., nil) and fills it like (map-do (lambda (key value) (setf (map-elt result key) value)) (pop maps)) The setter of `map-elt' treats nil as empty alist (at the end, this is decided by `map--plist-p' which doesn't consider nil a plist). So the underlying problem is more general, maybe this is not the only issue this ambiguity causes. Michael. From debbugs-submit-bounces@debbugs.gnu.org Tue Aug 03 18:45:50 2021 Received: (at submit) by debbugs.gnu.org; 3 Aug 2021 22:45:51 +0000 Received: from localhost ([127.0.0.1]:41733 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mB3AR-00008G-MS for submit@debbugs.gnu.org; Tue, 03 Aug 2021 18:45:50 -0400 Received: from lists.gnu.org ([209.51.188.17]:57164) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mB3AP-000088-Le for submit@debbugs.gnu.org; Tue, 03 Aug 2021 18:45:46 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:36042) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mB3AP-00056v-CF for bug-gnu-emacs@gnu.org; Tue, 03 Aug 2021 18:45:45 -0400 Received: from vr0.sivalik.com ([104.238.130.12]:43558 helo=smtp.sivalik.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mB3AN-0001wz-PB for bug-gnu-emacs@gnu.org; Tue, 03 Aug 2021 18:45:45 -0400 Received: from hp (pool-96-242-220-29.nwrknj.fios.verizon.net [96.242.220.29]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: rajeev@sivalik.com) by smtp.sivalik.com (Postfix) with ESMTPSA id A1CFE5DD97; Tue, 3 Aug 2021 18:45:42 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=sivalik.com; s=svlk; t=1628030742; bh=I2c7+zk/3yTvIwshpbLYQFIkRk8pT43bU+oCJQ80/MI=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=YBvQWVupRLiBqMpUE0jCu8DbdShk/I2adlY07ArWcWv20LYpKSHhhBvt0Z71jRwIP t8l8SqcL3u3KQlnjho7RLDmj3p+ZuvgCD3wGguXT/j7jhbhMRsbUnD9UcSHd8H0ShB EAPBHDzB94pgIBk5WeuQWucScZZirzfFEX8tKytU= X-No-Archive: yes From: Rajeev N To: Michael Heerdegen Subject: Re: bug#49848: 27.2.50; map-merge plist return alist References: <87o8ae71yv.fsf@hm.sivalik.com> <877dh2qjf1.fsf@web.de> Date: Tue, 03 Aug 2021 22:45:42 +0000 In-Reply-To: <877dh2qjf1.fsf@web.de> (Michael Heerdegen's message of "Tue, 03 Aug 2021 23:59:14 +0200") Message-ID: <87k0l2p2p5.fsf@hm.sivalik.com> MIME-Version: 1.0 Content-Type: text/plain Content-Disposition: inline Received-SPF: pass client-ip=104.238.130.12; envelope-from=rajeev.jnk@sivalik.com; helo=smtp.sivalik.com 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-Spam-Score: -1.4 (-) X-Debbugs-Envelope-To: submit Cc: "Rajeev N via Bug reports for GNU Emacs, the Swiss army knife of text editors" , 49848@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 am using the following workaorund (advice-add 'map-merge :filter-args (lambda (r) (seq-filter #'identity r))) From debbugs-submit-bounces@debbugs.gnu.org Tue Aug 03 20:41:46 2021 Received: (at 49848) by debbugs.gnu.org; 4 Aug 2021 00:41:46 +0000 Received: from localhost ([127.0.0.1]:41846 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mB4yg-00051q-5b for submit@debbugs.gnu.org; Tue, 03 Aug 2021 20:41:46 -0400 Received: from mail-wr1-f53.google.com ([209.85.221.53]:37386) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mB4yd-00051X-FT for 49848@debbugs.gnu.org; Tue, 03 Aug 2021 20:41:44 -0400 Received: by mail-wr1-f53.google.com with SMTP id d8so312436wrm.4 for <49848@debbugs.gnu.org>; Tue, 03 Aug 2021 17:41:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tcd.ie; s=google21; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=a7KDONsbEurde18nvMofrxChiH33Ab1kElxCE27557E=; b=FBANyiVBQlN/MyAxPX4HP3wgF6MWTDDiavG/IWBYdysjXoZo7hT6KY3Bv/qDtFJw96 U/rzcgb0775qxly5uishSIGYkP6PdI6AC2NMqiIUP1q3JuzZdhexYsJ/1yV5g8MyjPQ4 8NvMEqLXBxYIzKVgM/Fzf9YkzhD8qVnR+2QnKPnz7anhvgfQzGH/bARl8+h8w2qcvNdU mQxTmoTWm4JT7EYT+SbVeMTybxNqjWRT+hPukCuuttS1GX4ZppIb0oyli8O7nkkHjVJE mhhaF7+yurIcgQnEznNaRfS28SynUPX+Is4Tub02HnUNUHFitMaNE3DtKINPYonUAkBt eMNA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=a7KDONsbEurde18nvMofrxChiH33Ab1kElxCE27557E=; b=OE9etbF/jJUwZU+MrHq91j9RBvh1zEbSZExtN6FbIxsszQ/oHwSm3ODvSZbF02isOK 92x728uZnCyzjA4ARzrbXx3EwAePDDLUVbpDcfD/dTpfhidwmkTkAAUjF4B4p8FYEpBt M084tfUEUeSow+PiHpTB3eLVfx7mOY5dxaTglvBeH/XUdIhqi7PKuACAnjrSfKvjaPLh YeeKeqDHrhfjxdeqGgg54R+zulazjgTFMFluhfHUK4eutR+UCX+qVGi364YPeknE2aiS R1lVpMKiWp/i4o6w5uMC4AjbxIrALTmZ00DpNW5MUk3MPLwor/j1HX+ci/QyUuegEH8h odPA== X-Gm-Message-State: AOAM533ycp8MK9AJa81jnGTBG8MEC8mVOip5yYQQ/+FSuI6xJfUKBwJz jAV+U1I0BYwhSX0WEYIa9GT44A== X-Google-Smtp-Source: ABdhPJztJyoCeltQMFQVjngENxfL/kHu6uB2va/kSguxFiK98lYQwXG1/jreG0e7GNdzlfgxvEPChw== X-Received: by 2002:a5d:4207:: with SMTP id n7mr25636363wrq.326.1628037697463; Tue, 03 Aug 2021 17:41:37 -0700 (PDT) Received: from localhost ([2a02:8084:20e2:c380:d15:339e:aa10:60f1]) by smtp.gmail.com with ESMTPSA id v15sm524850wmj.11.2021.08.03.17.41.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 03 Aug 2021 17:41:36 -0700 (PDT) From: "Basil L. Contovounesios" To: Michael Heerdegen Subject: Re: bug#49848: 27.2.50; map-merge plist return alist References: <87o8ae71yv.fsf@hm.sivalik.com> <877dh2qjf1.fsf@web.de> Date: Wed, 04 Aug 2021 01:41:35 +0100 In-Reply-To: <877dh2qjf1.fsf@web.de> (Michael Heerdegen's message of "Tue, 03 Aug 2021 23:59:14 +0200") Message-ID: <877dh282io.fsf@tcd.ie> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49848 Cc: rajeev.jnk@sivalik.com, 49848@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.0 (-) --=-=-= Content-Type: text/plain tags 49848 + patch quit Michael Heerdegen writes: > Rajeev N via "Bug reports for GNU Emacs, the Swiss army knife of text > editors" writes: > >> (map-merge 'plist nil '(:a 1)) >> expected: '(:a 1) >> got: '((:a . 1)) > > I can reproduce this behavior and consider it a bug. > > The implementation of `map-merge' starts with an empty plist "RESULT" > (i.e., nil) and fills it like > > (map-do (lambda (key value) > (setf (map-elt result key) value)) > (pop maps)) > > The setter of `map-elt' treats nil as empty alist (at the end, this is > decided by `map--plist-p' which doesn't consider nil a plist). > > So the underlying problem is more general, maybe this is not the only > issue this ambiguity causes. There's not much we can do about the inherent ambiguity between empty alists and plists, short of introducing other functions alongside map-elt/map-put! that take an explicit type. But then the justification for using map.el functions is kind of lost. In the specific case of merging maps into a desired type, we can simply be more careful in such ambiguous cases. The attached patch does that, while also avoiding the quadratic lookup behaviour for lists. While there, I noticed more discrepancies, however. map-merge-with promises to call its function argument whenever multiple keys are eql, but that does not always correspond with map-merge, i.e. sometimes non-eql keys are merged: (progn (require 'map) (map-merge-with 'list (lambda (a b) (message ">>> %s %s" a b) b) `((,(string ?a) . 1)) `((,(string ?a) . 2)))) In Emacs 26, it returns (("a" . 2) ("a" . 1)) without printing. In Emacs 27 and 28, it returns (("a" . 2)) without printing. Do we consider this a regression in Emacs 27 and try to fix it in 28 (keeping in mind that map.el is also a GNU ELPA package)? Or do we drop the eql guarantee in the docstring, and call the function argument whenever two keys are merged, as in the attached patch? I think the latter option may facilitate the equal-ity consistency being discussed in https://bug.gnu.org/47368. WDYT? Thanks, -- Basil --=-=-= Content-Type: text/x-diff Content-Disposition: attachment; filename=0001-Fix-merging-of-ambiguous-nil-maps.patch >From 2b81b9d1d19d33d8cef68e0968e79f637aa32b6e Mon Sep 17 00:00:00 2001 From: "Basil L. Contovounesios" Date: Wed, 4 Aug 2021 00:48:50 +0100 Subject: [PATCH] Fix merging of ambiguous nil maps * lisp/emacs-lisp/map.el (map--merge): New merging subroutine that uses a hash table in place of lists, for both efficiency and avoiding ambiguities (bug#49848). (map-merge): Rewrite in terms of map--merge. (map-merge-with): Ditto. This ensures that FUNCTION is called whenever two keys are merged, even if they are not eql (which could happen until now). It also makes map-merge-with consistent with map-merge, thus achieving greater overall predictability. * etc/NEWS: Announce this weakening of guarantees. * test/lisp/emacs-lisp/map-tests.el (test-map-merge) (test-map-merge-with): Don't depend on specific orderings. Test that nil is correctly merged into a plist. --- etc/NEWS | 8 +++++ lisp/emacs-lisp/map.el | 58 +++++++++++++++++++------------ test/lisp/emacs-lisp/map-tests.el | 24 ++++++++----- 3 files changed, 60 insertions(+), 30 deletions(-) diff --git a/etc/NEWS b/etc/NEWS index 86aeea69ca..d5d0645697 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -1600,6 +1600,14 @@ This is a slightly deeper copy than the previous 'copy-sequence'. --- *** The function 'map-contains-key' now supports plists. +--- +*** More consistent duplicate key handling in 'map-merge-with'. +Until now, 'map-merge-with' promised to call its function argument +whenever multiple maps contained 'eql' keys. However, this did not +always coincide with the keys that were actually merged, which could +be 'equal' instead. The function argument is now called whenever keys +are merged, for greater consistency with 'map-merge' and 'map-elt'. + ** Package --- diff --git a/lisp/emacs-lisp/map.el b/lisp/emacs-lisp/map.el index c59342875d..a920d606ac 100644 --- a/lisp/emacs-lisp/map.el +++ b/lisp/emacs-lisp/map.el @@ -371,37 +371,51 @@ map-every-p map) t)) +(defun map--merge (merge type &rest maps) + "Merge into a map of TYPE all the key/value pairs in MAPS. +MERGE is a function that takes the target MAP, a KEY, and a +VALUE, merges KEY and VALUE into MAP, and returns the result. +MAP may be of a type other than TYPE." + ;; Use a hash table internally if `type' is a list. This avoids + ;; both quadratic lookup behavior and the type ambiguity of nil. + (let* ((tolist (memq type '(list alist plist))) + (result (map-into (pop maps) + ;; Use same testfn as `map-elt' gv setter. + (cond ((eq type 'plist) '(hash-table :test eq)) + (tolist '(hash-table :test equal)) + (type))))) + (dolist (map maps) + (map-do (lambda (key value) + (setq result (funcall merge result key value))) + map)) + ;; Convert internal representation to desired type. + (if tolist (map-into result type) result))) + (defun map-merge (type &rest maps) "Merge into a map of TYPE all the key/value pairs in MAPS. See `map-into' for all supported values of TYPE." - (let ((result (map-into (pop maps) type))) - (while maps - ;; FIXME: When `type' is `list', we get an O(N^2) behavior. - ;; For small tables, this is fine, but for large tables, we - ;; should probably use a hash-table internally which we convert - ;; to an alist in the end. - (map-do (lambda (key value) - (setf (map-elt result key) value)) - (pop maps))) - result)) + (apply #'map--merge + (lambda (result key value) + (setf (map-elt result key) value) + result) + type maps)) (defun map-merge-with (type function &rest maps) "Merge into a map of TYPE all the key/value pairs in MAPS. -When two maps contain the same (`eql') key, call FUNCTION on the two +When two maps contain the same key, call FUNCTION on the two values and use the value returned by it. Each of MAPS can be an alist, plist, hash-table, or array. See `map-into' for all supported values of TYPE." - (let ((result (map-into (pop maps) type)) - (not-found (list nil))) - (while maps - (map-do (lambda (key value) - (cl-callf (lambda (old) - (if (eql old not-found) - value - (funcall function old value))) - (map-elt result key not-found))) - (pop maps))) - result)) + (let ((not-found (list nil))) + (apply #'map--merge + (lambda (result key value) + (cl-callf (lambda (old) + (if (eql old not-found) + value + (funcall function old value))) + (map-elt result key not-found)) + result) + type maps))) (cl-defgeneric map-into (map type) "Convert MAP into a map of TYPE.") diff --git a/test/lisp/emacs-lisp/map-tests.el b/test/lisp/emacs-lisp/map-tests.el index a04c6bef02..658ed2e711 100644 --- a/test/lisp/emacs-lisp/map-tests.el +++ b/test/lisp/emacs-lisp/map-tests.el @@ -446,16 +446,24 @@ test-map-let (ert-deftest test-map-merge () "Test `map-merge'." - (should (equal (map-merge 'list '(a 1) '((b . 2) (c . 3)) - #s(hash-table data (c 4))) - '((c . 4) (b . 2) (a . 1))))) + (should (equal (sort (map-merge 'list '(a 1) '((b . 2) (c . 3)) + #s(hash-table data (c 4))) + (lambda (x y) (string< (car x) (car y)))) + '((a . 1) (b . 2) (c . 4)))) + (should (equal (map-merge 'list () '(:a 1)) '((:a . 1)))) + (should (equal (map-merge 'alist () '(:a 1)) '((:a . 1)))) + (should (equal (map-merge 'plist () '(:a 1)) '(:a 1)))) (ert-deftest test-map-merge-with () - (should (equal (map-merge-with 'list #'+ - '((1 . 2)) - '((1 . 3) (2 . 4)) - '((1 . 1) (2 . 5) (3 . 0))) - '((3 . 0) (2 . 9) (1 . 6))))) + (should (equal (sort (map-merge-with 'list #'+ + '((1 . 2)) + '((1 . 3) (2 . 4)) + '((1 . 1) (2 . 5) (3 . 0))) + #'car-less-than-car) + '((1 . 6) (2 . 9) (3 . 0)))) + (should (equal (map-merge-with 'list #'+ () '(:a 1)) '((:a . 1)))) + (should (equal (map-merge-with 'alist #'+ () '(:a 1)) '((:a . 1)))) + (should (equal (map-merge-with 'plist #'+ () '(:a 1)) '(:a 1)))) (ert-deftest test-map-merge-empty () "Test merging of empty maps." -- 2.30.2 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Tue Aug 03 20:46:03 2021 Received: (at 49848) by debbugs.gnu.org; 4 Aug 2021 00:46:04 +0000 Received: from localhost ([127.0.0.1]:41856 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mB52p-00067K-KM for submit@debbugs.gnu.org; Tue, 03 Aug 2021 20:46:03 -0400 Received: from mail-wr1-f42.google.com ([209.85.221.42]:46697) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mB52n-000607-Nm for 49848@debbugs.gnu.org; Tue, 03 Aug 2021 20:46:02 -0400 Received: by mail-wr1-f42.google.com with SMTP id c16so283183wrp.13 for <49848@debbugs.gnu.org>; Tue, 03 Aug 2021 17:46:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tcd.ie; s=google21; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=RIXQNBQeADzLD1sggOl9ge8BB+Er+5Au7Q2xTw0skzY=; b=FzNA0Be0wTpQoAXa6zOHUxUIQo6Ehb4cdphcsT9ViBB4dShKFGRTiSmeyMb6v/SFvS 11slgOqcA9fGmS4GNgbqQB+WAN/n4A2xniFCa9ushYA1LRdz1od4s5CdaC7zZ21STGvI OeqadTZGjZRZyGzeeI4Mf2M7KRbyg3jj9NY7WvMmcpXZrPrT+kqi70RlkHbiyVYuPJuY azBqwGEsxK6NXH9aB8HTDJf9AThWd1RvMmxnxnrE1ZYdA1bF+UCpv2aC05YrHffAnay4 E4CTv9umuwR6HRYWur8zwji4v57CF0lb6bnWbv6l8g6lg0SmPgUys/jCwoiVjDNbjvbZ PhvA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=RIXQNBQeADzLD1sggOl9ge8BB+Er+5Au7Q2xTw0skzY=; b=TPdOZJm9TX2Dl6MiKVECml1v3ZAc7yqw76hUPJvUiKeJHYQYbdGLaKKqDUZTHqB0Xv FAfcaPAwKtIyUv1wGddJD4HsLwU/i13MciYaHbn4T9wtCH2Sr8qhePAOKPY7JAc7N4cW 9ChXdqf4o3M1015aZgM+fXNOtglHCYmta48LJZa9Tyyj5XCDI5MqklwfhqWTF7uU25DJ hkhWc+asf3u7p2vzp3gADKW9lld1LsSY2uTdQAtlN0e8QXUtjBqQ19Of5E9wzuZ7E/r5 EI4BocpTlWhxgccSx3fvMcL1UbR60AY0UCAfUfRDomnYQ7hxVAfvSvJOpQxGRYSDaOCK JGrA== X-Gm-Message-State: AOAM531HOTfRqxBEIfe9MStB/QSFA5PuP1m8KPjvG1+sArL7J/KpFy3P MxZdMo8TXawNSmdkCl2zrCCghw== X-Google-Smtp-Source: ABdhPJy6BbG7hYNlyxUTOjdcivUVMsW+O+dKix4enpG6ua5jSWi4lp5AEE1/NkHRn9D4iy2cDwQGxw== X-Received: by 2002:adf:e3d2:: with SMTP id k18mr25187158wrm.212.1628037956109; Tue, 03 Aug 2021 17:45:56 -0700 (PDT) Received: from localhost ([2a02:8084:20e2:c380:d15:339e:aa10:60f1]) by smtp.gmail.com with ESMTPSA id c15sm459510wrx.70.2021.08.03.17.45.55 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 03 Aug 2021 17:45:55 -0700 (PDT) From: "Basil L. Contovounesios" To: Michael Heerdegen Subject: Re: bug#49848: 27.2.50; map-merge plist return alist References: <87o8ae71yv.fsf@hm.sivalik.com> <877dh2qjf1.fsf@web.de> <877dh282io.fsf@tcd.ie> Date: Wed, 04 Aug 2021 01:45:54 +0100 In-Reply-To: <877dh282io.fsf@tcd.ie> (Basil L. Contovounesios's message of "Wed, 04 Aug 2021 01:41:35 +0100") Message-ID: <877dh2m3zx.fsf@tcd.ie> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49848 Cc: rajeev.jnk@sivalik.com, 49848@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.0 (-) "Basil L. Contovounesios" writes: > I think the latter option may facilitate the equal-ity consistency > being discussed in https://bug.gnu.org/47368. ^^^ bugs -- Basil From debbugs-submit-bounces@debbugs.gnu.org Wed Aug 04 03:48:04 2021 Received: (at 49848) by debbugs.gnu.org; 4 Aug 2021 07:48:04 +0000 Received: from localhost ([127.0.0.1]:42551 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mBBdD-000861-Q1 for submit@debbugs.gnu.org; Wed, 04 Aug 2021 03:48:04 -0400 Received: from quimby.gnus.org ([95.216.78.240]:37482) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mBBdB-00085V-Qs for 49848@debbugs.gnu.org; Wed, 04 Aug 2021 03:48:02 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=i1X9lT7uOVdIz5kaA1hny6aenAH6PBzOH2qzj0fRIqA=; b=kYCQ6FhLSFGen3/1Nw5ZNcnLQb VLlLHPkFjWKHoDXEvfXLqb/SUM7YjgIcQsTIQKpM5ybz8LRuYn/YV7p9y+O708rLiBLnvTVaNgBb9 60fW+qVlcSXDfIzzCA4im/rDEvAs7bxjRIYsnxcDJd9GTlxegcau0A+mpnv+7mvmy3jo=; Received: from [84.212.220.105] (helo=elva) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mBBd1-0005Hy-Er; Wed, 04 Aug 2021 09:47:55 +0200 From: Lars Ingebrigtsen To: "Basil L. Contovounesios" Subject: Re: bug#49848: 27.2.50; map-merge plist return alist References: <87o8ae71yv.fsf@hm.sivalik.com> <877dh2qjf1.fsf@web.de> <877dh282io.fsf@tcd.ie> Date: Wed, 04 Aug 2021 09:47:50 +0200 In-Reply-To: <877dh282io.fsf@tcd.ie> (Basil L. Contovounesios's message of "Wed, 04 Aug 2021 01:41:35 +0100") Message-ID: <87pmutejmh.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: "Basil L. Contovounesios" writes: > In the specific case of merging maps into a desired type, we can simply > be more careful in such ambiguous cases. The attached patch does that, > while also avoiding the quadratic lookup behaviour [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 49848 Cc: Michael Heerdegen , rajeev.jnk@sivalik.com, 49848@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 (---) "Basil L. Contovounesios" writes: > In the specific case of merging maps into a desired type, we can simply > be more careful in such ambiguous cases. The attached patch does that, > while also avoiding the quadratic lookup behaviour for lists. I think that's the correct (and indeed only) solution here when dealing with alist/plist ambiguities (if we don't want to say explicitly for every map* call what the type actually is meant to be). > (progn > (require 'map) > (map-merge-with 'list (lambda (a b) (message ">>> %s %s" a b) b) > `((,(string ?a) . 1)) > `((,(string ?a) . 2)))) > > In Emacs 26, it returns (("a" . 2) ("a" . 1)) without printing. > In Emacs 27 and 28, it returns (("a" . 2)) without printing. > > Do we consider this a regression in Emacs 27 and try to fix it in 28 > (keeping in mind that map.el is also a GNU ELPA package)? I think the current result value is the one that makes sense... > Or do we drop the eql guarantee in the docstring, and call the function > argument whenever two keys are merged, as in the attached patch? I think that makes sense. -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no From debbugs-submit-bounces@debbugs.gnu.org Wed Aug 04 22:47:36 2021 Received: (at 49848) by debbugs.gnu.org; 5 Aug 2021 02:47:36 +0000 Received: from localhost ([127.0.0.1]:45515 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mBTQ0-00023x-Hp for submit@debbugs.gnu.org; Wed, 04 Aug 2021 22:47:36 -0400 Received: from mout.web.de ([212.227.15.4]:46771) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mBTPy-00023S-KG for 49848@debbugs.gnu.org; Wed, 04 Aug 2021 22:47:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=web.de; s=dbaedf251592; t=1628131637; bh=W+F1xjfqP4TTiU8yZ43AjoQiOxW9Z9aJIj2wc1sckT8=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=idvOva59l/O+VIBHctTNA0C/5wzHhn/FSrji7AQzSBF8v11uq6yV7RGJfLWUTZiTB vkStsjUlcP6LqNmN12m+OqiupA6dOSXkNnGP/GBw488RgCM6d54IjUjM3X2lsLkd38 yfRpPBfxh0rJq/FFz9BuXqS4ujdb+qmgVPXuNQCw= X-UI-Sender-Class: c548c8c5-30a9-4db5-a2e7-cb6cb037b8f9 Received: from drachen.dragon ([88.66.201.45]) by smtp.web.de (mrweb004 [213.165.67.108]) with ESMTPSA (Nemesis) id 0Lv7eE-1nAcq72J6o-010Ipe; Thu, 05 Aug 2021 04:47:17 +0200 From: Michael Heerdegen To: "Basil L. Contovounesios" Subject: Re: bug#49848: 27.2.50; map-merge plist return alist References: <87o8ae71yv.fsf@hm.sivalik.com> <877dh2qjf1.fsf@web.de> <877dh282io.fsf@tcd.ie> Date: Thu, 05 Aug 2021 04:47:16 +0200 In-Reply-To: <877dh282io.fsf@tcd.ie> (Basil L. Contovounesios's message of "Wed, 04 Aug 2021 01:41:35 +0100") Message-ID: <87o8ac38wb.fsf@web.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K1:fpkMsVPjlwrnVV1R68I1UFW+nawDQxyFxtDuCGONUHDHe2Ck5rR C9CbQMqFhT9NdXQ/byEoq/YrY1d8lRLWYpyr+TkHEBRRAiq+NDoJt0t1RpJ6acfKOy1EtVZ GHzl9mgyB2G1TtBlGkyKc84uDoy71UYj1sZ6VCwm1BBUXsuIKyagKgWyVDufnKCAt/jUyAC l7SSIx++lwpE64RYasLvQ== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:ll6Nw8n6ppI=:TYnpdb2hhENBGgBlX6Ar4b H4FDK+zU+jR82o9R03haXNHFVnBJiUuj3rxOyzA71bqqt5MfU+QM1f1sRBtzBGNvOtcQ0itzd c2ny9MGY/GaljvBJUwQ9DKjvSZUYdcm+cjOCeSbLCw/jAbK+IwEcj65DNHvSKlw3LMvetWYHk wDnNvzN/lqT9rTAJnsF9TjksKa74+EOLchZdbhv2mYASDj+jLbZBKkl0L7YJlJewvxA7me0Ak dngSfRAFjo4Pco0x961/UkwXBnccHsoj5qZ6dXz9e590kFuGAPmWwblrlE/bpaIjD+XhYhnOf 1He71S4Ep9J3co4RmzKTB8wRrmQcwzoHyl9lmsvQMMcDAvCXxbDsws9k8AlhebrJu5Z86+hFy eDX/k+Cgn1TZFc2xP6Lnbk5GJAEL+JnuLwBDbICGXiLpSxFwaF+ZCvzgS+N24LSPKuoqHhTMq 6TKNCJRQRO/qJYk6CCWLDQFuZVomZK6MjVuiI4HnSyxEBYoFTlL2vFRjYWum7PpSah01br+QY +6loVQacVjM2BKjDwZG8O6zxfCQlVOfG6heZwdikFOghABbP44mNE4+eWuVVk/6NHgqRXOLmW WBXpxR5byR1TJT9prnIfIpw/eI0S6yH1kSACSbq7zBe07uw9/N5mnkOWWLjLdK+UZ8Ufq34T7 OgCAzMZFd575QIHH742ZmD3Ii43TErK/uJGMi01K/7PKAHxx6esptaW7uoixxjwcNDbjVXFbV 4aL1lqYFyDcmGfLF2xJTg4uN9dph7RQcXsLau0qZK7PK19kcyVQdMYMJ095L9i5fx3rBAQJb5 OtUMxsP9ETgdfwTGkIdtxq2+T++QondA4Qx+nPdYA5Nc1E469o7waszol85zpC3A4d30zjQnV 4VxfbwMUFa5C7iNcK8LbeokFRnEnmLu/22mWhhgHy5MNRVvIubaTLZ2veHP/gpx2CN8cflBhH 8GP6ZXg6YEq4jB+eBqKcwwT4Lyd8KjVe9jn1+ZSlNYwVevz5Z/XmQXpxxwC9aVnUhfNiU5wAH kiXuqOm8s5RthRJGr5n1vCdZX0s6RQirDI4DddmbYhZuP4oe853hm8qeGyHYWFY9Rs2U+3RTM z0fLlDhbeefWzXGDYHxa0GupbbOuL1pHLULymUcgeBcBl+L7RR0rGh6ug== X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 49848 Cc: rajeev.jnk@sivalik.com, 49848@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 (-) "Basil L. Contovounesios" writes: > In the specific case of merging maps into a desired type, we can simply > be more careful in such ambiguous cases. The attached patch does that, > while also avoiding the quadratic lookup behaviour for lists. Looks good and appropriate to me (I could not read very carefully, though, I'm tired today and can have a second look tomorrow). Should we handle the corner case when zero maps get merged? > I think the latter option may facilitate the equal-ity consistency > being discussed in https://bug.gnu.org/47368. > > WDYT? Seems a good idea to me, too. Thanks, Michael. From debbugs-submit-bounces@debbugs.gnu.org Wed Aug 04 22:55:33 2021 Received: (at 49848) by debbugs.gnu.org; 5 Aug 2021 02:55:33 +0000 Received: from localhost ([127.0.0.1]:45528 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mBTXh-0002I1-4l for submit@debbugs.gnu.org; Wed, 04 Aug 2021 22:55:33 -0400 Received: from mout.web.de ([212.227.15.3]:37255) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mBTXd-0002Hi-FT for 49848@debbugs.gnu.org; Wed, 04 Aug 2021 22:55:32 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=web.de; s=dbaedf251592; t=1628132115; bh=vt7M0hadMY1T30MDMbpXIa7tBnlNeCviUWSJgXotlZ8=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=a21ez7M35Nq3dUv2IK5wHyvmr+aD5Ju0kh2iKx4OM86tg1IjVQw4gPqHkPDWNTgoQ vuuUIPYMxYjQ2YHPsF+JrlCSn3GOWJIwONki24lvaxPZyqHxyAdYKd2X/FXkLD7UtE TsZpsx1kc8PreT/dAW1GmtjonoHJcIaU4kI7jGdA= X-UI-Sender-Class: c548c8c5-30a9-4db5-a2e7-cb6cb037b8f9 Received: from drachen.dragon ([88.66.201.45]) by smtp.web.de (mrweb003 [213.165.67.108]) with ESMTPSA (Nemesis) id 0MDxFv-1mMmDN425X-00HPZE; Thu, 05 Aug 2021 04:55:15 +0200 From: Michael Heerdegen To: "Basil L. Contovounesios" Subject: Re: bug#49848: 27.2.50; map-merge plist return alist References: <87o8ae71yv.fsf@hm.sivalik.com> <877dh2qjf1.fsf@web.de> <877dh282io.fsf@tcd.ie> <87o8ac38wb.fsf@web.de> Date: Thu, 05 Aug 2021 04:55:14 +0200 In-Reply-To: <87o8ac38wb.fsf@web.de> (Michael Heerdegen's message of "Thu, 05 Aug 2021 04:47:16 +0200") Message-ID: <87k0l038j1.fsf@web.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K1:cDa1XesQsnhvVcSHzyiVu1nSKETiG6/QjFN3kNiSZbFRujQC3Cw /bHvEW5iWY8UxqANaomeaAFNT+AsW2ewUQ+Pct0nPEI+3qhUFV62oPGDwI/c3P1aj4xaENu FD6lvqt34ppR2dXbXfKUIDGtygFs+ApT9gIeCmF9H/68YK3p5qqEi4wx0fyAg6CuSKeB988 YaJiGlj7ISqpA7rKTaMlg== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:OtT9lKJONRs=:Ysytb5mKtZOYo6yPvQWlf7 9daCFkKfppN510/6hfGVtudQrTVgy/Lok/9CTT//q0jRiM5d9TQhz3b+GQ4RK/vU4dMObdJ84 AloO/RrUjcUDjfFl7XG9yYgaxm8wfn4jUySKp8EW5HflUk+2S7MtsDQyz/j/P/VJSMIfOqJG1 rDBarF4TMHohDgzLLU1eKpE+kDNaUp2i3Wcm+LLA0EYecLpdEPss3H8w+4QBxaC/X9TSF4wzx Y1K1Iqcx3uvy9EstJuPzDCpFatzeBO11g7d8kQV1bTOxAXbCHzjf/ifeRrckh51ZDFYi9O/W2 SjnHvZD3i15V6PEKeg7B6tCJ7QXNFGkWey0wsXDfw8kykQ8JC4egYK62TB3/m295dZNWdvNCC zQfP8T3rxf/TqyuLbj6dgkXJUjz3nhhc/Pyp6tK+PA5SZrfb58I90h0Azni4gEJqC2Fl4HiZI GEIVwlZ4HBRp7NcicFRbmMfy7Fl4usZHx/cnE/VnNwAgspv1TRANfL4ch6DDFmRvx1PPKiHuD gD0QEUaCInY+ot+UrvOwtXrrOC3svWWzi2cCC1p5O0SUF8X8ZDJsDaZoUyIDBQZGq3EUfJKb+ SjAvIZ5VNxK0uw1XlVe/9lEMNRmtw5e7B06OApDv8yQlB/+drYWWh2zJX0DnoKTgsoLd7GZeG yKWGGeNaYEc3nWXzlHzWEcW8oewho8dMHHyqWayT6FJK2M7/mvzgzBilynXXUOao3jPZp+NnT ktmPEDOGVOQUrUh+XDt8hmKSQKOc/dMLbKSWPa48gwwui6Buztbs7V3m15gUAQq8yHCx/XKRv q4/G+Rem5myb/FnCRW3VTmz8F0ASPpZUQWf2JA6cG8fHU1nF+AguHjsxDxlCaHaZVwe2C9Zsl zig7/UEQ8hH8dN9/vdWJqk5MrKCFXzoaYNeDZ8RbVBS20VGkoeAYbgQ3SZe2U8Bcmkpc5XAuI DXeh+h5/Gz13xihkyhKtpvwRcCpkHW0jGhQcXX8gRkXg98z5wSFxUy2ZHlKAib2Q8cd8KRWYL GSLq18FKVbt4iO8fzxiFL5382lSZNeMmPbjfpyVC3T+fdz677Y1eKCeFHbgQAhJVQa9aasdmk 8uBHykAdS6SUEMkyrqgu4CPFLfWX3nCFdHcJKe5k9kfo5Sk2HjuFknsaA== X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 49848 Cc: rajeev.jnk@sivalik.com, 49848@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 (-) Michael Heerdegen writes: > Should we handle the corner case when zero maps get merged? Hm, `pop' just returns a nil then, so that case doesn't even seem to need special treatment. Michael. From debbugs-submit-bounces@debbugs.gnu.org Thu Aug 05 06:48:50 2021 Received: (at 49848) by debbugs.gnu.org; 5 Aug 2021 10:48:50 +0000 Received: from localhost ([127.0.0.1]:46014 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mBavi-0005vP-B8 for submit@debbugs.gnu.org; Thu, 05 Aug 2021 06:48:50 -0400 Received: from mail-wr1-f50.google.com ([209.85.221.50]:41884) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mBavh-0005vB-30 for 49848@debbugs.gnu.org; Thu, 05 Aug 2021 06:48:49 -0400 Received: by mail-wr1-f50.google.com with SMTP id c9so5898453wri.8 for <49848@debbugs.gnu.org>; Thu, 05 Aug 2021 03:48:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tcd.ie; s=google21; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=yoiKeB3qyiPRuYc360S4ndOh5QaL32F3Z+by9IRlYKg=; b=VLckSIVZt6KurzWMR4mm49/24T6QWQi216LzbWH+BHGw1aSzJus/VnLh1DARGHghnq mD4q3AHo/7Xo/j7O3qYhHqIrFch2p3TKx07cipLpfWve54OuE9Vd5rZx6mvm4FFz8foD pdqJTpZDzNBQx/4xfvYZYhUofkHjtQNylcOS92c794fQ3J4yhg+V103vZo4eev8mC2BR JGBvwJKwzYitT9+fv9oywQglGXCKRdlE2rrNnw7KXvEYoOeMnMZApCKn3FEcB/wA/hvP 0pJtQaGsp0mbW/CTnvlem3aJaUyM/0KPRvM/gRQRHvAFp3bdldtI3x38+G3jjtZ6vhC/ mhWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=yoiKeB3qyiPRuYc360S4ndOh5QaL32F3Z+by9IRlYKg=; b=qghBaMbTfLE3ec/2EnUTlc2ieuj9MpG65E1QhfLanHP49agPsRA2y4POcxc9k51S8Z N/og7AkP2qvRMcCWUkrI8EDxRkg8+qLuviBvm++BWyfqh6mPRjfF4P1BRlKtXHQKL3mY pabDr/u/wSKx20a+PyPm8+cc673eadVe/trFZILzylzZ5SxyIqGJo4nwNLxdS7GkEgsZ KT51T1ZnPKgWiU4NAqO6Jr5vlXBjKxwXO3sPs8oESFeFJFyfxyLujveX7aHgqsh7Skd3 2ppG32p/P8HjujjrJlQEseRojl4U9ohXAiRyLgZgSfg2WFvnoxGbrojocdokQFrn5tEM 4deg== X-Gm-Message-State: AOAM531okWJwvin0dEOdsdsfoohdysIeBUYxs0OfaEze/6zmhmNlpdMh kZc+o3kvo0jkuesxS2+5XILsQw== X-Google-Smtp-Source: ABdhPJw8QYgojKPOBDHRCYV7vV3ACwtymQjkAs9+T3R+Xog8SZzC5rZLMT+NPrGxyRx7BosLR74yYA== X-Received: by 2002:a5d:5141:: with SMTP id u1mr4576077wrt.50.1628160522759; Thu, 05 Aug 2021 03:48:42 -0700 (PDT) Received: from localhost ([2a02:8084:20e2:c380:d15:339e:aa10:60f1]) by smtp.gmail.com with ESMTPSA id h4sm6031548wru.2.2021.08.05.03.48.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 05 Aug 2021 03:48:42 -0700 (PDT) From: "Basil L. Contovounesios" To: Michael Heerdegen Subject: Re: bug#49848: 27.2.50; map-merge plist return alist References: <87o8ae71yv.fsf@hm.sivalik.com> <877dh2qjf1.fsf@web.de> <877dh282io.fsf@tcd.ie> <87o8ac38wb.fsf@web.de> Date: Thu, 05 Aug 2021 11:48:41 +0100 In-Reply-To: <87o8ac38wb.fsf@web.de> (Michael Heerdegen's message of "Thu, 05 Aug 2021 04:47:16 +0200") Message-ID: <87r1f8xj3q.fsf@tcd.ie> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 49848 Cc: rajeev.jnk@sivalik.com, 49848@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.0 (-) Michael Heerdegen writes: > "Basil L. Contovounesios" writes: > >> In the specific case of merging maps into a desired type, we can simply >> be more careful in such ambiguous cases. The attached patch does that, >> while also avoiding the quadratic lookup behaviour for lists. > > Looks good and appropriate to me (I could not read very carefully, > though, I'm tired today and can have a second look tomorrow). > > Should we handle the corner case when zero maps get merged? That's already implied by the &rest args, and checked in test-map-merge-empty. >> I think the latter option may facilitate the equal-ity consistency >> being discussed in https://bug.gnu.org/47368. >> >> WDYT? > > Seems a good idea to me, too. Thanks. Unless someone beats me to it or there are further comments, I'll push the patch to Emacs 28 next week, and probably bump the Version header too. -- Basil From debbugs-submit-bounces@debbugs.gnu.org Sat Aug 14 06:35:25 2021 Received: (at control) by debbugs.gnu.org; 14 Aug 2021 10:35:26 +0000 Received: from localhost ([127.0.0.1]:43613 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mEr0b-0002fJ-Qh for submit@debbugs.gnu.org; Sat, 14 Aug 2021 06:35:25 -0400 Received: from mail-wm1-f47.google.com ([209.85.128.47]:46606) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mEr0R-0002ek-CR for control@debbugs.gnu.org; Sat, 14 Aug 2021 06:35:16 -0400 Received: by mail-wm1-f47.google.com with SMTP id h24-20020a1ccc180000b029022e0571d1a0so8471743wmb.5 for ; Sat, 14 Aug 2021 03:35:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tcd.ie; s=google21; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=6lFZtrSMb4FVUHSJ7Boii6pIL/5ITJZVRS/XDjQZAao=; b=PqI+HsQ+4ug0Z323DhNYSB4QA9Rz2oXgTr/HMBDedwBgGn7Ou5+0N6e2ieC63BIqR+ tViHCT66X+vFlDUMKbwBK6cfQct8/eIyU/ZEP1wsKZwjGGaRuWFlOAIGxXrEGGy2iTwB vrUZERkpzBmvSYuRhEshL9mbzhZ6QWY0wpjpm8E0fAsJw6Sy1pZwD1GRECZH36z2LSGP 0pL1WomKPjEacmlwrOuf5IBXO/meek/3o8VylSX/M6ka3EZM99agFEIyKqxRGawqaMw3 mxNPr4uQaCoYARVksvYTYPZGy+ffO8Q86d5fVKhqZBCPA2UdJr0zRX+TnKyTel2hHhuc /GcA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=6lFZtrSMb4FVUHSJ7Boii6pIL/5ITJZVRS/XDjQZAao=; b=EH7WIJeZsNANnPQD+V3ePg6twPSjxU2MvS0eeTgev4SXzFybb98HvK3JFiKvME90uT Yc3fo0zPfHnPNwyCTzZ/Hufl3B28RfFrmqd9yBAfRq3IC/k3WWH8JJEep58WTYGTW6ul fT9Gsneqj/AzYZK7WsIbaycQNOK8ncgjSoKQQ9h8srZD5wYGCII2vvt0RgBQ/FkOCt3Q 0KUZ2Gq9G4Su4fhKHphJ0hlUV+rkRl3xZkF1mWYk6i7G1pzgWaa+y14W7TfbDoluc9jv xFxoW70fMpVVR4yR1rp5zT4g34JENTdUf2KLo5IwUFEmzaLpk3ESzjmPx8HqTPskQnah 5zsQ== X-Gm-Message-State: AOAM530K3sBhjwXzDXk9t+Tv/kdaQPEU9iXIDueXi6Le2K0/5JDwI9en MvuAqxUJ6GUcb4OT8WNNAf218w== X-Google-Smtp-Source: ABdhPJxZpunEfWbBbXPSFN//TBwLUPTnc8MpErt9xVzX66jQud/HjXMyhlnsUj85ThFJvdhL4REj9A== X-Received: by 2002:a05:600c:3b12:: with SMTP id m18mr6678911wms.143.1628937305523; Sat, 14 Aug 2021 03:35:05 -0700 (PDT) Received: from localhost ([2a02:8084:20e2:c380:f410:82e8:3a21:eedf]) by smtp.gmail.com with ESMTPSA id z7sm3893152wmi.4.2021.08.14.03.35.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 14 Aug 2021 03:35:04 -0700 (PDT) From: "Basil L. Contovounesios" To: Michael Heerdegen Subject: Re: bug#49848: 27.2.50; map-merge plist return alist References: <87o8ae71yv.fsf@hm.sivalik.com> <877dh2qjf1.fsf@web.de> <877dh282io.fsf@tcd.ie> <87o8ac38wb.fsf@web.de> <87r1f8xj3q.fsf@tcd.ie> Date: Sat, 14 Aug 2021 11:35:02 +0100 In-Reply-To: <87r1f8xj3q.fsf@tcd.ie> (Basil L. Contovounesios's message of "Thu, 05 Aug 2021 11:48:41 +0100") Message-ID: <878s14z549.fsf@tcd.ie> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: control Cc: rajeev.jnk@sivalik.com, 49848-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: -1.0 (-) close 49848 28.1 quit "Basil L. Contovounesios" writes: > Unless someone beats me to it or there are further comments, > I'll push the patch to Emacs 28 next week, and probably bump the Version > header too. Pushed and closing. Fix merging of ambiguous nil maps 37d48edf6d 2021-08-14 11:24:54 +0100 https://git.sv.gnu.org/cgit/emacs.git/commit/?id=37d48edf6d406a4730caa0393f7695de2bfadfcc Thanks, -- Basil From unknown Fri Jun 20 07:16:26 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Sat, 11 Sep 2021 11:24:07 +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