diff --git a/0001-add-p-fix-counting-empty-context-lines-in-edited-pat.patch b/0001-add-p-fix-counting-empty-context-lines-in-edited-pat.patch new file mode 100644 index 0000000..6d36fe5 --- /dev/null +++ b/0001-add-p-fix-counting-empty-context-lines-in-edited-pat.patch @@ -0,0 +1,99 @@ +From 5be233541a4fc2e395087fe51a30a3664165e8bc Mon Sep 17 00:00:00 2001 +From: Phillip Wood +Date: Fri, 1 Jun 2018 18:46:44 +0100 +Subject: [PATCH] add -p: fix counting empty context lines in edited patches + +recount_edited_hunk() introduced in commit 2b8ea7f3c7 ("add -p: +calculate offset delta for edited patches", 2018-03-05) required all +context lines to start with a space, empty lines are not counted. This +was intended to avoid any recounting problems if the user had +introduced empty lines at the end when editing the patch. However this +introduced a regression into 'git add -p' as it seems it is common for +editors to strip the trailing whitespace from empty context lines when +patches are edited thereby introducing empty lines that should be +counted. 'git apply' knows how to deal with such empty lines and POSIX +states that whether or not there is an space on an empty context line +is implementation defined [1]. + +Fix the regression by counting lines consist solely of a newline as +well as lines starting with a space as context lines and add a test to +prevent future regressions. + +[1] http://pubs.opengroup.org/onlinepubs/9699919799/utilities/diff.html + +Reported-by: Mahmoud Al-Qudsi +Reported-by: Oliver Joseph Ash +Reported-by: Jeff Felchner +Signed-off-by: Phillip Wood +--- + git-add--interactive.perl | 2 +- + t/t3701-add-interactive.sh | 43 ++++++++++++++++++++++++++++++++++++++ + 2 files changed, 44 insertions(+), 1 deletion(-) + +diff --git a/git-add--interactive.perl b/git-add--interactive.perl +index c1f52e457f..befbe8c749 100755 +--- a/git-add--interactive.perl ++++ b/git-add--interactive.perl +@@ -1055,7 +1055,7 @@ sub recount_edited_hunk { + $o_cnt++; + } elsif ($mode eq '+') { + $n_cnt++; +- } elsif ($mode eq ' ') { ++ } elsif ($mode eq ' ' or $_ eq "\n") { + $o_cnt++; + $n_cnt++; + } +diff --git a/t/t3701-add-interactive.sh b/t/t3701-add-interactive.sh +index b170fb02b8..3e9139dca8 100755 +--- a/t/t3701-add-interactive.sh ++++ b/t/t3701-add-interactive.sh +@@ -175,6 +175,49 @@ test_expect_success 'real edit works' ' + diff_cmp expected output + ' + ++test_expect_success 'setup file' ' ++ test_write_lines a "" b "" c >file && ++ git add file && ++ test_write_lines a "" d "" c >file ++' ++ ++test_expect_success 'setup patch' ' ++ SP=" " && ++ NULL="" && ++ cat >patch <<-EOF ++ @@ -1,4 +1,4 @@ ++ a ++ $NULL ++ -b ++ +f ++ $SP ++ c ++ EOF ++' ++ ++test_expect_success 'setup expected' ' ++ cat >expected <<-EOF ++ diff --git a/file b/file ++ index b5dd6c9..f910ae9 100644 ++ --- a/file ++ +++ b/file ++ @@ -1,5 +1,5 @@ ++ a ++ $SP ++ -f ++ +d ++ $SP ++ c ++ EOF ++' ++ ++test_expect_success 'edit can strip spaces from empty context lines' ' ++ test_write_lines e n q | git add -p 2>error && ++ test_must_be_empty error && ++ git diff >output && ++ diff_cmp expected output ++' ++ + test_expect_success 'skip files similarly as commit -a' ' + git reset && + echo file >.gitignore && diff --git a/0001-daemon.c-fix-condition-for-redirecting-stderr.patch b/0001-daemon.c-fix-condition-for-redirecting-stderr.patch new file mode 100644 index 0000000..7afee92 --- /dev/null +++ b/0001-daemon.c-fix-condition-for-redirecting-stderr.patch @@ -0,0 +1,30 @@ +From e67d906d735166f2068f1e4cc393220483a97f30 Mon Sep 17 00:00:00 2001 +From: Lucas Werkmeister +Date: Wed, 4 Apr 2018 00:13:07 +0200 +Subject: [PATCH] daemon.c: fix condition for redirecting stderr + +Since the --log-destination option was added in 0c591cacb ("daemon: add +--log-destination=(stderr|syslog|none)", 2018-02-04) with the explicit +goal of allowing logging to stderr when running in inetd mode, we should +not always redirect stderr to /dev/null in inetd mode, but rather only +when stderr is not being used for logging. + +Signed-off-by: Lucas Werkmeister +Signed-off-by: Junio C Hamano +--- + daemon.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/daemon.c b/daemon.c +index fb538e3678997..7857169055385 100644 +--- a/daemon.c ++++ b/daemon.c +@@ -1462,7 +1462,7 @@ int cmd_main(int argc, const char **argv) + die("base-path '%s' does not exist or is not a directory", + base_path); + +- if (inetd_mode) { ++ if (log_destination != LOG_DESTINATION_STDERR) { + if (!freopen("/dev/null", "w", stderr)) + die_errno("failed to redirect stderr to /dev/null"); + } diff --git a/0001-git-svn-avoid-warning-on-undef-readline.patch b/0001-git-svn-avoid-warning-on-undef-readline.patch new file mode 100644 index 0000000..a274887 --- /dev/null +++ b/0001-git-svn-avoid-warning-on-undef-readline.patch @@ -0,0 +1,49 @@ +From 51db2715876580acdb28b17079c9f6cb784da849 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=C3=86var=20Arnfj=C3=B6r=C3=B0=20Bjarmason?= + +Date: Fri, 6 Apr 2018 13:15:14 +0000 +Subject: [PATCH] git-svn: avoid warning on undef readline() +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Change code in Git.pm that sometimes calls chomp() on undef to only do +so the value is defined. + +This code has been chomping undef values ever since it was added in +b26098fc2f ("git-svn: reduce scope of input record separator change", +2016-10-14), but started warning due to the introduction of "use +warnings" to Git.pm in my f0e19cb7ce ("Git.pm: add the "use warnings" +pragma", 2018-02-25) released with 2.17.0. + +Since this function will return undef in those cases it's still +possible that the code using it will warn if it does a chomp of its +own, as the code added in b26098fc2f ("git-svn: reduce scope of input +record separator change", 2016-10-14) might do, but since git-svn has +"use warnings" already that's clearly not a codepath that's going to +warn. + +See https://public-inbox.org/git/86h8oobl36.fsf@phe.ftfl.ca/ for the +original report. + +Reported-by: Joseph Mingrone +Signed-off-by: Ævar Arnfjörð Bjarmason +Improved-by: Eric Wong +Signed-off-by: Junio C Hamano +--- + perl/Git.pm | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/perl/Git.pm b/perl/Git.pm +index d2c5a8d238b87..d453e4b83b827 100644 +--- a/perl/Git.pm ++++ b/perl/Git.pm +@@ -549,7 +549,7 @@ sub get_record { + my ($fh, $rs) = @_; + local $/ = $rs; + my $rec = <$fh>; +- chomp $rec if defined $rs; ++ chomp $rec if defined $rec; + $rec; + } + diff --git a/0001-packfile-correct-zlib-buffer-handling.patch b/0001-packfile-correct-zlib-buffer-handling.patch new file mode 100644 index 0000000..94b646e --- /dev/null +++ b/0001-packfile-correct-zlib-buffer-handling.patch @@ -0,0 +1,38 @@ +From b611396e97cba09c7e1cf900190cf1a9e922546e Mon Sep 17 00:00:00 2001 +From: Jeremy Linton +Date: Wed, 13 Jun 2018 09:22:07 -0500 +Subject: [PATCH] packfile: correct zlib buffer handling + +The buffer being passed to zlib includes a NUL terminator that git +needs to keep in place. unpack_compressed_entry() attempts to detect +the case that the source buffer hasn't been fully consumed by +checking to see if the destination buffer has been over consumed. + +This causes a problem, that more recent zlib patches have been +poisoning the unconsumed portions of the buffer which overwrites +the NUL byte, while correctly returning length and status. + +Let's place the NUL at the end of the buffer after inflate returns +to assure that it doesn't result in problems for git even if its +been overwritten by zlib. + +Signed-off-by: Jeremy Linton +Signed-off-by: Junio C Hamano +--- + packfile.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/packfile.c b/packfile.c +index 4a5fe7ab18838..d55569921793e 100644 +--- a/packfile.c ++++ b/packfile.c +@@ -1422,6 +1422,9 @@ static void *unpack_compressed_entry(struct packed_git *p, + return NULL; + } + ++ /* versions of zlib can clobber unconsumed portion of outbuf */ ++ buffer[size] = '\0'; ++ + return buffer; + } + diff --git a/0001-rev-parse-check-lookup-ed-commit-references-for-NULL.patch b/0001-rev-parse-check-lookup-ed-commit-references-for-NULL.patch new file mode 100644 index 0000000..7a78bff --- /dev/null +++ b/0001-rev-parse-check-lookup-ed-commit-references-for-NULL.patch @@ -0,0 +1,68 @@ +From 3aa1681c8661b2f798277a55ab33ce7ba787288c Mon Sep 17 00:00:00 2001 +From: Elijah Newren +Date: Wed, 23 May 2018 23:27:33 -0700 +Subject: [PATCH] rev-parse: check lookup'ed commit references for NULL + +Commits 2122f8b963d4 ("rev-parse: Add support for the ^! and ^@ syntax", +2008-07-26) and 3dd4e7320d ("Teach rev-parse the ... syntax.", 2006-07-04) +taught rev-parse new syntax, and used lookup_commit_reference() as part of +their logic. Neither usage checked the returned commit to see if it was +non-NULL before using it. Check for NULL and ensure an appropriate error +is reported to the user. + +Reported by Florian Weimer and Todd Zullinger. + +Helped-by: Jeff King +Signed-off-by: Elijah Newren +--- + builtin/rev-parse.c | 8 ++++++-- + t/t6101-rev-parse-parents.sh | 8 ++++++++ + 2 files changed, 14 insertions(+), 2 deletions(-) + +diff --git a/builtin/rev-parse.c b/builtin/rev-parse.c +index a1e680b5e9..a0a0ace38d 100644 +--- a/builtin/rev-parse.c ++++ b/builtin/rev-parse.c +@@ -282,6 +282,10 @@ static int try_difference(const char *arg) + struct commit *a, *b; + a = lookup_commit_reference(&start_oid); + b = lookup_commit_reference(&end_oid); ++ if (!a || !b) { ++ *dotdot = '.'; ++ return 0; ++ } + exclude = get_merge_bases(a, b); + while (exclude) { + struct commit *commit = pop_commit(&exclude); +@@ -328,12 +332,12 @@ static int try_parent_shorthands(const char *arg) + return 0; + + *dotdot = 0; +- if (get_oid_committish(arg, &oid)) { ++ if (get_oid_committish(arg, &oid) || ++ !(commit = lookup_commit_reference(&oid))) { + *dotdot = '^'; + return 0; + } + +- commit = lookup_commit_reference(&oid); + if (exclude_parent && + exclude_parent > commit_list_count(commit->parents)) { + *dotdot = '^'; +diff --git a/t/t6101-rev-parse-parents.sh b/t/t6101-rev-parse-parents.sh +index 8c617981a3..7683e4a114 100755 +--- a/t/t6101-rev-parse-parents.sh ++++ b/t/t6101-rev-parse-parents.sh +@@ -214,4 +214,12 @@ test_expect_success 'rev-list merge^-1x (garbage after ^-1)' ' + test_must_fail git rev-list merge^-1x + ' + ++test_expect_success 'rev-parse $garbage^@ does not segfault' ' ++ test_must_fail git rev-parse $EMPTY_TREE^@ ++' ++ ++test_expect_success 'rev-parse $garbage...$garbage does not segfault' ' ++ test_must_fail git rev-parse $EMPTY_TREE...$EMPTY_BLOB ++' ++ + test_done diff --git a/0001-run-command-mark-path-lookup-errors-with-ENOENT.patch b/0001-run-command-mark-path-lookup-errors-with-ENOENT.patch new file mode 100644 index 0000000..e01262d --- /dev/null +++ b/0001-run-command-mark-path-lookup-errors-with-ENOENT.patch @@ -0,0 +1,132 @@ +From 321fd82389742398d2924640ce3a61791fd27d60 Mon Sep 17 00:00:00 2001 +From: Jeff King +Date: Wed, 24 Oct 2018 03:38:00 -0400 +Subject: [PATCH] run-command: mark path lookup errors with ENOENT + +Since commit e3a434468f (run-command: use the +async-signal-safe execv instead of execvp, 2017-04-19), +prepare_cmd() does its own PATH lookup for any commands we +run (on non-Windows platforms). + +However, its logic does not match the old execvp call when +we fail to find a matching entry in the PATH. Instead of +feeding the name directly to execv, execvp would consider +that an ENOENT error. By continuing and passing the name +directly to execv, we effectively behave as if "." was +included at the end of the PATH. This can have confusing and +even dangerous results. + +The fix itself is pretty straight-forward. There's a new +test in t0061 to cover this explicitly, and I've also added +a duplicate of the ENOENT test to ensure that we return the +correct errno for this case. + +Signed-off-by: Jeff King +Signed-off-by: Junio C Hamano +--- + run-command.c | 21 +++++++++++++++++---- + t/t0061-run-command.sh | 13 ++++++++++++- + 2 files changed, 29 insertions(+), 5 deletions(-) + +diff --git a/run-command.c b/run-command.c +index 014b2165b5a2f..8d42a4f534f7a 100644 +--- a/run-command.c ++++ b/run-command.c +@@ -378,7 +378,7 @@ static void child_err_spew(struct child_process *cmd, struct child_err *cerr) + set_error_routine(old_errfn); + } + +-static void prepare_cmd(struct argv_array *out, const struct child_process *cmd) ++static int prepare_cmd(struct argv_array *out, const struct child_process *cmd) + { + if (!cmd->argv[0]) + die("BUG: command is empty"); +@@ -401,16 +401,22 @@ static void prepare_cmd(struct argv_array *out, const struct child_process *cmd) + /* + * If there are no '/' characters in the command then perform a path + * lookup and use the resolved path as the command to exec. If there +- * are no '/' characters or if the command wasn't found in the path, +- * have exec attempt to invoke the command directly. ++ * are '/' characters, we have exec attempt to invoke the command ++ * directly. + */ + if (!strchr(out->argv[1], '/')) { + char *program = locate_in_PATH(out->argv[1]); + if (program) { + free((char *)out->argv[1]); + out->argv[1] = program; ++ } else { ++ argv_array_clear(out); ++ errno = ENOENT; ++ return -1; + } + } ++ ++ return 0; + } + + static char **prep_childenv(const char *const *deltaenv) +@@ -635,6 +641,12 @@ int start_command(struct child_process *cmd) + struct child_err cerr; + struct atfork_state as; + ++ if (prepare_cmd(&argv, cmd) < 0) { ++ failed_errno = errno; ++ cmd->pid = -1; ++ goto end_of_spawn; ++ } ++ + if (pipe(notify_pipe)) + notify_pipe[0] = notify_pipe[1] = -1; + +@@ -645,7 +657,6 @@ int start_command(struct child_process *cmd) + set_cloexec(null_fd); + } + +- prepare_cmd(&argv, cmd); + childenv = prep_childenv(cmd->env); + atfork_prepare(&as); + +@@ -773,6 +784,8 @@ int start_command(struct child_process *cmd) + argv_array_clear(&argv); + free(childenv); + } ++end_of_spawn: ++ + #else + { + int fhin = 0, fhout = 1, fherr = 2; +diff --git a/t/t0061-run-command.sh b/t/t0061-run-command.sh +index e4739170aa2b7..0303ddbb6440f 100755 +--- a/t/t0061-run-command.sh ++++ b/t/t0061-run-command.sh +@@ -13,10 +13,14 @@ cat >hello-script <<-EOF + EOF + >empty + +-test_expect_success 'start_command reports ENOENT' ' ++test_expect_success 'start_command reports ENOENT (slash)' ' + test-run-command start-command-ENOENT ./does-not-exist + ' + ++test_expect_success 'start_command reports ENOENT (no slash)' ' ++ test-run-command start-command-ENOENT does-not-exist ++' ++ + test_expect_success 'run_command can run a command' ' + cat hello-script >hello.sh && + chmod +x hello.sh && +@@ -26,6 +30,13 @@ test_expect_success 'run_command can run a command' ' + test_cmp empty err + ' + ++test_expect_success 'run_command is restricted to PATH' ' ++ write_script should-not-run <<-\EOF && ++ echo yikes ++ EOF ++ test_must_fail test-run-command run-command should-not-run ++' ++ + test_expect_success !MINGW 'run_command can run a script without a #! line' ' + cat >hello <<-\EOF && + cat hello-script diff --git a/0001-t-lib-httpd-try-harder-to-find-a-port-for-apache.patch b/0001-t-lib-httpd-try-harder-to-find-a-port-for-apache.patch deleted file mode 100644 index 733f9c0..0000000 --- a/0001-t-lib-httpd-try-harder-to-find-a-port-for-apache.patch +++ /dev/null @@ -1,73 +0,0 @@ -From 89ccbc15948db9ddbf74530e3fd66dd78ae897ae Mon Sep 17 00:00:00 2001 -From: Todd Zullinger -Date: Sun, 21 Aug 2022 13:49:57 -0400 -Subject: [PATCH] t/lib-httpd: try harder to find a port for apache -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -When running multiple builds concurrently, tests which run daemons, like -apache httpd, sometimes conflict with each other, leading to spurious -failures: - - ++ /usr/sbin/httpd -d '/tmp/git-t.ck9I/trash directory.t9118-git-svn-funky-branch-names/httpd' \ - -f /builddir/build/BUILD/git-2.37.2/t/lib-httpd/apache.conf -DDAV -DSVN -c 'Listen 127.0.0.1:9118' \ - -k start - (98)Address already in use: AH00072: make_sock: could not bind to address 127.0.0.1:9118 - no listening sockets available, shutting down - AH00015: Unable to open logs - ++ test 1 -ne 0 - -Try a bit harder to find an open port to use to avoid these intermittent -failures. If we fail to start httpd, increment the port number and try -again. By default, we make 3 attempts. This may be overridden by -setting GIT_TEST_START_HTTPD_TRIES to a different value. - -Helped-by: Ondřej Pohořelský -Signed-off-by: Todd Zullinger ---- - t/lib-httpd.sh | 29 ++++++++++++++++++----------- - 1 file changed, 18 insertions(+), 11 deletions(-) - -diff --git a/t/lib-httpd.sh b/t/lib-httpd.sh -index 2fb1b2ae56..4afdf5a6aa 100644 ---- a/t/lib-httpd.sh -+++ b/t/lib-httpd.sh -@@ -206,19 +206,26 @@ enable_cgipassauth () { - } - - start_httpd() { -- prepare_httpd >&3 2>&4 -- - test_atexit stop_httpd - -- "$LIB_HTTPD_PATH" -d "$HTTPD_ROOT_PATH" \ -- -f "$TEST_PATH/apache.conf" $HTTPD_PARA \ -- -c "Listen 127.0.0.1:$LIB_HTTPD_PORT" -k start \ -- >&3 2>&4 -- if test $? -ne 0 -- then -- cat "$HTTPD_ROOT_PATH"/error.log >&4 2>/dev/null -- test_skip_or_die GIT_TEST_HTTPD "web server setup failed" -- fi -+ i=0 -+ while test $i -lt ${GIT_TEST_START_HTTPD_TRIES:-3} -+ do -+ i=$(($i + 1)) -+ prepare_httpd >&3 2>&4 -+ say >&3 "Starting httpd on port $LIB_HTTPD_PORT" -+ "$LIB_HTTPD_PATH" -d "$HTTPD_ROOT_PATH" \ -+ -f "$TEST_PATH/apache.conf" $HTTPD_PARA \ -+ -c "Listen 127.0.0.1:$LIB_HTTPD_PORT" -k start \ -+ >&3 2>&4 -+ test $? -eq 0 && return -+ LIB_HTTPD_PORT=$(($LIB_HTTPD_PORT + 1)) -+ export LIB_HTTPD_PORT -+ # clean up modules symlink, prepare_httpd will re-create it -+ rm -f "$HTTPD_ROOT_PATH/modules" -+ done -+ cat "$HTTPD_ROOT_PATH"/error.log >&4 2>/dev/null -+ test_skip_or_die GIT_TEST_HTTPD "web server setup failed" - } - - stop_httpd() { diff --git a/0002-t-lib-git-daemon-try-harder-to-find-a-port.patch b/0002-t-lib-git-daemon-try-harder-to-find-a-port.patch deleted file mode 100644 index 37637bc..0000000 --- a/0002-t-lib-git-daemon-try-harder-to-find-a-port.patch +++ /dev/null @@ -1,88 +0,0 @@ -From e90e1068ddc9cfa3badd23b16a46c57ed6d8308a Mon Sep 17 00:00:00 2001 -From: Todd Zullinger -Date: Fri, 26 Aug 2022 18:28:44 -0400 -Subject: [PATCH] t/lib-git-daemon: try harder to find a port - -As with the previous commit, try harder to find an open port to avoid -intermittent failures on busy/shared build systems. - -By default, we make 3 attempts. This may be overridden by setting -GIT_TEST_START_GIT_DAEMON_TRIES to a different value. - -Signed-off-by: Todd Zullinger ---- - t/lib-git-daemon.sh | 60 ++++++++++++++++++++++++++++----------------- - 1 file changed, 37 insertions(+), 23 deletions(-) - -diff --git a/t/lib-git-daemon.sh b/t/lib-git-daemon.sh -index e62569222b..c3e8dda9ff 100644 ---- a/t/lib-git-daemon.sh -+++ b/t/lib-git-daemon.sh -@@ -51,30 +51,44 @@ start_git_daemon() { - registered_stop_git_daemon_atexit_handler=AlreadyDone - fi - -- say >&3 "Starting git daemon ..." -- mkfifo git_daemon_output -- ${LIB_GIT_DAEMON_COMMAND:-git daemon} \ -- --listen=127.0.0.1 --port="$LIB_GIT_DAEMON_PORT" \ -- --reuseaddr --verbose --pid-file="$GIT_DAEMON_PIDFILE" \ -- --base-path="$GIT_DAEMON_DOCUMENT_ROOT_PATH" \ -- "$@" "$GIT_DAEMON_DOCUMENT_ROOT_PATH" \ -- >&3 2>git_daemon_output & -- GIT_DAEMON_PID=$! -- { -- read -r line <&7 -- printf "%s\n" "$line" >&4 -- cat <&7 >&4 & -- } 7&3 "Starting git daemon on port $LIB_GIT_DAEMON_PORT ..." -+ mkfifo git_daemon_output -+ ${LIB_GIT_DAEMON_COMMAND:-git daemon} \ -+ --listen=127.0.0.1 --port="$LIB_GIT_DAEMON_PORT" \ -+ --reuseaddr --verbose --pid-file="$GIT_DAEMON_PIDFILE" \ -+ --base-path="$GIT_DAEMON_DOCUMENT_ROOT_PATH" \ -+ "$@" "$GIT_DAEMON_DOCUMENT_ROOT_PATH" \ -+ >&3 2>git_daemon_output & -+ GIT_DAEMON_PID=$! -+ { -+ read -r line <&7 -+ printf "%s\n" "$line" >&4 -+ cat <&7 >&4 & -+ } 7 -Date: Fri, 26 Aug 2022 18:28:44 -0400 -Subject: [PATCH] t/lib-git-svn: try harder to find a port - -As with the previous commits, try harder to find an open port to avoid -intermittent failures on busy/shared build systems. - -By default, we make 3 attempts. This may be overridden by setting -GIT_TEST_START_SVNSERVE_TRIES to a different value. - -Run svnserve in daemon mode and use 'test_atexit' to stop it. This is -cleaner than running in the foreground with --listen-once and having to -manage the PID ourselves. - -Signed-off-by: Todd Zullinger ---- - t/lib-git-svn.sh | 34 +++++++++++++++++++++++++---- - t/t9113-git-svn-dcommit-new-file.sh | 1 - - 2 files changed, 30 insertions(+), 5 deletions(-) - -diff --git a/t/lib-git-svn.sh b/t/lib-git-svn.sh -index ea28971e8e..04e660e2ba 100644 ---- a/t/lib-git-svn.sh -+++ b/t/lib-git-svn.sh -@@ -17,6 +17,7 @@ fi - GIT_DIR=$PWD/.git - GIT_SVN_DIR=$GIT_DIR/svn/refs/remotes/git-svn - SVN_TREE=$GIT_SVN_DIR/svn-tree -+SVNSERVE_PIDFILE="$PWD"/daemon.pid - test_set_port SVNSERVE_PORT - - svn >/dev/null 2>&1 -@@ -119,10 +120,35 @@ require_svnserve () { - } - - start_svnserve () { -- svnserve --listen-port $SVNSERVE_PORT \ -- --root "$rawsvnrepo" \ -- --listen-once \ -- --listen-host 127.0.0.1 & -+ test_atexit stop_svnserve -+ -+ i=0 -+ while test $i -lt ${GIT_TEST_START_SVNSERVE_TRIES:-3} -+ do -+ say >&3 "Starting svnserve on port $SVNSERVE_PORT ..." -+ svnserve --listen-port $SVNSERVE_PORT \ -+ --root "$rawsvnrepo" \ -+ --daemon --pid-file="$SVNSERVE_PIDFILE" \ -+ --listen-host 127.0.0.1 -+ ret=$? -+ # increment port and retry if unsuccessful -+ if test $ret -ne 0 -+ then -+ SVNSERVE_PORT=$(($SVNSERVE_PORT + 1)) -+ export SVNSERVE_PORT -+ else -+ break -+ fi -+ done -+} -+ -+stop_svnserve () { -+ say >&3 "Stopping svnserve ..." -+ SVNSERVE_PID="$(cat "$SVNSERVE_PIDFILE")" -+ if test -n "$SVNSERVE_PID" -+ then -+ kill "$SVNSERVE_PID" 2>/dev/null -+ fi - } - - prepare_utf8_locale () { -diff --git a/t/t9113-git-svn-dcommit-new-file.sh b/t/t9113-git-svn-dcommit-new-file.sh -index e8479cec7a..5925891f5d 100755 ---- a/t/t9113-git-svn-dcommit-new-file.sh -+++ b/t/t9113-git-svn-dcommit-new-file.sh -@@ -28,7 +28,6 @@ test_expect_success 'create files in new directory with dcommit' " - echo hello > git-new-dir/world && - git update-index --add git-new-dir/world && - git commit -m hello && -- start_svnserve && - git svn dcommit - " - diff --git a/git-1.8-gitweb-home-link.patch b/git-1.8-gitweb-home-link.patch new file mode 100644 index 0000000..aeb29e0 --- /dev/null +++ b/git-1.8-gitweb-home-link.patch @@ -0,0 +1,12 @@ +diff -up git-1.8.4.2/gitweb/gitweb.perl.orig git-1.8.4.2/gitweb/gitweb.perl +--- git-1.8.4.2/gitweb/gitweb.perl.orig 2013-10-28 14:17:38.000000000 -0400 ++++ git-1.8.4.2/gitweb/gitweb.perl 2013-10-29 16:49:07.302747507 -0400 +@@ -83,7 +83,7 @@ our $projectroot = "++GITWEB_PROJECTROOT + our $project_maxdepth = "++GITWEB_PROJECT_MAXDEPTH++"; + + # string of the home link on top of all pages +-our $home_link_str = "++GITWEB_HOME_LINK_STR++"; ++our $home_link_str = $ENV{'SERVER_NAME'} ? "git://" . $ENV{'SERVER_NAME'} : "projects"; + + # extra breadcrumbs preceding the home link + our @extra_breadcrumbs = (); diff --git a/git-2.52-sanitize-sideband-channel-messages.patch b/git-2.52-sanitize-sideband-channel-messages.patch deleted file mode 100644 index 786cb39..0000000 --- a/git-2.52-sanitize-sideband-channel-messages.patch +++ /dev/null @@ -1,275 +0,0 @@ -From 65e88e659008e2cbf79cf44975406ff0d569a3a9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ond=C5=99ej=20Poho=C5=99elsk=C3=BD?= -Date: Thu, 20 Nov 2025 12:24:59 +0100 -Subject: [PATCH] sideband: mask control characters -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The output of `git clone` is a vital component for understanding what -has happened when things go wrong. However, these logs are partially -under the control of the remote server (via the "sideband", which -typically contains what the remote `git pack-objects` process sends to -`stderr`), and is currently not sanitized by Git. - -This makes Git susceptible to ANSI escape sequence injection (see -CWE-150, https://cwe.mitre.org/data/definitions/150.html), which allows -attackers to corrupt terminal state, to hide information, and even to -insert characters into the input buffer (i.e. as if the user had typed -those characters). - -To plug this vulnerability, disallow any control character in the -sideband, replacing them instead with the common `^` -(e.g. `^[` for `\x1b`, `^A` for `\x01`). - -There is likely a need for more fine-grained controls instead of using a -"heavy hammer" like this, which will be introduced subsequently. - -Signed-off-by: Johannes Schindelin - -sideband: introduce an "escape hatch" to allow control characters - -The preceding commit fixed the vulnerability whereas sideband messages -(that are under the control of the remote server) could contain ANSI -escape sequences that would be sent to the terminal verbatim. - -However, this fix may not be desirable under all circumstances, e.g. -when remote servers deliberately add coloring to their messages to -increase their urgency. - -To help with those use cases, give users a way to opt-out of the -protections: `sideband.allowControlCharacters`. - -Signed-off-by: Johannes Schindelin - -sideband: do allow ANSI color sequences by default - -The preceding two commits introduced special handling of the sideband -channel to neutralize ANSI escape sequences before sending the payload -to the terminal, and `sideband.allowControlCharacters` to override that -behavior. - -However, some `pre-receive` hooks that are actively used in practice -want to color their messages and therefore rely on the fact that Git -passes them through to the terminal. - -In contrast to other ANSI escape sequences, it is highly unlikely that -coloring sequences can be essential tools in attack vectors that mislead -Git users e.g. by hiding crucial information. - -Therefore we can have both: Continue to allow ANSI coloring sequences to -be passed to the terminal, and neutralize all other ANSI escape -sequences. - -Signed-off-by: Johannes Schindelin - -sideband: default to allowControlCharacters=true - -We don't want to change the default Git behaviour, just add the option -to filter control characters. - -Signed-off-by: Ondřej Pohořelský ---- - Documentation/config.adoc | 2 + - Documentation/config/sideband.adoc | 16 ++++++ - sideband.c | 78 ++++++++++++++++++++++++++++- - t/t5409-colorize-remote-messages.sh | 31 ++++++++++++ - 4 files changed, 125 insertions(+), 2 deletions(-) - create mode 100644 Documentation/config/sideband.adoc - -diff --git a/Documentation/config.adoc b/Documentation/config.adoc -index 62eebe7c54..dcea3c0c15 100644 ---- a/Documentation/config.adoc -+++ b/Documentation/config.adoc -@@ -523,6 +523,8 @@ include::config/sequencer.adoc[] - - include::config/showbranch.adoc[] - -+include::config/sideband.adoc[] -+ - include::config/sparse.adoc[] - - include::config/splitindex.adoc[] -diff --git a/Documentation/config/sideband.adoc b/Documentation/config/sideband.adoc -new file mode 100644 -index 0000000000..c9ba24a02c ---- /dev/null -+++ b/Documentation/config/sideband.adoc -@@ -0,0 +1,16 @@ -+sideband.allowControlCharacters:: -+ By default, control characters that are delivered via the sideband -+ are NOT masked. Use this config setting to prevent potentially -+ unwanted ANSI escape sequences from being sent to the terminal: -++ -+-- -+ color:: -+ Allow ANSI color sequences, line feeds and horizontal tabs, -+ but mask all other control characters. -+ false:: -+ Mask all control characters other than line feeds and -+ horizontal tabs. -+ true:: -+ Allow all control characters to be sent to the terminal. -+ This is the default. -+-- -\ No newline at end of file -diff --git a/sideband.c b/sideband.c -index ea7c25211e..88d1b44a7a 100644 ---- a/sideband.c -+++ b/sideband.c -@@ -26,6 +26,12 @@ static struct keyword_entry keywords[] = { - { "error", GIT_COLOR_BOLD_RED }, - }; - -+static enum { -+ ALLOW_NO_CONTROL_CHARACTERS = 0, -+ ALLOW_ALL_CONTROL_CHARACTERS = 1, -+ ALLOW_ANSI_COLOR_SEQUENCES = 2 -+} allow_control_characters = ALLOW_ALL_CONTROL_CHARACTERS; -+ - /* Returns a color setting (GIT_COLOR_NEVER, etc). */ - static enum git_colorbool use_sideband_colors(void) - { -@@ -39,6 +45,25 @@ static enum git_colorbool use_sideband_colors(void) - if (use_sideband_colors_cached != GIT_COLOR_UNKNOWN) - return use_sideband_colors_cached; - -+ switch (repo_config_get_maybe_bool(the_repository, "sideband.allowcontrolcharacters", &i)) { -+ case 0: /* Boolean value */ -+ allow_control_characters = i ? ALLOW_ALL_CONTROL_CHARACTERS : -+ ALLOW_NO_CONTROL_CHARACTERS; -+ break; -+ case -1: /* non-Boolean value */ -+ if (repo_config_get_string_tmp(the_repository, "sideband.allowcontrolcharacters", -+ &value)) -+ ; /* huh? `get_maybe_bool()` returned -1 */ -+ else if (!strcmp(value, "color")) -+ allow_control_characters = ALLOW_ANSI_COLOR_SEQUENCES; -+ else -+ warning(_("unrecognized value for `sideband." -+ "allowControlCharacters`: '%s'"), value); -+ break; -+ default: -+ break; /* not configured */ -+ } -+ - if (!repo_config_get_string_tmp(the_repository, key, &value)) - use_sideband_colors_cached = git_config_colorbool(key, value); - else if (!repo_config_get_string_tmp(the_repository, "color.ui", &value)) -@@ -66,6 +91,55 @@ void list_config_color_sideband_slots(struct string_list *list, const char *pref - list_config_item(list, prefix, keywords[i].keyword); - } - -+static int handle_ansi_color_sequence(struct strbuf *dest, const char *src, int n) -+{ -+ int i; -+ -+ /* -+ * Valid ANSI color sequences are of the form -+ * -+ * ESC [ [ [; ]*] m -+ */ -+ -+ if (allow_control_characters != ALLOW_ANSI_COLOR_SEQUENCES || -+ n < 3 || src[0] != '\x1b' || src[1] != '[') -+ return 0; -+ -+ for (i = 2; i < n; i++) { -+ if (src[i] == 'm') { -+ strbuf_add(dest, src, i + 1); -+ return i; -+ } -+ if (!isdigit(src[i]) && src[i] != ';') -+ break; -+ } -+ -+ return 0; -+} -+ -+static void strbuf_add_sanitized(struct strbuf *dest, const char *src, int n) -+{ -+ int i; -+ -+ if (allow_control_characters == ALLOW_ALL_CONTROL_CHARACTERS) { -+ strbuf_add(dest, src, n); -+ return; -+ } -+ -+ strbuf_grow(dest, n); -+ for (; n && *src; src++, n--) { -+ if (!iscntrl(*src) || *src == '\t' || *src == '\n') -+ strbuf_addch(dest, *src); -+ else if ((i = handle_ansi_color_sequence(dest, src, n))) { -+ src += i; -+ n -= i; -+ } else { -+ strbuf_addch(dest, '^'); -+ strbuf_addch(dest, 0x40 + *src); -+ } -+ } -+} -+ - /* - * Optionally highlight one keyword in remote output if it appears at the start - * of the line. This should be called for a single line only, which is -@@ -81,7 +155,7 @@ static void maybe_colorize_sideband(struct strbuf *dest, const char *src, int n) - int i; - - if (!want_color_stderr(use_sideband_colors())) { -- strbuf_add(dest, src, n); -+ strbuf_add_sanitized(dest, src, n); - return; - } - -@@ -114,7 +188,7 @@ static void maybe_colorize_sideband(struct strbuf *dest, const char *src, int n) - } - } - -- strbuf_add(dest, src, n); -+ strbuf_add_sanitized(dest, src, n); - } - - -diff --git a/t/t5409-colorize-remote-messages.sh b/t/t5409-colorize-remote-messages.sh -index fa5de4500a..2d40d8c640 100755 ---- a/t/t5409-colorize-remote-messages.sh -+++ b/t/t5409-colorize-remote-messages.sh -@@ -98,4 +98,35 @@ test_expect_success 'fallback to color.ui' ' - grep "error: error" decoded - ' - -+test_expect_success 'disallow (color) control sequences in sideband' ' -+ write_script .git/color-me-surprised <<-\EOF && -+ printf "error: Have you \\033[31mread\\033[m this?\\a\\n" >&2 -+ exec "$@" -+ EOF -+ test_config_global uploadPack.packObjectshook ./color-me-surprised && -+ test_commit need-at-least-one-commit && -+ -+ git -c sideband.allowControlCharacters=color \ -+ clone --no-local . throw-away 2>stderr && -+ test_decode_color decoded && -+ test_grep RED decoded && -+ test_grep "\\^G" stderr && -+ tr -dc "\\007" actual && -+ test_must_be_empty actual && -+ -+ rm -rf throw-away && -+ git -c sideband.allowControlCharacters=false \ -+ clone --no-local . throw-away 2>stderr && -+ test_decode_color decoded && -+ test_grep ! RED decoded && -+ test_grep "\\^G" stderr && -+ -+ rm -rf throw-away && -+ git -c sideband.allowControlCharacters clone --no-local . throw-away 2>stderr && -+ test_decode_color decoded && -+ test_grep RED decoded && -+ tr -dc "\\007" actual && -+ test_file_not_empty actual -+' -+ - test_done --- -2.51.1 - diff --git a/git-init.el b/git-init.el new file mode 100644 index 0000000..d2a96a7 --- /dev/null +++ b/git-init.el @@ -0,0 +1,5 @@ +;; Git VC backend +(add-to-list 'vc-handled-backends 'GIT t) +(autoload 'git-status "git" "GIT mode." t) +(autoload 'git-blame-mode "git-blame" + "Minor mode for incremental blame for Git." t) diff --git a/git-test-apache-davlockdbtype-config.patch b/git-test-apache-davlockdbtype-config.patch deleted file mode 100644 index 882006a..0000000 --- a/git-test-apache-davlockdbtype-config.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -ur b/t/lib-httpd/apache.conf a/t/lib-httpd/apache.conf ---- b/t/lib-httpd/apache.conf 2024-01-09 11:06:46.660868023 +0100 -+++ a/t/lib-httpd/apache.conf 2024-01-09 11:09:09.572713625 +0100 -@@ -272,7 +272,9 @@ - - LoadModule dav_module modules/mod_dav.so - LoadModule dav_fs_module modules/mod_dav_fs.so -- -+ -+ DavLockDBType sdbm -+ - DAVLockDB DAVLock - - Dav on diff --git a/git.rpmlintrc b/git.rpmlintrc index 8b09c35..9a57745 100644 --- a/git.rpmlintrc +++ b/git.rpmlintrc @@ -1,3 +1,5 @@ +from Config import * + # the dictionary is a bit limited addFilter("git.* spelling-error %description .* subpackages") addFilter("git-subtree.* spelling-error %description .* (subdirectory|subproject|subtree)") @@ -5,38 +7,16 @@ addFilter("git-subtree.* spelling-error %description .* (subdirectory|subproject # git-core-doc requires git-core, which provides the symlink target addFilter("git(-core-doc)?\..*: W: dangling-relative-symlink /usr/share/doc/git/contrib/hooks ../../../git-core/contrib/hooks") -# gitk requires git, which provides the symlink target -addFilter("gitk\.noarch: W: dangling-relative-symlink /usr/share/bash-completion/completions/gitk git") +# git requires git-core, which provides the symlink target +addFilter("git\..*: W: dangling-relative-symlink /usr/libexec/git-core/git-difftool git") # git-gui requires git, which provides the git binary addFilter("git-gui.noarch: W: desktopfile-without-binary /usr/share/applications/git-gui.desktop git") -# ignore no binary warning for main git package; making it noarch isn't trivial -# since we have arch-specific subpackages -addFilter("git\..*: E: no-binary$") - # ignore no doc/manpage warnings where we don't expect any documentation -addFilter("git-(all|core|credential-libsecret)\..*: W: no-documentation") +addFilter("git-(all|core|gnome-keyring)\..*: W: no-documentation") addFilter("perl-Git-SVN.noarch: W: no-documentation") addFilter("git-core\..*: W: no-manual-page-for-binary") # nothing provides git-gnome-keyring, it's simply obsolete -# similarly ignore the warning when git-cvs and git-p4 are disabled -addFilter("git.* obsolete-not-provided git-(cvs|gnome-keyring|p4)") - -# git-svn has both man and html docs and only a single command -addFilter('git-svn\..*: W: package-with-huge-docs') - -# ignore potential "bashisms" in docs -addFilter('git-core-doc\.noarch: W: potential-bashisms /usr/share/doc/git/') - -# ignore unused-direct-shlib-dependency for libpcre; while it probably could be -# removed from some binaries, the cost of doing so isn't worth the gain. -addFilter('git-(core|daemon)\..*: W: unused-direct-shlib-dependency .* /lib64/libpcre2-.*') - -# ignore duplicate gvimdiff/nvimdiff files; they are only 29 bytes, sourcing the same base -# vimdiff mergetool -addFilter('git-core\..*: W: files-duplicate /usr/libexec/git-core/mergetools/[gn]vimdiff') - -# ignore non-standard-dir-in-var for gitweb (#479613) -addFilter('gitweb.noarch: W: non-standard-dir-in-var www') +addFilter("git.* obsolete-not-provided git-gnome-keyring") diff --git a/git.skip-test-patterns b/git.skip-test-patterns deleted file mode 100644 index a310f5a..0000000 --- a/git.skip-test-patterns +++ /dev/null @@ -1,33 +0,0 @@ -^ok 1 # SKIP enable client-side http/2 \(missing HTTP2\)$ -expensive 2GB clone test; enable with GIT_TEST_CLONE_2GB=true -filesystem does not corrupt utf-8 -fsmonitor--daemon is not supported on this platform -GIT_SKIP_TESTS -missing AUTOIDENT -missing BUILTIN_TXT_ -missing CASE_INSENSITIVE_FS -missing DONTHAVEIT -missing ([!]LONG_IS_64BIT,)?EXPENSIVE -missing FSMONITOR_DAEMON -missing JGIT -missing !?LAZY_(TRUE|FALSE) -missing MINGW -missing NATIVE_CRLF -missing !PCRE -missing !PTHREADS -missing !REFFILES -missing RFC1991 -missing RUNTIME_PREFIX -missing SYMLINKS_WINDOWS -missing TAR_NEEDS_PAX_FALLBACK -missing UTF8_NFD_TO_NFC -missing WINDOWS -skipped: skip all tests in t5559 -skipping case insensitive tests -skipping git p4 tests -skipping remote-svn tests, python not available -skipping svn-info test -skipping Windows-(only path|specific) tests -Test requiring writable / skipped -used to test external credential helpers -You must set env var GIT_TEST_ALLOW_SUDO=YES in order to run this test diff --git a/git.spec b/git.spec index 49c55d0..4f4b74b 100644 --- a/git.spec +++ b/git.spec @@ -1,66 +1,67 @@ # Pass --without docs to rpmbuild if you don't want the documentation %bcond_without docs -# Pass --without tests to rpmbuild if you don't want to run the tests -%bcond_without tests - %global gitexecdir %{_libexecdir}/git-core -# Settings for Fedora -%if 0%{?fedora} -# linkchecker is not available on EL -%bcond_without linkcheck -%else -%bcond_with linkcheck -%endif - -# Settings for Fedora >= 38 and EL >= 10 -%if 0%{?fedora} >= 38 || 0%{?rhel} >= 10 -%bcond_with perl_modcompat -%else -%bcond_without perl_modcompat -%endif - -# Settings for Fedora and EL == 9 -# In EL >= 10 docbook5-style-xsl, needed by asciidoctor, is unwanted package -%if 0%{?fedora} || 0%{?rhel} == 9 -%bcond_without asciidoctor -%else -%bcond_with asciidoctor -%endif - -# Settings for Fedora and EL >= 8 -%if 0%{?fedora} || 0%{?rhel} >= 8 +# Settings for Fedora > 29 and EL > 7 +%if 0%{?fedora} > 29 || 0%{?rhel} > 7 %bcond_with python2 -%bcond_without python3 +%else +%bcond_without python2 +%endif + +# Settings for Fedora >= 29 and EL > 7 +%if 0%{?fedora} >= 29 || 0%{?rhel} > 7 %global gitweb_httpd_conf gitweb.conf -%global use_glibc_langpacks 1 +%else +%global gitweb_httpd_conf git.conf +%endif + +# Settings for Fedora and EL > 7 +%if 0%{?fedora} || 0%{?rhel} > 7 +%bcond_without python3 +# linkchcker is not available on EL <= 7 +%bcond_without linkcheck %global use_perl_generators 1 %global use_perl_interpreter 1 %else -%bcond_without python2 %bcond_with python3 -%global build_cflags %{build_cflags} -fPIC -std=gnu99 -%global gitweb_httpd_conf git.conf -%global use_glibc_langpacks 0 +%bcond_with linkcheck %global use_perl_generators 0 %global use_perl_interpreter 0 %endif +# Settings for Fedora and EL >= 7 +%if 0%{?fedora} || 0%{?rhel} >= 7 +%global bashcomp_pkgconfig 1 +%global bashcompdir %(pkg-config --variable=completionsdir bash-completion 2>/dev/null) +%global bashcomproot %(dirname %{bashcompdir} 2>/dev/null) +%global emacs_filesystem 1 +%global libsecret 1 +%global use_new_rpm_filters 1 +%global use_systemd 1 +%else +%global bashcomp_pkgconfig 0 +%global bashcompdir %{_sysconfdir}/bash_completion.d +%global bashcomproot %{bashcompdir} +%global emacs_filesystem 0 +%global libsecret 0 +%global use_new_rpm_filters 0 +%global use_systemd 0 +%{!?_pkgdocdir: %global _pkgdocdir %{_docdir}/%{name}-%{version}} +%endif + # Allow cvs subpackage to be toggled via --with/--without -# Disable cvs subpackage by default on EL >= 8 -%if 0%{?rhel} >= 8 +# Disable cvs subpackage by default on EL > 7 +%if 0%{?rhel} > 7 %bcond_with cvs %else %bcond_without cvs %endif -# Allow credential-libsecret subpackage to be toggled via --with/--without -%bcond_without libsecret - # Allow p4 subpackage to be toggled via --with/--without -# Disable p4 package by default on EL >= 10 -%if 0%{?rhel} >= 10 +# Disable by default if we lack python2 support +%if ! %{with python2} %bcond_with p4 %else %bcond_without p4 @@ -71,27 +72,23 @@ %global _hardened_build 1 %endif -# Define %%bash_completions_dir for EL <= 9 -%{?!bash_completions_dir:%global bash_completions_dir %{_datadir}/bash-completion/completions} +# Hardening flags for EL-6 +%if 0%{?rhel} == 6 +%global optflags %{optflags} -fPIC -pie +%global __global_ldflags -Wl,-z,relro -Wl,-z,now +%endif -# Set path to the package-notes linker script -%global _package_note_file %{_builddir}/%{name}-%{real_version}/.package_note-%{name}-%{version}-%{release}.%{_arch}.ld +# Define for release candidates +#global rcrev .rc0 Name: git -Version: 2.52.0 -Release: 1%{?dist} +Version: 2.17.2 +Release: 2%{?rcrev}%{?dist} Summary: Fast Version Control System -License: BSD-3-Clause AND GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later AND MIT +License: GPLv2 URL: https://git-scm.com/ - -# Note: real_version must be defined _after_ Version -%global real_version %(echo %{version} | tr '~' '.') - -# Adjust Source URL path for release candidates -%global rcpath %(test "%{version}" = "%{real_version}" || echo testing/) - -Source0: https://www.kernel.org/pub/software/scm/git/%{rcpath}%{name}-%{real_version}.tar.xz -Source1: https://www.kernel.org/pub/software/scm/git/%{rcpath}%{name}-%{real_version}.tar.sign +Source0: https://www.kernel.org/pub/software/scm/git/%{?rcrev:testing/}%{name}-%{version}%{?rcrev}.tar.xz +Source1: https://www.kernel.org/pub/software/scm/git/%{?rcrev:testing/}%{name}-%{version}%{?rcrev}.tar.sign # Junio C Hamano's key is used to sign git releases, it can be found in the # junio-gpg-pub tag within git. @@ -102,9 +99,10 @@ Source1: https://www.kernel.org/pub/software/scm/git/%{rcpath}%{name}-%{r # # https://git.kernel.org/cgit/git/git.git/tag/?h=junio-gpg-pub # https://git.kernel.org/cgit/git/git.git/blob/?h=junio-gpg-pub&id=7214aea37915ee2c4f6369eb9dea520aec7d855b -Source2: gpgkey-junio.asc +Source9: gpgkey-junio.asc # Local sources begin at 10 to allow for additional future upstream sources +Source10: git-init.el Source11: git.xinetd.in Source12: git-gui.desktop Source13: gitweb-httpd.conf @@ -115,195 +113,127 @@ Source16: git.socket # Script to print test failure output (used in %%check) Source99: print-failed-test-output +Patch0: git-1.8-gitweb-home-link.patch # https://bugzilla.redhat.com/490602 -Patch0: git-cvsimport-Ignore-cvsps-2.2b1-Branches-output.patch - -# https://bugzilla.redhat.com/2114531 -# tests: try harder to find open ports for apache, git, and svn -# -# https://github.com/tmzullinger/git/commit/aedeaaf788 -Patch1: 0001-t-lib-httpd-try-harder-to-find-a-port-for-apache.patch -# https://github.com/tmzullinger/git/commit/16750d024c -Patch2: 0002-t-lib-git-daemon-try-harder-to-find-a-port.patch -# https://github.com/tmzullinger/git/commit/aa5105dc11 -Patch3: 0003-t-lib-git-svn-try-harder-to-find-a-port.patch - -# Configurates Apache test server to use `DavLockDBType sdbm` -# Prevents t5540 failures on i686, s390x and ppc64le -Patch5: git-test-apache-davlockdbtype-config.patch - -# Adds the option to sanitize sideband channel messages -# CVE-2024-52005 wasn't fixed by upstream. This patch adds the option to harden Git against it. -# The default behaviour of Git remains unchanged. -# -# https://github.com/gitgitgadget/git/pull/1853 -Patch6: git-2.52-sanitize-sideband-channel-messages.patch +Patch1: git-cvsimport-Ignore-cvsps-2.2b1-Branches-output.patch +# https://github.com/gitster/git/commit/51db271.patch +Patch2: 0001-git-svn-avoid-warning-on-undef-readline.patch +# https://github.com/gitster/git/commit/e67d906.patch +Patch3: 0001-daemon.c-fix-condition-for-redirecting-stderr.patch +# https://bugzilla.redhat.com/1581678 +# https://public-inbox.org/git/20180524062733.5412-1-newren@gmail.com/ +Patch4: 0001-rev-parse-check-lookup-ed-commit-references-for-NULL.patch +# https://bugzilla.redhat.com/1582555 +# https://github.com/gitster/git/commit/b611396e97.patch +# https://public-inbox.org/git/20180525231713.23047-1-lintonrjeremy@gmail.com/ +Patch5: 0001-packfile-correct-zlib-buffer-handling.patch +# https://github.com/gitster/git/commit/f2cb01d35 +# https://public-inbox.org/git/20180601174644.13055-1-phillip.wood@talktalk.net/ +Patch6: 0001-add-p-fix-counting-empty-context-lines-in-edited-pat.patch +# https://bugzilla.redhat.com/1653143 +# https://github.com/git/git/commit/321fd82389.patch +Patch7: 0001-run-command-mark-path-lookup-errors-with-ENOENT.patch %if %{with docs} -# pod2man is needed to build Git.3pm -BuildRequires: perl-podlators -%if %{with asciidoctor} -BuildRequires: docbook5-style-xsl -BuildRequires: rubygem-asciidoctor -%else BuildRequires: asciidoc >= 8.4.1 -%endif -# endif with asciidoctor BuildRequires: xmlto %if %{with linkcheck} BuildRequires: linkchecker %endif -# endif with linkcheck %endif -# endif with docs -BuildRequires: coreutils BuildRequires: desktop-file-utils -BuildRequires: diffutils -%if 0%{?rhel} && 0%{?rhel} < 9 -# Require epel-rpm-macros for the %%gpgverify macro on EL-7/EL-8, and -# %%build_cflags & %%build_ldflags on EL-7. -BuildRequires: epel-rpm-macros -%endif -# endif rhel < 9 +BuildRequires: emacs BuildRequires: expat-devel BuildRequires: findutils BuildRequires: gawk BuildRequires: gcc BuildRequires: gettext -BuildRequires: glibc-utils BuildRequires: gnupg2 BuildRequires: libcurl-devel +%if %{libsecret} +BuildRequires: libsecret-devel +%endif BuildRequires: make BuildRequires: openssl-devel BuildRequires: pcre2-devel BuildRequires: perl(Error) -BuildRequires: perl(lib) +BuildRequires: perl(Test) %if %{use_perl_generators} BuildRequires: perl-generators %endif -# endif use_perl_generators %if %{use_perl_interpreter} BuildRequires: perl-interpreter %else BuildRequires: perl %endif -# endif use_perl_interpreter +%if %{bashcomp_pkgconfig} BuildRequires: pkgconfig(bash-completion) +%endif BuildRequires: sed -%if 0%{?fedora} || 0%{?rhel} >= 8 -BuildRequires: systemd-rpm-macros -%else +%if %{use_systemd} +# For macros BuildRequires: systemd %endif BuildRequires: tcl BuildRequires: tk -BuildRequires: xz BuildRequires: zlib-devel >= 1.2 -%if %{with tests} # Test suite requirements BuildRequires: acl -%if (0%{?fedora} && 0%{?fedora} < 40) || (0%{?rhel} >= 8 && 0%{?rhel} < 10) -# Needed by t5540-http-push-webdav.sh; recent httpd obviates this +%if 0%{?fedora} && 0%{?fedora} >= 27 +# Needed by t5540-http-push-webdav.sh BuildRequires: apr-util-bdb %endif -%if 0%{?fedora} || 0%{?rhel} >= 8 -# Needed by t5559-http-fetch-smart-http2.sh -BuildRequires: mod_http2 -%endif -# endif fedora or rhel >= 8 BuildRequires: bash %if %{with cvs} BuildRequires: cvs BuildRequires: cvsps %endif -# endif with cvs -%if %{use_glibc_langpacks} -# glibc-all-langpacks and glibc-langpack-is are needed for GETTEXT_LOCALE and -# GETTEXT_ISO_LOCALE test prereq's, glibc-langpack-en ensures en_US.UTF-8. -BuildRequires: glibc-all-langpacks -BuildRequires: glibc-langpack-en -BuildRequires: glibc-langpack-is -%endif -# endif use_glibc_langpacks -%if 0%{?fedora} || 0%{?rhel} >= 9 -BuildRequires: gnupg2-smime -%endif -# endif fedora or el >= 9 -%if 0%{?fedora} || 0%{?rhel} >= 8 || ( 0%{?rhel} == 7 && ( "%{_arch}" == "ppc64le" || "%{_arch}" == "x86_64" ) ) +BuildRequires: gnupg +%if 0%{?fedora} || ( 0%{?rhel} && ( 0%{?rhel} == 6 || 0%{?rhel} >= 7 && %{_arch} != ppc64 )) BuildRequires: highlight %endif -# endif fedora or el7+ (ppc64le/x86_64) -%if 0%{?fedora} >= 37 -BuildRequires: httpd-core -%else BuildRequires: httpd -%endif -# endif fedora >= 37 -%if 0%{?fedora} && ! ( 0%{?fedora} >= 35 || "%{_arch}" == "i386" || "%{_arch}" == "s390x" ) +%if 0%{?fedora} && %{_arch} != s390x BuildRequires: jgit %endif -# endif fedora (except i386 and s390x) BuildRequires: mod_dav_svn -BuildRequires: openssh-clients +BuildRequires: pcre BuildRequires: perl(App::Prove) BuildRequires: perl(CGI) BuildRequires: perl(CGI::Carp) BuildRequires: perl(CGI::Util) BuildRequires: perl(DBD::SQLite) BuildRequires: perl(Digest::MD5) -BuildRequires: perl(Fcntl) -BuildRequires: perl(File::Basename) -BuildRequires: perl(File::Copy) -BuildRequires: perl(File::Find) -BuildRequires: perl(filetest) BuildRequires: perl(HTTP::Date) BuildRequires: perl(IO::Pty) -BuildRequires: perl(JSON) -BuildRequires: perl(JSON::PP) BuildRequires: perl(Mail::Address) BuildRequires: perl(Memoize) -BuildRequires: perl(POSIX) -BuildRequires: perl(Term::ReadLine) BuildRequires: perl(Test::More) BuildRequires: perl(Time::HiRes) -%if %{with python3} -BuildRequires: python3-devel -%else %if %{with python2} BuildRequires: python2-devel %endif -# endif with python2 +%if %{with python3} +BuildRequires: python3-devel %endif -# endif with python3 BuildRequires: subversion BuildRequires: subversion-perl -BuildRequires: tar BuildRequires: time -BuildRequires: zip -BuildRequires: zstd -%endif -# endif with tests Requires: git-core = %{version}-%{release} Requires: git-core-doc = %{version}-%{release} %if ! %{defined perl_bootstrap} Requires: perl(Term::ReadKey) %endif -# endif ! defined perl_bootstrap Requires: perl-Git = %{version}-%{release} -# Obsolete git-cvs if it's disabled -%if %{without cvs} -Obsoletes: git-cvs < %{?epoch:%{epoch}:}%{version}-%{release} +%if %{emacs_filesystem} +Requires: emacs-filesystem >= %{_emacs_version} %endif -# endif without cvs -# Obsolete git-p4 if it's disabled -%if %{without p4} -Obsoletes: git-p4 < %{?epoch:%{epoch}:}%{version}-%{release} -%endif -# endif without p4 +# Obsolete gnome-keyring credential helper (remove in Fedora 29) +Obsoletes: git-gnome-keyring < 2.11.1-4 %description Git is a fast, scalable, distributed revision control system with an @@ -318,30 +248,24 @@ tools for integrating with other SCMs, install the git-all meta-package. Summary: Meta-package to pull in all git tools BuildArch: noarch Requires: git = %{version}-%{release} -%if %{with libsecret} -Requires: git-credential-libsecret = %{version}-%{release} -%endif -# endif with libsecret %if %{with cvs} Requires: git-cvs = %{version}-%{release} %endif -# endif with cvs -Requires: git-daemon = %{version}-%{release} Requires: git-email = %{version}-%{release} Requires: git-gui = %{version}-%{release} %if %{with p4} Requires: git-p4 = %{version}-%{release} %endif -# endif with p4 Requires: git-subtree = %{version}-%{release} Requires: git-svn = %{version}-%{release} -Requires: git-instaweb = %{version}-%{release} Requires: gitk = %{version}-%{release} Requires: perl-Git = %{version}-%{release} %if ! %{defined perl_bootstrap} Requires: perl(Term::ReadKey) %endif -# endif ! defined perl_bootstrap +%if ! %{emacs_filesystem} +Requires: emacs-git = %{version}-%{release} +%endif %description all Git is a fast, scalable, distributed revision control system with an unusually rich command set that provides both high-level operations @@ -371,16 +295,6 @@ Requires: git-core = %{version}-%{release} %description core-doc Documentation files for git-core package including man pages. -%if %{with libsecret} -%package credential-libsecret -Summary: Git helper for accessing credentials via libsecret -BuildRequires: libsecret-devel -Requires: git = %{version}-%{release} -%description credential-libsecret -%{summary}. -%endif -# endif with libsecret - %if %{with cvs} %package cvs Summary: Git tools for importing CVS repositories @@ -392,12 +306,18 @@ Requires: perl(DBD::SQLite) %description cvs %{summary}. %endif -# endif with cvs %package daemon Summary: Git protocol daemon Requires: git-core = %{version}-%{release} -%{?systemd_requires} +%if %{use_systemd} +Requires: systemd +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd +%else +Requires: xinetd +%endif %description daemon The git daemon for supporting git:// access to git repositories @@ -406,35 +326,32 @@ Summary: Git tools for sending patches via email BuildArch: noarch Requires: git = %{version}-%{release} Requires: perl(Authen::SASL) -Requires: perl(Cwd) -%if ! 0%{?rhel} -# RHEL lacks perl-Email-Valid (rhbz#2166718) -Requires: perl(Email::Valid) -%endif -Requires: perl(File::Spec) -Requires: perl(File::Spec::Functions) -Requires: perl(File::Temp) -Requires: perl(IO::Socket::SSL) -Requires: perl(Mail::Address) -Requires: perl(MIME::Base64) -Requires: perl(MIME::QuotedPrint) -Requires: perl(Net::Domain) -Requires: perl(Net::SMTP) Requires: perl(Net::SMTP::SSL) -Requires: perl(POSIX) -Requires: perl(Sys::Hostname) -Requires: perl(Term::ANSIColor) -Requires: perl(Term::ReadLine) -Requires: perl(Text::ParseWords) %description email %{summary}. +%if ! %{emacs_filesystem} +%package -n emacs-git +Summary: Git version control system support for Emacs +Requires: git = %{version}-%{release} +BuildArch: noarch +Requires: emacs(bin) >= %{_emacs_version} +%description -n emacs-git +%{summary}. + +%package -n emacs-git-el +Summary: Elisp source files for git version control system support for Emacs +BuildArch: noarch +Requires: emacs-git = %{version}-%{release} +%description -n emacs-git-el +%{summary}. +%endif + %package -n gitk Summary: Git repository browser BuildArch: noarch Requires: git = %{version}-%{release} -Requires: git-gui = %{version}-%{release} -Requires: tk +Requires: tk >= 8.4 %description -n gitk %{summary}. @@ -453,47 +370,21 @@ Requires: tk >= 8.4 %description gui %{summary}. -%package instaweb -Summary: Repository browser in gitweb -BuildArch: noarch -Requires: git = %{version}-%{release} -Requires: gitweb = %{version}-%{release} -%if 0%{?rhel} >= 9 -Requires: httpd -%else -Requires: lighttpd -%endif - -%description instaweb -A simple script to set up gitweb and a web server for browsing the local -repository. - %if %{with p4} %package p4 Summary: Git tools for working with Perforce depots BuildArch: noarch -%if %{with python3} -BuildRequires: python3-devel -%else -%if %{with python2} BuildRequires: python2-devel -%endif -# endif with python2 -%endif -# endif with python3 Requires: git = %{version}-%{release} %description p4 %{summary}. %endif -# endif with p4 %package -n perl-Git Summary: Perl interface to Git BuildArch: noarch Requires: git = %{version}-%{release} -%if %{with perl_modcompat} Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) -%endif %description -n perl-Git %{summary}. @@ -501,15 +392,12 @@ Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $versi Summary: Perl interface to Git::SVN BuildArch: noarch Requires: git = %{version}-%{release} -%if %{with perl_modcompat} Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) -%endif %description -n perl-Git-SVN %{summary}. %package subtree Summary: Git tools to merge and split repositories -BuildArch: noarch Requires: git-core = %{version}-%{release} %description subtree Git subtrees allow subprojects to be included within a subdirectory @@ -518,71 +406,68 @@ history. %package svn Summary: Git tools for interacting with Subversion repositories -BuildArch: noarch Requires: git = %{version}-%{release} Requires: perl(Digest::MD5) %if ! %{defined perl_bootstrap} Requires: perl(Term::ReadKey) %endif -# endif ! defined perl_bootstrap Requires: subversion %description svn %{summary}. %prep # Verify GPG signatures -xz -dc '%{SOURCE0}' | %{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data=- +gpghome="$(mktemp -qd)" # Ensure we don't use any existing gpg keyrings +key="%{SOURCE9}" +src="%{SOURCE0}" +# Ignore noisy output from GnuPG 2.0, used on EL <= 7 +# https://bugs.gnupg.org/gnupg/issue1555 +gpg2 --dearmor --quiet --batch --yes $key >/dev/null +# Upstream signs the uncompressed tarballs +tar=${src/%.xz/} +xz -dc $src > $tar +gpgv2 --homedir "$gpghome" --quiet --keyring $key.gpg $tar.sign $tar +rm -rf "$tar" "$gpghome" # Cleanup tar files and tmp gpg home dir -%autosetup -p1 -n %{name}-%{real_version} +# Ensure a blank line follows autosetup, el6 chokes otherwise +# https://bugzilla.redhat.com/1310704 +%autosetup -p1 -n %{name}-%{version}%{?rcrev} # Install print-failed-test-output script install -p -m 755 %{SOURCE99} print-failed-test-output -# Remove git-archimport -sed -i '/^SCRIPT_PERL += git-archimport\.perl$/d' Makefile +# Remove git-archimport from command list sed -i '/^git-archimport/d' command-list.txt -rm git-archimport.perl Documentation/git-archimport.adoc -%if %{without cvs} +%if ! %{with cvs} # Remove git-cvs* from command list sed -i '/^git-cvs/d' command-list.txt %endif -# endif without cvs -%if %{without p4} +%if ! %{with p4} # Remove git-p4 from command list sed -i '/^git-p4/d' command-list.txt %endif -# endif without p4 # Use these same options for every invocation of 'make'. # Otherwise it will rebuild in %%install due to flags changes. -# Pipe to tee to aid confirmation/verification of settings. -cat << \EOF | tee config.mak +cat << \EOF > config.mak V = 1 -CFLAGS = %{build_cflags} -LDFLAGS = %{build_ldflags} -USE_LIBPCRE = 1 +CFLAGS = %{optflags} +LDFLAGS = %{__global_ldflags} +NEEDS_CRYPTO_WITH_SSL = 1 +USE_LIBPCRE2 = 1 ETC_GITCONFIG = %{_sysconfdir}/gitconfig -INSTALL_SYMLINKS = 1 GITWEB_PROJECTROOT = %{_localstatedir}/lib/git GNU_ROFF = 1 +NO_CROSS_DIRECTORY_HARDLINKS = 1 +NO_INSTALL_HARDLINKS = 1 NO_PERL_CPAN_FALLBACKS = 1 -%if 0%{?rhel} && 0%{?rhel} < 8 -NO_UNCOMPRESS2 = 1 -%endif -%if %{with python3} -PYTHON_PATH = %{__python3} -%else %if %{with python2} PYTHON_PATH = %{__python2} %else NO_PYTHON = 1 %endif -%endif -%if %{with asciidoctor} -USE_ASCIIDOCTOR = 1 -%endif htmldir = %{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}} prefix = %{_prefix} perllibdir = %{perl_vendorlib} @@ -590,82 +475,95 @@ gitwebdir = %{_localstatedir}/www/git # Test options DEFAULT_TEST_TARGET = prove -GIT_PROVE_OPTS = --verbose --normalize %{?_smp_mflags} --formatter=TAP::Formatter::File +GIT_PROVE_OPTS = --verbose --normalize %{?_smp_mflags} GIT_TEST_OPTS = -x --verbose-log +TEST_SHELL_PATH = /bin/bash EOF # Filter bogus perl requires # packed-refs comes from a comment in contrib/hooks/update-paranoid +%if %{use_new_rpm_filters} %{?perl_default_filter} %global __requires_exclude %{?__requires_exclude:%__requires_exclude|}perl\\(packed-refs\\) %if ! %{defined perl_bootstrap} %global __requires_exclude %{?__requires_exclude:%__requires_exclude|}perl\\(Term::ReadKey\\) %endif -# endif ! defined perl_bootstrap +%else +cat << \EOF > %{name}-req +#!/bin/sh +%{__perl_requires} $* |\ +sed -e '/perl(packed-refs)/d' +EOF -# Exclude sample hook files from automatic dependency detection -%global __requires_exclude_from ^%{_datadir}/git-core/templates/hooks/.*sample$ +%global __perl_requires %{_builddir}/%{name}-%{version}%{?rcrev}/%{name}-req +chmod +x %{__perl_requires} +%endif # Remove Git::LoadCPAN to ensure we use only system perl modules. This also # allows the dependencies to be automatically processed by rpm. rm -rf perl/Git/LoadCPAN{.pm,/} grep -rlZ '^use Git::LoadCPAN::' | xargs -r0 sed -i 's/Git::LoadCPAN:://g' -# Update gitweb default home link string -sed -i 's@"++GITWEB_HOME_LINK_STR++"@$ENV{"SERVER_NAME"} ? "git://" . $ENV{"SERVER_NAME"} : "projects"@' \ - gitweb/gitweb.perl - -# Move contrib/{contacts,subtree} docs to Documentation so they build with the -# proper asciidoc/docbook/xmlto options -mv contrib/{contacts,subtree}/git-*.adoc Documentation/ - %build -# Improve build reproducibility -export TZ=UTC -export SOURCE_DATE_EPOCH=$(date -r version +%%s 2>/dev/null) - %make_build all %{?with_docs:doc} -%make_build -C contrib/contacts/ all +make -C contrib/emacs -%if %{with libsecret} +%if %{libsecret} %make_build -C contrib/credential/libsecret/ %endif -# endif with libsecret - -%make_build -C contrib/credential/netrc/ +make -C contrib/credential/netrc/ %make_build -C contrib/diff-highlight/ -%make_build -C contrib/subtree/ all +%make_build -C contrib/subtree/ # Fix shebang in a few places to silence rpmlint complaints +# +# The multimail hook is installed with git. Use python3 to avoid an +# unnecessary python2 dependency. %if %{with python2} sed -i -e '1s@#! */usr/bin/env python$@#!%{__python2}@' \ - contrib/fast-import/import-zips.py -%else -# Remove contrib/fast-import/import-zips.py which requires python2. -rm -rf contrib/fast-import/import-zips.py + contrib/fast-import/import-zips.py \ + contrib/hg-to-git/hg-to-git.py \ + contrib/hooks/multimail/git_multimail.py \ + contrib/hooks/multimail/migrate-mailhook-config \ + contrib/hooks/multimail/post-receive.example \ + contrib/svn-fe/svnrdump_sim.py +%endif +%if %{with python3} +sed -i -e '1s@#!\( */usr/bin/env python\|%{__python2}\)$@#!%{__python3}@' \ + contrib/hooks/multimail/git_multimail.py \ + contrib/hooks/multimail/migrate-mailhook-config \ + contrib/hooks/multimail/post-receive.example %endif -# endif with python2 %install %make_install %{?with_docs:install-doc} -%make_install -C contrib/contacts +# symlink %%{gitexecdir} copies of git, git-shell, and git-upload-pack +for i in git git-shell git-upload-pack; do + ln -sf ../../bin/$i %{buildroot}%{gitexecdir}/$i +done -%if %{with libsecret} +%global elispdir %{_emacs_sitelispdir}/git +make -C contrib/emacs install \ + emacsdir=%{buildroot}%{elispdir} +for elc in %{buildroot}%{elispdir}/*.elc ; do + install -pm 644 contrib/emacs/$(basename $elc .elc).el \ + %{buildroot}%{elispdir} +done +install -Dpm 644 %{SOURCE10} \ + %{buildroot}%{_emacs_sitestartdir}/git-init.el + +%if %{libsecret} install -pm 755 contrib/credential/libsecret/git-credential-libsecret \ %{buildroot}%{gitexecdir} %endif -# endif with libsecret install -pm 755 contrib/credential/netrc/git-credential-netrc \ %{buildroot}%{gitexecdir} -# temporarily move contrib/credential/netrc aside to prevent it from being -# deleted in the docs preparation, so the tests can be run in %%check -mv contrib/credential/netrc . -%make_install -C contrib/subtree +%make_install -C contrib/subtree %{?with_docs:install-doc} mkdir -p %{buildroot}%{_sysconfdir}/httpd/conf.d install -pm 0644 %{SOURCE13} %{buildroot}%{_sysconfdir}/httpd/conf.d/%{gitweb_httpd_conf} @@ -677,34 +575,25 @@ install -Dpm 0755 contrib/diff-highlight/diff-highlight \ %{buildroot}%{_datadir}/git-core/contrib/diff-highlight rm -rf contrib/diff-highlight/{Makefile,diff-highlight,*.perl,t} -# Remove contrib/persistent-https; a) this code requires compilation; and b) it -# is licensed differently than git -rm -rf contrib/persistent-https - -# Remove contrib/scalar to avoid cruft in the git-core-doc docdir -rm -rf contrib/scalar - # Clean up contrib/subtree to avoid cruft in the git-core-doc docdir -rm -rf contrib/subtree/{INSTALL,Makefile,git-subtree*,t} +# Move git-subtree.txt to Documentation so it can be installed later in docdir +mv contrib/subtree/git-subtree.txt Documentation/ +rm -rf contrib/subtree/{INSTALL,Makefile,git-subtree{,.{1,html,sh,txt,xml}},t} -%if %{without cvs} -# Remove git-cvs* and gitcvs* -find %{buildroot} Documentation \( -type f -o -type l \) \ - \( -name 'git-cvs*' -o -name 'gitcvs*' \) -exec rm -f {} ';' +# git-archimport is not supported +find %{buildroot} Documentation -type f -name 'git-archimport*' -exec rm -f {} ';' + +%if ! %{with cvs} +# Remove git-cvs* from %%{_bindir} and %%{gitexecdir} +find %{buildroot}{%{_bindir},%{gitexecdir}} -type f -name 'git-cvs*' -exec rm -f {} ';' %endif -# endif without cvs -%if %{without p4} -# Remove git-p4* and mergetools/p4merge -find %{buildroot} Documentation -type f -name 'git-p4*' -exec rm -f {} ';' -rm -f %{buildroot}%{gitexecdir}/mergetools/p4merge +%if ! %{with p4} +# Remove *p4* from %%{_bindir} and %%{gitexecdir} +find %{buildroot}{%{_bindir},%{gitexecdir}} -type f -name '*p4*' -exec rm -f {} ';' %endif -# endif without p4 -# Remove unneeded git-remote-testsvn so git-svn can be noarch -rm -f %{buildroot}%{gitexecdir}/git-remote-testsvn - -exclude_re="email|git-(citool|credential-libsecret|cvs|daemon|gui|instaweb|p4|subtree|svn)|gitk|gitweb|p4merge" +exclude_re="archimport|email|git-(citool|cvs|daemon|gui|p4|subtree|(remote-test)?svn)|gitk|p4merge" (find %{buildroot}{%{_bindir},%{_libexecdir}} -type f -o -type l | grep -vE "$exclude_re" | sed -e s@^%{buildroot}@@) > bin-man-doc-files (find %{buildroot}{%{_bindir},%{_libexecdir}} -mindepth 1 -type d | grep -vE "$exclude_re" | sed -e 's@^%{buildroot}@%dir @') >> bin-man-doc-files (find %{buildroot}%{perl_vendorlib} -type f | sed -e s@^%{buildroot}@@) > perl-git-files @@ -717,24 +606,41 @@ sed -i "/Git\/SVN/ d" perl-git-files %else rm -rf %{buildroot}%{_mandir} %endif -# endif with docs mkdir -p %{buildroot}%{_localstatedir}/lib/git +%if %{use_systemd} install -Dp -m 0644 %{SOURCE16} %{buildroot}%{_unitdir}/git.socket perl -p \ -e "s|\@GITEXECDIR\@|%{gitexecdir}|g;" \ -e "s|\@BASE_PATH\@|%{_localstatedir}/lib/git|g;" \ %{SOURCE15} > %{buildroot}%{_unitdir}/git@.service +%else +mkdir -p %{buildroot}%{_sysconfdir}/xinetd.d +perl -p \ + -e "s|\@GITEXECDIR\@|%{gitexecdir}|g;" \ + -e "s|\@BASE_PATH\@|%{_localstatedir}/lib/git|g;" \ + %{SOURCE11} > %{buildroot}%{_sysconfdir}/xinetd.d/git +%endif # Setup bash completion -install -Dpm 644 contrib/completion/git-completion.bash %{buildroot}%{bash_completions_dir}/git -ln -s git %{buildroot}%{bash_completions_dir}/gitk +install -Dpm 644 contrib/completion/git-completion.bash %{buildroot}%{bashcompdir}/git +ln -s git %{buildroot}%{bashcompdir}/gitk # Install tcsh completion mkdir -p %{buildroot}%{_datadir}/git-core/contrib/completion install -pm 644 contrib/completion/git-completion.tcsh \ %{buildroot}%{_datadir}/git-core/contrib/completion/ +# Drop .py extension from git_multimail to avoid byte-compiling +mv contrib/hooks/multimail/git_multimail{.py,} + +# Move contrib/hooks out of %%docdir +mkdir -p %{buildroot}%{_datadir}/git-core/contrib +mv contrib/hooks %{buildroot}%{_datadir}/git-core/contrib +pushd contrib > /dev/null +ln -s ../../../git-core/contrib/hooks +popd > /dev/null + # Install git-prompt.sh mkdir -p %{buildroot}%{_datadir}/git-core/contrib/completion install -pm 644 contrib/completion/git-prompt.sh \ @@ -743,13 +649,6 @@ install -pm 644 contrib/completion/git-prompt.sh \ # install git-gui .desktop file desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{SOURCE12} -# symlink git-citool to git-gui if they are identical -pushd %{buildroot}%{gitexecdir} >/dev/null -if cmp -s git-gui git-citool 2>/dev/null; then - ln -svf git-gui git-citool -fi -popd >/dev/null - # find translations %find_lang %{name} %{name}.lang cat %{name}.lang >> bin-man-doc-files @@ -763,23 +662,22 @@ chmod a-x Documentation/technical/api-index.sh find contrib -type f -print0 | xargs -r0 chmod -x # Split core files -not_core_re="git-(add--interactive|contacts|credential-netrc|filter-branch|instaweb|request-pull|send-mail)|gitweb" +not_core_re="git-(add--interactive|credential-(libsecret|netrc)|difftool|filter-branch|instaweb|request-pull|send-mail)|gitweb" grep -vE "$not_core_re|%{_mandir}" bin-man-doc-files > bin-files-core touch man-doc-files-core %if %{with docs} grep -vE "$not_core_re" bin-man-doc-files | grep "%{_mandir}" > man-doc-files-core %endif -# endif with docs grep -E "$not_core_re" bin-man-doc-files > bin-man-doc-git-files ##### DOC # place doc files into %%{_pkgdocdir} and split them into expected packages # contrib -not_core_doc_re="(git-(cvs|gui|citool|daemon|instaweb|subtree))|p4|svn|email|gitk|gitweb" +not_core_doc_re="(git-(cvs|gui|citool|daemon|subtree))|p4|svn|email|gitk|gitweb" mkdir -p %{buildroot}%{_pkgdocdir}/ -cp -pr CODE_OF_CONDUCT.md README.md Documentation/*.adoc Documentation/RelNotes contrib %{buildroot}%{_pkgdocdir}/ -# Remove contrib/ files/dirs which have nothing useful for documentation -rm -rf %{buildroot}%{_pkgdocdir}/contrib/{contacts,credential}/ +cp -pr README.md Documentation/*.txt Documentation/RelNotes contrib %{buildroot}%{_pkgdocdir}/ +# Remove contrib/{credential,svn-fe}, they have nothing useful for documentation +rm -rf %{buildroot}%{_pkgdocdir}/contrib/{credential,svn-fe}/ cp -p gitweb/INSTALL %{buildroot}%{_pkgdocdir}/INSTALL.gitweb cp -p gitweb/README %{buildroot}%{_pkgdocdir}/README.gitweb @@ -789,7 +687,6 @@ cp -pr Documentation/{howto,technical} %{buildroot}%{_pkgdocdir}/ find %{buildroot}%{_pkgdocdir}/{howto,technical} -type f \ |grep -o "%{_pkgdocdir}.*$" >> man-doc-files-core %endif -# endif with docs { find %{buildroot}%{_pkgdocdir} -type f -maxdepth 1 \ @@ -803,128 +700,72 @@ find %{buildroot}%{_pkgdocdir}/{howto,technical} -type f \ ##### #DOC %check -%if %{without tests} -echo "*** Skipping tests" -exit 0 -%endif -# endif without tests - %if %{with docs} && %{with linkcheck} # Test links in HTML documentation find %{buildroot}%{_pkgdocdir} -name "*.html" -print0 | xargs -r0 linkchecker %endif -# endif with docs && with linkcheck # Tests to skip on all releases and architectures -# -# t5559-http-fetch-smart-http2 runs t5551-http-fetch-smart with -# HTTP_PROTO=HTTP/2. Unfortunately, it fails quite regularly. -# https://lore.kernel.org/git/Y4fUntdlc1mqwad5@pobox.com/ -GIT_SKIP_TESTS="t5559" - -%if 0%{?rhel} && 0%{?rhel} < 8 -# Skip tests which require mod_http2 on el7 -GIT_SKIP_TESTS="$GIT_SKIP_TESTS t5559" -%endif -# endif rhel < 8 +GIT_SKIP_TESTS="" %ifarch aarch64 %{arm} %{power64} # Skip tests which fail on aarch64, arm, and ppc # # The following 2 tests use run_with_limited_cmdline, which calls ulimit -s 128 # to limit the maximum stack size. -# t5541.36 'push 2000 tags over http' +# t5541.33 'push 2000 tags over http' # t5551.25 'clone the 2,000 tag repo to check OS command line overflow' -GIT_SKIP_TESTS="$GIT_SKIP_TESTS t5541.37 t5551.25" +GIT_SKIP_TESTS="$GIT_SKIP_TESTS t5541.33 t5551.25" %endif -# endif aarch64 %%{arm} %%{power64} -%if 0%{?rhel} == 8 && "%{_arch}" == "s390x" -# Skip tests which fail on s390x on rhel-8 +%ifarch %{power64} +# Skip tests which fail on ppc # -# The following tests fail on s390x & el8. The cause should be investigated. -# However, it's a lower priority since the same tests work consistently on -# s390x with Fedora and RHEL-9. The failures seem to originate in t5300. -# -# t5300.10 'unpack without delta' -# t5300.12 'unpack with REF_DELTA' -# t5300.13 'unpack with REF_DELTA' -# t5300.14 'unpack with OFS_DELTA' -# t5300.18 'compare delta flavors' -# t5300.20 'use packed deltified (REF_DELTA) objects' -# t5300.23 'verify pack' -# t5300.24 'verify pack -v' -# t5300.25 'verify-pack catches mismatched .idx and .pack files' -# t5300.29 'verify-pack catches a corrupted sum of the index file itself' -# t5300.30 'build pack index for an existing pack' -# t5300.45 'make sure index-pack detects the SHA1 collision' -# t5300.46 'make sure index-pack detects the SHA1 collision (large blobs)' -# t5303.5 'create corruption in data of first object' -# t5303.7 '... and loose copy of second object allows for partial recovery' -# t5303.11 'create corruption in data of first delta' -# t6300.35 'basic atom: head objectsize:disk' -# t6300.91 'basic atom: tag objectsize:disk' -# t6300.92 'basic atom: tag *objectsize:disk' -GIT_SKIP_TESTS="$GIT_SKIP_TESTS t5300.1[02348] t5300.2[03459] t5300.30 t5300.4[56] t5303.[57] t5303.11 t6300.35 t6300.9[12]" +# t9115-git-svn-dcommit-funky-renames is disabled because it frequently fails. +# The port it uses (9115) is already in use. It is unclear if this is +# due to an issue in the test suite or a conflict with some other process on +# the build host. It only appears to occur on ppc-arches. +GIT_SKIP_TESTS="$GIT_SKIP_TESTS t9115" %endif -# endif rhel == 8 && arch == s390x -%if "%{_arch}" == "s390x" -# Skip tests which fail on s390x -# -# The following tests are failing on s390x. -# https://lore.kernel.org/git/4dc4c8cd-c0cc-4784-8fcf-defa3a051087@mit.edu/ -# -# t8020.16 'cross merge boundaries in blaming' -# t8020.19 'last-modified merge undoes changes' -GIT_SKIP_TESTS="$GIT_SKIP_TESTS t8020.16 t8020.19" -%endif -# endif "%{_arch}" == "s390x" export GIT_SKIP_TESTS # Set LANG so various UTF-8 tests are run export LANG=en_US.UTF-8 # Explicitly enable tests which may be skipped opportunistically -# Check for variables set via test_bool_env in the test suite: -# git grep 'test_bool_env GIT_' -- t/{lib-,t[0-9]}*.sh | -# sed -r 's/.* (GIT_[^ ]+) .*/\1/g' | sort -u +# (Check for variables set via test_tristate in the test suite) +export GIT_SVN_TEST_HTTPD=true export GIT_TEST_GIT_DAEMON=true export GIT_TEST_HTTPD=true export GIT_TEST_SVNSERVE=true -export GIT_TEST_SVN_HTTPD=true - -# Create tmpdir for test output and update GIT_TEST_OPTS -# Also update GIT-BUILD-OPTIONS to keep make from any needless rebuilding -export testdir=$(mktemp -d -p /tmp git-t.XXXX) -sed -i "s@^GIT_TEST_OPTS = .*@& --root=$testdir@" config.mak -touch -r GIT-BUILD-OPTIONS ts -sed -i "s@\(GIT_TEST_OPTS='.*\)'@\1 --root=$testdir'@" GIT-BUILD-OPTIONS -touch -r ts GIT-BUILD-OPTIONS # Run the tests -%__make -C t all || ./print-failed-test-output - -# Run contrib/credential/netrc tests -mkdir -p contrib/credential -mv netrc contrib/credential/ -%make_build -C contrib/credential/netrc/ test || \ -%make_build -C contrib/credential/netrc/ testverbose - -# Clean up test dir -rmdir --ignore-fail-on-non-empty "$testdir" +make test || ./print-failed-test-output +%if %{use_systemd} %post daemon -%systemd_post git.socket +%systemd_post git@.service %preun daemon -%systemd_preun git.socket +%systemd_preun git@.service %postun daemon -%systemd_postun_with_restart git.socket +%systemd_postun_with_restart git@.service +%endif %files -f bin-man-doc-git-files +%if %{emacs_filesystem} +%{elispdir} +%{_emacs_sitestartdir}/git-init.el +%endif %{_datadir}/git-core/contrib/diff-highlight +%{_datadir}/git-core/contrib/hooks/multimail +%{_datadir}/git-core/contrib/hooks/update-paranoid +%{_datadir}/git-core/contrib/hooks/setgitperms.perl +%{_datadir}/git-core/templates/hooks/fsmonitor-watchman.sample +%{_datadir}/git-core/templates/hooks/pre-rebase.sample +%{_datadir}/git-core/templates/hooks/prepare-commit-msg.sample %files all # No files for you! @@ -936,7 +777,13 @@ rmdir --ignore-fail-on-non-empty "$testdir" %license COPYING # exclude is best way here because of troubles with symlinks inside git-core/ %exclude %{_datadir}/git-core/contrib/diff-highlight -%{bash_completions_dir}/git +%exclude %{_datadir}/git-core/contrib/hooks/multimail +%exclude %{_datadir}/git-core/contrib/hooks/update-paranoid +%exclude %{_datadir}/git-core/contrib/hooks/setgitperms.perl +%exclude %{_datadir}/git-core/templates/hooks/fsmonitor-watchman.sample +%exclude %{_datadir}/git-core/templates/hooks/pre-rebase.sample +%exclude %{_datadir}/git-core/templates/hooks/prepare-commit-msg.sample +%{bashcomproot} %{_datadir}/git-core/ %files core-doc -f man-doc-files-core @@ -944,52 +791,65 @@ rmdir --ignore-fail-on-non-empty "$testdir" # .py files are only bytecompiled on EL <= 7 %exclude %{_pkgdocdir}/contrib/*/*.py[co] %endif -# endif rhel <= 7 - -%if %{with libsecret} -%files credential-libsecret -%{gitexecdir}/git-credential-libsecret +%{_pkgdocdir}/contrib/hooks +%if ! %{with cvs} +%{?with_docs:%{_mandir}/man1/*cvs*.1*} +%{?with_docs:%{_pkgdocdir}/git-cvs*} +%endif +%if ! %{with p4} +%{?with_docs:%{_mandir}/man1/*p4*.1*} +%{?with_docs:%{_pkgdocdir}/*p4*} %endif -# endif with libsecret %if %{with cvs} %files cvs -%{_pkgdocdir}/*git-cvs*.adoc +%{_pkgdocdir}/*git-cvs*.txt %{_bindir}/git-cvsserver %{gitexecdir}/*cvs* %{?with_docs:%{_mandir}/man1/*cvs*.1*} %{?with_docs:%{_pkgdocdir}/*git-cvs*.html} %endif -# endif with cvs %files daemon -%{_pkgdocdir}/git-daemon*.adoc +%{_pkgdocdir}/git-daemon*.txt +%if %{use_systemd} %{_unitdir}/git.socket -%config(noreplace) %{_unitdir}/git@.service +%{_unitdir}/git@.service +%else +%config(noreplace)%{_sysconfdir}/xinetd.d/git +%endif %{gitexecdir}/git-daemon %{_localstatedir}/lib/git %{?with_docs:%{_mandir}/man1/git-daemon*.1*} %{?with_docs:%{_pkgdocdir}/git-daemon*.html} +%if ! %{emacs_filesystem} +%files -n emacs-git +%{_pkgdocdir}/contrib/emacs/README +%dir %{elispdir} +%{elispdir}/*.elc +%{_emacs_sitestartdir}/git-init.el + +%files -n emacs-git-el +%{elispdir}/*.el +%endif + %files email -%{_pkgdocdir}/*email*.adoc +%{_pkgdocdir}/*email*.txt %{gitexecdir}/*email* %{?with_docs:%{_mandir}/man1/*email*.1*} %{?with_docs:%{_pkgdocdir}/*email*.html} %files -n gitk -%{_pkgdocdir}/*gitk*.adoc +%{_pkgdocdir}/*gitk*.txt %{_bindir}/*gitk* %{_datadir}/gitk -%{bash_completions_dir}/gitk %{?with_docs:%{_mandir}/man1/*gitk*.1*} %{?with_docs:%{_pkgdocdir}/*gitk*.html} %files -n gitweb %{_pkgdocdir}/*.gitweb -%{_pkgdocdir}/gitweb*.adoc -%{?with_docs:%{_mandir}/man1/gitweb.1*} -%{?with_docs:%{_mandir}/man5/gitweb.conf.5*} +%{_pkgdocdir}/gitweb*.txt %{?with_docs:%{_pkgdocdir}/gitweb*.html} %config(noreplace)%{_sysconfdir}/gitweb.conf %config(noreplace)%{_sysconfdir}/httpd/conf.d/%{gitweb_httpd_conf} @@ -1000,28 +860,21 @@ rmdir --ignore-fail-on-non-empty "$testdir" %{gitexecdir}/git-citool %{_datadir}/applications/*git-gui.desktop %{_datadir}/git-gui/ -%{_pkgdocdir}/git-gui.adoc -%{_pkgdocdir}/git-citool.adoc +%{_pkgdocdir}/git-gui.txt +%{_pkgdocdir}/git-citool.txt %{?with_docs:%{_mandir}/man1/git-gui.1*} %{?with_docs:%{_pkgdocdir}/git-gui.html} %{?with_docs:%{_mandir}/man1/git-citool.1*} %{?with_docs:%{_pkgdocdir}/git-citool.html} -%files instaweb -%{gitexecdir}/git-instaweb -%{_pkgdocdir}/git-instaweb.adoc -%{?with_docs:%{_mandir}/man1/git-instaweb.1*} -%{?with_docs:%{_pkgdocdir}/git-instaweb.html} - %if %{with p4} %files p4 %{gitexecdir}/*p4* %{gitexecdir}/mergetools/p4merge -%{_pkgdocdir}/*p4*.adoc +%{_pkgdocdir}/*p4*.txt %{?with_docs:%{_mandir}/man1/*p4*.1*} %{?with_docs:%{_pkgdocdir}/*p4*.html} %endif -# endif with p4 %files -n perl-Git -f perl-git-files %{?with_docs:%{_mandir}/man3/Git.3pm*} @@ -1030,390 +883,1309 @@ rmdir --ignore-fail-on-non-empty "$testdir" %files subtree %{gitexecdir}/git-subtree -%{_pkgdocdir}/git-subtree.adoc +%{_pkgdocdir}/git-subtree.txt %{?with_docs:%{_mandir}/man1/git-subtree.1*} %{?with_docs:%{_pkgdocdir}/git-subtree.html} %files svn +%{gitexecdir}/git-remote-testsvn %{gitexecdir}/git-svn -%{_pkgdocdir}/git-svn.adoc +%{_pkgdocdir}/git-svn.txt %{?with_docs:%{_mandir}/man1/git-svn.1*} %{?with_docs:%{_pkgdocdir}/git-svn.html} %changelog -* Thu Nov 20 2025 Ondřej Pohořelský - 2.52.0-1 -- update to 2.52.0 +* Mon Nov 26 2018 Todd Zullinger - 2.17.2-2 +- apply upstream run-command PATH fix (CVE-2018-19486) -* Thu Oct 23 2025 Ondřej Pohořelský - 2.51.1-1 -- update to 2.51.1 +* Fri Oct 05 2018 Todd Zullinger - 2.17.2-1 +- Update to 2.17.2 (CVE-2018-17456) -* Sun Oct 12 2025 Yaakov Selkowitz - 2.51.0-3 -- Revbump for tcl/tk 9 +* Thu Jun 14 2018 Todd Zullinger - 2.17.1-3 +- Apply upstream zlib buffer handling patch (#1582555) -* Thu Aug 21 2025 Ondřej Pohořelský - 2.51.0-2 -- exclude sample hook files from automatic dependency detection +* Wed May 30 2018 Todd Zullinger +- Disable jgit tests on s390x, they're unreliable +- Use %%make_build and %%make_install +- add -p: fix counting empty context lines in edited patches -* Wed Aug 20 2025 Ondřej Pohořelský - 2.51.0-1 -- update to 2.51.0 +* Tue May 29 2018 Todd Zullinger - 2.17.1-2 +- packfile: Correct zlib buffer handling (#1582555) -* Wed Jul 23 2025 Fedora Release Engineering - 2.50.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild +* Tue May 29 2018 Todd Zullinger - 2.17.1-1 +- Update to 2.17.1 (CVE-2018-11233, CVE-2018-11235) -* Tue Jul 08 2025 Ondřej Pohořelský - 2.50.1-1 -- update to 2.50.1 +* Thu May 24 2018 Todd Zullinger - 2.17.0-4 +- Fix segfault in rev-parse with invalid input (#1581678) +- Move TEST_SHELL_PATH setting to config.mak -* Mon Jun 23 2025 Ondřej Pohořelský - 2.50.0-1 -- update to 2.50.0 +* Mon Apr 16 2018 Todd Zullinger - 2.17.0-3 +- Move linkcheck macro to existing fedora/rhel > 7 block +- Re-enable t5000-tar-tree.sh test on f28 -* Mon Mar 24 2025 Ondřej Pohořelský - 2.49.0-2 -- add the option to sanitize sideband channel messages +* Fri Apr 13 2018 Pavel Cahyna +- Use BuildRequires: perl-interpreter per the packaging guidelines +- Update conditions for future RHEL -* Mon Mar 17 2025 Ondřej Pohořelský - 2.49.0-1 -- update to 2.49.0 +* Tue Apr 10 2018 Todd Zullinger - 2.17.0-2 +- Require perl-generators on EL > 7 -* Thu Feb 6 2025 Yanko Kaneti - 2.48.1-3 -- Keep gitk on tcl/tk 8.x until its ready for 9 +* Mon Apr 09 2018 Todd Zullinger +- daemon: use --log-destination=stderr with systemd +- daemon: fix condition for redirecting stderr +- git-svn: avoid uninitialized value warning -* Thu Jan 16 2025 Fedora Release Engineering - 2.48.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild +* Sun Apr 08 2018 Todd Zullinger +- Clean up redundant and unneeded Requires -* Wed Jan 15 2025 Ondřej Pohořelský - 2.48.1-1 -- update to 2.48.1 +* Sat Apr 07 2018 Todd Zullinger +- Remove Git::LoadCPAN to ensure we use only system perl modules -* Mon Jan 13 2025 Ondřej Pohořelský - 2.48.0-1 -- update to 2.48.0 +* Mon Apr 02 2018 Todd Zullinger +- Allow git-p4 subpackage to be toggled via --with/--without +- Use %%bcond_(with|without) to enable/disable python3 +- Add support for disabling python2 -* Mon Nov 25 2024 Ondřej Pohořelský - 2.47.1-1 -- update to 2.47.1 +* Mon Apr 02 2018 Todd Zullinger - 2.17.0-1 +- Update to 2.17.0 -* Tue Oct 08 2024 Ondřej Pohořelský - 2.47.0-1 -- update to 2.47.0 +* Wed Mar 28 2018 Todd Zullinger - 2.17.0-0.2.rc2 +- Update to 2.17.0-rc2 -* Tue Sep 24 2024 Ondřej Pohořelský - 2.46.2-1 -- update to 2.46.2 +* Tue Mar 27 2018 Todd Zullinger +- Allow cvs subpackage to be toggled via --with/--without -* Mon Sep 16 2024 Ondřej Pohořelský - 2.46.1-1 -- update to 2.46.1 +* Tue Mar 27 2018 Joe Orton +- Disable CVS support on EL > 7 -* Mon Aug 05 2024 Ondřej Pohořelský - 2.46.0-1 -- update to 2.46.0 +* Tue Mar 27 2018 Todd Zullinger - 2.17.0-0.1.rc1.2 +- Add missing perl(Mail::Address) requirement (#1561086) + +* Thu Mar 22 2018 Todd Zullinger - 2.17.0-0.1.rc1.1 +- Drop .py extension from contrib/hooks/multimail/git_multimail.py +- Remove unnecessary "chmod +x contrib/hooks/*" -* Thu Jul 18 2024 Fedora Release Engineering - 2.45.2-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild +* Wed Mar 21 2018 Todd Zullinger - 2.17.0-0.1.rc1 +- Update to 2.17.0-rc1 -* Mon Jun 03 2024 Ondřej Pohořelský - 2.45.2-2 -- add glibc-utils BuildRequires +* Fri Mar 16 2018 Todd Zullinger +- Add findutils BuildRequires, improve 'find | xargs' calls -* Mon Jun 03 2024 Ondřej Pohořelský - 2.45.2-1 -- update to 2.45.2 +* Thu Mar 15 2018 Todd Zullinger - 2.17.0-0.0.rc0 +- Update to 2.17.0-rc0 +- Adjust for simplified perl install +- Require git-core rather than git for git-daemon +- Rename gitweb httpd config file +- Install contrib/diff-highlight (#1550251) -* Wed May 15 2024 Ondřej Pohořelský - 2.45.1-1 -- update to 2.45.1 +* Thu Mar 15 2018 Todd Zullinger +- Use symlinks instead of hardlinks for installed binaries -* Tue Apr 30 2024 Ondřej Pohořelský - 2.45.0-1 -- update to 2.45.0 +* Fri Feb 23 2018 Todd Zullinger +- Improve hardening flags for EL-6 & EL-7 -* Mon Feb 26 2024 Ondřej Pohořelský - 2.44.0-1 -- update to 2.44.0 +* Fri Feb 16 2018 Todd Zullinger - 2.16.2-1 +- Update to 2.16.2 +- Add gawk, gcc, make, and sed BuildRequires -* Thu Feb 15 2024 Ondřej Pohořelský - 2.43.2-1 -- update to 2.43.2 -- Resolves: #2264318 +* Wed Feb 07 2018 Todd Zullinger - 2.16.1-3 +- Order %%files and %%packages sections by name +- Remove obsolete %%defattr +- Don't package contrib/svn-fe in %%doc +- Split git-subtree into a separate package -* Mon Feb 12 2024 Ondřej Pohořelský - 2.43.1-1 -- update to 2.43.1 -- resolves: #2263575 +* Wed Feb 07 2018 Fedora Release Engineering - 2.16.1-2.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild -* Wed Jan 24 2024 Fedora Release Engineering - 2.43.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild +* Mon Jan 29 2018 Todd Zullinger - 2.16.1-2 +- git-svn: avoid segfaults in 'git svn branch', re-enable t9128, t9141, and + t9167 +- Drop obsolete BuildRoot, Group, %%clean, and buildroot cleanup + +* Mon Jan 22 2018 Todd Zullinger - 2.16.1-1 +- Update to 2.16.1 +- Avoid python dependency in git-core (#1536471) + +* Thu Jan 18 2018 Todd Zullinger - 2.16.0-1 +- Update to 2.16.0 +- Use 'prove' as test harness, enable shell tracing +- Disable t5000-tar-tree.sh on x86 in f28 -* Fri Jan 19 2024 Fedora Release Engineering - 2.43.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild +* Fri Jan 12 2018 Todd Zullinger +- Add %%{emacs_filesystem} to simplify emacs support +- Use .in template for git@.service to ensure paths are substituted -* Tue Nov 21 2023 Ondřej Pohořelský - 2.43.0-1 -- update to 2.43.0 +* Thu Jan 11 2018 Todd Zullinger +- Update BuildRequires for tests -* Tue Nov 14 2023 Ondřej Pohořelský - 2.42.1-1 -- update to 2.42.1 +* Mon Jan 08 2018 Todd Zullinger +- Avoid excluding non-existent .py[co] files in %%doc +- Remove obsolete gnome-keyring credential helper -* Wed Nov 1 2023 Joe Orton - 2.42.0-2 -- remove explicit BR for apr-util-bdb (#2247532) +* Sun Jan 07 2018 Todd Zullinger +- Explicitly enable tests which may be skipped opportunistically -* Tue Oct 03 2023 Ondřej Pohořelský - 2.42.0-1 -- update to 2.42.0 +* Sat Dec 30 2017 Todd Zullinger +- Fix perl requires filtering on EL-6 -* Wed Jul 19 2023 Fedora Release Engineering - 2.41.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild +* Thu Nov 30 2017 Todd Zullinger - 2.15.1-3 +- Include verbose logs in build output for 'make test' failures +- Use %%autosetup macro to unpack and patch source +- Remove second make invocation for doc build/install +- Fix builds using '--without docs' +- Mark git-core-docs sub-package noarch +- Avoid failures in svnserve tests when run in parallel +- Run tests in parallel by default on Fedora +- Skip 'git svn branch' tests which fail intermittently +- Re-enable grep tests on s390x -* Thu Jun 01 2023 Todd Zullinger - 2.41.0-1 -- update to 2.41.0 +* Wed Nov 29 2017 Todd Zullinger - 2.15.1-2 +- Fix debuginfo for gnome-keyring and libsecret credential helpers + +* Tue Nov 28 2017 Todd Zullinger - 2.15.1-1 +- Update to 2.15.1 + +* Tue Nov 21 2017 Todd Zullinger +- Add tcl/tk BuildRequires +- Enable support for release candidate builds + +* Tue Nov 07 2017 Todd Zullinger - 2.15.0-2 +- Fix git-clone memory exhaustion (CVE-2017-15298) + Resolves: #1510455, #1510457 +- Disable cross-directory hardlinks +- Drop ancient obsoletes for git and git-arch +- Update summary/description of numerous subpackages +- Fix shebang in a few places to silence rpmlint complaints +- Fix t9020-remote-svn failure when setting PYTHON_PATH +- Rename %%gitcoredir to %%gitexecdir; upstream uses the latter +- Move commands which no longer require perl into git-core +- Move filter-branch out of core, it needs perl now +- Improve test suite coverage + +* Mon Oct 30 2017 Todd Zullinger - 2.15.0-1 +- Update to 2.15.0 + +* Mon Oct 23 2017 Todd Zullinger - 2.14.3-1 +- Update to 2.14.3 + +* Tue Sep 26 2017 Todd Zullinger - 2.14.2-2 +- Update to 2.14.2 + +* Thu Aug 10 2017 Todd Zullinger - 2.14.1-2 +- Rebuild for rpm-4.14 bug (#1480407) + +* Thu Aug 10 2017 Todd Zullinger - 2.14.1-1 +- Update to 2.14.1 (resolves CVE-2017-1000117) -* Wed May 24 2023 Todd Zullinger - 2.41.0~rc2-1 -- update to 2.41.0-rc2 +* Tue Aug 08 2017 Iryna Shcherbina - 2.14.0-2 +- Add a build-time dependency on python2-devel for p4 + Resolves: #1479713 +- Skip all grep tests on s390x for now because it failes intermittently -* Fri May 19 2023 Todd Zullinger - 2.41.0~rc1-1 -- update to 2.41.0-rc1 +* Fri Aug 04 2017 Todd Zullinger - 2.14.0-1 +- Update to 2.14.0 +- Use pcre2 library +- git-p4: explicitly require python2 -* Mon May 15 2023 Todd Zullinger - 2.41.0~rc0-1 -- update to 2.41.0-rc0 +* Tue Aug 01 2017 Todd Zullinger - 2.13.4-1 +- Update to 2.13.4 +- Remove EL-5 and old Fedora conditionals -* Fri May 12 2023 Todd Zullinger - 2.40.1-2 -- use tilde versioning for release candidates +* Sun Jul 30 2017 Florian Weimer - 2.13.3-3 +- Rebuild with binutils fix for ppc64le (#1475636) -* Tue Apr 25 2023 Todd Zullinger - 2.40.1-1 -- update to 2.40.1 (CVE-2023-25652, CVE-2023-25815, CVE-2023-29007) +* Thu Jul 20 2017 Petr Stodulka - 2.13.3-2 +- Move documentation files from all subpackages into the %%{_pkgdocdir} + directory, so links inside doc and man files are correct + Resolves: #1357438 +- Quiet a few rpmlint complaints regarding hidden files in contrib dir +- Remove explicit libcurl requirement from git-core -* Mon Mar 13 2023 Todd Zullinger - 2.40.0-1 -- update to 2.40.0 +* Thu Jul 13 2017 Gwyn Ciesla - 2.13.3-1 +- Update to 2.13.3 -* Tue Mar 07 2023 Todd Zullinger - 2.40.0-0.2.rc2 -- update to 2.40.0-rc2 +* Sun Jun 25 2017 Todd Zullinger - 2.13.2-1 +- Update to 2.13.2 +- Skip grep tests which fail intermittently on s390x -* Wed Mar 01 2023 Todd Zullinger - 2.40.0-0.1.rc1 -- update to 2.40.0-rc1 +* Wed Jun 07 2017 Jitka Plesnikova - 2.13.1-2 +- Perl 5.26 re-rebuild of bootstrapped packages -* Fri Feb 24 2023 Todd Zullinger - 2.40.0-0.0.rc0 -- update to 2.40.0-rc0 +* Mon Jun 05 2017 Todd Zullinger - 2.13.1-1 +- Update to 2.13.1 -* Tue Feb 14 2023 Todd Zullinger - 2.39.2-1 -- update to 2.39.2 (CVE-2023-22490, CVE-2023-23946) +* Sun Jun 04 2017 Jitka Plesnikova - 2.13.0-3 +- Perl 5.26 rebuild -* Fri Feb 03 2023 Todd Zullinger - 2.39.1-2 -- drop perl Email::Valid dep on RHEL (#2166718) +* Wed May 17 2017 Todd Zullinger - 2.13.0-2 +- Use default, collision-detecting SHA1 implementation -* Thu Jan 19 2023 Fedora Release Engineering - 2.39.1-1.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild +* Tue May 09 2017 Todd Zullinger - 2.13.0-1 +- Update to 2.13.0 (resolves CVE-2017-8386) -* Tue Jan 17 2023 Todd Zullinger - 2.39.1-1 -- update to 2.39.1 (CVE-2022-41903, CVE-2022-23521) +* Wed Mar 29 2017 Gwyn Ciesla - 2.12.2-1 +- Update to 2.12.2 -* Mon Dec 12 2022 Todd Zullinger - 2.39.0-1 -- update to 2.39.0 +* Tue Mar 21 2017 Gwyn Ciesla - 2.12.1-1 +- Update to 2.12.1 -* Mon Dec 05 2022 Todd Zullinger - 2.39.0-0.2.rc2 -- update to 2.39.0-rc2 +* Mon Feb 27 2017 Jon Ciesla - 2.12.0-1 +- Update to 2.12.0 -* Wed Nov 30 2022 Todd Zullinger - 2.39.0-0.1.rc1 -- update to 2.39.0-rc1 +* Fri Feb 17 2017 Petr Stodulka - 2.11.1-3 +- remove non-ASCII characters from description and title of packages +- fix requiremets +- fix spec to be compatible for other systems +- remove deprecated credential-gnome-keyring -* Wed Nov 23 2022 Todd Zullinger - 2.39.0-0.0.rc0 -- update to 2.39.0-rc0 -- add mod_http2 BuildRequires for tests +* Fri Feb 17 2017 Todd Zullinger - 2.11.1-3 +- Remove unnecessary rsync requirement from git-core +- Move gnome-keyring credential helper from git-core to git +- Enable libsecret credential helper +- Run git test suite +- Use %%{_mandir} in git/git-core file list filters +- Fix version of emacs-git and emacs-git-el provides +- Clean up contrib/{credential,subtree} to avoid cruft in git-core-doc +- Fix a number of macro-in-comment warnings from rpmlint -* Sat Nov 12 2022 Todd Zullinger - 2.38.1-3 -- use %%bash_completions_dir +* Fri Feb 10 2017 Fedora Release Engineering - 2.11.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild -* Mon Nov 07 2022 Todd Zullinger - 2.38.1-2 -- don't ship contrib/persistent-https as documentation -- update license data and convert to SPDX format +* Fri Feb 03 2017 Jon Ciesla - 2.11.1-1 +- Update to 2.11.1 -* Tue Oct 18 2022 Todd Zullinger - 2.38.1-1 -- update to 2.38.1 (CVE-2022-39253, CVE-2022-39260) +* Wed Nov 30 2016 Jon Ciesla - 2.11.0-1 +- Update to 2.11.0 -* Mon Oct 03 2022 Todd Zullinger - 2.38.0-1 -- update to 2.38.0 +* Mon Oct 31 2016 Jon Ciesla - 2.10.2-1 +- Update to 2.10.2 -* Wed Sep 28 2022 Todd Zullinger - 2.38.0-0.2.rc2 -- update to 2.38.0-rc2 +* Tue Oct 04 2016 Jon Ciesla - 2.10.1-1 +- Update to 2.10.1 -* Wed Sep 21 2022 Todd Zullinger - 2.38.0-0.1.rc1 -- update to 2.38.0-rc1 -- git-subtree sub-package is noarch +* Sat Sep 03 2016 Todd Zullinger - 2.10.0-1 +- Update to 2.10.0 -* Fri Sep 16 2022 Todd Zullinger - 2.38.0-0.0.rc0 -- update to 2.38.0-rc0 +* Mon Aug 15 2016 Jon Ciesla - 2.9.3-1 +- Update to 2.9.3. -* Tue Aug 30 2022 Todd Zullinger - 2.37.3-1 -- update to 2.37.3 -- remove %%changelog entries prior to 2020 -- tests: try harder to find open ports for apache, git, and svn +* Fri Jul 15 2016 Jon Ciesla - 2.9.2-1 +- Update to 2.9.2. -* Sun Aug 14 2022 Todd Zullinger - 2.37.2-2 -- consolidate git-archimport removal in %%prep +* Tue Jul 12 2016 Jon Ciesla - 2.9.1-1 +- Update to 2.9.1. -* Thu Aug 11 2022 Todd Zullinger - 2.37.2-1 -- update to 2.37.2 +* Tue Jun 14 2016 Jon Ciesla - 2.9.0-1 +- Update to 2.9.0. -* Sat Jul 23 2022 Todd Zullinger - 2.37.1-2 -- require systemd-rpm-macros rather than systemd +* Wed Jun 08 2016 Jon Ciesla - 2.8.4-1 +- Update to 2.8.4. -* Thu Jul 21 2022 Fedora Release Engineering - 2.37.1-1.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild +* Fri May 20 2016 Jitka Plesnikova - 2.8.3-2 +- Perl 5.24 rebuild -* Tue Jul 12 2022 Todd Zullinger - 2.37.1-1 -- update to 2.37.1 (CVE-2022-29187) +* Thu May 19 2016 Todd Zullinger - 2.8.3-1 +- Update to 2.8.3 -* Mon Jun 27 2022 Todd Zullinger - 2.37.0-1 -- update to 2.37.0 +* Thu May 19 2016 Jitka Plesnikova - 2.8.2-5 +- Perl 5.24 re-rebuild of bootstrapped packages -* Wed Jun 22 2022 Todd Zullinger - 2.37.0-0.2.rc2 -- update to 2.37.0-rc2 +* Wed May 18 2016 Todd Zullinger - 2.8.2-4 +- Use perl(MOD::NAME) format for perl-DBD-SQLite and perl-Digest-MD5 deps +- Define __global_ldflags on EL < 7 (#1337137) -* Fri Jun 17 2022 Todd Zullinger - 2.37.0-0.1.rc1 -- update to 2.37.0-rc1 +* Wed May 18 2016 Jitka Plesnikova - 2.8.2-3 +- Perl 5.24 re-rebuild of bootstrapped packages -* Tue Jun 14 2022 Todd Zullinger - 2.37.0-0.0.rc0 -- update to 2.37.0-rc0 -- fix GIT_SKIP_TESTS for EL8 s390x -- remove --with/--without emacs build conditional +* Sun May 15 2016 Jitka Plesnikova - 2.8.2-2 +- Perl 5.24 rebuild -* Fri Jun 03 2022 Jitka Plesnikova - 2.36.1-1.2 -- Perl 5.36 re-rebuild of bootstrapped packages +* Fri Apr 29 2016 Todd Zullinger - 2.8.2-1 +- Update to 2.8.2 -* Wed Jun 01 2022 Jitka Plesnikova - 2.36.1-1.1 -- Perl 5.36 rebuild +* Mon Apr 11 2016 Todd Zullinger - 2.8.1-3 +- Set LDFLAGS for hardened builds (#1289728) -* Fri May 06 2022 Todd Zullinger - 2.36.1-1 -- update to 2.36.1 +* Wed Apr 06 2016 Paolo Bonzini - 2.8.1-2 +- Install git-credentials-netrc (#1303358) -* Mon Apr 18 2022 Todd Zullinger - 2.36.0-1 -- update to 2.36.0 +* Tue Apr 05 2016 Jon Ciesla - 2.8.1-1 +- Update to 2.8.1. -* Thu Apr 14 2022 Todd Zullinger - 2.36.0-0.3.rc2 -- usability improvements on top of CVE-2022-24765 +* Tue Mar 29 2016 Neal Gompa - 2.8.0-1 +- Update to 2.8.0 +- Use license macro for COPYING -* Wed Apr 13 2022 Todd Zullinger - 2.36.0-0.2.rc2 -- update to 2.36.0-rc2 (CVE-2022-24765) -- disable failing tests on s390x on EL8 +* Sun Mar 27 2016 Todd Zullinger - 2.7.4-2 +- Use https for URL / Source and smaller tar.xz files +- Check upstream GPG signatures in %%prep -* Fri Apr 08 2022 Todd Zullinger - 2.36.0-0.1.rc1 -- update to 2.36.0-rc1 +* Tue Mar 22 2016 Konrad Scherer +- Workaround missing git subtree documentation in prebuilt docs (bug 1320210) +- Only add git-cvsserver binary once if the core dir matches the bin dir as it + does on el5 (bug 1320210) -* Tue Apr 05 2022 Todd Zullinger - 2.36.0-0.0.rc0 -- update to 2.36.0-rc0 -- use httpd-core for tests on Fedora >= 37 +* Tue Mar 22 2016 Todd Zullinger +- Conditionalize bash-completion pkg-config usage for EL <= 6 (bug 1320210) -* Sat Jan 29 2022 Todd Zullinger - 2.35.1-1 -- update to 2.35.1 +* Fri Mar 18 2016 David Woodhouse - 2.7.4-1 +- Update to 2.7.4 (for CVE-2016-2315, CVE-2016-2324) + Resolves: #1318220 -* Mon Jan 24 2022 Todd Zullinger - 2.35.0-1 -- update to 2.35.0 -- set path to linker script in %%_package_note_file +* Mon Mar 14 2016 Jon Ciesla - 2.7.3-1 +- Update to 2.7.3. -* Sat Jan 22 2022 Todd Zullinger - 2.35.0-0.2.rc2.3 -- remove contrib/scalar to avoid cruft in git-core-doc +* Tue Feb 23 2016 Jon Ciesla - 2.7.2-1 +- Update to 2.7.2. -* Fri Jan 21 2022 Todd Zullinger - 2.35.0-0.2.rc2.2 -- fix compilation on EL7 +* Sat Feb 06 2016 Jon Ciesla - 2.7.1-1 +- Update to 2.7.1. -* Thu Jan 20 2022 Todd Zullinger - 2.35.0-0.2.rc2.1 -- checkout: avoid BUG() when hitting a broken repository (rhbz#2042920) +* Thu Feb 04 2016 Petr Stodulka - 2.7.0-3 +- remove all '.gitignore' files from packages -* Wed Jan 19 2022 Todd Zullinger - 2.35.0-0.2.rc2 -- update to 2.35.0-rc2 +* Wed Feb 03 2016 Fedora Release Engineering - 2.7.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild -* Sat Jan 15 2022 Todd Zullinger - 2.35.0-0.1.rc1 -- update to 2.35.0-rc1 +* Tue Jan 05 2016 Jon Ciesla - 2.7.0-1 +- Update to 2.7.0. +- Infinite loop patch appears obsolete. -* Mon Jan 10 2022 Todd Zullinger - 2.35.0-0.0.rc0 -- update to 2.35.0-rc0 +* Wed Dec 09 2015 Jon Ciesla - 2.6.4-1 +- Update to 2.6.4. -* Thu Nov 25 2021 Todd Zullinger - 2.34.1-1 -- update to 2.34.1 -- fix gpgsm issues with gnupg-2.3 +* Fri Nov 27 2015 Petr Stodulka - 2.6.3-2 +- found 2 perl scripts in git-core, move them to git package + (#1284688) -* Mon Nov 15 2021 Todd Zullinger - 2.34.0-1 -- update to 2.34.0 +* Fri Nov 06 2015 Jon Ciesla - 2.6.3-1 +- Update to 2.6.3. -* Sun Nov 14 2021 Todd Zullinger - 2.33.1-3 -- add more git-email perl dependencies -- Resolves: rhbz#2020487 +* Tue Nov 03 2015 Petr Stodulka - 2.6.2-2 +- provides failback for the macro _pkgdocdir (#1277550) -* Thu Nov 11 2021 Ondřej Pohořelský - 2.33.1-2 -- add Perl requires to git-email -- Resolves: rhbz#2020487 +* Sat Oct 17 2015 Jon Ciesla - 2.6.2-1 +- Update to 2.6.2. -* Wed Oct 13 2021 Todd Zullinger - 2.33.1-1 -- update to 2.33.1 +* Tue Oct 06 2015 Jon Ciesla - 2.6.1-1 +- Update to 2.6.1. -* Mon Sep 27 2021 Ondřej Pohořelský - 2.33.0-1 -- update to 2.33.0 -- contrib/hooks/multimail is no longer distributed with git +* Tue Sep 29 2015 Jon Ciesla - 2.6.0-1 +- Update to 2.6.0. -* Tue Sep 14 2021 Sahana Prasad - 2.32.0-1.2 -- Rebuilt with OpenSSL 3.0.0 +* Fri Sep 18 2015 Jon Ciesla - 2.5.3-1 +- Update to 2.5.3. -* Thu Jul 22 2021 Fedora Release Engineering - 2.32.0-1.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild +* Fri Sep 11 2015 Jon Ciesla - 2.5.2-1 +- Update to 2.5.2. -* Sun Jun 06 2021 Todd Zullinger - 2.32.0-1 -- update to 2.32.0 -- add perl(File::Compare) BuildRequires -- fix var to enable git-svn tests with httpd -- remove %%changelog entries prior to 2019 +* Sat Aug 29 2015 Petr Stodulka - 2.5.1-1 +- Update to 2.5.1 -* Thu Jun 03 2021 Todd Zullinger - 2.32.0-0.5.rc3 -- drop jgit on Fedora >= 35 - Resolves: rhbz#1965808 +* Tue Jul 28 2015 Jon Ciesla - 2.5.0-1 +- Update to 2.5.0. -* Wed Jun 02 2021 Todd Zullinger - 2.32.0-0.4.rc3 -- update to 2.32.0-rc3 +* Thu Jul 16 2015 Petr Stodulka - 2.4.6-1 +- New upstream release 2.4.6 -* Fri May 28 2021 Todd Zullinger - 2.32.0-0.3.rc2 -- update to 2.32.0-rc2 +* Tue Jul 7 2015 Jonathan Underwood - 2.4.5-2 +- Comply with modern Emacs packaging guidelines on recent Fedora + No longer split out emacs-git and emacs-git-el sub-packages on recent Fedora + Require emacs-filesystem on recent Fedora (#1234552) -* Mon May 24 2021 Jitka Plesnikova - 2.32.0-0.2.rc1 -- Perl 5.34 re-rebuild of bootstrapped packages +* Fri Jun 26 2015 Jon Ciesla - 2.4.5-1 +- Update to 2.4.5. -* Sat May 22 2021 Todd Zullinger - 2.32.0-0.1.rc1 -- update to 2.32.0-rc1 -- rearrange python2/python3 conditionals -- re-enable git-p4 with python3 -- add coreutils BuildRequires -- remove unneeded NEEDS_CRYPTO_WITH_SSL +* Mon Jun 22 2015 Petr Stodulka - 2.4.4-2 +- git-svn - added requires for perl-Digest-MD5 (#1218176) +- solve troubles with infinite loop due to broken symlink (probably + shouldn't be problem here, but it's reproducible manually) + (#1204193) -* Fri May 21 2021 Jitka Plesnikova - 2.31.1-3.1 -- Perl 5.34 rebuild +* Tue Jun 16 2015 Jon Ciesla - 2.4.4-1 +- Update to 2.4.4. -* Mon May 17 2021 Todd Zullinger - 2.32.0-0.0.rc0 -- update to 2.32.0-rc0 +* Wed Jun 10 2015 Jitka Plesnikova - 2.4.3-4 +- Perl 5.22 re-rebuild of bootstrapped packages -* Sun May 16 2021 Todd Zullinger -- clean up various dist conditionals +* Tue Jun 09 2015 Jitka Plesnikova - 2.4.3-3 +- Perl 5.22 rebuild -* Wed Apr 21 2021 Todd Zullinger - 2.31.1-3 -- apply upstream patch to fix clone --bare segfault - Resolves: rhbz#1952030 +* Mon Jun 08 2015 Petr Stodulka - 2.4.3-2 +- separate documentation files from git-core package to git-core-doc + including core man pages -* Tue Apr 06 2021 Todd Zullinger - 2.31.1-2 -- remove two stray %%defattr macros from %%files sections +* Sat Jun 06 2015 Jon Ciesla - 2.4.3-1 +- Update to 2.4.3. -* Sat Mar 27 2021 Todd Zullinger - 2.31.1-1 -- update to 2.31.1 +* Fri Jun 05 2015 Jitka Plesnikova +- Perl 5.22 rebuild -* Fri Mar 19 2021 Todd Zullinger - 2.31.0-2 -- fix git bisect with annotaged tags +* Wed Jun 03 2015 Petr Stodulka - 2.4.2-2 +- split create subpackage git-core (perl-less) from git package +- git package requires git-core and it has same tool set as + before +- relevant docs are part of git-core package too +- removed proved and obsoletes in git for git-core -* Mon Mar 15 2021 Todd Zullinger - 2.31.0-1 -- update to 2.31.0 +* Tue May 26 2015 Jon Ciesla - 2.4.2-1 +- Update to 2.4.2. -* Tue Mar 09 2021 Todd Zullinger - 2.31.0-0.2.rc2 -- update to 2.31.0-rc2 +* Thu May 14 2015 Jon Ciesla - 2.4.1-1 +- Update to 2.4.1. -* Wed Mar 03 2021 Todd Zullinger - 2.31.0-0.1.rc1 -- update to 2.31.0-rc1 +* Fri May 01 2015 Jon Ciesla - 2.4.0-1 +- Update to 2.4.0. -* Tue Mar 02 2021 Todd Zullinger - 2.31.0-0.0.rc0 -- update to 2.31.0-rc0 +* Tue Apr 28 2015 Jon Ciesla - 2.3.7-1 +- Update to 2.3.7. -* Tue Mar 02 2021 Todd Zullinger - 2.30.1-3 -- use %%{gpgverify} macro to verify tarball signature +* Wed Apr 22 2015 Jon Ciesla - 2.3.6-1 +- Update to 2.3.6. -* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 2.30.1-2.1 -- Rebuilt for updated systemd-rpm-macros - See https://pagure.io/fesco/issue/2583. +* Mon Apr 06 2015 Jon Ciesla - 2.3.5-1 +- Update to 2.3.5. -* Thu Feb 18 2021 Ondřej Pohořelský - 2.3.4-1 +- Update to 2.3.4. -* Thu Feb 18 2021 Todd Zullinger -- re-enable t7812-grep-icase-non-ascii on s390x +* Mon Mar 16 2015 Jon Ciesla - 2.3.3-1 +- Update to 2.3.3. -* Tue Feb 09 2021 Todd Zullinger - 2.30.1-1 -- update to 2.30.1 +* Mon Mar 09 2015 Jon Ciesla - 2.3.2-1 +- Update to 2.3.2. -* Mon Feb 08 2021 Ondřej Pohořelský - 2.30.0-2 -- add rhel 9 conditional to require httpd instead of lighttpd in git-instaweb +* Fri Feb 27 2015 Jon Ciesla - 2.3.1-1 +- Update to 2.3.1. -* Tue Jan 26 2021 Fedora Release Engineering - 2.30.0-1.1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild +* Sat Feb 21 2015 Till Maas - 2.3.0-2 +- Rebuilt for Fedora 23 Change + https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code + +* Fri Feb 06 2015 Jon Ciesla - 2.3.0-1 +- Update to 2.3.0. + +* Tue Jan 27 2015 Ville Skyttä - 2.2.2-2 +- Install bash completion to %%{_datadir}/bash-completion/completions + +* Fri Jan 23 2015 Jon Ciesla - 2.2.2-1 +- Update to 2.2.2. + +* Thu Jan 08 2015 Jon Ciesla - 2.2.1-1 +- Update to 2.2.1. + +* Thu Dec 11 2014 Petr Stodulka - 2.2.0-3 +- removed subpackage git-hg which is replaced by git-remote-hg from + separated package + +* Fri Nov 28 2014 Petr Stodulka - 2.2.0-2 +- removed subpackage git-bzr which is replaced by git-remote-bzr from + separated package + +* Fri Nov 28 2014 Petr Stodulka - 2.2.0-1 +- 2.2.0 + +* Fri Oct 24 2014 Pierre-Yves Chibon - 2.1.0-5 +- Rename the git.service into git@.service fixing + https://bugzilla.redhat.com/980574 + +* Mon Sep 08 2014 Jitka Plesnikova - 2.1.0-4 +- Perl 5.20 re-rebuild of bootstrapped packages + +* Thu Aug 28 2014 Jitka Plesnikova - 2.1.0-3 +- Perl 5.20 rebuild + +* Tue Aug 26 2014 Jitka Plesnikova - 2.1.0-2 +- Disable requires perl(Term::ReadKey) when perl bootstraping + +* Mon Aug 18 2014 Ondrej Oprala - 2.0.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Thu Jul 31 2014 Ondrej Oprala - 2.0.0-4 +- Change source URLs, as googlecode doesn't have up-to-date tarballs + +* Tue Jun 10 2014 Ondrej Oprala - 2.0.0-3 +- Conditionalize an ancient obsolete + +* Sat Jun 07 2014 Fedora Release Engineering - 2.0.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Thu May 29 2014 Ondrej Oprala - 2.0.0-1 +- Update to 2.0.0 + +* Mon May 19 2014 Jon Ciesla - 1.9.3-1 +- Update to 1.9.3 + +* Mon Feb 17 2014 Ondrej Oprala - 1.9.0-1 +- Update to 1.9.0 + +* Thu Jan 16 2014 Todd Zullinger - 1.8.5.3-2 +- Drop unused python DESTIR patch +- Consolidate settings for Fedora 19+ and EL 7+ +- Use new rpm filtering on Fedora 19+ and EL 7+ +- Rebuild with file-5.14-14 (#1026760) + +* Thu Jan 16 2014 Ondrej Oprala - 1.8.5.3-1 +* Update to 1.8.5.3 + +* Wed Dec 18 2013 Ondrej Oprala - 1.8.5.2-1 +* Update to 1.8.5.2 + +* Wed Nov 13 2013 Ville Skyttä - 1.8.4.2-2 +- Fix htmldir when doc dir is unversioned (#993779). + +* Tue Oct 29 2013 Todd Zullinger - 1.8.4.2-1 +- Update to 1.8.4.2 (#1024497) + +* Sat Oct 05 2013 Todd Zullinger +- Add mercurial version requirement to git-hg, for those rebuilding on EL + +* Sat Aug 03 2013 Fedora Release Engineering - 1.8.3.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Mon Jul 15 2013 Petr Pisar - 1.8.3.1-2 +- Perl 5.18 rebuild + +* Fri Jun 14 2013 Todd Zullinger - 1.8.3.1-1 +- Update to 1.8.3.1 +- Add bzr and hg subpackages, thanks to Michael Scherer (#974800) + +* Mon May 13 2013 Jon Ciesla - 1.8.2.1-4 +- Fix typo introduced in 1.8.2-3, fixed desktop tag. + +* Wed May 1 2013 Tom Callaway - 1.8.2.1-3 +- conditionalize systemd vs xinetd +- cleanup systemd handling (it was not quite right in -2) + +* Tue Apr 30 2013 Tom Callaway - 1.8.2.1-2 +- switch to systemd instead of xinetd (bz 737183) + +* Sun Apr 14 2013 Todd Zullinger - 1.8.2.1-1 +- Update to 1.8.2.1 +- Exclude optional perl(YAML::Any) dependency on EL-5 + +* Wed Apr 10 2013 Jon Ciesla - 1.8.2-3 +- Drop desktop vendor tag for >= f19. + +* Wed Mar 27 2013 Todd Zullinger - 1.8.2-2 +- Require perl(Term::ReadKey) for git add --interactive (#928328) +- Drop DESTDIR from python instlibdir +- Fix bogus changelog dates + +* Tue Mar 19 2013 Adam Tkac - 1.8.2-1 +- update to 1.8.2 +- 0001-DESTDIR-support-in-contrib-subtree-Makefile.patch has been merged + +* Tue Feb 26 2013 Todd Zullinger - 1.8.1.4-2 +- Update asciidoc requirements, drop unsupported ASCIIDOC7 +- Define GNU_ROFF to force ASCII apostrophes in manpages (so copy/paste works) +- Install tcsh completion (requires manual setup by users) +- Clean up dist conditionals, don't pretend to support EL-4 builds +- Use prebuilt documentation on EL-5, where asciidoc is too old +- Respect gitexecdir variable in git-subtree install + +* Wed Feb 20 2013 Adam Tkac - 1.8.1.4-1 +- update to 1.8.1.4 + +* Wed Jan 30 2013 Adam Tkac - 1.8.1.2-1 +- update to 1.8.1.2 +- own directories which should be owned (#902517) + +* Thu Jan 03 2013 Adam Tkac - 1.8.1-1 +- update to 1.8.1 +- build git-svn as arch subpkg due to new git-remote-testsvn binary + +* Tue Dec 11 2012 Adam Tkac - 1.8.0.2-1 +- update to 1.8.0.2 + +* Thu Dec 06 2012 Adam Tkac - 1.8.0.1-2 +- don't install some unneeded credential-gnome-keyring stuff + +* Thu Nov 29 2012 Adam Tkac - 1.8.0.1-1 +- update to 1.8.0.1 +- include git-subtree in git rpm (#864651) + +* Mon Oct 29 2012 Adam Tkac - 1.8.0-1 +- update to 1.8.0 +- include git-credential-gnome-keyring helper in git pkg +- 0001-cvsimport-strip-all-inappropriate-tag-strings.patch was merged + +* Thu Oct 25 2012 Adam Tkac - 1.7.12.1-2 +- move git-prompt.sh into usr/share/git-core/contrib/completion (#854061) + +* Thu Sep 27 2012 Adam Tkac - 1.7.12.1-1 +- update to 1.7.12.1 +- cvsimport should skip more characters (#850640) + +* Thu Aug 23 2012 Todd Zullinger - 1.7.12-2 +- Install git-prompt.sh which provides __git_ps1() + +* Wed Aug 22 2012 Adam Tkac - 1.7.12-1 +- update to 1.7.12 + +* Wed Aug 15 2012 Todd Zullinger - 1.7.11.5-1 +- Update to 1.7.11.5 +- Add git-p4 subpackage (#844008) + +* Tue Aug 07 2012 Adam Tkac - 1.7.11.4-1 +- update to 1.7.11.4 + +* Fri Jul 27 2012 Fedora Release Engineering - 1.7.11.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Wed Jul 25 2012 Todd Zullinger - 1.7.11.2-2 +- Split perl(Git::SVN) into its own package (#843182) + +* Mon Jul 16 2012 Adam Tkac - 1.7.11.2-1 +- update to 1.7.11.2 + +* Thu Jun 28 2012 Petr Pisar - 1.7.10.4-2 +- Perl 5.16 rebuild + +* Fri Jun 15 2012 Adam Tkac - 1.7.10.4-1 +- update to 1.7.10.4 + +* Thu Jun 07 2012 Petr Pisar - 1.7.10.2-2 +- Perl 5.16 rebuild + +* Mon May 14 2012 Adam Tkac - 1.7.10.2-1 +- update to 1.7.10.2 + +* Thu May 03 2012 Adam Tkac - 1.7.10.1-1 +- update to 1.7.10.1 + +* Tue Apr 10 2012 Adam Tkac - 1.7.10-1 +- update to 1.7.10 + +* Fri Mar 30 2012 Adam Tkac - 1.7.9.5-1 +- update to 1.7.9.5 + +* Thu Mar 08 2012 Adam Tkac - 1.7.9.3-1 +- update to 1.7.9.3 + +* Wed Feb 15 2012 Todd Zullinger - 1.7.9.1-1 +- Update to 1.7.9.1 +- Fix EPEL builds (rpm doesn't accept multiple -f options in %%files) + +* Fri Feb 10 2012 Petr Pisar - 1.7.9-2 +- Rebuild against PCRE 8.30 + +* Mon Jan 30 2012 Adam Tkac - 1.7.9-1 +- update to 1.7.9 + +* Thu Jan 19 2012 Adam Tkac - 1.7.8.4-1 +- update to 1.7.8.4 + +* Thu Jan 12 2012 Adam Tkac - 1.7.8.3-1 +- update to 1.7.8.3 + +* Mon Jan 02 2012 Adam Tkac - 1.7.8.2-1 +- update to 1.7.8.2 + +* Fri Dec 23 2011 Adam Tkac - 1.7.8.1-1 +- update to 1.7.8.1 + +* Wed Dec 07 2011 Adam Tkac - 1.7.8-1 +- update to 1.7.8 + +* Tue Nov 29 2011 Adam Tkac - 1.7.7.4-1 +- update to 1.7.7.4 + +* Thu Nov 10 2011 Adam Tkac - 1.7.7.3-1 +- update to 1.7.7.3 + +* Mon Nov 07 2011 Adam Tkac - 1.7.7.2-1 +- update to 1.7.7.2 + +* Tue Nov 01 2011 Adam Tkac - 1.7.7.1-1 +- update to 1.7.7.1 + +* Wed Oct 26 2011 Fedora Release Engineering - 1.7.7-2 +- Rebuilt for glibc bug#747377 + +* Thu Oct 20 2011 Adam Tkac - 1.7.7-1 +- update to 1.7.7 + - git-1.6-update-contrib-hooks-path.patch is no longer needed + +* Mon Sep 26 2011 Adam Tkac - 1.7.6.4-1 +- update to 1.7.6.4 + +* Wed Sep 07 2011 Todd Zullinger - 1.7.6.2-1 +- Update to 1.7.6.2 +- Fixes incompatibility caused by git push --quiet fix + http://thread.gmane.org/gmane.comp.version-control.git/180652 + +* Mon Aug 29 2011 Todd Zullinger - 1.7.6.1-2 +- Build with PCRE support (#734269) + +* Fri Aug 26 2011 Todd Zullinger - 1.7.6.1-1 +- Update to 1.7.6.1 +- Include gpg signature for tarball in SRPM + +* Fri Aug 05 2011 Todd Zullinger - 1.7.6-5 +- Fix git push --quiet, thanks to Clemens Buchacher (#725593) +- Obsolete git-arch as needed + +* Tue Jul 26 2011 Todd Zullinger - 1.7.6-4 +- Drop git-arch on fedora >= 16, the tla package has been retired +- Rework most spec file dist conditionals to make future changes easier + +* Thu Jul 21 2011 Petr Sabata - 1.7.6-3 +- Perl mass rebuild + +* Wed Jul 20 2011 Petr Sabata - 1.7.6-2 +- Perl mass rebuild + +* Wed Jun 29 2011 Adam Tkac - 1.7.6-1 +- update to 1.7.6 + +* Mon Jun 20 2011 Marcela Mašláňová - 1.7.5.4-2 +- Perl mass rebuild + +* Thu Jun 09 2011 Adam Tkac - 1.7.5.4-1 +- update to 1.7.5.4 + +* Tue May 24 2011 Adam Tkac - 1.7.5.2-1 +- update to 1.7.5.2 + +* Thu May 05 2011 Adam Tkac - 1.7.5.1-1 +- update to 1.7.5.1 + +* Wed Apr 27 2011 Adam Tkac - 1.7.5-1 +- update to 1.7.5 + +* Mon Apr 11 2011 Adam Tkac - 1.7.4.4-1 +- update to 1.7.4.4 + +* Mon Mar 28 2011 Adam Tkac - 1.7.4.2-1 +- update to 1.7.4.2 +- move man3/Git.3pm file to perl-Git subpkg (#664889) +- add perl-DBD-SQLite dependency to git-cvs (#602410) + +* Sun Feb 13 2011 Todd Zullinger - 1.7.4.1-1 +- Update to 1.7.4.1 +- Clean up documentation settings (the defaults changed in 1.7.4) +- Improve EL-5 compatibility, thanks to Kevin Fenzi for emacs testing + +* Tue Feb 08 2011 Fedora Release Engineering - 1.7.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Mon Jan 31 2011 Adam Tkac - 1.7.4-1 +- update to 1.7.4 + +* Wed Jan 19 2011 Adam Tkac - 1.7.3.5-1 +- update to 1.7.3.5 + +* Thu Dec 16 2010 Adam Tkac - 1.7.3.4-1 +- update to 1.7.3.4 + +* Mon Dec 06 2010 Adam Tkac - 1.7.3.3-1 +- update to 1.7.3.3 + +* Fri Oct 22 2010 Adam Tkac - 1.7.3.2-1 +- update to 1.7.3.2 + +* Thu Sep 30 2010 Adam Tkac - 1.7.3.1-1 +- update to 1.7.3.1 + +* Wed Sep 29 2010 jkeating - 1.7.3-3 +- Rebuilt for gcc bug 634757 + +* Mon Sep 20 2010 Todd Zullinger - 1.7.3-2 +- Ensure the release notes are included in %%doc + +* Sun Sep 19 2010 Todd Zullinger - 1.7.3-1 +- Update to 1.7.3 + +* Tue Sep 07 2010 Adam Tkac - 1.7.2.3-1 +- update to 1.7.2.3 + +* Fri Aug 20 2010 Adam Tkac - 1.7.2.2-1 +- update to 1.7.2.2 + +* Fri Jul 30 2010 Thomas Spura - 1.7.2.1-2 +- cherry-pick: "Do not unquote + into ' ' in URLs" + +* Thu Jul 29 2010 Todd Zullinger - 1.7.2.1-1 +- Update to git-1.7.2.1 + +* Thu Jul 22 2010 Adam Tkac - 1.7.2-1 +- update to 1.7.2 + +* Fri Jul 02 2010 Adam Tkac - 1.7.1.1-1 +- update to 1.7.1.1 + +* Fri Jun 25 2010 Adam Tkac - 1.7.1-2 +- rebuild against new perl + +* Tue May 04 2010 Todd Zullinger - 1.7.1-1 +- git-1.7.1 +- Fix conditionals for EL-6 +- Comply with Emacs add-on packaging guidelines (#573423), Jonathan Underwood + - Place elisp source files in separate emacs-git-el package + - Place git support files in own directory under site-lisp + - Use Emacs packaging macros + +* Thu Apr 29 2010 Marcela Maslanova - 1.7.0.1-2 +- Mass rebuild with perl-5.12.0 + +* Mon Mar 01 2010 Todd Zullinger - 1.7.0.1-1 +- git-1.7.0.1 + +* Sat Feb 13 2010 Todd Zullinger - 1.7.0-1 +- git-1.7.0 +- Link imap-send with libcrypto (#565147) +- Disable building of unused python remote helper libs + +* Tue Jan 26 2010 Todd Zullinger - 1.6.6.1-1 +- git-1.6.6.1 +- Use %%{gitcoredir}/git-daemon as xinetd server option, for SELinux (#529682) +- Make %%{_var}/lib/git the default gitweb projectroot (#556299) +- Include gitweb/INSTALL file as documentation, the gitweb README refers to it +- Ship a short example gitweb config file (%%{_sysconfdir}/gitweb.conf) +- Remove long fixed xinetd IPv6 workaround on Fedora (#557528) +- Install missing gitweb.js (#558740) + +* Wed Dec 23 2009 Todd Zullinger - 1.6.6-1 +- git-1.6.6 + +* Fri Dec 11 2009 Todd Zullinger - 1.6.5.6-1 +- git-1.6.5.6 + +* Sun Dec 06 2009 Todd Zullinger - 1.6.5.5-1 +- git-1.6.5.5 + +* Fri Dec 4 2009 Stepan Kasal - 1.6.5.3-2 +- rebuild against perl 5.10.1 + +* Sat Nov 21 2009 Todd Zullinger - 1.6.5.3-1 +- git-1.6.5.3 +- Only BR perl(Error) on Fedora and RHEL >= 5 +- Use config.mak to set build options +- Improve compatibility with EPEL +- Replace $RPM_BUILD_ROOT with %%{buildroot} +- Fix Obsoletes for those rebuilding on EL-4 + +* Mon Oct 26 2009 Todd Zullinger - 1.6.5.2-1 +- git-1.6.5.2 +- Drop asciidoc --unsafe option, it should not be needed anymore +- Don't use install -t/-T, they're not compatible with older coreutils +- Don't use -perm /a+x with find, it's incompatible with older findutils + +* Sat Oct 17 2009 Todd Zullinger - 1.6.5.1-1 +- git-1.6.5.1 + +* Sun Oct 11 2009 Todd Zullinger - 1.6.5-1 +- git-1.6.5 + +* Mon Sep 28 2009 Todd Zullinger - 1.6.5-0.2.rc2 +- git-1.6.5.rc2 +- Enable Linus' block-sha1 implementation + +* Wed Sep 16 2009 Todd Zullinger - 1.6.4.4-1 +- git-1.6.4.4 + +* Sun Sep 13 2009 Todd Zullinger - 1.6.4.3-1 +- git-1.6.4.3 + +* Sun Aug 30 2009 Todd Zullinger - 1.6.4.2-1 +- git-1.6.4.2 + +* Sat Aug 22 2009 Todd Zullinger - 1.6.4.1-1 +- git-1.6.4.1 + +* Fri Aug 21 2009 Tomas Mraz - 1.6.4-2 +- rebuilt with new openssl + +* Wed Jul 29 2009 Todd Zullinger - 1.6.4-1 +- git-1.6.4 + +* Fri Jul 24 2009 Fedora Release Engineering - 1.6.3.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Sun Jun 28 2009 Todd Zullinger - 1.6.3.3-1 +- git-1.6.3.3 +- Move contributed hooks to %%{_datadir}/git-core/contrib/hooks (bug 500137) +- Fix rpmlint warnings about Summary and git-mergetool--lib missing shebang + +* Fri Jun 19 2009 Todd Zullinger - 1.6.3.2-3 +- Temporarily disable asciidoc's safe mode until bug 506953 is fixed + +* Fri Jun 19 2009 Todd Zullinger - 1.6.3.2-2 +- Fix git-daemon hang on invalid input (CVE-2009-2108, bug 505761) + +* Fri Jun 05 2009 Todd Zullinger - 1.6.3.2-1 +- git-1.6.3.2 +- Require emacs >= 22.2 for emacs support (bug 495312) +- Add a .desktop file for git-gui (bug 498801) +- Set ASCIIDOC8 and ASCIIDOC_NO_ROFF to correct documentation issues, + the sed hack to fix bug 485161 should no longer be needed +- Escape newline in git-daemon xinetd description (bug 502393) +- Add xinetd to git-daemon Requires (bug 504105) +- Organize BuildRequires/Requires, drop redundant expat Requires +- Only build noarch subpackages on Fedora >= 10 +- Only build emacs and arch subpackages on Fedora +- Handle curl/libcurl naming for EPEL and Fedora + +* Fri Apr 03 2009 Todd Zullinger - 1.6.2.2-1 +- git-1.6.2.2 +- Include contrib/ dir in %%doc (bug 492490) +- Don't set DOCBOOK_XSL_172, fix the '\&.ft' with sed (bug 485161) +- Ignore Branches output from cvsps-2.2b1 (bug 490602) +- Remove shebang from bash-completion script +- Include README in gitweb subpackage + +* Mon Mar 09 2009 Todd Zullinger - 1.6.2-1 +- git-1.6.2 +- Include contrib/emacs/README in emacs subpackage +- Drop upstreamed git-web--browse patch + +* Tue Feb 24 2009 Todd Zullinger - 1.6.1.3-2 +- Require perl(Authen::SASL) in git-email (bug 483062) +- Build many of the subpackages as noarch +- Update URL field + +* Mon Feb 09 2009 Todd Zullinger 1.6.1.3-1 +- git-1.6.1.3 +- Set htmldir so "git help -w " works +- Patch git-web--browse to not use "/sbin/start" to browse +- Include git-daemon documentation in the git-daemon package + +* Thu Jan 29 2009 Josh Boyer 1.6.1.2-1 +- git-1.6.1.2 + +* Mon Jan 26 2009 Todd Zullinger 1.6.1.1-1 +- git-1.6.1.1 +- Make compile more verbose + +* Fri Jan 16 2009 Tomas Mraz 1.6.1-2 +- rebuild with new openssl + +* Sat Jan 03 2009 Todd Zullinger 1.6.1-1 +- Install git-* commands in %%{_libexecdir}/git-core, the upstream default +- Remove libcurl from Requires, rpm will pick this up automatically +- Consolidate build/install options in %%make_git (Roland McGrath) +- Include DirectoryIndex in gitweb httpd-config (bug 471692) +- Define DOCBOOK_XSL_172 to fix minor manpage issues +- Rename %%{_var}/lib/git-daemon to %%{_var}/lib/git +- Preserve timestamps on installed files +- Quiet some rpmlint complaints +- Use macros more consistently + +* Sat Dec 20 2008 Todd Zullinger 1.6.0.6-1 +- git-1.6.0.6 +- Fixes a local privilege escalation bug in gitweb + (http://article.gmane.org/gmane.comp.version-control.git/103624) +- Add gitk Requires to git-gui (bug 476308) + +* Thu Dec 11 2008 Josh Boyer 1.6.0.5-1 +- git-1.6.0.5 + +* Mon Nov 17 2008 Seth Vidal +- switch from /srv/git to /var/lib/git-daemon for packaging rules compliance + +* Fri Nov 14 2008 Josh Boyer 1.6.0.4-1 +- git-1.6.0.4 + +* Wed Oct 22 2008 Josh Boyer 1.6.0.3-1 +- git-1.6.0.3 +- Drop curl requirement in favor of libcurl (bug 449388) +- Add requires for SMTP-SSL perl module to make git-send-email work (bug 443615) + +* Thu Aug 28 2008 James Bowes 1.6.0.1-1 +- git-1.6.0.1 + +* Thu Jul 24 2008 James Bowes 1.5.6-4 +- git-1.5.6.4 + +* Thu Jun 19 2008 James Bowes 1.5.6-1 +- git-1.5.6 + +* Tue Jun 3 2008 Stepan Kasal 1.5.5.3-2 +- use tar.bz2 instead of tar.gz + +* Wed May 28 2008 James Bowes 1.5.5.3-1 +- git-1.5.5.3 + +* Mon May 26 2008 James Bowes 1.5.5.2-1 +- git-1.5.5.2 + +* Mon Apr 21 2008 James Bowes 1.5.5.1-1 +- git-1.5.5.1 + +* Wed Apr 09 2008 James Bowes 1.5.5-1 +- git-1.5.5 + +* Fri Apr 04 2008 James Bowes 1.5.4.5-3 +- Remove the last two requires on git-core. + +* Wed Apr 02 2008 James Bowes 1.5.4.5-2 +- Remove a patch that's already upstream. + +* Fri Mar 28 2008 James Bowes 1.5.4.5-1 +- git-1.5.4.5 + +* Wed Mar 26 2008 James Bowes 1.5.4.4-4 +- Own /etc/bash_completion.d in case bash-completion isn't installed. + +* Tue Mar 25 2008 James Bowes 1.5.4.4-3 +- Include the sample hooks from contrib/hooks as docs (bug 321151). +- Install the bash completion script from contrib (bug 433255). +- Include the html docs in the 'core' package again (bug 434271). + +* Wed Mar 19 2008 James Bowes 1.5.4.4-2 +- Obsolete git <= 1.5.4.3, to catch going from F8 to rawhide/F9 + +* Thu Mar 13 2008 James Bowes 1.5.4.4-1 +- git-1.5.4.4 + +* Mon Mar 3 2008 Tom "spot" Callaway 1.5.4.3-3 +- rebuild for new perl (again) + +* Sun Feb 24 2008 Bernardo Innocenti 1.5.4.3-2 +- Do not silently overwrite /etc/httpd/conf.d/git.conf + +* Sat Feb 23 2008 James Bowes 1.5.4.3-1 +- git-1.5.4.3 +- Include Kristian Høgsberg's changes to rename git-core to + git and git to git-all. + +* Sun Feb 17 2008 James Bowes 1.5.4.2-1 +- git-1.5.4.2 + +* Mon Feb 11 2008 Jeremy Katz - 1.5.4.1-2 +- Add upstream patch (e62a641de17b172ffc4d3a803085c8afbfbec3d1) to have + gitweb rss feeds point be commitdiffs instead of commit + +* Sun Feb 10 2008 James Bowes 1.5.4.1-1 +- git-1.5.4.1 + +* Tue Feb 05 2008 Tom "spot" Callaway 1.5.4-3 +- rebuild for new perl + +* Sun Feb 03 2008 James Bowes 1.5.4-1 +- Add BuidRequires on gettext. + +* Sat Feb 02 2008 James Bowes 1.5.4-1 +- git-1.5.4 + +* Tue Jan 08 2008 James Bowes 1.5.3.8-1 +- git-1.5.3.8 + +* Fri Dec 21 2007 James Bowes 1.5.3.7-2 +- Have git metapackage require explicit versions (bug 247214) + +* Mon Dec 03 2007 Josh Boyer 1.5.3.7-1 +- git-1.5.3.7 + +* Tue Nov 27 2007 Josh Boyer 1.5.3.6-1 +- git-1.5.3.6 +- git-core requires perl(Error) (bug 367861) +- git-svn requires perl(Term:ReadKey) (bug 261361) +- git-email requires perl-Git (bug 333061) + +* Wed Oct 24 2007 Lubomir Kundrak 1.5.3.4-2 +- git-Perl requires Error package + +* Tue Oct 09 2007 James Bowes 1.5.3.4-1 +- git-1.5.3.4 + +* Sun Sep 30 2007 James Bowes 1.5.3.3-1 +- git-1.5.3.3 + +* Wed Sep 26 2007 James Bowes 1.5.3.2-1 +- git-1.5.3.2 + +* Thu Sep 06 2007 Josh Boyer 1.5.3.1-2 +- Include git-gui and git-citool docs + +* Thu Sep 06 2007 Josh Boyer 1.5.3.1-1 +- git-1.5.3.1-1 + +* Thu Aug 23 2007 James Bowes 1.5.2.5-1 +- git-1.5.2.5-1 + +* Fri Aug 03 2007 Josh Boyer 1.5.2.4-1 +- git-1.5.2.4-1 + +* Tue Jul 03 2007 Josh Boyer 1.5.2.2-3 +- Add git-daemon and gitweb packages + +* Thu Jun 21 2007 Josh Boyer 1.5.2.2-2 +- Add emacs-git package (#235431) + +* Mon Jun 18 2007 James Bowes 1.5.2.2-1 +- git-1.5.2.2 + +* Fri Jun 08 2007 James Bowes 1.5.2.1-1 +- git-1.5.2.1 + +* Sun May 13 2007 Quy Tonthat +- Added lib files for git-gui +- Added Documentation/technical (As needed by Git Users Manual) + +* Tue May 8 2007 Quy Tonthat +- Added howto files + +* Fri Mar 30 2007 Chris Wright 1.5.0.6-1 +- git-1.5.0.6 + +* Mon Mar 19 2007 Chris Wright 1.5.0.5-1 +- git-1.5.0.5 + +* Tue Mar 13 2007 Chris Wright 1.5.0.3-1 +- git-1.5.0.3 + +* Fri Mar 2 2007 Chris Wright 1.5.0.2-2 +- BuildRequires perl-devel as of perl-5.8.8-14 (bz 230680) + +* Mon Feb 26 2007 Chris Wright 1.5.0.2-1 +- git-1.5.0.2 + +* Tue Feb 13 2007 Nicolas Pitre +- Update core package description (Git isn't as stupid as it used to be) + +* Mon Feb 12 2007 Junio C Hamano +- Add git-gui and git-citool. + +* Sun Dec 10 2006 Chris Wright 1.4.4.2-2 +- no need to install manpages executable (bz 216790) +- use bytes for git-cvsserver + +* Sun Dec 10 2006 Chris Wright 1.4.4.2-1 +- git-1.4.4.2 + +* Mon Nov 6 2006 Jindrich Novy 1.4.2.4-2 +- rebuild against the new curl + +* Tue Oct 17 2006 Chris Wright 1.4.2.4-1 +- git-1.4.2.4 + +* Wed Oct 4 2006 Chris Wright 1.4.2.3-1 +- git-1.4.2.3 + +* Fri Sep 22 2006 Chris Wright 1.4.2.1-1 +- git-1.4.2.1 + +* Mon Sep 11 2006 Chris Wright 1.4.2-1 +- git-1.4.2 + +* Thu Jul 6 2006 Chris Wright 1.4.1-1 +- git-1.4.1 + +* Tue Jun 13 2006 Chris Wright 1.4.0-1 +- git-1.4.0 + +* Thu May 4 2006 Chris Wright 1.3.3-1 +- git-1.3.3 +- enable git-email building, prereqs have been relaxed + +* Thu May 4 2006 Chris Wright 1.3.2-1 +- git-1.3.2 + +* Fri Apr 28 2006 Chris Wright 1.3.1-1 +- git-1.3.1 + +* Wed Apr 19 2006 Chris Wright 1.3.0-1 +- git-1.3.0 + +* Mon Apr 10 2006 Chris Wright 1.2.6-1 +- git-1.2.6 + +* Wed Apr 5 2006 Chris Wright 1.2.5-1 +- git-1.2.5 + +* Wed Mar 1 2006 Chris Wright 1.2.4-1 +- git-1.2.4 + +* Wed Feb 22 2006 Chris Wright 1.2.3-1 +- git-1.2.3 + +* Tue Feb 21 2006 Chris Wright 1.2.2-1 +- git-1.2.2 + +* Thu Feb 16 2006 Chris Wright 1.2.1-1 +- git-1.2.1 + +* Mon Feb 13 2006 Chris Wright 1.2.0-1 +- git-1.2.0 + +* Wed Feb 1 2006 Chris Wright 1.1.6-1 +- git-1.1.6 + +* Tue Jan 24 2006 Chris Wright 1.1.4-1 +- git-1.1.4 + +* Sun Jan 15 2006 Chris Wright 1.1.2-1 +- git-1.1.2 + +* Tue Jan 10 2006 Chris Wright 1.1.1-1 +- git-1.1.1 + +* Tue Jan 10 2006 Chris Wright 1.1.0-1 +- Update to latest git-1.1.0 (drop git-email for now) +- Now creates multiple packages: +- git-core, git-svn, git-cvs, git-arch, gitk + +* Mon Nov 14 2005 H. Peter Anvin 0.99.9j-1 +- Change subpackage names to git- instead of git-core- +- Create empty root package which brings in all subpackages +- Rename git-tk -> gitk + +* Thu Nov 10 2005 Chris Wright 0.99.9g-1 +- zlib dependency fix +- Minor cleanups from split +- Move arch import to separate package as well + +* Tue Sep 27 2005 Jim Radford +- Move programs with non-standard dependencies (svn, cvs, email) + into separate packages + +* Tue Sep 27 2005 H. Peter Anvin +- parallelize build +- COPTS -> CFLAGS + +* Fri Sep 16 2005 Chris Wright 0.99.6-1 +- update to 0.99.6 + +* Fri Sep 16 2005 Horst H. von Brand +- Linus noticed that less is required, added to the dependencies + +* Sun Sep 11 2005 Horst H. von Brand +- Updated dependencies +- Don't assume manpages are gzipped + +* Thu Aug 18 2005 Chris Wright 0.99.4-4 +- drop sh_utils, sh-utils, diffutils, mktemp, and openssl Requires +- use RPM_OPT_FLAGS in spec file, drop patch0 + +* Wed Aug 17 2005 Tom "spot" Callaway 0.99.4-3 +- use dist tag to differentiate between branches +- use rpm optflags by default (patch0) +- own %%{_datadir}/git-core/ + +* Mon Aug 15 2005 Chris Wright +- update spec file to fix Buildroot, Requires, and drop Vendor + +* Sun Aug 07 2005 Horst H. von Brand +- Redid the description +- Cut overlong make line, loosened changelog a bit +- I think Junio (or perhaps OSDL?) should be vendor... + +* Thu Jul 14 2005 Eric Biederman +- Add the man pages, and the --without docs build option + +* Thu Jul 7 2005 Chris Wright +- initial git spec file diff --git a/gpgkey-junio.asc b/gpgkey-junio.asc index 5edb58f..032428d 100644 --- a/gpgkey-junio.asc +++ b/gpgkey-junio.asc @@ -59,86 +59,108 @@ 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 -=7hTI +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 +=z4yI -----END PGP PUBLIC KEY BLOCK----- diff --git a/print-failed-test-output b/print-failed-test-output index 4e65662..68fa9ee 100644 --- a/print-failed-test-output +++ b/print-failed-test-output @@ -3,24 +3,11 @@ shopt -s failglob # Print output from failing tests -printf -v sep "%0.s-" {1..80} +dashes=$(printf "%80s" '' | tr ' ' '-') for exit_file in t/test-results/*.exit; do - [ "$(< "$exit_file")" -eq 0 ] && continue + [ "$(cat "$exit_file")" -eq 0 ] && continue out_file="${exit_file%exit}out" - printf '\n%s\n%s\n%s\n' "$sep" "$out_file" "$sep" + printf '\n%s\n%s\n%s\n' "$dashes" "$out_file" "$dashes" cat "$out_file" done - -# tar up test-results & $testdir, then print base64 encoded output -# -# copy $testdir contents to test-results to avoid absolute paths with tar -cp -a $testdir/* t/test-results/ -begin='-----BEGIN BASE64 MESSAGE-----' -end='-----END BASE64 MESSAGE-----' -printf '\n%s\n' 'test-results and trash directory output follows; decode via:' -printf '%s\n' "sed -n '/^${begin}$/,/^${end}$/{/^${begin}$/!{/^${end}$/!p}}' build.log | base64 -d >output.tar.zst" -printf '%s\n' "$begin" -tar -C t -cf - test-results/ | zstdmt -17 | base64 -printf '%s\n' "$end" - exit 1 diff --git a/sources b/sources index 4a04f56..32b8051 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (git-2.52.0.tar.xz) = 965e5ebb72d1f080d64e34bdb75f0bb1689c9dd41dcf63b020d986bad49808ac09bfb1115962bc0c5b95bac8622367ac4cd09aa89266f73d2137fe94c90dd3ed -SHA512 (git-2.52.0.tar.sign) = a5a68ce131a5763650c477ec01a4de958dd6a946bdea0f613e26bdab41d2df6b3ca63f9028bbe603bf0c834bd415c86e6c616b1ff08cc48aa7c3c61a37b24b74 +SHA512 (git-2.17.2.tar.xz) = 2203a0437836360cafb0052b0f34a86363b81262d7547d1ed15dcad435a85170d85c385cb2d8406085e21004ed81ae3c55080b1e47a1cf094cb4190b98d9d6c1 +SHA512 (git-2.17.2.tar.sign) = 4c2e6aba73848d6983f6b9bc23296de2480cc99bf83568c765ea111d10b7f9745be618ce4211ad31ff3eecfb493ea56ef2352f204c3785da817501d6645608a8