send-email: move "hooks_path" invocation to git-send-email.perl

Move the newly added "hooks_path" API in Git.pm to its only user in git-send-email.perl. This was added in c8243933c74 (git-send-email: Respect core.hooksPath setting, 2021-03-23), meaning that it hasn't yet made it into a non-rc release of git. The consensus with Git.pm is that we need to be considerate of out-of-tree users who treat it as a public documented interface. We should therefore be less willing to add new functionality to it, least we be stuck supporting it after our own uses for it disappear. In this case the git-send-email.perl hook invocation will probably be replaced by a future "git hook run" command, and in the commit preceding this one the "hooks_path" become nothing but a trivial wrapper for "rev-parse --git-path hooks" anyway (with no Cwd::abs_path() call), so let's just inline this command in git-send-email.perl itself. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Ævar Arnfjörð Bjarmason committed May 26, 2021 at 13:21 UTC 7cbc0455cc07702c5eeff1062c7e2a820758714f
2 files changed +2 -13
git-send-email.perl
+2 -1
@@ -1949,7 +1949,8 @@ sub validate_patch {
1949 my ($fn, $xfer_encoding) = @_;
1950
1951 if ($repo) {
1952 - my $validate_hook = catfile($repo->hooks_path(),
1952 + my $hooks_path = $repo->command_oneline('rev-parse', '--git-path', 'hooks');
1953 + my $validate_hook = catfile($hooks_path,
1954 'sendemail-validate');
1955 my $hook_error;
1956 if (-x $validate_hook) {
perl/Git.pm
-12
@@ -619,18 +619,6 @@ Return path to the git repository. Must be called on a repository instance.
619
620 sub repo_path { $_[0]->{opts}->{Repository} }
621
622 -=item hooks_path ()
623 -
624 -Return path to the hooks directory. Must be called on a repository instance.
625 -
626 -=cut
627 -
628 -sub hooks_path {
629 - my ($self) = @_;
630 -
631 - my $dir = $self->command_oneline('rev-parse', '--git-path', 'hooks');
632 - return $dir;
633 -}
622
623 =item wc_path ()
624