Re: [PATCH 0/9] remove dead shell code
From: Ævar Arnfjörð Bjarmason <hidden>
Date: 2021-09-02 22:31:35
On Thu, Sep 02 2021, Junio C Hamano wrote:
Ævar Arnfjörð Bjarmason [off-list ref] writes:quoted
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@evledraar.gmail.com/ (local) 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@gmail.com/ (local) Æ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 variablesWas "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 [ref]: https://lore.kernel.org/git/20201111173738.GB9902@coredump.intra.peff.net/ (local) 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 [ref] (https://lore.kernel.org/git/87lf4f9gre.fsf@evledraar.gmail.com/ (local)) 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.