Subject: Re: [PATCH v3 5/6] whatchanged: remove when built with WITH_BREAKING_CHANGES

From: Patrick Steinhardt <[email-masked]>
Date: Mon, 5 May 2025 08:56:12 +0200

On Fri, May 02, 2025 at 05:58:13PM -0700, Junio C Hamano wrote:
> As we made "git whatchanged" require "--i-still-use-this" and asked
> the users to report if they still want to use it, the logical next
> step is to allow us build Git without "whatchanged" to prepare for
> its eventual removal.
> 
> If we were to follow the pattern established in 8ccc75c2 (remote:
> announce removal of "branches/" and "remotes/", 2025-01-22), we can
> do this together with the documentation update to officially list
> that the command will be removed in the BreakingChanges document,
> but let's just keep the changes separate just in case we want to
> proceed a bit slower.

We'd also need to adjust Meson so that it doesn't install the
documentation anymore. So something like the below (untested) patch.

Patrick

diff --git a/Documentation/Makefile b/Documentation/Makefile
index b109d25e9c8..815b0334e53 100644
--- a/Documentation/Makefile
+++ b/Documentation/Makefile
@@ -510,7 +510,7 @@ lint-docs-meson:
 	awk "/^manpages = {$$/ {flag=1 ; next } /^}$$/ { flag=0 } flag { gsub(/^  \047/, \"\"); gsub(/\047 : [157],\$$/, \"\"); print }" meson.build | \
 		grep -v -e '#' -e '^$$' | \
 		sort >tmp-meson-diff/meson.adoc && \
-	ls git*.adoc scalar.adoc | grep -v -e git-bisect-lk2009.adoc -e git-pack-redundant.adoc -e git-tools.adoc >tmp-meson-diff/actual.adoc && \
+	ls git*.adoc scalar.adoc | grep -v -e git-bisect-lk2009.adoc -e git-pack-redundant.adoc -e git-whatchanged.adoc -e git-tools.adoc >tmp-meson-diff/actual.adoc && \
 	if ! cmp tmp-meson-diff/meson.adoc tmp-meson-diff/actual.adoc; then \
 		echo "Meson man pages differ from actual man pages:"; \
 		diff -u tmp-meson-diff/meson.adoc tmp-meson-diff/actual.adoc; \
diff --git a/Documentation/meson.build b/Documentation/meson.build
index 1433acfd310..2fe1a1369d4 100644
--- a/Documentation/meson.build
+++ b/Documentation/meson.build
@@ -158,7 +158,6 @@ manpages = {
   'git-verify-tag.adoc' : 1,
   'git-version.adoc' : 1,
   'git-web--browse.adoc' : 1,
-  'git-whatchanged.adoc' : 1,
   'git-worktree.adoc' : 1,
   'git-write-tree.adoc' : 1,
   'git.adoc' : 1,
@@ -207,6 +206,7 @@ manpages = {
 
 manpages_breaking_changes = {
   'git-pack-redundant.adoc' : 1,
+  'git-whatchanged.adoc' : 1,
 }
 
 if not get_option('breaking_changes')