GNU bug report logs -
#62947
30.0.50; ERC 5.6: Improve partitioning of outgoing messages
Previous Next
Reported by: "J.P." <jp <at> neverwas.me>
Date: Wed, 19 Apr 2023 14:58:01 UTC
Severity: normal
Tags: patch
Found in version 30.0.50
Done: "J.P." <jp <at> neverwas.me>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#62947: 30.0.50; ERC 5.6: Improve partitioning of outgoing messages
which was filed against the emacs package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 62947 <at> debbugs.gnu.org.
--
62947: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=62947
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
"J.P." <jp <at> neverwas.me> writes:
> The path I'm proposing does come with one minor hiccup in terms of
> corner-case breakage, but only for third-parties that expect
> protocol-length line splitting to occur after the more send-focused
> hooks run (chiefly, `erc-pre-send-functions'). To smooth things over,
> I'm proposing an off-by-default compat switch, which would manifest as a
> new "refoldp" slot for the `erc-input' object that's shared among these
> hook members. Third parties can toggle this on if they'd rather not
> trust other members to perform the necessary bookeeping to keep line
> lengths in check.
>
> If you'd like to try this, just
>
> (setq erc-inhibit-multiline-input t
> erc-send-whitespace-lines t)
>
> and submit a long passage at the prompt.
These changes have been added, perhaps prematurely, as
https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=3a5a6fce
Thanks and closing (for now).
[Message part 3 (message/rfc822, inline)]
[Message part 4 (text/plain, inline)]
Tags: patch
Hi,
Someone on Libera recently observed their messages being split into much
smaller chunks than expected. And apparently this problem isn't much of
a secret either. It seems to boil down to `erc-split-line's reliance on
`fill-region' for rejiggering messages on their way out the door. If you
poke around that area long enough, you'll see that all that fill-related
figuring happens column-wise, which means messages always fall under the
protocol limit (and thus the radar). I've made an attempt at correcting
this, but it'd be nice if someone better versed in Emacs fundamentals
could take a quick look. (All the doing happens in the second patch, in
the new function `erc--split-line'.)
Thanks.
In GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
3.24.37, cairo version 1.17.6) of 2023-04-19 built on localhost
Repository revision: c279d65199df4749f649c29aca210419ab85af1a
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12014000
System Description: Fedora Linux 37 (Workstation Edition)
Configured using:
'configure --enable-check-lisp-object-type --enable-checking=yes,glyphs
'CFLAGS=-O0 -g3'
PKG_CONFIG_PATH=:/usr/lib64/pkgconfig:/usr/share/pkgconfig'
Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NOTIFY
INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS WEBP X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB
Important settings:
value of $LANG: en_US.UTF-8
value of $XMODIFIERS: @im=ibus
locale-coding-system: utf-8-unix
Major mode: Lisp Interaction
Minor modes in effect:
tooltip-mode: t
global-eldoc-mode: t
eldoc-mode: t
show-paren-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
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 epa derived epg rfc6068 epg-config
gnus-util text-property-search time-date mm-decode mm-bodies mm-encode
mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047
rfc2045 ietf-drums mm-util mail-prsvr mail-utils erc auth-source cl-seq
eieio eieio-core cl-macs password-cache json subr-x map format-spec
cl-loaddefs cl-lib erc-backend erc-networks byte-opt gv bytecomp
byte-compile erc-common erc-compat erc-loaddefs rmc iso-transl tooltip
cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type
elisp-mode mwheel term/x-win x-win term/common-win x-dnd tool-bar dnd
fontset image regexp-opt fringe tabulated-list replace newcomment
text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow
isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax
font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic
indonesian philippine cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
composite emoji-zwj charscript charprop case-table epa-hook
jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs
theme-loaddefs faces cus-face macroexp files window text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget keymap
hashtable-print-readable backquote threads dbusbind inotify lcms2
dynamic-setting system-font-setting font-render-setting cairo
move-toolbar gtk x-toolkit xinput2 x multi-tty make-network-process
emacs)
Memory information:
((conses 16 63580 9434)
(symbols 48 8536 0)
(strings 32 23148 1404)
(string-bytes 1 668662)
(vectors 16 14963)
(vector-slots 8 206689 9758)
(floats 8 24 29)
(intervals 56 228 0)
(buffers 976 10))
[0001-5.6-Don-t-send-multiline-slash-commands-as-msgs-in-E.patch (text/x-patch, attachment)]
[0002-5.6-Redo-line-splitting-for-outgoing-messages-in-ERC.patch (text/x-patch, attachment)]
This bug report was last modified 1 year and 169 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.