git: 00e2d193096d - main - www/gitlab: major upgrade to 19.4.0

From: Matthias Fechner <mfechner_at_FreeBSD.org>
Date: Fri, 18 Sep 2026 04:13:49 UTC
The branch main has been updated by mfechner:

URL: https://cgit.FreeBSD.org/ports/commit/?id=00e2d193096df19dd6baf2bc9bbeb5ff4da0eb90

commit 00e2d193096df19dd6baf2bc9bbeb5ff4da0eb90
Author:     Matthias Fechner <mfechner@FreeBSD.org>
AuthorDate: 2026-09-17 12:07:04 +0000
Commit:     Matthias Fechner <mfechner@FreeBSD.org>
CommitDate: 2026-09-18 04:12:54 +0000

    www/gitlab: major upgrade to 19.4.0
    
    Changes:        https://docs.gitlab.com/releases/19/gitlab-19-4-released/
---
 devel/gitaly/distinfo                            | 26 ++++----
 devel/gitlab-shell/Makefile                      |  4 +-
 devel/gitlab-shell/distinfo                      | 10 +--
 net/gitlab-agent/Makefile                        |  6 +-
 net/gitlab-agent/distinfo                        | 10 +--
 net/rubygem-gitlab-kas-grpc/distinfo             |  6 +-
 textproc/gitlab-elasticsearch-indexer/Makefile   |  2 +-
 textproc/gitlab-elasticsearch-indexer/distinfo   | 10 +--
 textproc/gitlab-zoekt-indexer/Makefile           |  3 +-
 textproc/gitlab-zoekt-indexer/distinfo           | 10 +--
 www/gitlab-pages/distinfo                        | 10 +--
 www/gitlab-workhorse/distinfo                    | 10 +--
 www/gitlab/Makefile                              | 77 ++++++++++++------------
 www/gitlab/Makefile.common                       |  6 +-
 www/gitlab/distinfo                              | 12 ++--
 www/gitlab/files/patch-Gemfile                   | 34 ++++++-----
 www/gitlab/files/patch-config_gitlab.yml.example | 20 +++---
 www/gitlab/pkg-message                           |  4 +-
 18 files changed, 133 insertions(+), 127 deletions(-)

diff --git a/devel/gitaly/distinfo b/devel/gitaly/distinfo
index eaebdabc192a..576308f475d2 100644
--- a/devel/gitaly/distinfo
+++ b/devel/gitaly/distinfo
@@ -1,13 +1,13 @@
-TIMESTAMP = 1789273516
-SHA256 (go/devel_gitaly/gitaly-v19.3.2/go.mod) = 57c23a627d6bb436cdfc2c94adc3cff52fe52d29a1419552b141499ccafa0757
-SIZE (go/devel_gitaly/gitaly-v19.3.2/go.mod) = 12012
-SHA256 (go/devel_gitaly/gitaly-v19.3.2/gitaly-v19.3.2.tar.bz2) = e73bfb6a6d59f21732b891aa3d77f4de4fcad7c60c8d46fc8a118390def5dc75
-SIZE (go/devel_gitaly/gitaly-v19.3.2/gitaly-v19.3.2.tar.bz2) = 4922879
-SHA256 (go/devel_gitaly/gitaly-v19.3.2/git-v2.54.0.tar.bz2) = 0afe27f0b087c18613b7b6ddf2cae48d39ee808ca63e5496622845b180ff8595
-SIZE (go/devel_gitaly/gitaly-v19.3.2/git-v2.54.0.tar.bz2) = 9512039
-SHA256 (go/devel_gitaly/gitaly-v19.3.2/gitlab-org-git-1ea786d14a1bb47399ce7b5f1e5885d65139b35f_GL0.tar.gz) = 5486c260dd1063d4b346e1717d1e1249463c58a79c9e283daba5b6c3b52f243b
-SIZE (go/devel_gitaly/gitaly-v19.3.2/gitlab-org-git-1ea786d14a1bb47399ce7b5f1e5885d65139b35f_GL0.tar.gz) = 12170085
-SHA256 (go/devel_gitaly/gitaly-v19.3.2/gitlab-org-git-02bb39c5cbca65a4817854477cc3e1c31ea28c49_GL0.tar.gz) = f6f9d74ab9f4f290a28fb131c2b44f664bb7b0476c3ad6cbad3a8b73fe48995b
-SIZE (go/devel_gitaly/gitaly-v19.3.2/gitlab-org-git-02bb39c5cbca65a4817854477cc3e1c31ea28c49_GL0.tar.gz) = 12168183
-SHA256 (go/devel_gitaly/gitaly-v19.3.2/gitlab-org-git-259367dc2d128a4e0dc4b6d0f67ee9711bde8cc2_GL0.tar.gz) = 79a206d2b174839b368c35068ac3bfa4a7e5d4d17617b3046e8ea6df47ff3165
-SIZE (go/devel_gitaly/gitaly-v19.3.2/gitlab-org-git-259367dc2d128a4e0dc4b6d0f67ee9711bde8cc2_GL0.tar.gz) = 12193033
+TIMESTAMP = 1789624577
+SHA256 (go/devel_gitaly/gitaly-v19.4.0/go.mod) = df4515685e90e49133fea857117ade50d146f976a0791a2c14b2d62f8c56c228
+SIZE (go/devel_gitaly/gitaly-v19.4.0/go.mod) = 11736
+SHA256 (go/devel_gitaly/gitaly-v19.4.0/gitaly-v19.4.0.tar.bz2) = ca22287b67b0d56cedb22a0baeded4f5f29e5f41ae6fada7fc30d9f30b2d5a0e
+SIZE (go/devel_gitaly/gitaly-v19.4.0/gitaly-v19.4.0.tar.bz2) = 4880588
+SHA256 (go/devel_gitaly/gitaly-v19.4.0/git-v2.54.0.tar.bz2) = 0afe27f0b087c18613b7b6ddf2cae48d39ee808ca63e5496622845b180ff8595
+SIZE (go/devel_gitaly/gitaly-v19.4.0/git-v2.54.0.tar.bz2) = 9512039
+SHA256 (go/devel_gitaly/gitaly-v19.4.0/gitlab-org-git-1ea786d14a1bb47399ce7b5f1e5885d65139b35f_GL0.tar.gz) = 5486c260dd1063d4b346e1717d1e1249463c58a79c9e283daba5b6c3b52f243b
+SIZE (go/devel_gitaly/gitaly-v19.4.0/gitlab-org-git-1ea786d14a1bb47399ce7b5f1e5885d65139b35f_GL0.tar.gz) = 12170085
+SHA256 (go/devel_gitaly/gitaly-v19.4.0/gitlab-org-git-02bb39c5cbca65a4817854477cc3e1c31ea28c49_GL0.tar.gz) = f6f9d74ab9f4f290a28fb131c2b44f664bb7b0476c3ad6cbad3a8b73fe48995b
+SIZE (go/devel_gitaly/gitaly-v19.4.0/gitlab-org-git-02bb39c5cbca65a4817854477cc3e1c31ea28c49_GL0.tar.gz) = 12168183
+SHA256 (go/devel_gitaly/gitaly-v19.4.0/gitlab-org-git-259367dc2d128a4e0dc4b6d0f67ee9711bde8cc2_GL0.tar.gz) = 79a206d2b174839b368c35068ac3bfa4a7e5d4d17617b3046e8ea6df47ff3165
+SIZE (go/devel_gitaly/gitaly-v19.4.0/gitlab-org-git-259367dc2d128a4e0dc4b6d0f67ee9711bde8cc2_GL0.tar.gz) = 12193033
diff --git a/devel/gitlab-shell/Makefile b/devel/gitlab-shell/Makefile
index 1eac3cf28211..3121e0fdeff0 100644
--- a/devel/gitlab-shell/Makefile
+++ b/devel/gitlab-shell/Makefile
@@ -1,7 +1,6 @@
 PORTNAME=	gitlab-shell
-PORTVERSION=	14.56.1
+PORTVERSION=	14.57.3
 DISTVERSIONPREFIX=	v
-PORTREVISION=	3
 CATEGORIES=	devel
 
 MAINTAINER=	mfechner@FreeBSD.org
@@ -13,6 +12,7 @@ LICENSE=	MIT
 # GSSAPI support can maybe be removed by disable CGO:
 # https://gitlab.com/gitlab-org/gitlab-shell/-/merge_requests/720
 #BUILD_DEPENDS=	heimdal>=0:security/heimdal
+BUILD_DEPENDS=	bash:shells/bash
 
 USES=		gmake go:modules,no_targets pkgconfig
 
diff --git a/devel/gitlab-shell/distinfo b/devel/gitlab-shell/distinfo
index 35e8c5bc4a7a..07c6508fa887 100644
--- a/devel/gitlab-shell/distinfo
+++ b/devel/gitlab-shell/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1784177944
-SHA256 (go/devel_gitlab-shell/gitlab-shell-v14.56.1/go.mod) = a1d3f514fe7cc2eeca7bf357706353c91ac2c2d4d86623754486ed384b79da65
-SIZE (go/devel_gitlab-shell/gitlab-shell-v14.56.1/go.mod) = 9545
-SHA256 (go/devel_gitlab-shell/gitlab-shell-v14.56.1/gitlab-shell-v14.56.1.tar.bz2) = 286f2cc569ac81d71abc8110c4c949a4451f30ec4d5bf4d45116e1f30850e41a
-SIZE (go/devel_gitlab-shell/gitlab-shell-v14.56.1/gitlab-shell-v14.56.1.tar.bz2) = 219695
+TIMESTAMP = 1789624905
+SHA256 (go/devel_gitlab-shell/gitlab-shell-v14.57.3/go.mod) = 116f6a80cfbe3dbad21cd8f7ea0a594edef29d9e9e9d2ce7dd88f677457879d5
+SIZE (go/devel_gitlab-shell/gitlab-shell-v14.57.3/go.mod) = 9548
+SHA256 (go/devel_gitlab-shell/gitlab-shell-v14.57.3/gitlab-shell-v14.57.3.tar.bz2) = 2e4f43ef91d37c2a3d9f910945bd132d8952cde5457316be95e4c97e9caf9885
+SIZE (go/devel_gitlab-shell/gitlab-shell-v14.57.3/gitlab-shell-v14.57.3.tar.bz2) = 228691
diff --git a/net/gitlab-agent/Makefile b/net/gitlab-agent/Makefile
index 2a7f3d6c3c99..7255ded1a3af 100644
--- a/net/gitlab-agent/Makefile
+++ b/net/gitlab-agent/Makefile
@@ -30,7 +30,7 @@ GO_BUILDFLAGS= -tags="tracer_static,tracer_static_jaeger" \
 
 PLIST_FILES=	bin/kas
 
-# The go.mod has a local path replace (pkg/autoflow). The framework's
+# The go.mod has a local path replace (pkg/autoflow, pkg/tunnel). The framework's
 # go-post-fetch hook runs "go mod download all" from the distdir, where only
 # the bare go.mod has been fetched, and resolves that local path relative to
 # it. Extract the subtree from the main tarball first (this runs before
@@ -41,6 +41,10 @@ post-fetch:
 		${TAR} -xf ${DISTDIR}/${DIST_SUBDIR}/${DISTNAME}.tar.bz2 \
 		--strip-components 1 --no-same-owner --no-same-permissions \
 		${DISTNAME}/pkg/autoflow
+	cd ${DISTDIR}/${DIST_SUBDIR} && \
+		${TAR} -xf ${DISTDIR}/${DIST_SUBDIR}/${DISTNAME}.tar.bz2 \
+		--strip-components 1 --no-same-owner --no-same-permissions \
+		${DISTNAME}/pkg/tunnel
 
 do-install:
 	${INSTALL_PROGRAM} ${WRKDIR}/bin/kas ${STAGEDIR}${PREFIX}/bin/kas
diff --git a/net/gitlab-agent/distinfo b/net/gitlab-agent/distinfo
index 3cc3b6a55c9c..31f44e0af098 100644
--- a/net/gitlab-agent/distinfo
+++ b/net/gitlab-agent/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1789283910
-SHA256 (go/net_gitlab-agent/gitlab-agent-v19.3.2/go.mod) = a5228c29551d453c27ad1e93c1d4571e97b9097e9c64e8b842b45d8b411e264f
-SIZE (go/net_gitlab-agent/gitlab-agent-v19.3.2/go.mod) = 11871
-SHA256 (go/net_gitlab-agent/gitlab-agent-v19.3.2/gitlab-agent-v19.3.2.tar.bz2) = a591a69b84c2d995244f46981b47460cbcc4496c2d41022058deb32703c90f69
-SIZE (go/net_gitlab-agent/gitlab-agent-v19.3.2/gitlab-agent-v19.3.2.tar.bz2) = 1516805
+TIMESTAMP = 1789624579
+SHA256 (go/net_gitlab-agent/gitlab-agent-v19.4.0/go.mod) = 055473a6b5b0d8dac39654d7a27296a1096d0e0e4e4c2af314b8d365e8e32cd2
+SIZE (go/net_gitlab-agent/gitlab-agent-v19.4.0/go.mod) = 10832
+SHA256 (go/net_gitlab-agent/gitlab-agent-v19.4.0/gitlab-agent-v19.4.0.tar.bz2) = 7da198cf598f936e39aaaa38a5095766ba5f20fc511abdb7d4ae1b749df405e6
+SIZE (go/net_gitlab-agent/gitlab-agent-v19.4.0/gitlab-agent-v19.4.0.tar.bz2) = 2256842
diff --git a/net/rubygem-gitlab-kas-grpc/distinfo b/net/rubygem-gitlab-kas-grpc/distinfo
index daba69ac0349..f3c679c5adc5 100644
--- a/net/rubygem-gitlab-kas-grpc/distinfo
+++ b/net/rubygem-gitlab-kas-grpc/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1787208950
-SHA256 (rubygem/gitlab-kas-grpc-19.3.0.pre.rc4.gem) = f039c5a603f7e356183906ccabf09e7beec5c6e5c68af3e9df99b7d63a924feb
-SIZE (rubygem/gitlab-kas-grpc-19.3.0.pre.rc4.gem) = 15360
+TIMESTAMP = 1789633285
+SHA256 (rubygem/gitlab-kas-grpc-19.4.0.pre.rc1.gem) = ebe94f6a8611d43ab1f09967bb997185a1745716caa429a4f359387a79ec8a91
+SIZE (rubygem/gitlab-kas-grpc-19.4.0.pre.rc1.gem) = 15360
diff --git a/textproc/gitlab-elasticsearch-indexer/Makefile b/textproc/gitlab-elasticsearch-indexer/Makefile
index a5a1216a723b..e23c115368cb 100644
--- a/textproc/gitlab-elasticsearch-indexer/Makefile
+++ b/textproc/gitlab-elasticsearch-indexer/Makefile
@@ -1,5 +1,5 @@
 PORTNAME=	gitlab-elasticsearch-indexer
-PORTVERSION=	5.14.13
+PORTVERSION=	5.14.14
 DISTVERSIONPREFIX=	v
 CATEGORIES=	textproc
 
diff --git a/textproc/gitlab-elasticsearch-indexer/distinfo b/textproc/gitlab-elasticsearch-indexer/distinfo
index c461ca054eb8..b10bbefadd35 100644
--- a/textproc/gitlab-elasticsearch-indexer/distinfo
+++ b/textproc/gitlab-elasticsearch-indexer/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1789279438
-SHA256 (go/textproc_gitlab-elasticsearch-indexer/gitlab-elasticsearch-indexer-v5.14.13/go.mod) = 0d66a3c0cba12ec917ae39c28af6110586d2ba754dcc9aa1e029dbbbfffa8515
-SIZE (go/textproc_gitlab-elasticsearch-indexer/gitlab-elasticsearch-indexer-v5.14.13/go.mod) = 6048
-SHA256 (go/textproc_gitlab-elasticsearch-indexer/gitlab-elasticsearch-indexer-v5.14.13/gitlab-elasticsearch-indexer-v5.14.13.tar.bz2) = 8c00688e0e979463e37d9812c085a6184211ee34e3f76bda650e65d5ca3b90e9
-SIZE (go/textproc_gitlab-elasticsearch-indexer/gitlab-elasticsearch-indexer-v5.14.13/gitlab-elasticsearch-indexer-v5.14.13.tar.bz2) = 148016
+TIMESTAMP = 1789624784
+SHA256 (go/textproc_gitlab-elasticsearch-indexer/gitlab-elasticsearch-indexer-v5.14.14/go.mod) = ff2ebf7972e62599756cb6168bf449786eac3ccd21166ea4dc516ab6da0b0636
+SIZE (go/textproc_gitlab-elasticsearch-indexer/gitlab-elasticsearch-indexer-v5.14.14/go.mod) = 6050
+SHA256 (go/textproc_gitlab-elasticsearch-indexer/gitlab-elasticsearch-indexer-v5.14.14/gitlab-elasticsearch-indexer-v5.14.14.tar.bz2) = 852c5a3b4c4848cd168b7fa919bc225e22c534dee1d4c4d2a5616a928fcee3b5
+SIZE (go/textproc_gitlab-elasticsearch-indexer/gitlab-elasticsearch-indexer-v5.14.14/gitlab-elasticsearch-indexer-v5.14.14.tar.bz2) = 149244
diff --git a/textproc/gitlab-zoekt-indexer/Makefile b/textproc/gitlab-zoekt-indexer/Makefile
index 34d093aef49a..db1105468a8d 100644
--- a/textproc/gitlab-zoekt-indexer/Makefile
+++ b/textproc/gitlab-zoekt-indexer/Makefile
@@ -1,7 +1,6 @@
 PORTNAME=	gitlab-zoekt-indexer
-PORTVERSION=	1.16.1
+PORTVERSION=	1.19.0
 DISTVERSIONPREFIX=	v
-PORTREVISION=	4
 CATEGORIES=	textproc
 
 MAINTAINER=	mfechner@FreeBSD.org
diff --git a/textproc/gitlab-zoekt-indexer/distinfo b/textproc/gitlab-zoekt-indexer/distinfo
index 961254db9028..45fd761b3346 100644
--- a/textproc/gitlab-zoekt-indexer/distinfo
+++ b/textproc/gitlab-zoekt-indexer/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1781694014
-SHA256 (go/textproc_gitlab-zoekt-indexer/gitlab-zoekt-indexer-v1.16.1/go.mod) = 2979f6eef790b98aebe68c5fceff7ce18ad17ce72ec084678fa2053e564d9d15
-SIZE (go/textproc_gitlab-zoekt-indexer/gitlab-zoekt-indexer-v1.16.1/go.mod) = 9305
-SHA256 (go/textproc_gitlab-zoekt-indexer/gitlab-zoekt-indexer-v1.16.1/gitlab-zoekt-indexer-v1.16.1.tar.bz2) = 3bf15ccfa9582c5c464dc3e1ccbcaa7b7da50b14dd35c3ac21fe46d343813968
-SIZE (go/textproc_gitlab-zoekt-indexer/gitlab-zoekt-indexer-v1.16.1/gitlab-zoekt-indexer-v1.16.1.tar.bz2) = 886772
+TIMESTAMP = 1789625224
+SHA256 (go/textproc_gitlab-zoekt-indexer/gitlab-zoekt-indexer-v1.19.0/go.mod) = 202fd5a2cd6eebe6a89e281a9d0b716fa9c60de82ae1365b79e003215892bb9f
+SIZE (go/textproc_gitlab-zoekt-indexer/gitlab-zoekt-indexer-v1.19.0/go.mod) = 6303
+SHA256 (go/textproc_gitlab-zoekt-indexer/gitlab-zoekt-indexer-v1.19.0/gitlab-zoekt-indexer-v1.19.0.tar.bz2) = 225265834714a9a2b30ce94d516ee3101ed0760956f4e8ca21e55144b007900f
+SIZE (go/textproc_gitlab-zoekt-indexer/gitlab-zoekt-indexer-v1.19.0/gitlab-zoekt-indexer-v1.19.0.tar.bz2) = 892100
diff --git a/www/gitlab-pages/distinfo b/www/gitlab-pages/distinfo
index 39d086e75099..ce8a3589aa38 100644
--- a/www/gitlab-pages/distinfo
+++ b/www/gitlab-pages/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1789273560
-SHA256 (go/www_gitlab-pages/gitlab-pages-v19.3.2/go.mod) = ed34e139916026ce77c6512c6f175e8ed1eed976b680b388b2e2af7ac11ee2bd
-SIZE (go/www_gitlab-pages/gitlab-pages-v19.3.2/go.mod) = 3902
-SHA256 (go/www_gitlab-pages/gitlab-pages-v19.3.2/gitlab-pages-v19.3.2.tar.bz2) = 06cc97802868e79eb4080b9ae7c3cc20f9ac3c32d444a361f59bd93936aedac3
-SIZE (go/www_gitlab-pages/gitlab-pages-v19.3.2/gitlab-pages-v19.3.2.tar.bz2) = 229207
+TIMESTAMP = 1789624581
+SHA256 (go/www_gitlab-pages/gitlab-pages-v19.4.0/go.mod) = 015b0af6a8903c1294a5889ceef8d4de9e3486868de29d4688186c5ad428e948
+SIZE (go/www_gitlab-pages/gitlab-pages-v19.4.0/go.mod) = 3832
+SHA256 (go/www_gitlab-pages/gitlab-pages-v19.4.0/gitlab-pages-v19.4.0.tar.bz2) = 79526cac9b938917934674d6ee9a11f5f5a779d2f9939341cbee1b5dc16cff9d
+SIZE (go/www_gitlab-pages/gitlab-pages-v19.4.0/gitlab-pages-v19.4.0.tar.bz2) = 230344
diff --git a/www/gitlab-workhorse/distinfo b/www/gitlab-workhorse/distinfo
index 300acf506695..fa02ef8ddd40 100644
--- a/www/gitlab-workhorse/distinfo
+++ b/www/gitlab-workhorse/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1789276563
-SHA256 (go/www_gitlab-workhorse/gitlab-foss-v19.3.2/go.mod) = 5f4792dff2ce88a9cc5ff84ec2da216dd1868580537ed007c4ae6a5f97ee685a
-SIZE (go/www_gitlab-workhorse/gitlab-foss-v19.3.2/go.mod) = 12713
-SHA256 (go/www_gitlab-workhorse/gitlab-foss-v19.3.2/gitlab-foss-v19.3.2.tar.bz2) = 1458d25ee8f5a572ce275b417c787235c222e60660ff6188b386cd2baca4acc6
-SIZE (go/www_gitlab-workhorse/gitlab-foss-v19.3.2/gitlab-foss-v19.3.2.tar.bz2) = 144475652
+TIMESTAMP = 1789624596
+SHA256 (go/www_gitlab-workhorse/gitlab-foss-v19.4.0/go.mod) = 7bc410451f6836a621a347d07d7c48726442cb539a3b13dc3baeb00b5bb9f722
+SIZE (go/www_gitlab-workhorse/gitlab-foss-v19.4.0/go.mod) = 12700
+SHA256 (go/www_gitlab-workhorse/gitlab-foss-v19.4.0/gitlab-foss-v19.4.0.tar.bz2) = 907fba8f225f0efbb4dc42cc1ff856e9edda5d90f5f57991c0d8a105f7e73dc4
+SIZE (go/www_gitlab-workhorse/gitlab-foss-v19.4.0/gitlab-foss-v19.4.0.tar.bz2) = 146852392
diff --git a/www/gitlab/Makefile b/www/gitlab/Makefile
index ea160e094578..ffc468fd1557 100644
--- a/www/gitlab/Makefile
+++ b/www/gitlab/Makefile
@@ -30,27 +30,27 @@ LICENSE_FILE=	${WRKSRC}/LICENSE
 # rubygem-freezolite is required by bundled gem auto_freeze
 # rubygem-erb-gitlab 6.0.4 (listed in lockfile, maybe bundled dep)
 MY_DEPENDS=	gitaly>=${GITLAB_VERSION}:devel/gitaly \
-	gitlab-elasticsearch-indexer>=5.14.13:textproc/gitlab-elasticsearch-indexer \
+	gitlab-elasticsearch-indexer>=5.14.14:textproc/gitlab-elasticsearch-indexer \
 	gitlab-agent>=${GITLAB_VERSION}:net/gitlab-agent \
 	gitlab-pages>=${GITLAB_VERSION}:www/gitlab-pages \
-	gitlab-shell>=14.56.1:devel/gitlab-shell \
+	gitlab-shell>=14.57.3:devel/gitlab-shell \
 	gitlab-workhorse>=${GITLAB_VERSION}:www/gitlab-workhorse \
-	gitlab-zoekt-indexer>=1.16.1:textproc/gitlab-zoekt-indexer \
+	gitlab-zoekt-indexer>=1.19.0:textproc/gitlab-zoekt-indexer \
 	redis>=7.2:databases/redis \
 	yarn${NODEJS_SUFFIX}>=1.10.0:www/yarn${NODEJS_SUFFIX} \
 	gtar>0:archivers/gtar \
 	bash>0:shells/bash \
-	rubygem-parser-gitlab>=3.3.11.1:devel/rubygem-parser-gitlab \
+	rubygem-parser-gitlab>=3.3.12.0:devel/rubygem-parser-gitlab \
 	rubygem-net-smtp>=0.5.1:mail/rubygem-net-smtp \
 	rubygem-psych>=5.3.1:textproc/rubygem-psych \
 	rubygem-net-pop>=0:mail/rubygem-net-pop \
 	rubygem-rails-gitlab>=${RAILS_VERSION}<7.3:www/rubygem-rails-gitlab \
 	rubygem-zeitwerk>=2.6.18<2.6.19:devel/rubygem-zeitwerk \
 	rubygem-drb-gitlab>=2.2.3<3:devel/rubygem-drb-gitlab \
-	rubygem-bootsnap-gitlab>=1.25.0<1.26:devel/rubygem-bootsnap-gitlab \
+	rubygem-bootsnap-gitlab>=1.26.0<1.27:devel/rubygem-bootsnap-gitlab \
 	rubygem-ffi>=1.17.4<2:devel/rubygem-ffi \
 	rubygem-openssl3>=3.3.3<3.4:security/rubygem-openssl3 \
-	rubygem-gitlab-secret_detection>=0.42.1<1:security/rubygem-gitlab-secret_detection \
+	rubygem-gitlab-secret_detection>=0.45.0<1:security/rubygem-gitlab-secret_detection \
 	rubygem-responders-rails-gitlab>=3.0<4.0:www/rubygem-responders-rails-gitlab \
 	rubygem-sprockets-gitlab>=3.7.5<3.8:devel/rubygem-sprockets-gitlab \
 	rubygem-sprockets-rails-rails-gitlab>=3.5.2<3.6:devel/rubygem-sprockets-rails-rails-gitlab \
@@ -60,8 +60,8 @@ MY_DEPENDS=	gitaly>=${GITLAB_VERSION}:devel/gitaly \
 	rubygem-faraday-retry-gitlab>=2.4.0<3:www/rubygem-faraday-retry-gitlab \
 	rubygem-logger-gitlab>=1.7.0<1.8:devel/rubygem-logger-gitlab \
 	rubygem-declarative_policy>=2.1.0<2.2:security/rubygem-declarative_policy \
-	rubygem-gitlab-glaz>=0.0.3<0.1:security/rubygem-gitlab-glaz \
-	rubygem-coverband>=6.2.1<6.3:www/rubygem-coverband \
+	rubygem-gitlab-glaz>=1.2.0<1.3:security/rubygem-gitlab-glaz \
+	rubygem-coverband>=6.2.2<6.3:www/rubygem-coverband \
 	rubygem-devise-rails-gitlab>=4.9.3<4.10:devel/rubygem-devise-rails-gitlab \
 	rubygem-bcrypt>=3.1.22<3.2:security/rubygem-bcrypt \
 	rubygem-doorkeeper-rails-gitlab>=5.9.0<6:security/rubygem-doorkeeper-rails-gitlab \
@@ -93,7 +93,7 @@ MY_DEPENDS=	gitaly>=${GITLAB_VERSION}:devel/gitaly \
 	rubygem-attr_encrypted>=4.2<5:security/rubygem-attr_encrypted \
 	rubygem-validates_hostname-gitlab>=1.0.13<1.1.0:dns/rubygem-validates_hostname-gitlab \
 	rubygem-rubyzip-gitlab>=2.4.1<2.5:archivers/rubygem-rubyzip-gitlab \
-	rubygem-acme-client-gitlab>=2.0.32<3:security/rubygem-acme-client-gitlab \
+	rubygem-acme-client-gitlab>=2.0.34<3:security/rubygem-acme-client-gitlab \
 	rubygem-browser5>=5.3.1<5.4:www/rubygem-browser5 \
 	rubygem-ohai>=19.1.40<19.2:sysutils/rubygem-ohai \
 	rubygem-gpgme>=2.0.26<2.1.0:security/rubygem-gpgme \
@@ -104,7 +104,7 @@ MY_DEPENDS=	gitaly>=${GITLAB_VERSION}:devel/gitaly \
 	rubygem-grape-swagger-gitlab>=2.1.4<2.2:devel/rubygem-grape-swagger-gitlab \
 	rubygem-grape-swagger-entity>=0.7.1<0.8:devel/rubygem-grape-swagger-entity \
 	rubygem-grape-path-helpers>=2.1.0<2.2:devel/rubygem-grape-path-helpers \
-	rubygem-gitlab-grape-openapi>=0.3.0<0.4:devel/rubygem-gitlab-grape-openapi \
+	rubygem-gitlab-grape-openapi>=0.5.0<0.6:devel/rubygem-gitlab-grape-openapi \
 	rubygem-rack-cors>=2.0.1<2.1:www/rubygem-rack-cors \
 	rubygem-graphql>=2.6.10<2.7:devel/rubygem-graphql \
 	rubygem-apollo_upload_server>=2.1.8<2.2:net/rubygem-apollo_upload_server \
@@ -117,24 +117,24 @@ MY_DEPENDS=	gitaly>=${GITLAB_VERSION}:devel/gitaly \
 	rubygem-marcel-gitlab>=1.0.4<1.1:devel/rubygem-marcel-gitlab \
 	rubygem-prawn>=0:print/rubygem-prawn \
 	rubygem-prawn-svg>=0:print/rubygem-prawn-svg \
-	rubygem-fog-aws-gitlab>=3.28.0<4:net/rubygem-fog-aws-gitlab \
+	rubygem-fog-aws-gitlab>=3.33.3<4:net/rubygem-fog-aws-gitlab \
 	rubygem-fog-core-gitlab>=2.5<3:devel/rubygem-fog-core-gitlab \
 	rubygem-fog-google-gitlab>=1.29.4<2:net/rubygem-fog-google-gitlab \
 	rubygem-fog-local-gitlab>=0.8<1.0:net/rubygem-fog-local-gitlab \
 	rubygem-fog-aliyun-gitlab>=0.4.1<1.0:net/rubygem-fog-aliyun-gitlab \
-	rubygem-gitlab-fog-azure-rm>=2.5.0<2.6:net/rubygem-gitlab-fog-azure-rm \
-	rubygem-google-apis-storage_v1-gitlab>=0.29<1:devel/rubygem-google-apis-storage_v1-gitlab \
-	rubygem-google-cloud-storage-gitlab>=1.57.0<1.58:net/rubygem-google-cloud-storage-gitlab \
+	rubygem-gitlab-fog-azure-rm>=2.5.1<2.6:net/rubygem-gitlab-fog-azure-rm \
+	rubygem-google-apis-storage_v1-gitlab>=0.66<1:devel/rubygem-google-apis-storage_v1-gitlab \
+	rubygem-google-cloud-storage-gitlab>=1.62.0<1.63:net/rubygem-google-cloud-storage-gitlab \
 	rubygem-google-apis-core-gitlab>=0.18.0<0.19:devel/rubygem-google-apis-core-gitlab \
-	rubygem-google-apis-compute_v1-gitlab>=0.129.0<0.130:devel/rubygem-google-apis-compute_v1-gitlab \
+	rubygem-google-apis-compute_v1-gitlab>=0.154.0<0.155:devel/rubygem-google-apis-compute_v1-gitlab \
 	rubygem-google-apis-container_v1>=0.100.0<0.101:devel/rubygem-google-apis-container_v1 \
 	rubygem-google-apis-container_v1beta1>=0.91.0<0.92:devel/rubygem-google-apis-container_v1beta1 \
-	rubygem-google-apis-cloudbilling_v1>=0.22.0<0.23:devel/rubygem-google-apis-cloudbilling_v1 \
-	rubygem-google-apis-cloudresourcemanager_v1-gitlab>=0.44.0<0.45:devel/rubygem-google-apis-cloudresourcemanager_v1-gitlab \
+	rubygem-google-apis-cloudbilling_v1>=0.40.0<0.41:devel/rubygem-google-apis-cloudbilling_v1 \
+	rubygem-google-apis-cloudresourcemanager_v1-gitlab>=0.45.0<0.46:devel/rubygem-google-apis-cloudresourcemanager_v1-gitlab \
 	rubygem-google-apis-iam_v1-gitlab>=0.79.0<0.80:devel/rubygem-google-apis-iam_v1-gitlab \
 	rubygem-google-apis-serviceusage_v1>=0.28.0<0.29:devel/rubygem-google-apis-serviceusage_v1 \
 	rubygem-google-apis-sqladmin_v1beta4-gitlab>=0.41.0<0.42:devel/rubygem-google-apis-sqladmin_v1beta4-gitlab \
-	rubygem-google-apis-androidpublisher_v3-gitlab>=0.92.0<0.93:devel/rubygem-google-apis-androidpublisher_v3-gitlab \
+	rubygem-google-apis-androidpublisher_v3-gitlab>=0.107.0<0.108:devel/rubygem-google-apis-androidpublisher_v3-gitlab \
 	rubygem-googleauth-gitlab>=1.14<2:security/rubygem-googleauth-gitlab \
 	rubygem-google-cloud-artifact_registry-v1>=0.11.0<0.12:textproc/rubygem-google-cloud-artifact_registry-v1 \
 	rubygem-google-cloud-compute-v1>=2.6.0<2.7:net/rubygem-google-cloud-compute-v1 \
@@ -142,9 +142,9 @@ MY_DEPENDS=	gitaly>=${GITLAB_VERSION}:devel/gitaly \
 	rubygem-elasticsearch-model-gitlab>=7.2<8:textproc/rubygem-elasticsearch-model-gitlab \
 	rubygem-elasticsearch-rails7>=7.2<8:textproc/rubygem-elasticsearch-rails7 \
 	rubygem-elasticsearch-api-gitlab>=7.17.11<7.18:textproc/rubygem-elasticsearch-api-gitlab \
-	rubygem-aws-sdk-core-gitlab>=3.252.0<3.253:devel/rubygem-aws-sdk-core-gitlab \
-	rubygem-aws-sdk-cloudformation-gitlab>=1.154<2:devel/rubygem-aws-sdk-cloudformation-gitlab \
-	rubygem-aws-sdk-s3-gitlab>=1.226.0<1.227:devel/rubygem-aws-sdk-s3-gitlab \
+	rubygem-aws-sdk-core-gitlab>=3.254.1<3.255:devel/rubygem-aws-sdk-core-gitlab \
+	rubygem-aws-sdk-cloudformation-gitlab>=1.157<2:devel/rubygem-aws-sdk-cloudformation-gitlab \
+	rubygem-aws-sdk-s3-gitlab>=1.229.0<1.230:devel/rubygem-aws-sdk-s3-gitlab \
 	rubygem-faraday-typhoeus-gitlab>=1.1<2:www/rubygem-faraday-typhoeus-gitlab \
 	rubygem-faraday_middleware-aws-sigv4-gitlab>=1.0.1<1.1:devel/rubygem-faraday_middleware-aws-sigv4-gitlab \
 	rubygem-typhoeus-gitlab>=1.4.0<1.5:www/rubygem-typhoeus-gitlab \
@@ -160,13 +160,13 @@ MY_DEPENDS=	gitaly>=${GITLAB_VERSION}:devel/gitaly \
 	rubygem-asciidoctor-include-ext>=0.4.0<0.5.0:textproc/rubygem-asciidoctor-include-ext \
 	rubygem-asciidoctor-plantuml00>=0.0.16<0.1:textproc/rubygem-asciidoctor-plantuml00 \
 	rubygem-asciidoctor-kroki>=0.10.0<0.11:textproc/rubygem-asciidoctor-kroki \
-	rubygem-rouge-gitlab>=5.0.0<5.1:textproc/rubygem-rouge-gitlab \
+	rubygem-rouge-gitlab>=5.1.0<5.2:textproc/rubygem-rouge-gitlab \
 	rubygem-truncato>=0.7.13<0.8.0:textproc/rubygem-truncato \
-	rubygem-nokogiri>=1.19.3<2:textproc/rubygem-nokogiri \
-	rubygem-gitlab-glfm-markdown>=0.0.42<0.1:textproc/rubygem-gitlab-glfm-markdown \
+	rubygem-nokogiri>=1.19.4<2:textproc/rubygem-nokogiri \
+	rubygem-gitlab-glfm-markdown>=0.0.43<0.1:textproc/rubygem-gitlab-glfm-markdown \
 	rubygem-tanuki_emoji>=0.13<1:graphics/rubygem-tanuki_emoji \
 	rubygem-unicode-emoji>=4.0.4<5:devel/rubygem-unicode-emoji \
-	rubygem-icalendar-gitlab>=2.12.3<2.13:devel/rubygem-icalendar-gitlab \
+	rubygem-icalendar-gitlab>=2.12.4<2.13:devel/rubygem-icalendar-gitlab \
 	rubygem-diffy>=3.4.4<4:textproc/rubygem-diffy \
 	rubygem-rack-gitlab>=2.2.23<2.3:www/rubygem-rack-gitlab \
 	rubygem-rack-timeout>=0.7.0<0.8:www/rubygem-rack-timeout \
@@ -185,8 +185,8 @@ MY_DEPENDS=	gitaly>=${GITLAB_VERSION}:devel/gitaly \
 	rubygem-js_regex>=3.13.0<4.0:textproc/rubygem-js_regex \
 	rubygem-device_detector>=1.1.3:devel/rubygem-device_detector \
 	rubygem-redis-gitlab>=5.4.1<5.5:databases/rubygem-redis-gitlab \
-	rubygem-redis-client>=0.30.0<1:databases/rubygem-redis-client \
-	rubygem-redis-cluster-client>=0.16.5<1:databases/rubygem-redis-cluster-client \
+	rubygem-redis-client>=0.30.1<1:databases/rubygem-redis-client \
+	rubygem-redis-cluster-client>=0.17.1<1:databases/rubygem-redis-cluster-client \
 	rubygem-redis-clustering-gitlab>=5.4.1<5.5:databases/rubygem-redis-clustering-gitlab \
 	rubygem-connection_pool-gitlab>=2.5.5<2.6:net/rubygem-connection_pool-gitlab \
 	rubygem-redis-actionpack-rails-gitlab>=5.5.0<5.6:databases/rubygem-redis-actionpack-rails-gitlab \
@@ -198,7 +198,7 @@ MY_DEPENDS=	gitaly>=${GITLAB_VERSION}:devel/gitaly \
 	rubygem-circuitbox>=2.0.0<2.1:www/rubygem-circuitbox \
 	rubygem-sanitize60>=6.0.2<6.1:textproc/rubygem-sanitize60 \
 	rubygem-babosa>=2.0<3:textproc/rubygem-babosa \
-	rubygem-loofah-gitlab>=2.25.1<2.26:textproc/rubygem-loofah-gitlab \
+	rubygem-loofah-gitlab>=2.25.2<2.26:textproc/rubygem-loofah-gitlab \
 	rubygem-licensee-gitlab>=10.0.0<11:devel/rubygem-licensee-gitlab \
 	rubygem-charlock_holmes>=0.7.9<0.8:textproc/rubygem-charlock_holmes \
 	rubygem-ruby-magic>=0.6<1:devel/rubygem-ruby-magic \
@@ -220,9 +220,10 @@ MY_DEPENDS=	gitaly>=${GITLAB_VERSION}:devel/gitaly \
 	rubygem-sentry-rails>=5.23.0<5.24:devel/rubygem-sentry-rails \
 	rubygem-sentry-sidekiq>=5.23.0<5.24:devel/rubygem-sentry-sidekiq \
 	rubygem-pg_query>=6.2.2<6.3:databases/rubygem-pg_query \
+	rubygem-css_parser1>=1.22<2:textproc/rubygem-css_parser1 \
 	rubygem-premailer-rails-rails-gitlab>=1.12.0<1.13:mail/rubygem-premailer-rails-rails-gitlab \
 	rubygem-apnotic>=1.8<2:net/rubygem-apnotic \
-	rubygem-gitlab-labkit>=4.4.0<4.5:devel/rubygem-gitlab-labkit \
+	rubygem-gitlab-labkit>=5.0.1<5.1:devel/rubygem-gitlab-labkit \
 	rubygem-thrift>=0.22.0,1<0.23,1:devel/rubygem-thrift \
 	rubygem-rails-i18n-rails-gitlab>=7.0.9<8:devel/rubygem-rails-i18n-rails-gitlab \
 	rubygem-gettext_i18n_rails>=1.13.0<1.14:devel/rubygem-gettext_i18n_rails \
@@ -233,8 +234,8 @@ MY_DEPENDS=	gitaly>=${GITLAB_VERSION}:devel/gitaly \
 	rubygem-snowplow-tracker>=0.8.0<1:devel/rubygem-snowplow-tracker \
 	rubygem-webrick>=1.9.0<1.10:www/rubygem-webrick \
 	rubygem-prometheus-client-mmap>=1.6.1<1.7:devel/rubygem-prometheus-client-mmap \
-	rubygem-async-gitlab>=2.39.0<2.40:devel/rubygem-async-gitlab \
-	rubygem-io-event-gitlab>=1.16.2<2:devel/rubygem-io-event-gitlab \
+	rubygem-async-gitlab>=2.45.0<2.46:devel/rubygem-async-gitlab \
+	rubygem-io-event-gitlab>=1.21.1<2:devel/rubygem-io-event-gitlab \
 	rubygem-gitlab-security_report_schemas>=0.2.1.min15.0.0.max15.2.4<0.2.1.min15.0.0.max15.2.5:devel/rubygem-gitlab-security_report_schemas \
 	rubygem-vite_rails-gitlab>=3.10.0<3.11:devel/rubygem-vite_rails-gitlab \
 	rubygem-vite_ruby-gitlab>=3.10.1<3.11:devel/rubygem-vite_ruby-gitlab \
@@ -272,7 +273,7 @@ MY_DEPENDS=	gitaly>=${GITLAB_VERSION}:devel/gitaly \
 	rubygem-email_reply_trimmer-gitlab>=0.4<0.5:mail/rubygem-email_reply_trimmer-gitlab \
 	rubygem-html2text>=0.4.0:textproc/rubygem-html2text \
 	rubygem-stackprof>=0.2.28<0.3:devel/rubygem-stackprof \
-	rubygem-rbtrace>=0.5.3<1.0:devel/rubygem-rbtrace \
+	rubygem-rbtrace>=0.5.5<1.0:devel/rubygem-rbtrace \
 	rubygem-memory_profiler>=1.1.0<2.0:devel/rubygem-memory_profiler \
 	rubygem-oauth2-gitlab>=2.0.25<3:net/rubygem-oauth2-gitlab \
 	rubygem-health_check-rails-gitlab>=3.0<4:devel/rubygem-health_check-rails-gitlab \
@@ -283,9 +284,9 @@ MY_DEPENDS=	gitaly>=${GITLAB_VERSION}:devel/gitaly \
 	rubygem-spamcheck>=1.3.3<1.4:net/rubygem-spamcheck \
 	rubygem-gitaly>=19.2<20:net/rubygem-gitaly \
 	rubygem-gitlab-kas-grpc>=${GITLAB_KAS_GRPC_VERSION}:net/rubygem-gitlab-kas-grpc \
-	rubygem-gitlab-orbit-proto>=0.100.0<0.101:net/rubygem-gitlab-orbit-proto \
+	rubygem-gitlab-orbit-proto>=0.105.2<0.106:net/rubygem-gitlab-orbit-proto \
 	rubygem-grpc-gitlab>=1.81.0<1.82:net/rubygem-grpc-gitlab \
-	rubygem-google-protobuf>=4.35.1<5:devel/rubygem-google-protobuf \
+	rubygem-google-protobuf-gitlab>=4.36.0<5:devel/rubygem-google-protobuf-gitlab \
 	rubygem-toml-rb>=4.1<5:www/rubygem-toml-rb \
 	rubygem-flipper-gitlab>=1.3.6<1.4:devel/rubygem-flipper-gitlab \
 	rubygem-flipper-active_record-rails-gitlab>=1.3.6<1.4:databases/rubygem-flipper-active_record-rails-gitlab \
@@ -304,7 +305,7 @@ MY_DEPENDS=	gitaly>=${GITLAB_VERSION}:devel/gitaly \
 	rubygem-jsonb_accessor>=1.4<2:www/rubygem-jsonb_accessor \
 	rubygem-json-gitlab>=2.19.2<2.20:devel/rubygem-json-gitlab \
 	rubygem-json_schemer>=2.4.0<2.5:devel/rubygem-json_schemer \
-	rubygem-oj-gitlab>=3.17.3<3.18:devel/rubygem-oj-gitlab \
+	rubygem-oj-gitlab>=3.17.6<3.18:devel/rubygem-oj-gitlab \
 	rubygem-oj-introspect>=0.9<1:devel/rubygem-oj-introspect \
 	rubygem-multi_json-gitlab>=1.17.0<1.18:devel/rubygem-multi_json-gitlab \
 	rubygem-yajl-ruby>=1.4.3<1.5:devel/rubygem-yajl-ruby \
@@ -313,9 +314,9 @@ MY_DEPENDS=	gitaly>=${GITLAB_VERSION}:devel/gitaly \
 	rubygem-parslet1>=1.8<2:textproc/rubygem-parslet1 \
 	rubygem-ed25519>=1.4.0<1.5:security/rubygem-ed25519 \
 	rubygem-cvss-suite>=4.1.2<4.2:security/rubygem-cvss-suite \
-	rubygem-zstd-ruby-gitlab>=2.0.6<3:devel/rubygem-zstd-ruby-gitlab \
+	rubygem-zstd-ruby-gitlab>=2.0.8<3:devel/rubygem-zstd-ruby-gitlab \
 	rubygem-arr-pm>=0.0.12<0.1:devel/rubygem-arr-pm \
-	rubygem-devfile>=0.5.3<0.6:net/rubygem-devfile \
+	rubygem-devfile>=0.5.4<0.6:net/rubygem-devfile \
 	rubygem-hashdiff>=1.2.1<1.3:devel/rubygem-hashdiff \
 	rubygem-CFPropertyList-gitlab>=3.0.7<3.1:devel/rubygem-CFPropertyList-gitlab \
 	rubygem-app_store_connect>=0:net/rubygem-app_store_connect \
@@ -332,7 +333,7 @@ MY_DEPENDS=	gitaly>=${GITLAB_VERSION}:devel/gitaly \
 	rubygem-i18n_data>=0.13.1<1:devel/rubygem-i18n_data \
 	rubygem-gitlab-cloud-connector>=1.53<2:security/rubygem-gitlab-cloud-connector \
 	rubygem-gvltools>=0.4.0<0.5:devel/rubygem-gvltools \
-	rubygem-gitlab_query_language>=0.34.0<0.35:devel/rubygem-gitlab_query_language \
+	rubygem-gitlab_query_language>=0.35.0<0.36:devel/rubygem-gitlab_query_language \
 	rubygem-zlib>=3.2.3<3.3:devel/rubygem-zlib \
 	rubygem-license_finder-gitlab>=7.2.1<8:devel/rubygem-license_finder-gitlab \
 	rubygem-google-cloud-profiler-v2>=0.3<1:textproc/rubygem-google-cloud-profiler-v2 \
diff --git a/www/gitlab/Makefile.common b/www/gitlab/Makefile.common
index 742e7b066d87..395f8ade99ab 100644
--- a/www/gitlab/Makefile.common
+++ b/www/gitlab/Makefile.common
@@ -1,5 +1,5 @@
-GITLAB_VERSION=		19.3.2
-GITLAB_PORTREVISION=	2	# decrease this only if GITLAB_KAS_GRPC_VERSION is upgraded
+GITLAB_VERSION=		19.4.0
+GITLAB_PORTREVISION=	0	# decrease this only if GITLAB_KAS_GRPC_VERSION is upgraded
 
 # Git version gitaly should use (from gitlab mirror)
 # Find current tag from Makefile and .gitlab-ci.yaml
@@ -13,7 +13,7 @@ GITLAB_GIT_VERSION_MVCC=	259367dc2d128a4e0dc4b6d0f67ee9711bde8cc2
 
 # Overwrite version for gitlab-kas-grpc
 #GITLAB_KAS_GRPC_VERSION=	${GITLAB_VERSION}
-GITLAB_KAS_GRPC_VERSION=	19.3.0.pre.rc4
+GITLAB_KAS_GRPC_VERSION=	19.4.0.pre.rc1
 
 # Rails version
 RAILS_VERSION=	7.2.3.1
diff --git a/www/gitlab/distinfo b/www/gitlab/distinfo
index 0c89f390591c..06c8b85f30e6 100644
--- a/www/gitlab/distinfo
+++ b/www/gitlab/distinfo
@@ -1,6 +1,6 @@
-TIMESTAMP = 1789276545
-SHA256 (gitlab-foss-v19.3.2.tar.bz2) = 1458d25ee8f5a572ce275b417c787235c222e60660ff6188b386cd2baca4acc6
-SIZE (gitlab-foss-v19.3.2.tar.bz2) = 144475652
-TIMESTAMP = 1789276546
-SHA256 (gitlab-v19.3.2-ee.tar.bz2) = 5bd88deb1abe6e739e89acb79a954aa2e72c5b9ca0336587595b847cc53b519e
-SIZE (gitlab-v19.3.2-ee.tar.bz2) = 168342105
+TIMESTAMP = 1789633442
+SHA256 (gitlab-foss-v19.4.0.tar.bz2) = 907fba8f225f0efbb4dc42cc1ff856e9edda5d90f5f57991c0d8a105f7e73dc4
+SIZE (gitlab-foss-v19.4.0.tar.bz2) = 146852392
+TIMESTAMP = 1789633442
+SHA256 (gitlab-v19.4.0-ee.tar.bz2) = cad64a5507b1564e6e20edd0134efd2d704baa6c6f09db7edddfc03a3b46c0bb
+SIZE (gitlab-v19.4.0-ee.tar.bz2) = 171939864
diff --git a/www/gitlab/files/patch-Gemfile b/www/gitlab/files/patch-Gemfile
index 9719a9ae78a0..fd26b0e930f1 100644
--- a/www/gitlab/files/patch-Gemfile
+++ b/www/gitlab/files/patch-Gemfile
@@ -1,6 +1,6 @@
---- Gemfile.orig	2026-09-10 08:22:14 UTC
+--- Gemfile.orig	2026-09-16 15:54:57 UTC
 +++ Gemfile
-@@ -173,7 +173,7 @@ gem 'graphql', '~> 2.6.10', feature_category: :api
+@@ -167,7 +167,7 @@ gem 'graphql', '~> 2.6.10', feature_category: :api
  
  # GraphQL API
  gem 'graphql', '~> 2.6.10', feature_category: :api
@@ -9,7 +9,7 @@
  gem 'apollo_upload_server', '~> 2.1.6', feature_category: :api
  
  # IAM service gRPC client stubs
-@@ -308,7 +308,7 @@ gem 'state_machines-activerecord', '~> 0.100.0', featu
+@@ -302,7 +302,7 @@ gem 'state_machines-activerecord', '~> 0.100.0', featu
  gem 'state_machines-activerecord', '~> 0.100.0', feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
  
  # Background jobs
@@ -18,7 +18,7 @@
  gem 'sidekiq-cron', '~> 2.3.0', feature_category: :scalability
  gem 'gitlab-sidekiq-fetcher',
    path: 'vendor/gems/sidekiq-reliable-fetch',
-@@ -517,132 +517,6 @@ gem 'warning', '~> 1.5.0', feature_category: :shared #
+@@ -515,134 +515,6 @@ gem 'warning', '~> 1.5.0', feature_category: :shared #
  
  gem 'warning', '~> 1.5.0', feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
  
@@ -28,13 +28,10 @@
 -  gem 'debug', '~> 1.11.0', feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
 -
 -  gem 'solargraph', '~> 0.58.0', require: false, feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
--  gem 'solargraph-rspec', '~> 0.5.1', require: false, feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
+-  gem 'solargraph-rspec', '~> 0.6.0', require: false, feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
 -
 -  gem 'letter_opener_web', '~> 3.0.0', feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
--  # GitLab's fork of lookbook, which relaxes the upper bound on the rouge
--  # dependency to allow rouge 5.x. See:
--  # https://gitlab.com/gitlab-org/gitlab/-/work_items/581507
--  gem 'gitlab-lookbook', '~> 2.3', require: 'lookbook', feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
+-  gem 'lookbook', '~> 2.3.15', feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
 -
 -  gem 'sprite-factory', '~> 1.7', feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
 -
@@ -59,7 +56,7 @@
 -
 -group :development, :test do
 -  gem 'bullet', '~> 8.0.0', feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
--  gem 'parser', '= 3.3.11.1', feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
+-  gem 'parser', '= 3.3.12.0', feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
 -  gem 'pry-byebug', feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
 -  gem 'pry-rails', '~> 0.3.9', feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
 -  gem 'pry-shell', '~> 0.7.0', feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
@@ -78,15 +75,17 @@
 -
 -  gem 'gitlab-styles', '~> 14.1', feature_category: :tooling, require: false
 -  gem 'haml_lint', '~> 0.75', feature_category: :tooling, require: false
--  gem 'keela', '~> 0.3', feature_category: :tooling, require: false
+-  gem 'keela', '~> 0.4.1', feature_category: :tooling, require: false
 -
 -  # Benchmarking & profiling
--  gem 'benchmark-ips', '~> 2.14.0', require: false, feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
+-  gem 'benchmark-ips', '~> 2.15.0', require: false, feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
 -  gem 'benchmark-memory', '~> 0.1', require: false, feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
+-  gem 'benchmark-swap', '~> 0.2', require: false, feature_category: :tooling
 -
 -  gem 'knapsack', '~> 4.0.0', feature_category: :tooling
 -  gem 'gitlab-crystalball', '~> 1.1.3', require: false, feature_category: :tooling
 -  gem 'test_file_finder', '~> 0.3.1', feature_category: :tooling
+-  gem 'gitlab-test-balancing', path: 'gems/gitlab-test-balancing', require: false, feature_category: :code_testing
 -
 -  gem 'simple_po_parser', '~> 1.1.6', require: false, feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
 -
@@ -100,6 +99,9 @@
 -
 -  gem 'gitlab-housekeeper', path: 'gems/gitlab-housekeeper', feature_category: :tooling
 -
+-  gem 'gitlab-cells-http_router', path: 'gems/gitlab-cells-http_router',
+-    require: false, feature_category: :cell
+-
 -  gem 'yard', '~> 0.9', require: false, feature_category: :tooling
 -
 -  # Gems required for Dangerfile
@@ -142,7 +144,7 @@
 -  # Moved in `test` because https://gitlab.com/gitlab-org/gitlab/-/issues/217527
 -  gem 'derailed_benchmarks', require: false, feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
 -
--  gem 'gitlab_quality-test_tooling', '~> 3.20.2', require: false, feature_category: :tooling
+-  gem 'gitlab_quality-test_tooling', '~> 3.21.4', require: false, feature_category: :tooling
 -
 -  # Test execution result export
 -  gem 'gitlab-rspec-metrics-exporter', '~> 0.2.0', require: false, feature_category: :tooling
@@ -151,7 +153,7 @@
  gem 'octokit', '~> 9.0', feature_category: :importers
  # Needed by octokit: https://github.com/octokit/octokit.rb/pull/1688
  gem 'faraday-multipart', '~> 1.0', feature_category: :importers
-@@ -704,7 +578,7 @@ gem 'gitlab-net-dns', '~> 0.15.0', feature_category: :
+@@ -704,7 +576,7 @@ gem 'gitlab-net-dns', '~> 0.15.0', feature_category: :
  gem 'gitlab-net-dns', '~> 0.15.0', feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
  
  # Countries list
@@ -160,7 +162,7 @@
  
  gem 'retriable', '~> 3.1.2', feature_category: :shared # rubocop:todo Gemfile/MissingFeatureCategory -- https://gitlab.com/gitlab-org/gitlab/-/issues/581839
  
-@@ -793,11 +667,16 @@ gem 'duo_api', '~> 1.3', feature_category: :system_acc
+@@ -793,11 +665,16 @@ gem 'duo_api', '~> 1.3', feature_category: :system_acc
  
  gem 'duo_api', '~> 1.3', feature_category: :system_access
  
@@ -178,7 +180,7 @@
  
  gem "gitlab-cloud-connector", "~> 1.53", require: 'gitlab/cloud_connector', feature_category: :plan_provisioning
  
-@@ -810,3 +689,4 @@ gem 'license_finder', '~> 7.0', require: false, featur
+@@ -810,3 +687,4 @@ gem 'license_finder', '~> 7.0', require: false, featur
  
  # Gems required in omnibus-gitlab pipeline
  gem 'license_finder', '~> 7.0', require: false, feature_category: :build
diff --git a/www/gitlab/files/patch-config_gitlab.yml.example b/www/gitlab/files/patch-config_gitlab.yml.example
index fa527cbbbcee..f0aa63203cc2 100644
--- a/www/gitlab/files/patch-config_gitlab.yml.example
+++ b/www/gitlab/files/patch-config_gitlab.yml.example
@@ -1,6 +1,6 @@
---- config/gitlab.yml.example.orig	2026-08-20 01:18:43 UTC
+--- config/gitlab.yml.example.orig	2026-09-16 15:54:57 UTC
 +++ config/gitlab.yml.example
-@@ -635,7 +635,7 @@ production: &base
+@@ -641,7 +641,7 @@ production: &base
    ## GitLab Pages
    pages:
      enabled: false
@@ -9,7 +9,7 @@
      # The location where pages are stored (default: shared/pages).
      # path: shared/pages
  
-@@ -1426,7 +1426,7 @@ production: &base
+@@ -1447,7 +1447,7 @@ production: &base
    repositories:
      storages: # You must have at least a `default` storage path.
        default:
@@ -18,7 +18,7 @@
          # For DNS-based load balancing with TLS, use: dns+tls://[authority_host]:[authority_port]/[host]:[port]
          # The host:port portion will be used as the TLS server name for SNI.
          # Example: dns+tls://1.1.1.1/gitaly.example.com:8075
-@@ -1435,7 +1435,7 @@ production: &base
+@@ -1456,7 +1456,7 @@ production: &base
    ## Backup settings
    backup:
      path: "tmp/backups"   # Relative paths are relative to Rails.root (default: tmp/backups/)
@@ -27,7 +27,7 @@
      # archive_permissions: 0640 # Permissions for the resulting backup.tar file (default: 0600)
      # keep_time: 604800   # default: 0 (forever) (in seconds)
      # pg_schema: public     # default: nil, it means that all schemas will be backed up
-@@ -1470,12 +1470,12 @@ production: &base
+@@ -1491,12 +1491,12 @@ production: &base
  
    ## GitLab Shell settings
    gitlab_shell:
@@ -43,7 +43,7 @@
  
      # Git over HTTP
      upload_pack: true
-@@ -1490,7 +1490,7 @@ production: &base
+@@ -1511,7 +1511,7 @@ production: &base
    workhorse:
      # File that contains the secret key for verifying access for gitlab-workhorse.
      # Default is '.gitlab_workhorse_secret' relative to Rails.root (i.e. root of the GitLab app).
@@ -52,7 +52,7 @@
  
    database_traffic_capture:
      config:
-@@ -1552,7 +1552,7 @@ production: &base
+@@ -1573,7 +1573,7 @@ production: &base
      # enabled: true
      # File that contains the secret key for verifying access for gitlab-kas.
      # Default is '.gitlab_kas_secret' relative to Rails.root (i.e. root of the GitLab app).
@@ -61,7 +61,7 @@
  
      # The URL to the external KAS API (used by the Kubernetes agents)
      # external_url: wss://kas.example.com
-@@ -1594,13 +1594,13 @@ production: &base
+@@ -1615,13 +1615,13 @@ production: &base
  
    ## GitLab Elasticsearch settings
    elasticsearch:
@@ -77,7 +77,7 @@
  
    ## Webpack settings
    # If enabled, this will tell rails to serve frontend assets from the webpack-dev-server running
-@@ -1621,18 +1621,18 @@ production: &base
+@@ -1645,18 +1645,18 @@ production: &base
  
      # Sidekiq exporter is a dedicated Prometheus metrics server optionally running alongside Sidekiq.
      sidekiq_exporter:
@@ -103,7 +103,7 @@
  
      # Web exporter is a dedicated Prometheus metrics server optionally running alongside Puma.
      web_exporter:
-@@ -1892,13 +1892,13 @@ test:
+@@ -1916,13 +1916,13 @@ test:
          gitaly_address: unix:tmp/tests/gitaly/praefect.socket
  
    gitaly:
diff --git a/www/gitlab/pkg-message b/www/gitlab/pkg-message
index bd0904a3dcc4..d57e0ab38b9c 100644
--- a/www/gitlab/pkg-message
+++ b/www/gitlab/pkg-message
@@ -6,7 +6,7 @@ Gitlab was installed successfully.
 You now need to set up the various components of Gitlab, so please
 follow the instructions in the guide at:
 
-https://gitlab.com/mfechner/freebsd-gitlab-docu/blob/master/install/19.3-freebsd.md
+https://gitlab.com/mfechner/freebsd-gitlab-docu/blob/master/install/19.4-freebsd.md
 EOM
   type: install
 }
@@ -20,7 +20,7 @@ EOM
 If you just installed an major upgrade of GitLab, for example you
 switched from 18.6.x to 18.7.x, please follow the instructions in the guide at:
 
-https://gitlab.com/mfechner/freebsd-gitlab-docu/blob/master/update/19.2-19.3-freebsd.md
+https://gitlab.com/mfechner/freebsd-gitlab-docu/blob/master/update/19.3-19.4-freebsd.md
 
 If you just installed an minor upgrade of GitLab please follow
 the instructions in the guide at: