unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#53617: 28.0.90; duplicate checks in erc--switch-to-buffer
@ 2022-01-29  0:10 Guy Gastineau
  2022-01-29  3:07 ` J.P.
  0 siblings, 1 reply; 18+ messages in thread
From: Guy Gastineau @ 2022-01-29  0:10 UTC (permalink / raw)
  To: 53617; +Cc: emacs-erc

[-- Attachment #1: Type: text/plain, Size: 8641 bytes --]

erc--switch-to-buffer has the following code at the end:

             ...
             (when buf
      (erc--buffer-p buf (lambda () t) proc)
      (with-current-buffer buf
(and (derived-mode-p 'erc-mode)
     (or (null proc)
 (eq proc erc-server-process)))))
             ...

but erc--buffer-p is already doing the checks with buf as current
buffer:

(defun erc--buffer-p (buf predicate proc)
  (with-current-buffer buf
    (and (derived-mode-p 'erc-mode)
(or (not proc)
    (eq proc erc-server-process))
(funcall predicate)
buf)))

The entire sexp starting with `with-current-buffer ...` can be removed
without changing the semantics of erc--switch-to-buffer.


In GNU Emacs 28.0.90 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.30,
cairo version 1.17.4)
 of 2021-12-14 built on medusa
Repository revision: f88c1d222f17d3483bf6f387dc41be4366a047ab
Repository branch: makepkg
Windowing system distributor 'The X.Org Foundation', version 11.0.12101003
System Description: Arch Linux

Configured using:
 'configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib
 --localstatedir=/var --mandir=/usr/share/man --with-gameuser=:games
 --with-sound=alsa --with-modules --without-libotf --without-m17n-flt
 --without-gconf --without-gsettings --with-native-compilation
 --with-x-toolkit=gtk3 --without-xaw3d --with-sound=no --without-gpm
 --without-compress-install
 '--program-transform-name=s/\([ec]tags\)/\1.emacs/'
 'CFLAGS=-march=x86-64 -mtune=generic -O2 -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 HARFBUZZ JPEG JSON LCMS2
LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG
SECCOMP THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE XIM XPM GTK3 ZLIB

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: ELisp/l

Minor modes in effect:
  erc-list-mode: t
  erc-menu-mode: t
  erc-autojoin-mode: t
  erc-ring-mode: t
  erc-networks-mode: t
  erc-pcomplete-mode: t
  erc-track-mode: t
  erc-track-minor-mode: t
  erc-match-mode: t
  erc-button-mode: t
  erc-fill-mode: t
  erc-stamp-mode: t
  erc-netsplit-mode: t
  erc-irccontrols-mode: t
  erc-noncommands-mode: t
  erc-move-to-prompt-mode: t
  erc-readonly-mode: t
  global-git-commit-mode: t
  magit-auto-revert-mode: t
  global-flycheck-mode: t
  flycheck-mode: t
  shell-dirtrack-mode: t
  global-ligature-mode: t
  ligature-mode: t
  paredit-mode: t
  rainbow-delimiters-mode: t
  global-company-mode: t
  company-mode: t
  counsel-projectile-mode: t
  counsel-mode: t
  projectile-mode: t
  save-place-mode: t
  electric-pair-mode: t
  recentf-mode: t
  override-global-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
/home/guy/.emacs.d/elpa/transient-20211129.1146/transient hides
/usr/share/emacs/28.0.90/lisp/transient

Features:
(shadow sort mail-extr emacsbug sendmail ivy-erc debug backtrace
cl-print two-column misearch multi-isearch apropos erc-list erc-menu
erc-join erc-ring erc-networks erc-pcomplete erc-track erc-match
erc-button erc-fill erc-stamp erc-netsplit erc-goodies erc erc-backend
erc-loaddefs eieio-opt speedbar ezimage dframe shortdoc tabify gnutls
network-stream nsm rcirc magit-patch mule-util vc-mtn vc-hg vc-bzr
vc-src vc-sccs vc-svn vc-cvs vc-rcs vc bug-reference magit-extras
magit-bookmark magit-submodule magit-obsolete magit-blame magit-stash
magit-reflog magit-bisect magit-push magit-pull magit-fetch magit-clone
magit-remote magit-commit magit-sequence magit-notes magit-worktree
magit-tag magit-merge magit-branch magit-reset magit-files magit-refs
magit-status magit magit-repos magit-apply magit-wip magit-log
which-func magit-diff smerge-mode diff git-commit log-edit message rmc
rfc822 mml mml-sec epa derived epg rfc6068 epg-config mm-decode
mm-bodies mm-encode mailabbrev gmm-utils mailheader pcvs-util add-log
magit-core magit-autorevert autorevert filenotify magit-margin
magit-transient magit-process with-editor server magit-mode transient
magit-git magit-section magit-utils crm mhtml-mode css-mode smie eww
url-queue shr kinsoku svg xml puny mm-url gnus nnheader gnus-util rmail
rmail-loaddefs mail-utils js cc-mode cc-fonts cc-guess cc-menus cc-cmds
cc-styles cc-align cc-engine cc-vars cc-defs sgml-mode facemenu dom ffap
purescript-indentation purescript-mode purescript-font-lock
purescript-string purescript-sort-imports purescript-align-imports
haskell-doc inf-haskell haskell-decl-scan imenu haskell
haskell-completions haskell-load haskell-commands highlight-uses-mode
haskell-modules haskell-sandbox haskell-navigate-imports haskell-repl
haskell-svg haskell-collapse hideshow haskell-debug
haskell-interactive-mode haskell-presentation-mode haskell-compile
haskell-hoogle haskell-process haskell-session vc-git diff-mode
vc-dispatcher haskell-mode haskell-cabal haskell-utils haskell-font-lock
haskell-indentation haskell-string haskell-sort-imports haskell-lexeme
haskell-align-imports haskell-complete-module haskell-ghc-support
noutline outline flymake-proc flymake dabbrev haskell-customize flycheck
dash vterm bookmark pp tramp tramp-loaddefs trampver tramp-integration
files-x tramp-compat parse-time iso8601 time-date ls-lisp format-spec
face-remap term shell pcomplete ehelp find-func vterm-module term/xterm
xterm auto-complete popup ligature disp-table paredit rainbow-delimiters
page-break-lines display-line-numbers linum whitespace time
company-oddmuse company-keywords company-etags etags fileloop generator
company-gtags company-dabbrev-code company-dabbrev company-files
company-clang company-capf company-cmake company-semantic
company-template company-bbdb company pcase init exercism interactive
counsel-projectile-ext counsel-projectile counsel xdg advice xref
project dired dired-loaddefs swiper ivy delsel ivy-faces ivy-overlay
colir color comp comp-cstr warnings projectile lisp-mnt mail-parse
rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr grep compile
text-property-search comint ansi-color ibuf-ext ibuffer ibuffer-loaddefs
thingatpt saveplace elec-pair dashboard dashboard-widgets recentf
tree-widget wid-edit all-the-icons all-the-icons-faces data-material
data-weathericons data-octicons data-fileicons data-faicons
data-alltheicons modus-vivendi-theme modus-operandi-theme modus-themes
cl-extra use-package use-package-ensure use-package-delight
use-package-diminish use-package-bind-key bind-key easy-mmode
use-package-core finder-inf geiser-impl help-fns radix-tree help-mode
geiser-custom geiser-base ring proof-site proof-autoloads edmacro kmacro
rx info package browse-url url url-proxy url-privacy url-expand
url-methods url-history url-cookie url-domsuf url-util mailcap
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 iso-transl tooltip 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 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 emoji-zwj charscript charprop case-table
epa-hook jka-cmpr-hook help simple abbrev obarray cl-preloaded nadvice
button loaddefs faces cus-face macroexp files window text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote threads dbusbind inotify lcms2
dynamic-setting font-render-setting cairo move-toolbar gtk x-toolkit x
multi-tty make-network-process native-compile emacs)

Memory information:
((conses 16 1092982 183001)
 (symbols 48 44207 0)
 (strings 32 236718 12429)
 (string-bytes 1 7415412)
 (vectors 16 95829)
 (vector-slots 8 2143178 190013)
 (floats 8 798 606)
 (intervals 56 55744 5618)
 (buffers 992 35))

[-- Attachment #2: Type: text/html, Size: 9444 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: 28.0.90; duplicate checks in erc--switch-to-buffer
  2022-01-29  0:10 bug#53617: 28.0.90; duplicate checks in erc--switch-to-buffer Guy Gastineau
@ 2022-01-29  3:07 ` J.P.
  2022-01-29  3:13   ` Guy Gastineau
  0 siblings, 1 reply; 18+ messages in thread
From: J.P. @ 2022-01-29  3:07 UTC (permalink / raw)
  To: Guy Gastineau; +Cc: bug-gnu-emacs, emacs-erc

Hi Guy,

Thanks for following through with the report.

Guy Gastineau <strings.stringsandstrings@gmail.com> writes:

> The entire sexp starting with `with-current-buffer ...` can be removed
> without changing the semantics of erc--switch-to-buffer.

You're right, of course. In fact, the same commit that introduced
`erc--buffer-p' added the redundancy as well [1]. It looks like they saw
an opportunity to factor out that predicate and simply forgot to erase
the last of what they'd just obsoleted.

Are you sure you're not into cloning the repo and saving out a patch? No
worries if not. This is great regardless.

Thanks again,
J.P.


[1] https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=f925fc93



^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: 28.0.90; duplicate checks in erc--switch-to-buffer
  2022-01-29  3:07 ` J.P.
@ 2022-01-29  3:13   ` Guy Gastineau
  2022-01-29  3:30     ` J.P.
  0 siblings, 1 reply; 18+ messages in thread
From: Guy Gastineau @ 2022-01-29  3:13 UTC (permalink / raw)
  To: J.P.; +Cc: bug-gnu-emacs, emacs-erc

[-- Attachment #1: Type: text/plain, Size: 987 bytes --]

Sure. I will do it.  The emacs bug report buffer provided access to a help
page.  It suggested I make a patch with `diff -u`.  Is it preferable to
provide a patch as made with git?

On Fri, Jan 28, 2022, 10:07 PM J.P. <jp@neverwas.me> wrote:

> Hi Guy,
>
> Thanks for following through with the report.
>
> Guy Gastineau <strings.stringsandstrings@gmail.com> writes:
>
> > The entire sexp starting with `with-current-buffer ...` can be removed
> > without changing the semantics of erc--switch-to-buffer.
>
> You're right, of course. In fact, the same commit that introduced
> `erc--buffer-p' added the redundancy as well [1]. It looks like they saw
> an opportunity to factor out that predicate and simply forgot to erase
> the last of what they'd just obsoleted.
>
> Are you sure you're not into cloning the repo and saving out a patch? No
> worries if not. This is great regardless.
>
> Thanks again,
> J.P.
>
>
> [1] https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=f925fc93
>

[-- Attachment #2: Type: text/html, Size: 1558 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: 28.0.90; duplicate checks in erc--switch-to-buffer
  2022-01-29  3:13   ` Guy Gastineau
@ 2022-01-29  3:30     ` J.P.
  2022-01-29  4:29       ` Guy Gastineau
  0 siblings, 1 reply; 18+ messages in thread
From: J.P. @ 2022-01-29  3:30 UTC (permalink / raw)
  To: Guy Gastineau; +Cc: bug-gnu-emacs, emacs-erc

Guy Gastineau <strings.stringsandstrings@gmail.com> writes:

> Sure. I will do it.

Nice!

> The emacs bug report buffer provided access to a help page. It
> suggested I make a patch with `diff -u`. Is it preferable to provide a
> patch as made with git?

Definitely with git. The "Getting involved with development" section in
CONTRIBUTE lays it out in full [1], but basically (after committing),
you just run something like

  git-format-patch -M origin/master -o /tmp

and look for a file named /tmp/0001-foo.patch and attach that in a
reply.

[1] https://git.savannah.gnu.org/cgit/emacs.git/tree/CONTRIBUTE#n54



^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: 28.0.90; duplicate checks in erc--switch-to-buffer
  2022-01-29  3:30     ` J.P.
@ 2022-01-29  4:29       ` Guy Gastineau
  2022-01-29 23:49         ` bug#53617: " J.P.
       [not found]         ` <878ruyqf0b.fsf@neverwas.me>
  0 siblings, 2 replies; 18+ messages in thread
From: Guy Gastineau @ 2022-01-29  4:29 UTC (permalink / raw)
  To: J.P.; +Cc: bug-gnu-emacs, emacs-erc


[-- Attachment #1.1: Type: text/plain, Size: 831 bytes --]

Here it is.  I don't think my pgp key is on any keyserver, but I signed it
anyway.  Thank you for the encouragement.

On Fri, Jan 28, 2022 at 10:30 PM J.P. <jp@neverwas.me> wrote:

> Guy Gastineau <strings.stringsandstrings@gmail.com> writes:
>
> > Sure. I will do it.
>
> Nice!
>
> > The emacs bug report buffer provided access to a help page. It
> > suggested I make a patch with `diff -u`. Is it preferable to provide a
> > patch as made with git?
>
> Definitely with git. The "Getting involved with development" section in
> CONTRIBUTE lays it out in full [1], but basically (after committing),
> you just run something like
>
>   git-format-patch -M origin/master -o /tmp
>
> and look for a file named /tmp/0001-foo.patch and attach that in a
> reply.
>
> [1] https://git.savannah.gnu.org/cgit/emacs.git/tree/CONTRIBUTE#n54
>

[-- Attachment #1.2: Type: text/html, Size: 1393 bytes --]

[-- Attachment #2: 0001-Remove-redundant-checks-in-erc-switch-to-buffer.patch.gpg --]
[-- Type: application/pgp-encrypted, Size: 1211 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* bug#53617: 28.0.90; duplicate checks in erc--switch-to-buffer
  2022-01-29  4:29       ` Guy Gastineau
@ 2022-01-29 23:49         ` J.P.
       [not found]         ` <878ruyqf0b.fsf@neverwas.me>
  1 sibling, 0 replies; 18+ messages in thread
From: J.P. @ 2022-01-29 23:49 UTC (permalink / raw)
  To: Guy Gastineau; +Cc: larsi, emacs-erc, bandali, 53617

[-- Attachment #1: Type: text/plain, Size: 796 bytes --]

Guy Gastineau <strings.stringsandstrings@gmail.com> writes:

> Here it is. I don't think my pgp key is on any keyserver, but I signed
> it anyway.

I'm not sure if Emacs has a policy regarding the signing of everyday
contributions, but if your key isn't signed by anyone and not propagated
among the keyservers, then I'd guess you can probably just skip further
signing in the near term.

> Thank you for the encouragement.

My pleasure. This looks ready for Emacs 29. Thanks.

                              . . .

I've added the customary tweaks to the log message if someone wants to
glance at it (cc. bandali, Lars). Also, question: is there formal
recordkeeping going on re exempt lines accumulated per individual? And
if not, is the recommended way to get a tally just `git log --author=`?


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-Remove-redundant-checks-in-erc-switch-to-buffer.patch --]
[-- Type: text/x-patch, Size: 1294 bytes --]

From 12352c00544c1916210dd15002ef4ffe0f5efdc8 Mon Sep 17 00:00:00 2001
From: Guy Gastineau <strings.stringsandstrings@gmail.com>
Date: Fri, 28 Jan 2022 23:12:42 -0500
Subject: [PATCH] Remove redundant checks in erc--switch-to-buffer

* lisp/erc/erc.el (erc--switch-to-buffer): Commit
f925fc93bac41d7622d1af927e33b0e738ff55b0 "Add `predicate' arg to
`read-buffer' and use it for erc-iswitchb" meant to remove this, but
it was left behind. (Bug#53617).

Copyright-paperwork-exempt: yes
---
 lisp/erc/erc.el | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el
index 9ee8d38b02..52fe106f2d 100644
--- a/lisp/erc/erc.el
+++ b/lisp/erc/erc.el
@@ -1761,12 +1761,7 @@ erc--switch-to-buffer
 		 (lambda (bufname)
 		   (let ((buf (if (consp bufname)
 				  (cdr bufname) (get-buffer bufname))))
-		     (when buf
-		       (erc--buffer-p buf (lambda () t) proc)
-		       (with-current-buffer buf
-			 (and (derived-mode-p 'erc-mode)
-			      (or (null proc)
-				  (eq proc erc-server-process))))))))))
+                     (and buf (erc--buffer-p buf (lambda () t) proc)))))))
 (defun erc-switch-to-buffer (&optional arg)
   "Prompt for an ERC buffer to switch to.
 When invoked with prefix argument, use all ERC buffers.  Without
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* bug#53617: 28.0.90; duplicate checks in erc--switch-to-buffer
       [not found]         ` <878ruyqf0b.fsf@neverwas.me>
@ 2022-01-30  2:25           ` Guy Gastineau
  2022-01-30  6:34           ` Eli Zaretskii
                             ` (2 subsequent siblings)
  3 siblings, 0 replies; 18+ messages in thread
From: Guy Gastineau @ 2022-01-30  2:25 UTC (permalink / raw)
  To: J.P.; +Cc: larsi, emacs-erc, bandali, 53617

[-- Attachment #1: Type: text/plain, Size: 1113 bytes --]

Yeah, I should get my keys on some servers.  I finally started signing all
my commits, so I just felt weird about not signing the patch.  It was my
pleasure to contribute this miniscule addition to the wonderful emacs.

On Sat, Jan 29, 2022, 6:49 PM J.P. <jp@neverwas.me> wrote:

> Guy Gastineau <strings.stringsandstrings@gmail.com> writes:
>
> > Here it is. I don't think my pgp key is on any keyserver, but I signed
> > it anyway.
>
> I'm not sure if Emacs has a policy regarding the signing of everyday
> contributions, but if your key isn't signed by anyone and not propagated
> among the keyservers, then I'd guess you can probably just skip further
> signing in the near term.
>
> > Thank you for the encouragement.
>
> My pleasure. This looks ready for Emacs 29. Thanks.
>
>                               . . .
>
> I've added the customary tweaks to the log message if someone wants to
> glance at it (cc. bandali, Lars). Also, question: is there formal
> recordkeeping going on re exempt lines accumulated per individual? And
> if not, is the recommended way to get a tally just `git log --author=`?
>
>

[-- Attachment #2: Type: text/html, Size: 1579 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* bug#53617: 28.0.90; duplicate checks in erc--switch-to-buffer
       [not found]         ` <878ruyqf0b.fsf@neverwas.me>
  2022-01-30  2:25           ` Guy Gastineau
@ 2022-01-30  6:34           ` Eli Zaretskii
       [not found]           ` <83a6fdbulb.fsf@gnu.org>
  2022-03-14 13:33           ` J.P.
  3 siblings, 0 replies; 18+ messages in thread
From: Eli Zaretskii @ 2022-01-30  6:34 UTC (permalink / raw)
  To: J.P.; +Cc: strings.stringsandstrings, larsi, emacs-erc, bandali, 53617

> From: "J.P." <jp@neverwas.me>
> Date: Sat, 29 Jan 2022 15:49:24 -0800
> Cc: larsi@gnus.org, emacs-erc@gnu.org, bandali@gnu.org, 53617@debbugs.gnu.org
> 
> Guy Gastineau <strings.stringsandstrings@gmail.com> writes:
> 
> > Here it is. I don't think my pgp key is on any keyserver, but I signed
> > it anyway.
> 
> I'm not sure if Emacs has a policy regarding the signing of everyday
> contributions

It does.  From CONTRIBUTE:

  - Commit messages should not contain the "Signed-off-by:" lines that
    are used in some other projects.

> I've added the customary tweaks to the log message if someone wants to
> glance at it (cc. bandali, Lars). Also, question: is there formal
> recordkeeping going on re exempt lines accumulated per individual? And
> if not, is the recommended way to get a tally just `git log --author=`?

I don't think I understand what you are asking here, please elaborate.





^ permalink raw reply	[flat|nested] 18+ messages in thread

* bug#53617: 28.0.90; duplicate checks in erc--switch-to-buffer
       [not found]           ` <83a6fdbulb.fsf@gnu.org>
@ 2022-01-30 15:43             ` J.P.
       [not found]             ` <878rux9ql2.fsf@neverwas.me>
  1 sibling, 0 replies; 18+ messages in thread
From: J.P. @ 2022-01-30 15:43 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: strings.stringsandstrings, larsi, emacs-erc, bandali, 53617

[-- Attachment #1: Type: text/plain, Size: 1676 bytes --]

Eli Zaretskii <eliz@gnu.org> writes:

>> I'm not sure if Emacs has a policy regarding the signing of everyday
>> contributions
>
> It does.  From CONTRIBUTE:
>
>   - Commit messages should not contain the "Signed-off-by:" lines that
>     are used in some other projects.

Thanks. I could certainly use a good reread of CONTRIBUTE. I guess in
this case, I was more confused about what role a PGP-signed patch (like
the OP's) could ever play in workflows that incorporate PGP commit
signing and whether Emacs had a stance on that sort of signing in
general. The first part (I now realize) makes little sense because it's
only committers who sign commits. And so a PGP-signed patch (like a
PGP-signed email) can only get as far as the bug tracker. As for the
second part, PGP-signed commits appear to be relatively rare in Emacs.
Among the most recent 10K or so commits reachable from HEAD, it seems
only around 1% have been signed (list attached).

>> Also, question: is there formal recordkeeping going on re exempt
>> lines accumulated per individual? And if not, is the recommended way
>> to get a tally just `git log --author=`?
>
> I don't think I understand what you are asking here, please elaborate.

Apologies for the unintelligible mumblage. Somehow (believe it or not),
I was trying to ask whether there's a system in place for keeping track
of the number of non-trivial changes a non-paperwork holder has made so
far. By "system" I guess I mean a person in charge of recording such
information or perhaps a table somewhere to consult. But if it's less
formal than all that, I suppose I'll just rely on the git history and
whatever an author self-reports. Thanks.



[-- Attachment #2: recently-signed.log --]
[-- Type: text/plain, Size: 10713 bytes --]

 477:11626f0c0c E Protesilaos Stavrou * admin/MAINTAINERS: Describe Modus themes as externally maintained package
 754:f03d0de26f E Protesilaos Stavrou Update modus-themes to version 2.0.0
1519:030a5c5704 E Protesilaos Stavrou Remove problematic characters from modus-themes.org (bug#52126)
1520:ecf3bf66ba E Protesilaos Stavrou Remove problematic characters from modus-themes.org (bug#52126)
1810:ce33ad8bae E Protesilaos Stavrou Update modus-themes to version 1.7.0
2254:d96de23510 E Jonas Bernoulli * lisp/transient.el: Update to package version v0.3.7-11-g7f5520b3.
2577:3b5de7f991 E Jonas Bernoulli ; lisp/transient.el: Revert some misguided stylistic fixes.
2786:ca3d7234d3 E Amin Bandali Release ERC 5.4.1
2802:88bd6fccf1 E Amin Bandali * doc/misc/erc.texi: Add 'ERCVER' and 'ERCDIST'.
2885:ac06608878 E Amin Bandali Release ERC 5.4
2886:a1a589d07b E Amin Bandali * etc/ERC-NEWS: Announce ERC's addition to GNU ELPA.
2887:6c7947f0a1 E Amin Bandali * etc/ERC-NEWS: Fix outline level for the recent additions.
2888:c480b68644 E Amin Bandali Add ERC entries for 'customize-package-emacs-version-alist'
2890:36a485a1af E Stefan Kangas Obsolete XEmacs compat convention in 'erc-button-press-button'
2891:395273773c E Amin Bandali Revert "Obsolete XEmacs compat convention in erc-button-press-button"
2892:31d60488ac E F. Jason Park Backport: Add ERC version to protocol log
2983:1100fffcd3 E Amin Bandali * lisp/erc/erc.el: Don't error if 'erc-loaddefs' does not exist.
2984:8865fc02ab E Amin Bandali Add 'erc-bug' command for reporting ERC bugs
2985:5afa07919e E Amin Bandali Add 'erc-version' and use it to display ERC version consistently
2986:bc941846d9 E Amin Bandali Small tweaks and improvements to etc/ERC-NEWS
2987:30b5e0a514 E Amin Bandali Add NEWS items for changes to ERC since 5.3 to etc/ERC-NEWS
3091:595e506c82 E Stefan Kangas * lisp/erc/erc.el (erc-user-mode): Set "+i" by default.
3183:94c247d659 E Amin Bandali ; Oops, fix up last commit
3184:88378acbfc E Stefan Kangas Rename arguments of ERC's '/whois' and simplify doc string
3213:dc94ca7b2b E Amin Bandali Add new '/wii' convenience ERC command
3214:9fc1fdcbf3 E Amin Bandali Restore the previous order of ERC's '/whois' arguments
3239:081eb52e4d E Amin Bandali Switch the order of ERC's '/whois' arguments sent to the server
3241:cbb0b5d8d5 E Amin Bandali Unobsolete erc-compat.el
3525:0b98ea5fbe E Jonas Bernoulli No longer raise error when http authentication failed
3564:bc59c98f09 E Amin Bandali Add new '/opme' and '/deopme' convenience ERC commands
3597:62e870691d E Amin Bandali * lisp/erc/erc.el: Add Package-Requires and URL headers.
3598:931a898776 E Amin Bandali * etc/NEWS: Announce update of IRC-related references to point to Libera.Chat.
3631:c6eb114a42 E Olivier Certner ERC: NickServ: Prompt for password last, overall simplifications (bug#46777)
3632:f7ed946874 E Amin Bandali * lisp/erc/erc-button.el (erc-emacswiki-url): Update to shorter address.
3665:7a69fe3bc9 E Philip Kaludercic Merge branch 'feature/rcirc-update'
3689:5ebad79e62 E Philip Kaludercic Fix interactive forms for rcirc-define-command
3690:3405c85ae4 E Philip Kaludercic Unset mode-line-process for all buffers on reconnecting
3691:1e1378699c E Philip Kaludercic Restore rcirc-target if possible
3693:1c3bad8c2e E Philip Kaludercic Display server buffer after connecting
3694:8eb9eb0c41 E Philip Kaludercic Allow for multiple attempts when reconnecting
3695:ec50a368d5 E Philip Kaludercic * rcirc.texi (Hacking and Tweaking): Add missing section to menu
3696:767fa9761f E Philip Kaludercic * rcirc.el (rcirc-server-alist): Add #emacs to default server list
3758:85d0ed097e E Amin Bandali ERC: Use 'string-replace' only on Emacs 28 and later
3759:e20bae005e E Amin Bandali ERC: Use 'string-search' only on Emacs 28 and later
3779:291bcb5973 E Olivier Certner ERC: Track: Fix a perceived minor bug in mode line face selection
3780:3df279aae2 E Olivier Certner ERC: Track: Rewrite 'erc-track-find-face' as 'erc-track-select-mode-line-face'
3781:e4b7fa0500 E Amin Bandali Merge from origin/emacs-27
3782:d7f4cc0974 E Olivier Certner ERC: Track: Clarify documentation on tracked buffers and add references
3783:fb1f0dfec9 E Olivier Certner ERC: Track: Fix documentation of structure of 'erc-modified-channels-alist'
3786:0d350402d8 E Philip Kaludercic * NEWS: Remove empty entry
3787:0712e33588 E Philip Kaludercic * NEWS: Mention rcirc changes
3793:2e24b66079 E Philip Kaludercic * rcirc.texi: Replace defun-rcirc-command with rcirc-define-command
3794:251a9f5fe0 E Philip Kaludercic * rcirc.texi: Document rcirc-track-abbrevate-flag
3795:88b623772b E Philip Kaludercic * rcirc.texi: Document rcirc-nick-filter and rcirc-channel-filter
3796:0d08745806 E Philip Kaludercic * rcirc.texi: Document rcirc-track-ignore-server-buffer-flag
3797:550011ca58 E Philip Kaludercic * rcirc.texi: Document rcirc-omit-responses-after-join
3798:7a89e0f822 E Philip Kaludercic Rename rcirc-omit-after-reconnect to rcirc-omit-after-connect
3818:6d31d5b4b4 E Philip Kaludercic Merge branch 'master' into feature/rcirc-update
3819:a66fd7bb37 E Philip Kaludercic Fix double reconnection bug
3862:2ef6691602 E Philip Kaludercic Add rcirc-track-ignore-server-buffer-flag option
3878:ec0e46d66b E Philip Kaludercic Use fresh symbol for argument list
3879:4a0c0e5606 E Philip Kaludercic Allow /reconnect while connecting
3886:8275f0b117 E Philip Kaludercic Mention list of capabilities that should be implemented
3887:354929a85a E Philip Kaludercic Implement standard-replies capability
3888:659a77a0eb E Philip Kaludercic Connect to server asynchronously
3921:70d459914f E Philip Kaludercic Implement multi-prefix capability
3922:e37f3ce3b4 E Philip Kaludercic Fix rcirc-track-abbrevate-flag documentation
3923:0f1db3dc2b E Philip Kaludercic Store symbols in rcirc-acked-capabilities
3926:008a033bbb E Philip Kaludercic Print value on malformed input
3942:608b2ec9be E Philip Kaludercic Replace with-current-buffer with buffer-local-value where applicable
4011:8761d30da0 E Philip Kaludercic Avoid failing if vc backend doesn't implement ignore-completion-table
4384:c817a34edd E Philip Kaludercic Add new option rcirc-channel-filter
4385:ade9653108 E Philip Kaludercic Add new option rcirc-track-abbrevate-flag
4395:b77f6af24e E Olivier Certner ERC right stamps: also use latest buffer's window's width (Bug#44140)
4439:d50721bf02 E Amin Bandali Merge from origin/emacs-27
4440:72dc602459 E Amin Bandali ; Merge from origin/emacs-27
4441:75ecce4323 E Olivier Certner Unbreak ERC's Ibuffer filter (Bug#44100)
4516:190ea9cd3e E Philip Kaludercic Replace cl-c[ad]+r with regular c[ad]+r
4523:7e13bfd4a8 E Philip Kaludercic Remove removal of text properties from rcirc-buffer-alist keys
4525:fb27708f51 E Philip Kaludercic Fix checkdoc issues
4527:402385393a E Philip Kaludercic Update rcirc-buffer-alist after receiving NICK
4530:262fbe1a47 E Philip Kaludercic Fix TOPIC command
4571:47b5dcdcf5 E Philip Kaludercic Ensure that rcirc-buffer-alist has no text properties
4582:1967b9c474 E Philip Kaludercic Generate no message when activating rcirc-omit-mode
4606:55a19a1da2 E Philip Kaludercic Merge branch 'feature/rcirc-update'
4719:335a5fd173 E Protesilaos Stavrou Update modus-themes to version 1.5.0
4820:77631c2a77 E Philip Kaludercic Add query command removed in 4ff1f66b12
4821:1d73575681 E Philip Kaludercic Fix issues with argument parsing in rcirc-define-command
4842:7a13ddfda0 E Amin Bandali Update a few more IRC-related references to point to Libera.Chat
4843:8d957f2dd8 E Amin Bandali Merge from origin/emacs-27
4844:136b30b0c4 E Amin Bandali ; Merge from origin/emacs-27
4845:5d1cf01d53 E Amin Bandali Merge from origin/emacs-27
4846:348b2aed0c E Amin Bandali Update IRC-related references to point to Libera.Chat
4850:f222fe6163 E Philip Kaludercic * rcirc.el (rcirc-define-command): Mention name of malformed command
4865:124ba9db96 E Jonas Bernoulli * lisp/transient.el: Update to package version 0.3.6.
5266:5a762c946e E Protesilaos Stavrou Remove modus-themes.org build date (bug#48661)
5283:75604f882a E Jonas Bernoulli * lisp/transient.el: Update to package version 0.3.4.
5289:86e4d770a8 E Amin Bandali * lisp/erc/erc-services.el: Fix newly-added Libera.Chat entry (bug#48529).
5486:c38b4a9bef E Amin Bandali Tweak documentation relating to 'erc-tls'
5680:6a03e4cc4f E Amin Bandali * lisp/erc/erc.el: Add past maintainer Michael Olson to Contributors.
5743:87d37e279f E Amin Bandali Fix thinko introduced in the last ERC patch (bug#47788)
5757:344f769491 E Amin Bandali Add support for using a TLS client certificate with 'erc-tls' (bug#47788)
5795:afcdd4cab3 E Jonas Bernoulli Add new library transient.el
6205:f1f351def3 E Mark A. Hershberger Update rnc to use Open Document's Relax-NG schema to version 1.3
7285:42f45e52aa E Basil L. Contovounesios ; Improve defcustom :type in last change.
7298:f7b9b9a85e E Basil L. Contovounesios ; Use American spelling in etc/NEWS.
7415:e1902ac618 E Basil L. Contovounesios Fix recently uncovered 'make check' failures
7454:90bd6d8ba6 E Ted Zlatanov * test/infra/gitlab-ci.yml: Copy newer files to image to build less often.
7459:5d2ebcd896 E Ted Zlatanov * test/infra/gitlab-ci.yml: Revert to always building.
7491:849fe71de7 E Fabrice Bauzac Sort Ibuffer filename/process column as displayed
7505:1248c67484 E Ted Zlatanov * test/infra/gitlab-ci.yml: Bootstrap only from web, schedule, or C-related.
7528:8f4b3b812a E Basil L. Contovounesios Fix ibuffer-mark-by-file-name-regexp abbreviations
7529:bdb9889f78 E Basil L. Contovounesios Use format-prompt in read-regexp.
7542:372694e7c6 E Ted Zlatanov ; * test/infra/gitlab-ci.yml: Merge test-template script into job-template.
7543:1fe135a024 E Ted Zlatanov * test/infra/gitlab-ci.yml: Merge test-template into job-template.
7553:57ae3f29af E Ted Zlatanov test/infra/gitlab-ci.yml: run only for tags and some branches
7556:84e0749b8b E Ted Zlatanov EMBA container build improvements for Emacs build testing.
7564:f45be48ddb E Basil L. Contovounesios ; Remove recent spurious addition in window.el
7582:707ee6afe2 E Ted Zlatanov EMBA infrastructure improvements for Emacs build testing.
7627:25dadca0d1 E Basil L. Contovounesios Hyperlink symbol names without word syntax in Help
7629:5960e9cf57 E Basil L. Contovounesios ; * lisp/custom.el (defcustom): Fix last change.
7737:56556b5f4d E Basil L. Contovounesios Fix build for --enable-checking=structs
7901:c6d5555646 E Amin Bandali Display messages sent using ERC's /say
9107:ca3b199ad5 E Amin Bandali ; * etc/NEWS: Tweak the wording for the newly added entry
9108:ae9f234dd9 E Amin Bandali ; * etc/NEWS: Add entry for my last change
9109:694c82ab1a E Amin Bandali Replace irc.freenode.net with chat.freenode.net

^ permalink raw reply	[flat|nested] 18+ messages in thread

* bug#53617: 28.0.90; duplicate checks in erc--switch-to-buffer
       [not found]             ` <878rux9ql2.fsf@neverwas.me>
@ 2022-01-30 16:00               ` Lars Ingebrigtsen
       [not found]               ` <87bkztb4di.fsf@gnus.org>
  1 sibling, 0 replies; 18+ messages in thread
From: Lars Ingebrigtsen @ 2022-01-30 16:00 UTC (permalink / raw)
  To: J.P.; +Cc: strings.stringsandstrings, emacs-erc, bandali, 53617

"J.P." <jp@neverwas.me> writes:

> Apologies for the unintelligible mumblage. Somehow (believe it or not),
> I was trying to ask whether there's a system in place for keeping track
> of the number of non-trivial changes a non-paperwork holder has made so
> far. By "system" I guess I mean a person in charge of recording such
> information or perhaps a table somewhere to consult. But if it's less
> formal than all that, I suppose I'll just rely on the git history and
> whatever an author self-reports. Thanks.

No, we don't have such a system, unfortunately.  It's somewhat
subjective what counts -- we try to count "lines of code", so whitespace
changes don't count, of course, and other trivial transforms don't count
either.

So as you say -- you just have to look at the commit history and make a
judgement call in these cases.  (Or even better, ask for a copyright
assignment form and then you don't have to count. 😀)

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 18+ messages in thread

* bug#53617: 28.0.90; duplicate checks in erc--switch-to-buffer
       [not found]               ` <87bkztb4di.fsf@gnus.org>
@ 2022-01-30 16:25                 ` Guy Gastineau
  2022-01-31  3:22                 ` Michael Olson
  1 sibling, 0 replies; 18+ messages in thread
From: Guy Gastineau @ 2022-01-30 16:25 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: emacs-erc, bandali, 53617, J.P.

[-- Attachment #1: Type: text/plain, Size: 1302 bytes --]

Yeah, I have no problem with the copyright assignment.  I will look in the
docs to see what I need to give you all for it.

On Sun, Jan 30, 2022 at 11:00 AM Lars Ingebrigtsen <larsi@gnus.org> wrote:

> "J.P." <jp@neverwas.me> writes:
>
> > Apologies for the unintelligible mumblage. Somehow (believe it or not),
> > I was trying to ask whether there's a system in place for keeping track
> > of the number of non-trivial changes a non-paperwork holder has made so
> > far. By "system" I guess I mean a person in charge of recording such
> > information or perhaps a table somewhere to consult. But if it's less
> > formal than all that, I suppose I'll just rely on the git history and
> > whatever an author self-reports. Thanks.
>
> No, we don't have such a system, unfortunately.  It's somewhat
> subjective what counts -- we try to count "lines of code", so whitespace
> changes don't count, of course, and other trivial transforms don't count
> either.
>
> So as you say -- you just have to look at the commit history and make a
> judgement call in these cases.  (Or even better, ask for a copyright
> assignment form and then you don't have to count. 😀)
>
> --
> (domestic pets only, the antidote for overdose, milk.)
>    bloggy blog: http://lars.ingebrigtsen.no
>

[-- Attachment #2: Type: text/html, Size: 1842 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* bug#53617: 28.0.90; duplicate checks in erc--switch-to-buffer
       [not found]               ` <87bkztb4di.fsf@gnus.org>
  2022-01-30 16:25                 ` Guy Gastineau
@ 2022-01-31  3:22                 ` Michael Olson
  2022-01-31  3:30                   ` Emanuel Berg via General discussion about ERC
                                     ` (2 more replies)
  1 sibling, 3 replies; 18+ messages in thread
From: Michael Olson @ 2022-01-31  3:22 UTC (permalink / raw)
  To: Lars Ingebrigtsen
  Cc: emacs-erc, bandali, J.P., 53617, strings.stringsandstrings

[-- Attachment #1: Type: text/plain, Size: 1176 bytes --]

On Sun, Jan 30, 2022 at 11:00 AM Lars Ingebrigtsen <larsi@gnus.org> wrote:

> "J.P." <jp@neverwas.me> writes:
>
> > Apologies for the unintelligible mumblage. Somehow (believe it or not),
> > I was trying to ask whether there's a system in place for keeping track
> > of the number of non-trivial changes a non-paperwork holder has made so
> > far. By "system" I guess I mean a person in charge of recording such
> > information or perhaps a table somewhere to consult. But if it's less
> > formal than all that, I suppose I'll just rely on the git history and
> > whatever an author self-reports. Thanks.
>
> No, we don't have such a system, unfortunately.  It's somewhat
> subjective what counts -- we try to count "lines of code", so whitespace
> changes don't count, of course, and other trivial transforms don't count
> either.


What I'd sometimes do 10+ years ago is keep an AUTHORS file with a list of
who contributed, which files, and (in the case of unassigned contributors)
how many lines so I knew if they were getting close to the limit. I'm not
sure if that would map well to the Emacs repo, maybe a side file like
ERC-AUTHORS, or just kept outside of the repo.

[-- Attachment #2: Type: text/html, Size: 1636 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: bug#53617: 28.0.90; duplicate checks in erc--switch-to-buffer
  2022-01-31  3:22                 ` Michael Olson
@ 2022-01-31  3:30                   ` Emanuel Berg via General discussion about ERC
  2022-01-31  3:38                     ` Emanuel Berg via Bug reports for GNU Emacs, the Swiss army knife of text editors
  2022-01-31  5:35                   ` J.P.
  2022-01-31 12:31                   ` Eli Zaretskii
  2 siblings, 1 reply; 18+ messages in thread
From: Emanuel Berg via General discussion about ERC @ 2022-01-31  3:30 UTC (permalink / raw)
  To: emacs-erc; +Cc: bug-gnu-emacs

Michael Olson wrote:

>>> Apologies for the unintelligible mumblage.
>>> Somehow (believe it or not), I was trying to ask whether
>>> there's a system in place for keeping track of the number
>>> of non-trivial changes a non-paperwork holder has made so
>>> far. By "system" I guess I mean a person in charge of
>>> recording such information or perhaps a table somewhere to
>>> consult. But if it's less formal than all that, I suppose
>>> I'll just rely on the git history and whatever an author
>>> self-reports. Thanks.
>>
>> No, we don't have such a system, unfortunately.
>> It's somewhat subjective what counts -- we try to count
>> "lines of code", so whitespace changes don't count, of
>> course, and other trivial transforms don't count either.
>
> What I'd sometimes do 10+ years ago is keep an AUTHORS file
> with a list of who contributed, which files, and (in the
> case of unassigned contributors) how many lines so I knew if
> they were getting close to the limit. I'm not sure if that
> would map well to the Emacs repo, maybe a side file like
> ERC-AUTHORS, or just kept outside of the repo.

I've seen a git command do something similar for the Emacs
source ... posted on gmane.emacs.help not so long ago.

-- 
underground experts united
https://dataswamp.org/~incal




^ permalink raw reply	[flat|nested] 18+ messages in thread

* bug#53617: 28.0.90; duplicate checks in erc--switch-to-buffer
  2022-01-31  3:30                   ` Emanuel Berg via General discussion about ERC
@ 2022-01-31  3:38                     ` Emanuel Berg via Bug reports for GNU Emacs, the Swiss army knife of text editors
  0 siblings, 0 replies; 18+ messages in thread
From: Emanuel Berg via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2022-01-31  3:38 UTC (permalink / raw)
  To: 53617; +Cc: emacs-erc

>>> No, we don't have such a system, unfortunately.
>>> It's somewhat subjective what counts -- we try to count
>>> "lines of code", so whitespace changes don't count, of
>>> course, and other trivial transforms don't count either.
>>
>> What I'd sometimes do 10+ years ago is keep an AUTHORS file
>> with a list of who contributed, which files, and (in the
>> case of unassigned contributors) how many lines so I knew if
>> they were getting close to the limit. I'm not sure if that
>> would map well to the Emacs repo, maybe a side file like
>> ERC-AUTHORS, or just kept outside of the repo.
>
> I've seen a git command do something similar for the Emacs
> source ... posted on gmane.emacs.help not so long ago.

Didn't find it, but I think it was this:

$ git shortlog -s --all | sort -n -r | head -n 10
 20708	Richard M. Stallman
 12586	Glenn Morris
 11454	Eli Zaretskii
  9153	Stefan Monnier
  6786	Kenichi Handa
  6601	Paul Eggert
  6056	Chong Yidong
  5019	Gerd Moellmann
  4703	Juanma Barranquero
  4049	Lars Ingebrigtsen

-- 
underground experts united
https://dataswamp.org/~incal






^ permalink raw reply	[flat|nested] 18+ messages in thread

* bug#53617: 28.0.90; duplicate checks in erc--switch-to-buffer
  2022-01-31  3:22                 ` Michael Olson
  2022-01-31  3:30                   ` Emanuel Berg via General discussion about ERC
@ 2022-01-31  5:35                   ` J.P.
  2022-01-31 12:31                   ` Eli Zaretskii
  2 siblings, 0 replies; 18+ messages in thread
From: J.P. @ 2022-01-31  5:35 UTC (permalink / raw)
  To: Michael Olson
  Cc: emacs-erc, bandali, 53617, strings.stringsandstrings,
	Lars Ingebrigtsen

Michael Olson <mwolson@gnu.org> writes:

> What I'd sometimes do 10+ years ago is keep an AUTHORS file with a
> list of who contributed, which files, and (in the case of unassigned
> contributors) how many lines so I knew if they were getting close to
> the limit. I'm not sure if that would map well to the Emacs repo,
> maybe a side file like ERC-AUTHORS, or just kept outside of the repo.

Hi Michael (such an honor to hear from a true ERC OG!),

In the case of an unassigned contributor (a term I'm stealing BTW
because it's vastly superior to my unpronounceable "non-paperwork
holder"), I guess we'd still have to keep tabs on contributions across
*all* of Emacs. But as a starting point for a more intensive inquiry,
it's a fine solution. And I guess we'd likely just leave that sort of
thing outside the repo, for now. Anyway, thanks so much for your
insights and for all your work back in the day! (And also to Lars for
the low down/lay of the land.)





^ permalink raw reply	[flat|nested] 18+ messages in thread

* bug#53617: 28.0.90; duplicate checks in erc--switch-to-buffer
  2022-01-31  3:22                 ` Michael Olson
  2022-01-31  3:30                   ` Emanuel Berg via General discussion about ERC
  2022-01-31  5:35                   ` J.P.
@ 2022-01-31 12:31                   ` Eli Zaretskii
  2 siblings, 0 replies; 18+ messages in thread
From: Eli Zaretskii @ 2022-01-31 12:31 UTC (permalink / raw)
  To: Michael Olson
  Cc: emacs-erc, bandali, jp, 53617, strings.stringsandstrings, larsi

> From: Michael Olson <mwolson@gnu.org>
> Date: Sun, 30 Jan 2022 22:22:05 -0500
> Cc: "J.P." <jp@neverwas.me>, strings.stringsandstrings@gmail.com, 
> 	Eli Zaretskii <eliz@gnu.org>, emacs-erc@gnu.org, bandali@gnu.org, 53617@debbugs.gnu.org
> 
> What I'd sometimes do 10+ years ago is keep an AUTHORS file with a list of who contributed, which files,
> and (in the case of unassigned contributors) how many lines so I knew if they were getting close to the limit.
> I'm not sure if that would map well to the Emacs repo, maybe a side file like ERC-AUTHORS, or just kept
> outside of the repo.

This is very tedious, and moreover, ephemeral: the threshold of a
dozen or so non-trivial lines is crossed only once and usually very
quickly; once it is crossed, it can never be crossed back (well,
except in the rare case that a person changes employers and is again
without an assignment).  So this kind of bookkeeping requires a lot of
clerical  work for little or no gain.





^ permalink raw reply	[flat|nested] 18+ messages in thread

* bug#53617: 28.0.90; duplicate checks in erc--switch-to-buffer
       [not found]         ` <878ruyqf0b.fsf@neverwas.me>
                             ` (2 preceding siblings ...)
       [not found]           ` <83a6fdbulb.fsf@gnu.org>
@ 2022-03-14 13:33           ` J.P.
  2022-03-19 10:08             ` J.P.
  3 siblings, 1 reply; 18+ messages in thread
From: J.P. @ 2022-03-14 13:33 UTC (permalink / raw)
  To: Guy Gastineau; +Cc: larsi, emacs-erc, bandali, 53617

[-- Attachment #1: Type: text/plain, Size: 339 bytes --]

"J.P." <jp@neverwas.me> writes:

> I've added the customary tweaks to the log message if someone wants to
> glance at it (cc. bandali, Lars).

This now includes a unit test.

Unless anyone objects or I'm preempted, I'll add this to 29 on or around
March 19th (~5 days from now), and leave ERC's version number unchanged
at 5.4.1. Thanks.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-Remove-redundant-checks-in-erc-switch-to-buffer.patch --]
[-- Type: text/x-patch, Size: 1298 bytes --]

From 751e93d57ac00399dfb528b270fe753a3e8cfc91 Mon Sep 17 00:00:00 2001
From: Guy Gastineau <strings.stringsandstrings@gmail.com>
Date: Fri, 28 Jan 2022 23:12:42 -0500
Subject: [PATCH 1/2] Remove redundant checks in erc--switch-to-buffer

* lisp/erc/erc.el (erc--switch-to-buffer): Commit
f925fc93bac41d7622d1af927e33b0e738ff55b0 "Add `predicate' arg to
`read-buffer' and use it for erc-iswitchb" meant to remove this, but
it was left behind. (Bug#53617).

Copyright-paperwork-exempt: yes
---
 lisp/erc/erc.el | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el
index 9ee8d38b02..52fe106f2d 100644
--- a/lisp/erc/erc.el
+++ b/lisp/erc/erc.el
@@ -1761,12 +1761,7 @@ erc--switch-to-buffer
 		 (lambda (bufname)
 		   (let ((buf (if (consp bufname)
 				  (cdr bufname) (get-buffer bufname))))
-		     (when buf
-		       (erc--buffer-p buf (lambda () t) proc)
-		       (with-current-buffer buf
-			 (and (derived-mode-p 'erc-mode)
-			      (or (null proc)
-				  (eq proc erc-server-process))))))))))
+                     (and buf (erc--buffer-p buf (lambda () t) proc)))))))
 (defun erc-switch-to-buffer (&optional arg)
   "Prompt for an ERC buffer to switch to.
 When invoked with prefix argument, use all ERC buffers.  Without
-- 
2.35.1


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #3: 0002-DROP-ME-Add-eventual-unit-test-for-erc-switch-to-buf.patch --]
[-- Type: text/x-patch, Size: 3656 bytes --]

From d0c6ef217a18c98e18e4c29e2cba2e9ab63af970 Mon Sep 17 00:00:00 2001
From: "F. Jason Park" <jp@neverwas.me>
Date: Sun, 13 Mar 2022 22:39:36 -0700
Subject: [PATCH 2/2] [DROP ME] Add eventual unit test for
 erc--switch-to-buffer

* test/lisp/erc/erc-tests.el (erc--switch-to-buffer): Add regression
test for Bug#53617.  Prefer postponing addition until after #48598.
---
 test/lisp/erc/erc-tests.el | 73 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 73 insertions(+)

diff --git a/test/lisp/erc/erc-tests.el b/test/lisp/erc/erc-tests.el
index 5603e76454..a14c4c0460 100644
--- a/test/lisp/erc/erc-tests.el
+++ b/test/lisp/erc/erc-tests.el
@@ -114,6 +114,79 @@ erc-with-all-buffers-of-server
     (should (get-buffer "#spam"))
     (kill-buffer "#spam")))
 
+;; DELETE ME BEG (just a demo, for now)
+(require 'ert-x)
+(defvar erc-modified-channels-alist)
+
+(ert-deftest erc--switch-to-buffer ()
+  (unless (version< "28" emacs-version)
+    (ert-skip "Depends on symbol `minibuffer-quit'"))
+
+  (let ((proc (start-process "aNet" (current-buffer) "true"))
+        (erc-modified-channels-alist `(("fake") (,(messages-buffer))))
+        ;;
+        erc-kill-channel-hook erc-kill-server-hook erc-kill-buffer-hook)
+
+    (with-current-buffer (get-buffer-create "server")
+      (erc-mode)
+      (set-process-buffer (setq erc-server-process proc) (current-buffer))
+      (with-current-buffer (get-buffer-create "#chan")
+        (erc-mode)
+        (setq erc-server-process proc))
+      (with-current-buffer (get-buffer-create "#foo")
+        (erc-mode)
+        (setq erc-server-process proc))
+
+      (ert-info ("Channel #chan selectable from server buffer")
+        (ert-simulate-keys (list ?# ?c ?h ?a ?n ?\C-m)
+          (should (string= "#chan" (erc--switch-to-buffer))))))
+
+    (ert-info ("Channel #foo selectable from non-ERC buffer")
+      (ert-simulate-keys (list ?# ?f ?o ?o ?\C-m)
+        (should (string= "#foo" (erc--switch-to-buffer)))))
+
+    (ert-info ("Default selectable")
+      (ert-simulate-keys (list ?\C-m)
+        (should (string= "*Messages*" (erc--switch-to-buffer)))))
+
+    ;; Can't use `should-error' here because `minibuffer-quit' derives
+    ;; from `quit' instead of `error', and only the latter is trapped.
+    (ert-info ("Extant but non-ERC buffer not selectable")
+      (get-buffer-create "#fake") ; not ours
+      (let (ran)
+        (condition-case s
+            (ert-simulate-keys (list ?# ?f ?a ?k ?e ?\C-m)
+              (erc--switch-to-buffer))
+          (minibuffer-quit (setq ran s)))
+        (should (equal ran '(minibuffer-quit)))))
+
+    (with-current-buffer (get-buffer-create "other")
+      (erc-mode)
+      (setq erc-server-process
+            (start-process "bNet" (current-buffer) "true")))
+
+    (ert-info ("Foreign ERC buffer not selectable")
+      (let (ran)
+        (condition-case s
+            (ert-simulate-keys (list ?o ?t ?h ?e ?r ?\C-m)
+              (with-current-buffer "server"
+                (erc--switch-to-buffer)))
+          (minibuffer-quit (setq ran s)))
+        (should (equal ran '(minibuffer-quit)))))
+
+    (ert-info ("Any ERC-buffer selectable from non-ERC buffer")
+      (should-not (eq major-mode 'erc-mode))
+      (ert-simulate-keys (list ?o ?t ?h ?e ?r ?\C-m)
+        (should (string= "other" (erc--switch-to-buffer)))))
+
+    (kill-buffer "server")
+    (kill-buffer "other")
+    (kill-buffer "#chan")
+    (kill-buffer "#foo")
+    (kill-buffer "#fake")))
+
+;; DELETE ME END (just a demo, for now)
+
 (ert-deftest erc-lurker-maybe-trim ()
   (let (erc-lurker-trim-nicks
         (erc-lurker-ignore-chars "_`"))
-- 
2.35.1


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* bug#53617: 28.0.90; duplicate checks in erc--switch-to-buffer
  2022-03-14 13:33           ` J.P.
@ 2022-03-19 10:08             ` J.P.
  0 siblings, 0 replies; 18+ messages in thread
From: J.P. @ 2022-03-19 10:08 UTC (permalink / raw)
  To: Guy Gastineau; +Cc: larsi, emacs-erc, bandali, 53617

"J.P." <jp@neverwas.me> writes:

> This now includes a unit test.

Sorry about the test failure, people. Fixed now (^_^;) [1].

> Unless anyone objects or I'm preempted, I'll add this to 29 on or
> around March 19th

Done. Thanks. Closing.

P.S. Guy, when you get your paperwork sorted, don't forget about ERC!


[1] https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=2f1fbf20
    https://emba.gnu.org/emacs/emacs/-/jobs/41710





^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2022-03-19 10:08 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-29  0:10 bug#53617: 28.0.90; duplicate checks in erc--switch-to-buffer Guy Gastineau
2022-01-29  3:07 ` J.P.
2022-01-29  3:13   ` Guy Gastineau
2022-01-29  3:30     ` J.P.
2022-01-29  4:29       ` Guy Gastineau
2022-01-29 23:49         ` bug#53617: " J.P.
     [not found]         ` <878ruyqf0b.fsf@neverwas.me>
2022-01-30  2:25           ` Guy Gastineau
2022-01-30  6:34           ` Eli Zaretskii
     [not found]           ` <83a6fdbulb.fsf@gnu.org>
2022-01-30 15:43             ` J.P.
     [not found]             ` <878rux9ql2.fsf@neverwas.me>
2022-01-30 16:00               ` Lars Ingebrigtsen
     [not found]               ` <87bkztb4di.fsf@gnus.org>
2022-01-30 16:25                 ` Guy Gastineau
2022-01-31  3:22                 ` Michael Olson
2022-01-31  3:30                   ` Emanuel Berg via General discussion about ERC
2022-01-31  3:38                     ` Emanuel Berg via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-01-31  5:35                   ` J.P.
2022-01-31 12:31                   ` Eli Zaretskii
2022-03-14 13:33           ` J.P.
2022-03-19 10:08             ` J.P.

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).