[packages/git-core] up to 2.55.0
atler
atler at pld-linux.org
Tue Jul 7 16:26:15 CEST 2026
commit 0b7ca39bd2ae20d0a5a77f798c2590a49397e502
Author: Jan Palus <atler at pld-linux.org>
Date: Tue Jul 7 16:25:46 2026 +0200
up to 2.55.0
child-cleanup.patch | 69 -----------------------------------------------------
git-core.spec | 15 +++++++-----
2 files changed, 9 insertions(+), 75 deletions(-)
---
diff --git a/git-core.spec b/git-core.spec
index 478deae..7d937bb 100644
--- a/git-core.spec
+++ b/git-core.spec
@@ -13,12 +13,12 @@
Summary: Distributed version control system focused on speed, effectivity and usability
Summary(pl.UTF-8): Rozproszony system śledzenia treści skupiony na szybkości, wydajności i użyteczności
Name: git-core
-Version: 2.54.0
-Release: 2
+Version: 2.55.0
+Release: 1
License: GPL v2
Group: Development/Tools
Source0: https://www.kernel.org/pub/software/scm/git/git-%{version}.tar.xz
-# Source0-md5: eb1137f556bd67cb4cea974275e51297
+# Source0-md5: 758c02a1b621cc0868ee0a0d99573e6b
Source1: %{name}-gitweb.conf
Source2: %{name}-gitweb-httpd.conf
Source3: %{name}-gitweb-lighttpd.conf
@@ -30,10 +30,10 @@ Patch0: %{name}-key-bindings.patch
Patch1: %{name}-sysconfdir.patch
Patch2: cherry-picked-commitlog.patch
Patch3: no-meson-test-check.patch
-Patch4: child-cleanup.patch
URL: http://git-scm.com/
BuildRequires: autoconf >= 2.59
BuildRequires: automake
+BuildRequires: cargo
BuildRequires: curl-devel
BuildRequires: expat-devel
%if "%{pld_release}" == "ac"
@@ -59,7 +59,8 @@ BuildRequires: python3-devel
BuildRequires: rpm-build >= 4.6
BuildRequires: rpm-perlprov >= 4.1-13
BuildRequires: rpm-pythonprov
-BuildRequires: rpmbuild(macros) >= 1.752
+BuildRequires: rpmbuild(macros) >= 2.050
+BuildRequires: rust >= 1.49.0
BuildRequires: tar >= 1:1.22
%if %{with tk}
# wish
@@ -89,6 +90,7 @@ BuildRequires: subversion
%endif
Conflicts: pdksh < 5.2.14-46
%endif
+%{?rust_req}
# git-sh-setup: sane_grep
Requires: grep
# git-pull: printf
@@ -454,7 +456,6 @@ Dopełnianie parametrów komendy git dla powłoki zsh.
%patch -P1 -p1
%patch -P2 -p1
%patch -P3 -p1
-%patch -P4 -p1 -R
# we build things in contrib but want to have it clean for doc purporses, too
cp -a contrib contrib-doc
@@ -477,6 +478,8 @@ echo "BLK_SHA1=1" >> config.mak
GITWEB_LOGO="/gitweb/git-logo.png" \
GITWEB_FAVICON="/gitweb/git-favicon.png" \
NO_PERL_CPAN_FALLBACKS=1 \
+ CARGO_ARGS="%{__cargo_common_opts} %{!?debug:--release} --target %rust_target --target-dir %{cargo_targetdir}" \
+ RUST_TARGET_DIR="%{cargo_objdir}" \
perllibdir=%{perl_vendorlib} \
V=1
diff --git a/child-cleanup.patch b/child-cleanup.patch
deleted file mode 100644
index 6996667..0000000
--- a/child-cleanup.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From dd3693eb0859274d62feac8047e1d486b3beaf31 Mon Sep 17 00:00:00 2001
-From: Andrew Au <cshung at gmail.com>
-Date: Thu, 12 Mar 2026 21:49:37 +0000
-Subject: [PATCH] transport-helper, connect: use clean_on_exit to reap children
- on abnormal exit
-
-When a long-running service (e.g., a source indexer) runs as PID 1
-inside a container and repeatedly spawns git, git may in turn spawn
-child processes such as git-remote-https or ssh. If git exits abnormally
-(e.g., via exit(128) on a transport error), the normal cleanup paths
-(disconnect_helper, finish_connect) are bypassed, and these children are
-never waited on. The children are reparented to PID 1, which does not
-reap them, so they accumulate as zombies over time.
-
-Set clean_on_exit and wait_after_clean on child_process structs in both
-transport-helper.c and connect.c so that the existing run-command
-cleanup infrastructure handles reaping on any exit path. This avoids
-rolling custom atexit handlers that call finish_command(), which could
-deadlock if the child is blocked waiting for the parent to close a pipe.
-
-The clean_on_exit mechanism sends SIGTERM first, then waits, ensuring
-the child terminates promptly. It also handles signal-based exits, not
-just atexit.
-
-Signed-off-by: Andrew Au <cshung at gmail.com>
-Signed-off-by: Junio C Hamano <gitster at pobox.com>
----
- connect.c | 4 ++++
- transport-helper.c | 2 ++
- 2 files changed, 6 insertions(+)
-
-diff --git a/connect.c b/connect.c
-index a02583a102..fcd35c5539 100644
---- a/connect.c
-+++ b/connect.c
-@@ -1054,6 +1054,8 @@ static struct child_process *git_proxy_connect(int fd[2], char *host)
- strvec_push(&proxy->args, port);
- proxy->in = -1;
- proxy->out = -1;
-+ proxy->clean_on_exit = 1;
-+ proxy->wait_after_clean = 1;
- if (start_command(proxy))
- die(_("cannot start proxy %s"), git_proxy_command);
- fd[0] = proxy->out; /* read from proxy stdout */
-@@ -1515,6 +1517,8 @@ struct child_process *git_connect(int fd[2], const char *url,
- }
- strvec_push(&conn->args, cmd.buf);
-
-+ conn->clean_on_exit = 1;
-+ conn->wait_after_clean = 1;
- if (start_command(conn))
- die(_("unable to fork"));
-
-diff --git a/transport-helper.c b/transport-helper.c
-index 4d95d84f9e..570d7c6439 100644
---- a/transport-helper.c
-+++ b/transport-helper.c
-@@ -154,6 +154,8 @@ static struct child_process *get_helper(struct transport *transport)
-
- helper->trace2_child_class = helper->args.v[0]; /* "remote-<name>" */
-
-+ helper->clean_on_exit = 1;
-+ helper->wait_after_clean = 1;
- code = start_command(helper);
- if (code < 0 && errno == ENOENT)
- die(_("unable to find remote helper for '%s'"), data->name);
---
-2.54.0
-
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/git-core.git/commitdiff/0b7ca39bd2ae20d0a5a77f798c2590a49397e502
More information about the pld-cvs-commit
mailing list