Subject: bug#54977: 29.0.50; Customising eshell-modules-list means you won't get new default entries

From: Eli Zaretskii <[email-masked]>
Date: Sun, 17 Apr 2022 08:28:08 +0300

> From: Sean Whitton <[email-masked]>
> Date: Sat, 16 Apr 2022 13:55:22 -0700
> 
> Suppose that you use the customisation interface to enable the
> eshell-rebind module, and save the result in your init.  Now upstream
> Emacs gains a new on-by-default module, e.g. the recently added
> em-extpipe.  While everyone who hasn't customised eshell-modules-list
> gets the new module automatically, you'll have to customise the variable
> again, and you can't even just tick a box to add it, as with the other
> truly optional modules, but must manually insert it at the end of the
> list.  This is no good.
> 
> How about using two separate defcustoms for these two kinds of entry?

One other idea is to have the default modules not mentioned
explicitly, but instead have some kind of placeholder which stands for
all the default modules.  Similar to some path variables that treat an
empty or nil list member as standing for the default value.