From unknown Mon Aug 11 19:04:08 2025 X-Loop: help-debbugs@gnu.org Subject: bug#58687: 29.0.50; Enabling pp-use-max-width dramatically slows down formatting of large sexps like org-persist--index Resent-From: Michael Eliachevitch Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 21 Oct 2022 13:38:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 58687 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 58687@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.166635946512817 (code B ref -1); Fri, 21 Oct 2022 13:38:02 +0000 Received: (at submit) by debbugs.gnu.org; 21 Oct 2022 13:37:45 +0000 Received: from localhost ([127.0.0.1]:37311 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1olsDY-0003Kd-Dl for submit@debbugs.gnu.org; Fri, 21 Oct 2022 09:37:45 -0400 Received: from lists.gnu.org ([209.51.188.17]:47352) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1olsDU-0003KT-Rw for submit@debbugs.gnu.org; Fri, 21 Oct 2022 09:37:42 -0400 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 1olsDJ-0006fc-OT for bug-gnu-emacs@gnu.org; Fri, 21 Oct 2022 09:37:33 -0400 Received: from mout02.posteo.de ([185.67.36.66]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1olsDE-0007MR-43 for bug-gnu-emacs@gnu.org; Fri, 21 Oct 2022 09:37:29 -0400 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 50C86240101 for ; Fri, 21 Oct 2022 15:37:22 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.de; s=2017; t=1666359442; bh=ymTQEB7OAa6Sugh/4syG5ojXRJBqDFVkKk9Ep9XqNb4=; h=From:To:Subject:Date:Autocrypt:OpenPGP:From; b=F2Y/kA5nVAT9T2/3Sn/05Kp58CXRQE2mIzIF6x0oKo3gOaX6Zr1Px+WoBAwM06Ygv JV/2uvmebGEVMia4ZW+lO+tAIU1dIeihuFKNBh2g6/3M1yn1SYo6Aj2g0fqshK4u2K KtOb0+GT9OTW8dfhV1Mx5gMeWMqQrQjpYQjGHLXBW1NKquFdSVlStqL4z3BfIsgFCH Taoc/bzTwhTDOXNClRFMXvvGoAANt++skeeKheeNEaa2yDf+QtVEJyZaj+hKQcDWYB 2L/zTk8JqnWz7WdQaXuF2HlYz6/97pFkhJreKf61n3Z5QwmJXE6QWlPSItMNA/6Etu 9hFtXagpa7g5Q== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4Mv59s5Fnyz6tp6 for ; Fri, 21 Oct 2022 15:37:21 +0200 (CEST) From: Michael Eliachevitch Date: Fri, 21 Oct 2022 12:59:17 +0000 Message-ID: <871qr1cn73.fsf@posteo.de> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Autocrypt: addr=m.eliachevitch@posteo.de; keydata=xsBNBFHFxZABCADAAv2siayhA7Etl85WcwcyMPBD2bt/6Wh3A8a12AURV5J4tprzgbdlxC0w1LofvklG7ls25NERAY931hvQW+f5GEI0pwoNNFXEkKDa8/J4SxhrqXx8CJA85owPq1g4cFeO1ooQJ32BewlRGsnhd+taYExZ76oaMnFtx6jYjf6mPbjDyiLhC+Og3MBpOqAnmX7mhStgJl0uru1ZGEB17tzzVuQ4ljDv/MvUagVFymQBhmlbzvze5eLeDn90Ot0DjWHy3HzCFMEnVqQy8rmEA8N9GOANwyMY79KVymsPakeNwacPRFzYXCZvolC5jtY6I/1ALvVtNc45JyZWty+rMPo3ABEBAAHNGG0uZWxpYWNoZXZpdGNoQHBvc3Rlby5kZcLAlAQTAQgAPhYhBFRpCMeCODrQ59iU7BuPlcgSXc4xBQJgUmWNAhsDBQkSToKgBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAAAoJEBuPlcgSXc4xqC8H/06lkI7BimgkSobuEzsD9LsIPEyz5uUaQAP77u1nfoO1vB0DEdPxn7f3H3Hs7nyUfPgvgsn+9rTSV+ubHH5f/bzgQZgES2WItbV7iM290j6nWSc/iCTLlTmM2KMNvbMB9xGzV0m+UjMyAa9zUhB/3N+rd5ya/oSiTKw2/UbgfM5fR1knIUgPDENlKjJvO7/71Sxwpc+gKvAR9lHRT8JzQMyFaFO+zbo53Z7FzDTuj7zVyQ4MPIhe+UMI4rtNZeyPDM0QTep0+N39JbDhvUVevOh15XJTYXl2Zdhl/yunnOibtg3XKtToakc4FjWJGrw8njbges5YqaodeMqktYV7ooDOwE0EUcXFkAEIAMXrmg6U1/ADypwRWEW1fhuT2uci2O+7MDOf1vxOlzRP6FyMna6Uj77GuJ0sxTljkWl8v+DCw8z2rZr7 /EFiQqN3k++nBZVIdzDoeJ7kw45aFxMd6SCBEHIsxGhA/3fLHEqY6ilrONY8SX3wbLeBOC48fLrBOlGlRpZhUymbgKHCjXRM3wbhKBaBrI5L3aD1BPSLJzdCuY2L3lHJqLhBndAQs6qOmwpeHmx2zaWdIfcaLFzA+p2rqY+/gfRKOK1eSmR/xsHJ9rJe8IKJLAS0RXdpbfP/63MU0+rhmpHFXDyvpPqEe3RADCfpDLAX9BmEUFgPKCuBXn+xrlncEuYA6UUAEQEAAcLAXwQYAQIACQUCUcXFkAIbDAAKCRAbj5XIEl3OMbX1B/0f/F8CAejsasPbaipU2kSc0rDDG/j38FABMDwhnXqoBfbfBw1ho+o8Nfxs/wrVqJz6DXDhFHm6n7cDWbBQleYkplFv3r8oVNA1XZCUEMv0ZPEiQDjIpw/chHQGeYWJneSdEDsbWM76yCyLF1adaccBAiHWKUTRIN5m74+xc/ZsTMCDdxaplklfeYUwwtnJ6HfW2Ia91s+4RuhdGd42kidf+3a7cTGHVn8aKKXLlteTFBeOZGnWl48dSQBC09rpq6DUOJPkmSPo3tMCYFSUyNZe7ebKNfU3P4PNreZoG4rDVkWBqNKu986WQOoYc2O0OspbC7JXrk0wiGMQKWWOW3Gw OpenPGP: url=https://posteo.de/keys/m.eliachevitch@posteo.de.asc Received-SPF: pass client-ip=185.67.36.66; envelope-from=m.eliachevitch@posteo.de; helo=mout02.posteo.de X-Spam_score_int: -14 X-Spam_score: -1.5 X-Spam_bar: - X-Spam_report: (-1.5 / 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, PDS_BTC_ID=0.499, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URI_HEX=0.1 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: -0.7 (/) 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 (-) --=-=-= Content-Type: text/plain; format=flowed I set the new setting `pp-use-max-width' to t to fold the output of interactive commands like `pp-eval-last-sexp'. However, I found out that this increased the time that kill-emacs took to run by 30 seconds. By profiling I found that this is because I use the latest org-version (9.5.5-gcb1359) on the main branch with persistent caching enabled and in `kill-emacs-hook' it then saves the `org-persist--index' to a file via `org-persist-write:index'. The index sexp can be quite large when one has many org files and when org uses pp on it that takes a long time. What I wasn't aware when I customized pp-use-max-width is that it's used by other packages to format lisp code and this might slow down these operations quiet significantly, as I just wanted to set only for my custom pretty-printing purposes of usually small sexps. My suggestion is to put a note into the emacs-news and the variable docstring that it can have significant performance penalties on large sexps. If the performance can be improved that would be also nice, but not sure if that's possible. I assume the authors are aware of the downsides, but it then should be documented well at least. I attached a file with the value of my `org-persist--index` expression and a file with a benchmark where I run pp on it, which took me 25s when running it with emacs -Q. Until recently my org persist index was much longer, but I pruned it a bit back when I wasn't aware what exactly caused the slowdown. I had reported this first on the org-mode mailing list at https://lists.gnu.org/archive/html/emacs-orgmode/2022-10/msg00734.html. Best regards, Michael Eliachevitch -- In GNU Emacs 29.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.34, cairo version 1.17.6) of 2022-10-20 built on e490 Repository revision: f61db42fc580fb671016c77be942506d9081ac2c Repository branch: master System Description: Arch Linux Configured using: 'configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib --localstatedir=/var --mandir=/usr/share/man --with-gameuser=:games --with-modules --without-libotf --without-m17n-flt --without-gconf --enable-link-time-optimization --with-native-compilation --with-xinput2 --with-pgtk --without-xaw3d --with-sound=alsa --with-xwidgets --without-gpm --without-compress-install '--program-transform-name=s/\([ec]tags\)/\1.emacs/' 'CFLAGS=-march=native -mtune=generic -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection' LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON LCMS2 LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PGTK PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS WEBP XIM XWIDGETS GTK3 ZLIB Important settings: value of $XMODIFIERS: @im=fcitx locale-coding-system: nil Major mode: ELisp/d 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 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 emacsbug 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 mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils time-date edebug debug backtrace find-func benchmark pp vc-git diff-mode easy-mmode vc-dispatcher cl-loaddefs comp comp-cstr warnings icons subr-x rx cl-seq cl-macs gv cl-extra help-mode bytecomp byte-compile cconv cl-lib rmc iso-transl tooltip eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/pgtk-win pgtk-win term/common-win pgtk-dnd 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 xwidget-internal dbusbind inotify dynamic-setting system-font-setting font-render-setting cairo gtk pgtk lcms2 multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 92875 7823) (symbols 48 8353 1) (strings 32 23567 2442) (string-bytes 1 712274) (vectors 16 17653) (vector-slots 8 356365 12834) (floats 8 30 53) (intervals 56 434 3) (buffers 1000 15)) --=-=-= Content-Type: text/plain; charset=utf-8 Content-Disposition: attachment; filename=org-persist-index.el Content-Transfer-Encoding: quoted-printable ((:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "40/15aa22-87f7-47a7-a2d4-c911234c0cbc" :associated (:hash "57b5678236c2a9be9559b1a111b26eeb" :file "/home/michael/org/roam/2= 0210331114711-support_vector_mashine.org" :inode 360063) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "48/be5c27-7287-4744-b440-1529ae74d243" :associated (:hash "8093afef7c3f2138f68dd75307688e52" :file "/home/michael/org/roam/2= 0210721102303-continuum_suppression.org" :inode 360323) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "d8/3ec555-87f6-4ff2-a2d4-b2e581ab0e08" :associated (:hash "3cf1d3e7f757a4770b522749d48a9fea" :file "/home/michael/org/roam/2= 0210929174243-superkekb.org" :inode 358863) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "4a/8f0169-05c8-4715-bf34-67703759e669" :associated (:hash "dd1c342a277169bbedd1de404e2e295e" :file "/home/michael/org/roam/j= ournal/2021-11-26.org" :inode 358640) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "61/c2b5cf-7625-4fed-b817-3ca5779c6461" :associated (:hash "c30502418aba98af28f9d04ab69b7e3b" :file "/home/michael/org/roam/2= 0201028235900-max_welsch.org" :inode 359176) :expiry 30 :last-access 1665751762.0571246 :last-access-hr "2022-10-14T14= :49:22+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "5f/a39411-e67d-4e42-99f6-61979afccf47" :associated (:hash "4d4b05e99bbe33de47f2f14ac4d88546" :file "/home/michael/org/roam/2= 0211002114419-expansion_des_raumes.org" :inode 358861) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "8a/148ed3-4fe0-4708-8acc-6efdc57efe3f" :associated (:hash "0c10f424cb2bf36e6ba9304c017ef41a" :file "/home/michael/org/roam/2= 0220824152922-effort.org" :inode 360072) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "23/12f9fe-2740-4a80-9818-ad064da54f25" :associated (:hash "6401e21d9a24812a083f13b5c9019f26" :file "/home/michael/org/roam/2= 0220116211118-interception_tools.org" :inode 360472) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "91/095a9e-9954-40ad-a985-e1997c607a49" :associated (:hash "77ba74e6aa78b5b9a2eb04524775cd1d" :file "/home/michael/org/roam/2= 0201104153018-janina.org" :inode 358946) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "d8/89dfd7-8d3e-4a99-a156-26826061434b" :associated (:hash "31e73df707b382b344e30ec3e7823d64" :file "/home/michael/org/clock.= org" :inode 358069) :expiry 3 :last-access 1666304677.3369315 :last-access-hr "2022-10-21T00:= 24:37+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "44/a9740a-22db-41db-9a1c-307958c6932d" :associated (:hash "68c3e2e50713d630394673886cb11bd7" :file "/home/michael/blog/conte= nt-org/blog.org" :inode 353724) :expiry 30 :last-access 1665501728.8860543 :last-access-hr "2022-10-11T17= :22:08+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "d5/7a088d-daf2-4b5f-89b4-53dd620a04aa" :associated (:hash "0306b42a733aedb706ec5bd1777ab54f" :file "/home/michael/org/roam/2= 0210405235900-tenside.org" :inode 360069) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "8d/e479fa-98ab-4d7f-bc60-42dc54cec4c0" :associated (:hash "fd304b811f165936a279fb6b742e4a43" :file "/home/michael/org/roam/r= ef/thebellecollaborationPreciseDeterminationCKM2017.org" :inode 359691) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "52/061733-000e-47d5-b7c0-c9772df9a669" :associated (:hash "efd7ad53e443ed89c6028ed281b547d0" :file "/home/michael/org/roam/j= ournal/2022-02-09.org" :inode 358673) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "a9/50a965-eb81-4236-ae95-43a06f2139c2" :associated (:hash "2543ebe12fa66005245696443b01c006" :file "/home/michael/org/roam/2= 0201027182903-templatefitter.org" :inode 359135) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "33/a629f8-534f-40bf-98a5-d5b7cc25dbc0" :associated (:hash "230337252e613be224db0d894bcbbb78" :file "/home/michael/org/roam/2= 0211014104529-a_fb.org" :inode 360364) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "c3/5d43d0-eaa6-435b-8af2-e77fe52d5787" :associated (:hash "c7133d0a0f285a3db98b47a3daf6be4d" :file "/home/michael/org/roam/2= 0210105145348-staat.org" :inode 360036) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "40/ea9187-8f3a-4f40-a0ea-716fba67015c" :associated (:hash "789bba672930f723b2a715f7e21e8d8e" :file "/home/michael/org/roam/2= 0221006125743-gro=C3=9Fbrittanien.org" :inode 2131510) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "ba/0fce57-afb2-44c0-9d53-70e1cd6cd708" :associated (:hash "8c32a94fbca69e72f286c7ba1411e816" :file "/home/michael/.emacs.d/e= tc/elfeed/feeds.org" :inode 362775) :expiry 30 :last-access 1665751762.0688756 :last-access-hr "2022-10-14T14= :49:22+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "58/31ced8-062e-4a40-9a2b-f475b9a62d7d" :associated (:hash "5d33ffc716f1dafdd357d117a8f964fd" :file "/home/michael/.emacs.d/v= ar/treemacs/persist.org" :inode 3059083) :expiry 30 :last-access 1666298484.2475097 :last-access-hr "2022-10-20T22= :41:24+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "af/1b8808-f155-4891-a7bf-ac7c73bca041" :associated (:hash "85ab77d863ac443ff1925e23548b0d3f" :file "/home/michael/org/roam/2= 0220215235900-decision_making.org" :inode 360505) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "f6/60a896-73be-4e16-a7ef-4d14e6f6ca0e" :associated (:hash "c1c7254bee6a076ca857847e6d83feb8" :file "/home/michael/org/roam/r= ef/abdesselamMeasurementCKMMatrix2018.org" :inode 359692) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "d4/e7aeb6-a4b3-42b7-8cbd-639eb01c432e" :associated (:hash "336104ea2aba5581ea5fb6bf2dd297d2" :file "/home/michael/org/roam/r= eferences/ferlewiczRevisitingFitsEll2021.org" :inode 360376) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "81/9afc0f-714e-439a-9ec3-3bc3e5d74626" :associated (:hash "dfc8a8a18023f1809168faeb9fc75d9d" :file "/home/michael/org/roam/2= 0210305191300-laufen.org" :inode 360138) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "cb/26c4ae-ef44-47b0-9763-b9b152d4a64f" :associated (:hash "8b6179aede2b32bb9b38bace6ffc0d52" :file "/home/michael/org/roam/j= ournal/2021-10-17.org" :inode 358391) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "d4/7857bd-0623-4299-b147-7fc40b514d79" :associated (:hash "6a9288b3fd59f54f046bb4982b3bae0e" :file "/home/michael/org/roam/2= 0210727164202-allgemeine_relativitatstheorie.org" :inode 359082) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "f5/d0a1dd-9adf-43fb-bbdf-1b9f5953805f" :associated (:hash "063d9a48030b6ab806234630e9e5c62a" :file "/home/michael/org/roam/2= 0220121140806-systematiken_in_meiner_analyse.org" :inode 360478) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "93/00e296-5f3b-4dd6-9279-f9adb486f314" :associated (:hash "97c28d67e853bfba6b3ed328c24a5e9a" :file "/home/michael/org/roam/2= 0220811133340-vertrag.org" :inode 359171) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "a2/6669ce-b654-4b04-9e49-b26d40271c6d" :associated (:hash "9329d34a7033257dd13ac5a5b264f237" :file "/home/michael/org/roam/w= eb/20220905140331-what_s_virtual_memory_computerphile_youtube.org" :inode 3= 59601) :expiry 30) (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "6c/1b2b2c-82b2-49c3-bc4c-8fba6f96e99a" :associated (:hash "13c9936c0b80d610cb741132ab6d2887" :file "/home/michael/org/roam/b= =C3=BCcher/buecher.org" :inode 359840) :expiry 30 :last-access 1665134302.1608012 :last-access-hr "2022-10-07T11= :18:22+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "ec/9fcc17-9cab-46eb-9ecc-c6322d9ae14f" :associated (:hash "ec66c29b47c8f188c3aba5bb137d8d1d" :file "/home/michael/org/roam/2= 0211215141559-dpg_tagung_heidelberg_2022.org" :inode 360394) :expiry 30 :last-access 1665756769.3734863 :last-access-hr "2022-10-14T16= :12:49+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "c5/e125eb-20c4-4248-860a-572a66e22b29" :associated (:hash "1257d8f84ec48d056586716878b221f4" :file "/home/michael/org/roam/j= ournal/2021-09-14.org" :inode 358240) :expiry 30 :last-access 1665756769.376799 :last-access-hr "2022-10-14T16:= 12:49+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "76/7ddbaf-2fc5-40be-a117-ff8b5ed16256" :associated (:hash "493b033bf2108f51ebc37bfc80479c3a" :file "/home/michael/org/waage.= org" :inode 357907) :expiry 30 :last-access 1665756769.3804295 :last-access-hr "2022-10-14T16= :12:49+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "15/489bd0-ece7-425f-8d71-74a43e15a9c6" :associated (:hash "4994954ffdcd956233b713431976a762" :file "/home/michael/org/sport.= org" :inode 358072) :expiry 30 :last-access 1665756769.3844242 :last-access-hr "2022-10-14T16= :12:49+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "c2/644553-b85d-44a7-acb5-ade4e051d1b6" :associated (:hash "c32f6ae7e1fb2a81fd1961d59994bd40" :file "/home/michael/org/organi= zer.org" :inode 358068) :expiry 30 :last-access 1665756769.3883088 :last-access-hr "2022-10-14T16= :12:49+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "db/6a4d58-5f7e-438a-9ab2-27bd8b064f08" :associated (:hash "0e039cdc585f370c879cf80e70f9e70b" :file "/home/michael/org/notes.= org" :inode 358074) :expiry 30 :last-access 1665756769.3921976 :last-access-hr "2022-10-14T16= :12:49+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "78/50a761-6b71-4a4d-a272-bcfa4db988fb" :associated (:hash "5b6ca65396519632c8abcd8a9a185dd6" :file "/home/michael/org/medika= mente.org" :inode 358058) :expiry 30 :last-access 1665756769.395902 :last-access-hr "2022-10-14T16:= 12:49+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "44/0b0587-ca52-4bbb-8756-241175216edd" :associated (:hash "d3e0d11106f6b49fd331925fdad6ccc7" :file "/home/michael/org/kontak= te.org" :inode 357867) :expiry 30 :last-access 1665756769.399829 :last-access-hr "2022-10-14T16:= 12:49+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "44/056f64-b843-4bc0-9555-70b170224a8a" :associated (:hash "b672eb802ec10cdb5227c34afa96de8d" :file "/home/michael/org/kaufen= .org" :inode 2677171) :expiry 30 :last-access 1665756769.403763 :last-access-hr "2022-10-14T16:= 12:49+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "ae/eb0d79-6144-44e5-8452-82cd0f05dbe3" :associated (:hash "98e58f6e8253f1ae827eabeedd6ccdb2" :file "/home/michael/org/habits= .org" :inode 1643626) :expiry 30 :last-access 1665756769.407665 :last-access-hr "2022-10-14T16:= 12:49+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "e6/0f34a6-7c5d-4a8a-b5ed-0bf844483559" :associated (:hash "1dd1823e47a04a2d0ad19ec21f801bb0" :file "/home/michael/org/calend= ar.org" :inode 358034) :expiry 30 :last-access 1665756769.411561 :last-access-hr "2022-10-14T16:= 12:49+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "ce/dfe116-6563-4a7b-8c7f-e065c38d6365" :associated (:hash "601c17471acb222cf12adef1492691da" :file "/home/michael/org/roam/j= ournal/2022-09-12.org" :inode 701031) :expiry 3 :last-access 1666304677.3428493 :last-access-hr "2022-10-21T00:= 24:37+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "33/f3af90-7344-477e-a943-fded6ff14fa4" :associated (:hash "3984beca12e81a4342aa8db3af7673e6" :file "/home/michael/org/archiv= e.org_archive" :inode 357866) :expiry 3 :last-access 1666304677.353239 :last-access-hr "2022-10-21T00:2= 4:37+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "d1/86f70a-c6b4-4f38-9610-4a231396c27a" :associated (:hash "79000244264d75f5a31734dd91ff01af" :file "/home/michael/org/roam/j= ournal/2022-08-24.org" :inode 358385) :expiry 3 :last-access 1666304677.8559783 :last-access-hr "2022-10-21T00:= 24:37+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "33/5c04cd-d96d-4ee3-a41c-34dd23e2ffa3" :associated (:hash "45b163593cbec35a17b7faa2f45dec84" :file "/home/michael/org/roam/j= ournal/2022-06-20.org" :inode 358370) :expiry 3 :last-access 1666304677.859343 :last-access-hr "2022-10-21T00:2= 4:37+0200") (:container ((elisp org-element--headline-cache) (elisp org-element--cache)) :persist-file "63/5cd43b-0753-4f05-b9e8-72fc510d418d" :associated (:hash "25b71687d558a10152565ce983f61269" :file "/home/michael/org/phd.or= g" :inode 358033) :expiry 3 :last-access 1666304677.862949 :last-access-hr "2022-10-21T00:2= 4:37+0200") (:container ((index "2.5")) :persist-file "85/7529d0-72fe-411e-b18d-7422afbfad12" :associated nil :ex= piry never :last-access 1666310369.8001707 :last-access-hr "2022-10-21T01:5= 9:29+0200")) --=-=-= Content-Type: text/plain Content-Disposition: attachment; filename=benchmark-pp-on-org-persist-index.el ;; straight bootstrapping code (require 'pp) (let ((pp-use-max-width t) (pp-max-width 80) (org-persist--index (with-current-buffer (find-file-noselect "org-persist-index.el") (goto-char (point-min)) (read (current-buffer))))) (benchmark-run (pp org-persist--index))) --=-=-=-- From unknown Mon Aug 11 19:04:08 2025 X-Loop: help-debbugs@gnu.org Subject: bug#58687: 29.0.50; Enabling pp-use-max-width dramatically slows down formatting of large sexps like org-persist--index Resent-From: Ihor Radchenko Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 12 Jan 2023 11:28:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 58687 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Michael Eliachevitch Cc: 58687@debbugs.gnu.org Received: via spool by 58687-submit@debbugs.gnu.org id=B58687.167352283915535 (code B ref 58687); Thu, 12 Jan 2023 11:28:01 +0000 Received: (at 58687) by debbugs.gnu.org; 12 Jan 2023 11:27:19 +0000 Received: from localhost ([127.0.0.1]:44877 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pFvjr-00042U-63 for submit@debbugs.gnu.org; Thu, 12 Jan 2023 06:27:19 -0500 Received: from mout02.posteo.de ([185.67.36.66]:54997) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pFvjp-00042G-3a for 58687@debbugs.gnu.org; Thu, 12 Jan 2023 06:27:17 -0500 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 00A9E2402CA for <58687@debbugs.gnu.org>; Thu, 12 Jan 2023 12:27:10 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1673522831; bh=oKrCC5Is1GZYMQ/8kWxTAXwqe2JUly4dmuI8vO0mdzU=; h=From:To:Cc:Subject:Date:From; b=kNgwhMqhX3ktckUxo6ji3kNWGVjs/90HW+fWDRlwmRIw+ZB0f9MbYrY6E5xQyiMSJ t3vzU3BJ18ok7dhDL1SF4ulF9oZ7vnUO5kziRyQdGD/B23+C1kbkxG2mpY63I5eOo4 Fd6Thn684QiXzX8uvymQ0AxVtKBNVcsz5QKdao/2IZP9jFHJb71poigLu1xs/hF9OR U9/j33D/juLPkZnx56q94lDEKHAxiqTJTlOVEsRo5RXmApco37aA9fp/uRrPl0TeoP pUOQcFUJXdmYS8pH25iTbGvu3VGSIdR36awwi7hYrhTBRLuxoUG5KCJyB7t4xwX0lW h5EeT70mqherA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4Nt2MH3KcYz6tmq; Thu, 12 Jan 2023 12:27:07 +0100 (CET) From: Ihor Radchenko In-Reply-To: <871qr1cn73.fsf@posteo.de> References: <871qr1cn73.fsf@posteo.de> Date: Thu, 12 Jan 2023 11:27:35 +0000 Message-ID: <87v8lc802g.fsf@localhost> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) 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 (---) Michael Eliachevitch writes: > I attached a file with the value of my `org-persist--index` expression and a file with a benchmark where I run pp on it, which took me 25s when running it with emacs -Q. Until recently my org persist index was much longer, but I pruned it a bit back when I wasn't aware what exactly caused the slowdown. I'd like to bump this bug. If it helps, here are the steps to reproduce: 1. Save the attached files to same folder 2. Open benchmark-pp-on-org-persist-index.el 3. M-x eval-buffer Observed: (19.617422592 2 1.0353073050000035) Expected: `pp' not taking ~20sec to write 15k of elisp data. -- Ihor Radchenko // yantar92, Org mode contributor, Learn more about Org mode at . Support Org development at , or support my work at From unknown Mon Aug 11 19:04:08 2025 X-Loop: help-debbugs@gnu.org Subject: bug#58687: 29.0.50; Enabling pp-use-max-width dramatically slows down formatting of large sexps like org-persist--index Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 12 Jan 2023 13:37:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 58687 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Ihor Radchenko Cc: 58687@debbugs.gnu.org, m.eliachevitch@posteo.de Received: via spool by 58687-submit@debbugs.gnu.org id=B58687.16735306005955 (code B ref 58687); Thu, 12 Jan 2023 13:37:02 +0000 Received: (at 58687) by debbugs.gnu.org; 12 Jan 2023 13:36:40 +0000 Received: from localhost ([127.0.0.1]:45029 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pFxl1-0001Xx-Kt for submit@debbugs.gnu.org; Thu, 12 Jan 2023 08:36:39 -0500 Received: from eggs.gnu.org ([209.51.188.92]:59058) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pFxkz-0001Xj-Lf for 58687@debbugs.gnu.org; Thu, 12 Jan 2023 08:36:38 -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 1pFxks-00007y-MV; Thu, 12 Jan 2023 08:36:32 -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=FJXWIHXsrLUkv4hS2MYS2n6fR3B7lJSvaEVewP/TZR4=; b=dOsX7RPI6qog D2bBJgVrrdYy4XoROh+XQ1U1r/V1OS7onUTj67MyhNI8fa2YFHGdbuQjeLWagchBqMyve5SZ0NqzB NqtESzBFzR7nn5y/aLHsppmOzZLmb4kYDzgjuQSadrxn5G5RSnQa7OfduqsNXOrYUamNpTyc1izQK /j+ppJRTECA5N+C7yPRrCADtzQywtl4zHsaOojxfMnfKmS+a1Xi/4mG27oFq1huESvcZnld3dIR+V q82PDyIrE7O9sLMp3K4jvOsjEofqqMc3O61opGjStPvMuYOQbtNoi81nP5NpLWQLVIdoG2exuEtTT SWx1eTaODCS3e88zqFKvaA==; Received: from [87.69.77.57] (helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pFxks-0005OP-5W; Thu, 12 Jan 2023 08:36:30 -0500 Date: Thu, 12 Jan 2023 15:36:25 +0200 Message-Id: <83edrzc1t2.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: <87v8lc802g.fsf@localhost> (message from Ihor Radchenko on Thu, 12 Jan 2023 11:27:35 +0000) References: <871qr1cn73.fsf@posteo.de> <87v8lc802g.fsf@localhost> X-Spam-Score: -2.3 (--) 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 (---) > Cc: 58687@debbugs.gnu.org > From: Ihor Radchenko > Date: Thu, 12 Jan 2023 11:27:35 +0000 > > Michael Eliachevitch writes: > > > I attached a file with the value of my `org-persist--index` expression and a file with a benchmark where I run pp on it, which took me 25s when running it with emacs -Q. Until recently my org persist index was much longer, but I pruned it a bit back when I wasn't aware what exactly caused the slowdown. > > I'd like to bump this bug. Why? > 1. Save the attached files to same folder > 2. Open benchmark-pp-on-org-persist-index.el > 3. M-x eval-buffer > > Observed: (19.617422592 2 1.0353073050000035) > Expected: `pp' not taking ~20sec to write 15k of elisp data. Did you look at what pp.el does when pp-use-max-width is non-nil? I show a profile below, to make that clear. The "regular" pp (when pp-use-max-width is nil) finishes almost instantaneously in this case. 40048 85% - command-execute 40048 85% - call-interactively 40046 85% - funcall-interactively 40046 85% - execute-extended-command 40044 85% - command-execute 40044 85% - call-interactively 40044 85% - funcall-interactively 40044 85% - eval-buffer 40043 85% - let 40042 85% - benchmark-call 40041 85% - # 40041 85% - pp 40041 85% - pp-to-string 40041 85% - pp-emacs-lisp-code 40028 85% - pp--insert-lisp 40028 85% - pp--format-list 40028 85% - pp--insert 38710 82% - pp--insert-lisp 38710 82% - pp--format-list 38708 82% - pp--insert 20781 44% - pp--insert-lisp 20780 44% - pp--format-list 20780 44% - pp--insert 13619 28% - pp--indent-buffer 13603 28% - lisp-indent-line 12595 26% - lisp-ppss 9763 20% - syntax-ppss 6 0% # 1 0% syntax-propertize From unknown Mon Aug 11 19:04:08 2025 X-Loop: help-debbugs@gnu.org Subject: bug#58687: 29.0.50; Enabling pp-use-max-width dramatically slows down formatting of large sexps like org-persist--index Resent-From: Ihor Radchenko Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 12 Jan 2023 16:20:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 58687 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii Cc: 58687@debbugs.gnu.org, m.eliachevitch@posteo.de Received: via spool by 58687-submit@debbugs.gnu.org id=B58687.16735403541985 (code B ref 58687); Thu, 12 Jan 2023 16:20:01 +0000 Received: (at 58687) by debbugs.gnu.org; 12 Jan 2023 16:19:14 +0000 Received: from localhost ([127.0.0.1]:48426 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pG0IL-0000Vw-QR for submit@debbugs.gnu.org; Thu, 12 Jan 2023 11:19:14 -0500 Received: from mout01.posteo.de ([185.67.36.65]:35261) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pG0IJ-0000Vf-MQ for 58687@debbugs.gnu.org; Thu, 12 Jan 2023 11:19:12 -0500 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id B90B624026E for <58687@debbugs.gnu.org>; Thu, 12 Jan 2023 17:19:05 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1673540345; bh=DjB5gZvNTUDf751NAFISM8p/Z2BWDP0f8XNSy9HRPQU=; h=From:To:Cc:Subject:Date:From; b=FYUP5cGVFz3VgN5ikO3ffLTEH1+OqYvZ7junS9P5MV6Kh3WbxyM5kF5lAnGCn3qRE VoREjvtstfei7uoXesnkwTQqXVRU83RaZJ9VB35x7QqxXs3kxpyCKQgAEEtdWn/Q7p +OvQLsjGMsR3K+etM6/24HKdCpUIqmpSRda0ioMBpd1ali5Putu1JaSzyxpWqkIUpm 8aqcUb8xKIVDiRHyp6mERKbgoT1nEwmXCFu+hRQ3S28gQ6Jxf0+zuoBcW+NHYgThwa 9MdvjV9kg4885GCe4thUHr+IW6TKIhPA9G7t+bmZzU7eSp64X4y1DqKMoWem3a/KQn BxGaBWVCtdiXA== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4Nt8r86lpLz6trt; Thu, 12 Jan 2023 17:19:04 +0100 (CET) From: Ihor Radchenko In-Reply-To: <83edrzc1t2.fsf@gnu.org> References: <871qr1cn73.fsf@posteo.de> <87v8lc802g.fsf@localhost> <83edrzc1t2.fsf@gnu.org> Date: Thu, 12 Jan 2023 16:19:37 +0000 Message-ID: <87cz7j9146.fsf@localhost> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) 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 (---) Eli Zaretskii writes: >> > I attached a file with the value of my `org-persist--index` expression and a file with a benchmark where I run pp on it, which took me 25s when running it with emacs -Q. Until recently my org persist index was much longer, but I pruned it a bit back when I wasn't aware what exactly caused the slowdown. >> >> I'd like to bump this bug. > > Why? Because, I'd like to know if there are chances that it could be fixed. The original report demonstrates how this issue slows down Emacs quit time dramatically. I should either let-bind `pp-use-max-with' to nil in org-persist.el to work around the problem or wait for the fix. >> Observed: (19.617422592 2 1.0353073050000035) >> Expected: `pp' not taking ~20sec to write 15k of elisp data. > > Did you look at what pp.el does when pp-use-max-width is non-nil? I > show a profile below, to make that clear. > > The "regular" pp (when pp-use-max-width is nil) finishes almost > instantaneously in this case. > ... > 40041 85% - pp > 40041 85% - pp-to-string > 40041 85% - pp-emacs-lisp-code > 40028 85% - pp--insert-lisp > 40028 85% - pp--format-list > 40028 85% - pp--insert > 38710 82% - pp--insert-lisp > 38710 82% - pp--format-list So, the current `pp' implementation is re-parsing from bob for every nested list inside sexp. This is quadratic scaling, and, as the repro demonstrates, the time goes up very quickly. Is the new option usable at all in practice? -- Ihor Radchenko // yantar92, Org mode contributor, Learn more about Org mode at . Support Org development at , or support my work at From unknown Mon Aug 11 19:04:08 2025 X-Loop: help-debbugs@gnu.org Subject: bug#58687: 29.0.50; Enabling pp-use-max-width dramatically slows down formatting of large sexps like org-persist--index Resent-From: Visuwesh Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 12 Jan 2023 16:35:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 58687 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Ihor Radchenko Cc: Eli Zaretskii , 58687@debbugs.gnu.org, m.eliachevitch@posteo.de Received: via spool by 58687-submit@debbugs.gnu.org id=B58687.16735412423582 (code B ref 58687); Thu, 12 Jan 2023 16:35:02 +0000 Received: (at 58687) by debbugs.gnu.org; 12 Jan 2023 16:34:02 +0000 Received: from localhost ([127.0.0.1]:48448 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pG0Wg-0000vb-9c for submit@debbugs.gnu.org; Thu, 12 Jan 2023 11:34:02 -0500 Received: from mail-pf1-f193.google.com ([209.85.210.193]:46710) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pG0We-0000vC-Ji for 58687@debbugs.gnu.org; Thu, 12 Jan 2023 11:34:00 -0500 Received: by mail-pf1-f193.google.com with SMTP id 20so8775769pfu.13 for <58687@debbugs.gnu.org>; Thu, 12 Jan 2023 08:34:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:user-agent:message-id:date :references:in-reply-to:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=9E2sbZf7+XKaUDssWv4YrGlRx2amwXg0v2HWgkQZce4=; b=n/nUHyxxVNMd3kFHNQvEoY5R5GluACYiuGY646JmJrO1dMGHeG/WPzhqp0F53UzVDc fnGTAIRYk9ldSw+pKeUsGMcMUh9JdZtUZKaSi5BYjTBN5llHoLWJwsqR1mC8NgMfjkQ4 cq5M0QtlzTZ63tDvfiNy/Z2mRXsuLE2vSjzMsJ5bz9l4gJxRDqyPXz9evbfVMNqX6aRN GldM7/vBzTp87XohsxbfyP/sUSwQBP7L8ssZu28TJ2UxcxgFzkA6W4/pMvY5T0ht7tic zi6fYVyZ9eltIo0tbQJgCq1YmnMlBnJbkQRzAYo2R8eRj8bVjz3S5mBll1RlBimcdykO iXlQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:user-agent:message-id:date :references:in-reply-to:subject:cc:to:from:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=9E2sbZf7+XKaUDssWv4YrGlRx2amwXg0v2HWgkQZce4=; b=USlyknuJbc196TELFmWS8gp59CmzQBUAZ1tJsXExDZwskpFfIcSthjfS1wD1IFE0e+ hikexpO3B8NqRPZc3rA5odKX1VGaGnTqP7HMNvSpY9GNXpBYrCVn5Nz4iowxx4LxGJ7k /VoY/ELSOWAJLkzvUIHVL670DHYIHUu373jehsbaNSOHqENO5F5BHCLAgaWM5bo+YJrG STM/hSeCXW6eJP6FirNPNamJWFOmwZMKH0F1WRTvhRyOCb/+ePCwTkqa8S4fRa23oczo OT9lmzfVS1BU9QHj5JypIU/KcyKdik9q64c8VcvrDqWVnfBWTR4ndFPreAjH6kL9O/OK KOig== X-Gm-Message-State: AFqh2kquxURp62ww5C9rn7n1uFiF4Wl0wLqj9FSpTcrne7WseTMMi9CQ RNevGp1PJZIIp/X2j4XWgaY= X-Google-Smtp-Source: AMrXdXufU5cIW5w+7XMHJifT7S54gFjaoy0iB5MTG1HebHj1nJOxLT+y9xslLcWSmqX1ARiUWXmu8w== X-Received: by 2002:a05:6a00:1485:b0:57f:c170:dc6 with SMTP id v5-20020a056a00148500b0057fc1700dc6mr83585006pfu.14.1673541234693; Thu, 12 Jan 2023 08:33:54 -0800 (PST) Received: from localhost ([118.185.152.162]) by smtp.gmail.com with ESMTPSA id p128-20020a625b86000000b00580d25a2bb2sm7572854pfb.108.2023.01.12.08.33.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Jan 2023 08:33:54 -0800 (PST) From: Visuwesh In-Reply-To: <87cz7j9146.fsf@localhost> (Ihor Radchenko's message of "Thu, 12 Jan 2023 16:19:37 +0000") References: <871qr1cn73.fsf@posteo.de> <87v8lc802g.fsf@localhost> <83edrzc1t2.fsf@gnu.org> <87cz7j9146.fsf@localhost> Date: Thu, 12 Jan 2023 22:03:50 +0530 Message-ID: <874jsvyaoh.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 3.6 (+++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.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 the administrator of that system for details. Content preview: =?UTF-8?Q?[=E0=AE=B5=E0=AE=BF=E0=AE=AF=E0=AE=BE=E0=AE=B4=E0=AE=A9=E0=AF=8D_?= =?UTF-8?Q?=E0=AE=9C=E0=AE=A9=E0=AE=B5=E0=AE=B0=E0=AE=BF?= 12, 2023] Ihor Radchenko wrote: > [...] > So, the current `pp' implementation is re-parsing from bob for every > nested list inside sexp. This is quadratic scaling, and, as the repro > demonstrates, the time goes up very quickly. Is [...] Content analysis details: (3.6 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [118.185.152.162 listed in zen.spamhaus.org] 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (visuweshm[at]gmail.com) 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [209.85.210.193 listed in list.dnswl.org] 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [209.85.210.193 listed in wl.mailspike.net] 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders 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.6 (++) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.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 the administrator of that system for details. Content preview: =?UTF-8?Q?[=E0=AE=B5=E0=AE=BF=E0=AE=AF=E0=AE=BE=E0=AE=B4=E0=AE=A9=E0=AF=8D_?= =?UTF-8?Q?=E0=AE=9C=E0=AE=A9=E0=AE=B5=E0=AE=B0=E0=AE=BF?= 12, 2023] Ihor Radchenko wrote: > [...] > So, the current `pp' implementation is re-parsing from bob for every > nested list inside sexp. This is quadratic scaling, and, as the repro > demonstrates, the time goes up very quickly. Is [...] Content analysis details: (2.6 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- 0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [209.85.210.193 listed in wl.mailspike.net] 3.6 RCVD_IN_SBL_CSS RBL: Received via a relay in Spamhaus SBL-CSS [118.185.152.162 listed in zen.spamhaus.org] -0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at https://www.dnswl.org/, no trust [209.85.210.193 listed in list.dnswl.org] 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (visuweshm[at]gmail.com) 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record -0.0 SPF_PASS SPF: sender matches SPF record 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders -1.0 MAILING_LIST_MULTI Multiple indicators imply a widely-seen list manager [=E0=AE=B5=E0=AE=BF=E0=AE=AF=E0=AE=BE=E0=AE=B4=E0=AE=A9=E0=AF=8D =E0=AE=9C= =E0=AE=A9=E0=AE=B5=E0=AE=B0=E0=AE=BF 12, 2023] Ihor Radchenko wrote: > [...] > So, the current `pp' implementation is re-parsing from bob for every > nested list inside sexp. This is quadratic scaling, and, as the repro > demonstrates, the time goes up very quickly. Is the new option usable > at all in practice? IME, unfortunately not. Like the OP, I saw the announcement of the new user option, got excited and enabled it right away... only to be hit by bugs more often than not, add to it the slowness, it wasn't a fun experience. Personally, I always thought it would be best if the user facing commands like pp-eval-sexp and friends alone respected the user option. From unknown Mon Aug 11 19:04:08 2025 X-Loop: help-debbugs@gnu.org Subject: bug#58687: 29.0.50; Enabling pp-use-max-width dramatically slows down formatting of large sexps like org-persist--index Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 12 Jan 2023 16:40:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 58687 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Ihor Radchenko Cc: 58687@debbugs.gnu.org, m.eliachevitch@posteo.de Received: via spool by 58687-submit@debbugs.gnu.org id=B58687.16735415874180 (code B ref 58687); Thu, 12 Jan 2023 16:40:01 +0000 Received: (at 58687) by debbugs.gnu.org; 12 Jan 2023 16:39:47 +0000 Received: from localhost ([127.0.0.1]:48465 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pG0cF-00015M-1D for submit@debbugs.gnu.org; Thu, 12 Jan 2023 11:39:47 -0500 Received: from eggs.gnu.org ([209.51.188.92]:41208) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pG0cD-000153-0v for 58687@debbugs.gnu.org; Thu, 12 Jan 2023 11:39:45 -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 1pG0c7-0008NN-GD; Thu, 12 Jan 2023 11:39:39 -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=AbO4SLe0hrSVLvk/P2AGQPdWRLFlRLBSloaOZEuT3cs=; b=IAmvEjQEn5Fa iAwx+TKst2XFMsLLgx+Nvd4bcZ8ZXU4YO1J7nY1Y9un9CZHulYTZbVaHhE0j6AkOXiKRM80weXHKv QZf8WVb6ynCGKKBlE8muqIMPjQ/t33AZ3F098akL+SXpyw+AATNJSNrI1hD9nORtIVzpCV2FL7Nwr DeayHPan/7bvivH6uifFs7CqQ/yq1LCSZd54Tb9MGJVK5nd+X6r6LKAPmPNAVrGbcJpZ9b9Q6u2JW OBKZdWqvQd+Lgl65bR3tm7Rv40PfXigBsHpK/nmOB5IlMal8WPBWsBjJ+jUOYquMUAW9EPEVs8Q06 dkKQftr3POihk3x0mS13bw==; Received: from [87.69.77.57] (helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pG0c6-0008Nq-O7; Thu, 12 Jan 2023 11:39:39 -0500 Date: Thu, 12 Jan 2023 18:39:35 +0200 Message-Id: <83zganaerc.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: <87cz7j9146.fsf@localhost> (message from Ihor Radchenko on Thu, 12 Jan 2023 16:19:37 +0000) References: <871qr1cn73.fsf@posteo.de> <87v8lc802g.fsf@localhost> <83edrzc1t2.fsf@gnu.org> <87cz7j9146.fsf@localhost> X-Spam-Score: -2.3 (--) 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: Ihor Radchenko > Cc: m.eliachevitch@posteo.de, 58687@debbugs.gnu.org > Date: Thu, 12 Jan 2023 16:19:37 +0000 > > Eli Zaretskii writes: > > > 40041 85% - pp > > 40041 85% - pp-to-string > > 40041 85% - pp-emacs-lisp-code > > 40028 85% - pp--insert-lisp > > 40028 85% - pp--format-list > > 40028 85% - pp--insert > > 38710 82% - pp--insert-lisp > > 38710 82% - pp--format-list > > So, the current `pp' implementation is re-parsing from bob for every > nested list inside sexp. Not "the current 'pp'", but the implementation for this optional behavior. > This is quadratic scaling, and, as the repro demonstrates, the time > goes up very quickly. Is the new option usable at all in practice? Maybe only for small code fragments. From unknown Mon Aug 11 19:04:08 2025 X-Loop: help-debbugs@gnu.org Subject: bug#58687: Fwd: Re: bug#58687: 29.0.50; Enabling pp-use-max-width dramatically slows down formatting of large sexps like org-persist--index In-Reply-To: <871qr1cn73.fsf@posteo.de> Resent-From: Michael Eliachevitch Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 12 Jan 2023 23:11:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 58687 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii Cc: Ihor Radchenko , 58687@debbugs.gnu.org Received: via spool by 58687-submit@debbugs.gnu.org id=B58687.167356503322491 (code B ref 58687); Thu, 12 Jan 2023 23:11:01 +0000 Received: (at 58687) by debbugs.gnu.org; 12 Jan 2023 23:10:33 +0000 Received: from localhost ([127.0.0.1]:48835 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pG6iP-0005qg-6y for submit@debbugs.gnu.org; Thu, 12 Jan 2023 18:10:33 -0500 Received: from mout02.posteo.de ([185.67.36.66]:33743) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pG6iN-0005qQ-B8 for 58687@debbugs.gnu.org; Thu, 12 Jan 2023 18:10:31 -0500 Received: from submission (posteo.de [185.67.36.169]) by mout02.posteo.de (Postfix) with ESMTPS id 846D52403F5 for <58687@debbugs.gnu.org>; Fri, 13 Jan 2023 00:10:22 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.de; s=2017; t=1673565025; bh=+A0tlV/tQCk7h7S+7wM2IJyqG4CIFIqCsg5y7t1EFVU=; h=From:To:Cc:Subject:Date:Autocrypt:OpenPGP:From; b=Gq4aEBiaZkgL9u0VtfxbNncE+0W10jfehAUgPRegPDYpqhP8u9Pzs2sPHQww9JJb+ 5Efr3ieW/K2KlKlkXIdyNjoDZXqW2GEbIZ48yd+q27M/hGZi0FkFl0CiyxAG3Hk/Zf 4gStX7MXsjfcv3y57cnMTcvmBuXhvxCinESR4MgWNof0sUydEPINTeRfyTrlBqEpR/ IA+wsd59CTnGOGaS2+uM4kjO0jf1J1STW4k2TCB8NCH/1rPNeFmiNFI8gw4XFwIxpo P0wlT/QH5jS/V0UvxWpMmEEUtDrW6UFInTLrE6EgaPU1G4FlcAeJ91TLurnt/S7bFY mdr6ni4eUI4Hw== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4NtKyk1BnMz9rxB; Fri, 13 Jan 2023 00:10:21 +0100 (CET) References: <871qr1cn73.fsf@posteo.de> <87v8lc802g.fsf@localhost> <83edrzc1t2.fsf@gnu.org> <87cz7j9146.fsf@localhost> <83zganaerc.fsf@gnu.org> <87cz7j8j5o.fsf@posteo.de> From: Michael Eliachevitch Date: Thu, 12 Jan 2023 23:02:42 +0000 Message-ID: <878ri78i3m.fsf@posteo.de> MIME-Version: 1.0 Content-Type: text/plain; format=flowed Autocrypt: addr=m.eliachevitch@posteo.de; keydata=xsBNBFHFxZABCADAAv2siayhA7Etl85WcwcyMPBD2bt/6Wh3A8a12AURV5J4tprzgbdlxC0w1LofvklG7ls25NERAY931hvQW+f5GEI0pwoNNFXEkKDa8/J4SxhrqXx8CJA85owPq1g4cFeO1ooQJ32BewlRGsnhd+taYExZ76oaMnFtx6jYjf6mPbjDyiLhC+Og3MBpOqAnmX7mhStgJl0uru1ZGEB17tzzVuQ4ljDv/MvUagVFymQBhmlbzvze5eLeDn90Ot0DjWHy3HzCFMEnVqQy8rmEA8N9GOANwyMY79KVymsPakeNwacPRFzYXCZvolC5jtY6I/1ALvVtNc45JyZWty+rMPo3ABEBAAHNGG0uZWxpYWNoZXZpdGNoQHBvc3Rlby5kZcLAlAQTAQgAPhYhBFRpCMeCODrQ59iU7BuPlcgSXc4xBQJgUmWNAhsDBQkSToKgBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAAAoJEBuPlcgSXc4xqC8H/06lkI7BimgkSobuEzsD9LsIPEyz5uUaQAP77u1nfoO1vB0DEdPxn7f3H3Hs7nyUfPgvgsn+9rTSV+ubHH5f/bzgQZgES2WItbV7iM290j6nWSc/iCTLlTmM2KMNvbMB9xGzV0m+UjMyAa9zUhB/3N+rd5ya/oSiTKw2/UbgfM5fR1knIUgPDENlKjJvO7/71Sxwpc+gKvAR9lHRT8JzQMyFaFO+zbo53Z7FzDTuj7zVyQ4MPIhe+UMI4rtNZeyPDM0QTep0+N39JbDhvUVevOh15XJTYXl2Zdhl/yunnOibtg3XKtToakc4FjWJGrw8njbges5YqaodeMqktYV7ooDOwE0EUcXFkAEIAMXrmg6U1/ADypwRWEW1fhuT2uci2O+7MDOf1vxOlzRP6FyMna6Uj77GuJ0sxTljkWl8v+DCw8z2rZr7 /EFiQqN3k++nBZVIdzDoeJ7kw45aFxMd6SCBEHIsxGhA/3fLHEqY6ilrONY8SX3wbLeBOC48fLrBOlGlRpZhUymbgKHCjXRM3wbhKBaBrI5L3aD1BPSLJzdCuY2L3lHJqLhBndAQs6qOmwpeHmx2zaWdIfcaLFzA+p2rqY+/gfRKOK1eSmR/xsHJ9rJe8IKJLAS0RXdpbfP/63MU0+rhmpHFXDyvpPqEe3RADCfpDLAX9BmEUFgPKCuBXn+xrlncEuYA6UUAEQEAAcLAXwQYAQIACQUCUcXFkAIbDAAKCRAbj5XIEl3OMbX1B/0f/F8CAejsasPbaipU2kSc0rDDG/j38FABMDwhnXqoBfbfBw1ho+o8Nfxs/wrVqJz6DXDhFHm6n7cDWbBQleYkplFv3r8oVNA1XZCUEMv0ZPEiQDjIpw/chHQGeYWJneSdEDsbWM76yCyLF1adaccBAiHWKUTRIN5m74+xc/ZsTMCDdxaplklfeYUwwtnJ6HfW2Ia91s+4RuhdGd42kidf+3a7cTGHVn8aKKXLlteTFBeOZGnWl48dSQBC09rpq6DUOJPkmSPo3tMCYFSUyNZe7ebKNfU3P4PNreZoG4rDVkWBqNKu986WQOoYc2O0OspbC7JXrk0wiGMQKWWOW3Gw OpenPGP: url=https://posteo.de/keys/m.eliachevitch@posteo.de.asc X-Spam-Score: -2.3 (--) 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 (---) Sorry for the noise, but I need to resend (i.e. re-cc) this email to 58687@debbugs.gnu.org. I had sent it already to that list earlier, but my e-mail provider had blocked it because I recently enabled the "TLS-sending guarantee" it had blocked 58687@debbugs.gnu.org, therefore I disabled that setting again. Sorry for the noise. To: Eli Zaretskii Cc: Ihor Radchenko , 58687@debbugs.gnu.org On 2023-01-12 at 23:22 +01, Michael Eliachevitch wrote: > On 2023-01-12 at 18:39 +02, Eli Zaretskii wrote: > >> Not "the current 'pp'", but the implementation for this optional >> behavior. > > This is optional behavior, but I would prefer if the performance impact of > enabling this optional behavior would be documented, e.g. in the variable > docstring and NEWS.29. It's disabled by default and will only be used by those > like me and Visuwesh who the documentation and news, so I'm fine with it being > almost unusably slow if that's documented. Though better performance if possible > would be nice of course. > > On 2023-01-12 at 22:03 +0530, Visuwesh wrote: > >> Personally, I always thought it would be best if the user facing >> commands like pp-eval-sexp and friends alone respected the user option. > > Sounds like a good idea. I definetly didn't expect that me personally setting > this option for myself would affect how lisp objects are serialized to disk in > external packages. Not sure if I would only enable it for interactive commands > and the like, in the emacs-world we are all hackers and hard to say what is > user-facing. People might write their own functions using pp on small s-exps, > and wonder why this setting isn't doing anything. Not sure what's the best > approach there > > Maybe pp isn't meant to be used for doing anything that's not meant primarily > for human eyes, like serialization of lisp objects, maybe it's an error on > package maintainers that use it that way, but at least that could also somehow > be communicated more clearly to them. -- Michael Eliachevitch Public PGP Key: https://keyoxide.org/hkp/546908c782383ad0e7d894ec1b8f95c8125dce31 From unknown Mon Aug 11 19:04:08 2025 X-Loop: help-debbugs@gnu.org Subject: bug#58687: 29.0.50; Enabling pp-use-max-width dramatically slows down formatting of large sexps like org-persist--index Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 13 Jan 2023 08:43:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 58687 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Michael Eliachevitch Cc: yantar92@posteo.net, 58687@debbugs.gnu.org Received: via spool by 58687-submit@debbugs.gnu.org id=B58687.16735993766682 (code B ref 58687); Fri, 13 Jan 2023 08:43:02 +0000 Received: (at 58687) by debbugs.gnu.org; 13 Jan 2023 08:42:56 +0000 Received: from localhost ([127.0.0.1]:49503 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pGFeK-0001jh-9D for submit@debbugs.gnu.org; Fri, 13 Jan 2023 03:42:56 -0500 Received: from eggs.gnu.org ([209.51.188.92]:57898) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pGFeI-0001jU-L6 for 58687@debbugs.gnu.org; Fri, 13 Jan 2023 03:42:55 -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 1pGFeD-0004g7-5F; Fri, 13 Jan 2023 03:42:49 -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=pfyULVKTtDHzrAimrktggr13zRmaiwzfHsTWXVW6ow4=; b=AOpA1S1D0mI7 CMkZbU2UquSDkMdamW/oB/tN7hJNN9xlKSDJfCHvinm/mx106bxC+BLzsPvi6EAjx3KoOtN9KVk9x UwrUQ67BsQ9XBXwwcQxxhucNHxeDwXqv6ePrSlfva72PmMTmSfdAn2UrDJjrUKbtwZWgS0KwEYMvA GMzVVv4i4MouvLPbU3Xt6wrWb4eXPQlzjDqK5r+pflcJBQ993c83tG96j1gnOQaZPm8gnC1WFni26 j4cIFw/BoCWpBJWqGGdnhvCiAhcbmXA+qsWiaLGtlYxiKqeRxWKpp/4sRYZ+9k4Y6Iy3+SxXUYQm7 pkFDhPjEB2ruqXXkQctJnw==; Received: from [87.69.77.57] (helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pGFeC-0006st-L6; Fri, 13 Jan 2023 03:42:48 -0500 Date: Fri, 13 Jan 2023 10:42:48 +0200 Message-Id: <83o7r2akqf.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: <87cz7j8j5o.fsf@posteo.de> (message from Michael Eliachevitch on Thu, 12 Jan 2023 22:22:20 +0000) References: <871qr1cn73.fsf@posteo.de> <87v8lc802g.fsf@localhost> <83edrzc1t2.fsf@gnu.org> <87cz7j9146.fsf@localhost> <83zganaerc.fsf@gnu.org> <87cz7j8j5o.fsf@posteo.de> X-Spam-Score: -2.3 (--) 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: Michael Eliachevitch > Cc: Ihor Radchenko , 58687@debbugs.gnu.org > Date: Thu, 12 Jan 2023 22:22:20 +0000 > > On 2023-01-12 at 18:39 +02, Eli Zaretskii wrote: > > > Not "the current 'pp'", but the implementation for this optional > > behavior. > > This is optional behavior, but I would prefer if the performance impact of enabling this optional behavior would be documented, e.g. in the variable docstring and NEWS.29. Done. > On 2023-01-12 at 22:03 +0530, Visuwesh wrote: > > > Personally, I always thought it would be best if the user facing > > commands like pp-eval-sexp and friends alone respected the user option. > > Sounds like a good idea. Also done. (Most of the functions already honored this option, but 2 of them didn't.) From unknown Mon Aug 11 19:04:08 2025 X-Loop: help-debbugs@gnu.org Subject: bug#58687: 29.0.50; Enabling pp-use-max-width dramatically slows down formatting of large sexps like org-persist--index Resent-From: Ihor Radchenko Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 13 Jan 2023 09:29:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 58687 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Michael Eliachevitch Cc: Eli Zaretskii , 58687@debbugs.gnu.org Received: via spool by 58687-submit@debbugs.gnu.org id=B58687.167360209420274 (code B ref 58687); Fri, 13 Jan 2023 09:29:02 +0000 Received: (at 58687) by debbugs.gnu.org; 13 Jan 2023 09:28:14 +0000 Received: from localhost ([127.0.0.1]:49584 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pGGMA-0005Gw-7L for submit@debbugs.gnu.org; Fri, 13 Jan 2023 04:28:14 -0500 Received: from mout01.posteo.de ([185.67.36.65]:54597) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pGGM8-0005Gk-R1 for 58687@debbugs.gnu.org; Fri, 13 Jan 2023 04:28:13 -0500 Received: from submission (posteo.de [185.67.36.169]) by mout01.posteo.de (Postfix) with ESMTPS id 2351E240038 for <58687@debbugs.gnu.org>; Fri, 13 Jan 2023 10:28:06 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1673602087; bh=/eknoOZ/xJxpIHLsU7L9qwD2pWXdK8jubSlWVcbuXBM=; h=From:To:Cc:Subject:Date:From; b=ruAv7bYjyqa8+Z/6I1/y1br3U7hhgdH70lJ3sKEwZiekj1c+WgJw8ts5FmrvZ2y5N ocUtbIzercSy/JpSqaRNk8Df5Ap9hJRZk4xnNmZqaXp75rDiBWZrPhpEoPvKFi/1zO eMJScgLqjvuMsI+UidXWBhesw1doWyn6ZSTAa7xWZ5TUTylxXk1o8Yt1Cci9G2Mc65 CkSx3Qu4ebm2qoYMz7pD0CWbMWoaKwObdyjzryX8otLfDRFA0Kku1KeU0k+1htyp/5 82BhqshBYD7Yn4Ho4f3DkZU/rGD3spnj07QuPpIT1Vkddi5O+k93zRt8aVqxXfC+iI epAiC5zdpSkPQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4NtbgT6HSwz9rxB; Fri, 13 Jan 2023 10:28:05 +0100 (CET) From: Ihor Radchenko In-Reply-To: <87cz7j8j5o.fsf@posteo.de> References: <871qr1cn73.fsf@posteo.de> <87v8lc802g.fsf@localhost> <83edrzc1t2.fsf@gnu.org> <87cz7j9146.fsf@localhost> <83zganaerc.fsf@gnu.org> <87cz7j8j5o.fsf@posteo.de> Date: Fri, 13 Jan 2023 09:28:37 +0000 Message-ID: <875yda7ph6.fsf@localhost> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.3 (--) 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 (---) Michael Eliachevitch writes: >> Personally, I always thought it would be best if the user facing >> commands like pp-eval-sexp and friends alone respected the user option. > > Sounds like a good idea. I definetly didn't expect that me personally setting this option for myself would affect how lisp objects are serialized to disk in external packages. Not sure if I would only enable it for interactive commands and the like, in the emacs-world we are all hackers and hard to say what is user-facing. People might write their own functions using pp on small s-exps, and wonder why this setting isn't doing anything. Not sure what's the best approach there > > Maybe pp isn't meant to be used for doing anything that's not meant primarily for human eyes, like serialization of lisp objects, maybe it's an error on package maintainers that use it that way, but at least that could also somehow be communicated more clearly to them. In org-persist, `pp' is used because "index" file might be something users may want to check manually. Following the notion that Elisp data should be something consumable by humans, if possible. -- Ihor Radchenko // yantar92, Org mode contributor, Learn more about Org mode at . Support Org development at , or support my work at