On Thu, Sep 02 2021, Junio C Hamano wrote: > Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> writes: > >> Remove dead shell code in git-sh-setup, inspired by parallel >> discussion on another topic (but the two don't conflict): >> https://lore.kernel.org/git/87lf4f9gre.fsf@xxxxxxxxxxxxxxxxxxx/ >> >> The last two patches were picked from a dropped series of mine >> submitted earlier this year, it was dropped because of other more >> complex patches that I haven't included here: >> https://lore.kernel.org/git/20210311001447.28254-1-avarab@xxxxxxxxx/ >> >> Ævar Arnfjörð Bjarmason (9): >> git-sh-setup: remove unused set_reflog_action() function >> git-sh-setup: remove unused git_editor() function >> git-sh-setup: remove unused git_pager() function >> git-sh-setup: remove unused sane_egrep() function >> git-sh-setup: remove unused require_work_tree_exists() function >> git-sh-setup: move create_virtual_base() to mergetools/p4merge >> git-sh-setup: move peel_committish() function to git-subtree.sh >> git-bisect: remove unused SHA-1 $x40 shell variable >> test-lib: remove unused $_x40 and $_z40 variables > > Was "unused" above decided based solely on the presence of in-tree > users? If that is the case, I do not think we want to take these > sh-setup changes. I should have remembered to reference the earlier discussion, but I think we had this exact discussion around a year ago when I submitted patches to remove git-parse-remote.sh, and decided this direction was OK. See a89a2fbfccd (parse-remote: remove this now-unused library, 2020-11-14) and the thread starting at <20201111173738.GB9902@xxxxxxxxxxxxxxxxxxxxxxx>: https://lore.kernel.org/git/20201111173738.GB9902@xxxxxxxxxxxxxxxxxxxxxxx/ You'll know better what you meant, but I interpreted the docs you added for git-sh-setup in 850844e28f7 (Documentation/git-sh-setup.txt: programmer's docs, 2007-01-17) as a guide for in-tree porcelain scripts. As noted in my recently sent <87lf4f9gre.fsf@xxxxxxxxxxxxxxxxxxx> (https://lore.kernel.org/git/87lf4f9gre.fsf@xxxxxxxxxxxxxxxxxxx/) the eventual goal I have in mind here is to get rid of git-sh-i18n.sh. If we're set on maintaining these shell libraries indefinitely even after in-tree users have gone away that pretty much means we can't do that, which would be unfortunate. We continue paying for quite a bit of technical debt to extend certain parts of core C git functionality to *.sh and *.perl.