diff --git a/devel/gitaly/Makefile b/devel/gitaly/Makefile index 28ae6737aadc..6c15517de9e1 100644 --- a/devel/gitaly/Makefile +++ b/devel/gitaly/Makefile @@ -1,97 +1,96 @@ PORTNAME= gitaly -DISTVERSION= 15.6.4 -PORTREVISION= 1 +DISTVERSION= 15.7.5 +PORTREVISION= 0 DISTVERSIONPREFIX= v CATEGORIES= devel MAINTAINER= mfechner@FreeBSD.org COMMENT= Smart reverse proxy for GitLab WWW= https://gitlab.com/gitlab-org/gitaly LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE # Make sure the following patch is included: # https://gitlab.com/gitlab-org/gitaly/-/merge_requests/4108 # it fixes segfaults reported here: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=259848 # define dependencies that are required for build and run under MY_DEPENDS -MY_DEPENDS= git>=2.37.4:devel/git \ +MY_DEPENDS= git>=2.39.1:devel/git \ rubygem-bundler>=2.1.4:sysutils/rubygem-bundler \ rubygem-rugged>=1.2<2:devel/rubygem-rugged \ - rubygem-github-linguist>=7.23<8:textproc/rubygem-github-linguist \ rubygem-gitlab-markup>=1.8.0<1.9.0:textproc/rubygem-gitlab-markup \ rubygem-activesupport61>=6.1.6<6.2:devel/rubygem-activesupport61 \ rubygem-grpc142>=1.42.0<2:net/rubygem-grpc142 \ rubygem-sentry-raven>=3.0<4:devel/rubygem-sentry-raven \ rubygem-rbtrace>=0.4.14:devel/rubygem-rbtrace \ rubygem-gitaly>=15.5.0<15.6:net/rubygem-gitaly \ - rubygem-gitlab-labkit>=0.28<1:devel/rubygem-gitlab-labkit \ + rubygem-gitlab-labkit>=0.29<1:devel/rubygem-gitlab-labkit \ rubygem-licensee>=9.15<10:devel/rubygem-licensee \ - rubygem-google-protobuf>=3.21.9<3.22:devel/rubygem-google-protobuf \ + rubygem-google-protobuf>=3.21.12<3.22:devel/rubygem-google-protobuf \ rubygem-license_finder>=7.0<8:devel/rubygem-license_finder \ rubygem-redis4>=4.8.0<5:databases/rubygem-redis4 BUILD_DEPENDS= gem:devel/ruby-gems \ bash>0:shells/bash \ ${MY_DEPENDS} RUN_DEPENDS= ${MY_DEPENDS} \ gitlab-shell>=13.22.1:devel/gitlab-shell LIB_DEPENDS= libgit2.so:devel/libgit2 USES= cpe gmake go:modules,no_targets pkgconfig ruby CPE_VENDOR= gitlab MAKE_ENV= GOFLAGS="${GO_BUILDFLAGS}" # make sure to pass go build options into make process MAKE_ENV+= ${GO_ENV} USE_GITLAB= yes GL_ACCOUNT= gitlab-org # Find this here: https://gitlab.com/gitlab-org/gitaly/-/tags -GL_COMMIT= be44bc7f01a5bfbd320e75aa87c5e8a64a6c8f96 +GL_COMMIT= 57d78fe8f442192f4aaa38a023b4d1d3582c6dcd # for go dependencies # Gitlab hosts there dependencies on their own platform and not on go-proxy # so we download the required go.mod file from gitlab # lines are taken from go.mk # --------------------------- FETCH_DEPENDS= ${GO_CMD}:${GO_PORT} \ ca_root_nss>0:security/ca_root_nss MASTER_SITES+= https://gitlab.com/gitlab-org/gitaly/-/raw/v${DISTVERSION}/ DISTFILES+= go.mod DIST_SUBDIR= go/${PKGORIGIN:S,/,_,g}/${DISTNAME} EXTRACT_ONLY+= ${DISTFILES:N*.mod\:*:N*.mod:C/:.*//} _USES_fetch+= 800:go-post-fetch go-post-fetch: @${ECHO_MSG} "===> Fetching ${GO_MODNAME} dependencies"; @(cd ${DISTDIR}/${DIST_SUBDIR}; \ [ -e go.mod ] || ${RLN} ${GO_MODFILE} go.mod; \ ${SETENV} ${GO_ENV} GOPROXY=${GO_GOPROXY} ${GO_CMD} mod download -x all) # --------------------------- post-patch: ${REINPLACE_CMD} -e "s|%%PREFIX%%|${PREFIX}|" ${WRKSRC}/config.toml.example ${MV} ${WRKSRC}/config.toml.example ${WRKSRC}/config.toml.sample pre-build: (cd ${WRKSRC}/ruby && ${RM} Gemfile.lock && bundle install --local) do-install: ${MKDIR} ${STAGEDIR}${DATADIR} ${MKDIR} ${STAGEDIR}${DATADIR}/bin ${FIND} ${WRKSRC} -name '*.orig' -delete ${FIND} ${WRKSRC} -name "Gemfile.lock" -delete (cd ${WRKSRC}/_build/bin/ && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}/bin && \ cd ${WRKSRC} && ${COPYTREE_SHARE} config.toml.sample ${STAGEDIR}${DATADIR}) && \ cd ${WRKSRC}/ruby && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}/ruby post-install: ${FIND} -s ${STAGEDIR}${DATADIR} -not -type d | ${SORT} | \ ${SED} -e 's#^${STAGEDIR}${PREFIX}/##' | \ ${SED} -E -e '/sample$$/ s#^#@sample #; \ /gitlab-shell-hook$$/ s#^#@(,,755) #; \ s#${DATADIR_REL}/ruby/bin#@(,,555) ${DATADIR_REL}/ruby/bin#; \ s#${DATADIR_REL}/bin#@(,,555) ${DATADIR_REL}/bin#; ' >> ${TMPPLIST} .include diff --git a/devel/gitaly/distinfo b/devel/gitaly/distinfo index 0c1ba217771a..765fed6e6df9 100644 --- a/devel/gitaly/distinfo +++ b/devel/gitaly/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1673369099 -SHA256 (go/devel_gitaly/gitlab-org-gitaly-be44bc7f01a5bfbd320e75aa87c5e8a64a6c8f96_GL0/go.mod) = f462be9eb2e9aefb06785123fade2685a03f9cc6e52b99490e734e50ce892e2c -SIZE (go/devel_gitaly/gitlab-org-gitaly-be44bc7f01a5bfbd320e75aa87c5e8a64a6c8f96_GL0/go.mod) = 9783 -SHA256 (go/devel_gitaly/gitlab-org-gitaly-be44bc7f01a5bfbd320e75aa87c5e8a64a6c8f96_GL0/gitlab-org-gitaly-be44bc7f01a5bfbd320e75aa87c5e8a64a6c8f96_GL0.tar.gz) = 450eabeb8fb61634dd83b83a34f2e226eaa2cebc054babc153eb7c7b07b84f92 -SIZE (go/devel_gitaly/gitlab-org-gitaly-be44bc7f01a5bfbd320e75aa87c5e8a64a6c8f96_GL0/gitlab-org-gitaly-be44bc7f01a5bfbd320e75aa87c5e8a64a6c8f96_GL0.tar.gz) = 2910993 +TIMESTAMP = 1674285960 +SHA256 (go/devel_gitaly/gitlab-org-gitaly-57d78fe8f442192f4aaa38a023b4d1d3582c6dcd_GL0/go.mod) = 86426a8a5d90c317c874ea12c0da2cbd322fcb48f471cccd83dedbf4f6cff8b0 +SIZE (go/devel_gitaly/gitlab-org-gitaly-57d78fe8f442192f4aaa38a023b4d1d3582c6dcd_GL0/go.mod) = 9758 +SHA256 (go/devel_gitaly/gitlab-org-gitaly-57d78fe8f442192f4aaa38a023b4d1d3582c6dcd_GL0/gitlab-org-gitaly-57d78fe8f442192f4aaa38a023b4d1d3582c6dcd_GL0.tar.gz) = 8ae5d4c2ee9e40b6268faba0bf763c322c9b9edd294ef802202f11cdc489d21a +SIZE (go/devel_gitaly/gitlab-org-gitaly-57d78fe8f442192f4aaa38a023b4d1d3582c6dcd_GL0/gitlab-org-gitaly-57d78fe8f442192f4aaa38a023b4d1d3582c6dcd_GL0.tar.gz) = 2937873 diff --git a/devel/gitaly/files/patch-Makefile b/devel/gitaly/files/patch-Makefile index e59420d5a8a0..ffe91696db56 100644 --- a/devel/gitaly/files/patch-Makefile +++ b/devel/gitaly/files/patch-Makefile @@ -1,27 +1,27 @@ ---- Makefile.orig 2022-11-21 09:43:30 UTC +--- Makefile.orig 2023-01-12 20:00:15 UTC +++ Makefile -@@ -542,7 +542,6 @@ libgit2: ${LIBGIT2_INSTALL_DIR}/lib/libgit2.a +@@ -545,7 +545,6 @@ libgit2: ${LIBGIT2_INSTALL_DIR}/lib/libgit2.a # step. Both Omnibus and CNG assume it is in the Gitaly root, not in # _build. Hence the '../' in front. ${RUBY_BUNDLE_FILE}: ${GITALY_RUBY_DIR}/Gemfile.lock ${GITALY_RUBY_DIR}/Gemfile - ${Q}cd ${GITALY_RUBY_DIR} && bundle install ${Q}touch $@ ${SOURCE_DIR}/NOTICE: ${BUILD_DIR}/NOTICE -@@ -583,7 +582,7 @@ ${BUILD_DIR}/bin/%: ${BUILD_DIR}/intermediate/% | ${BU +@@ -586,7 +585,7 @@ ${BUILD_DIR}/bin/%: ${BUILD_DIR}/intermediate/% | ${BU @ # This fallback is unique but non-deterministic, making it sufficient to avoid generating the @ # GNU build-id from the empty string and causing guaranteed collisions. ${Q}GO_BUILD_ID=$$(go tool buildid "$<" || openssl rand -hex 32) && \ - GNU_BUILD_ID=$$(echo $$GO_BUILD_ID | sha1sum | cut -d' ' -f1) && \ + GNU_BUILD_ID=$$(echo $$GO_BUILD_ID | sha1 | cut -d' ' -f1) && \ if test "${OS}" = "Linux"; then \ go run "${SOURCE_DIR}"/tools/replace-buildid \ -input "$<" -input-build-id "${TEMPORARY_BUILD_ID}" \ -@@ -609,7 +608,6 @@ ${BUILD_DIR}/intermediate/gitaly: GO_BUILD_ +@@ -612,7 +611,6 @@ ${BUILD_DIR}/intermediate/gitaly: GO_BUILD_ ${BUILD_DIR}/intermediate/gitaly: remove-legacy-go-mod ${GITALY_PACKED_EXECUTABLES} ${BUILD_DIR}/intermediate/praefect: GO_BUILD_TAGS = ${SERVER_BUILD_TAGS} ${BUILD_DIR}/intermediate/gitaly-git2go: GO_BUILD_TAGS = ${GIT2GO_BUILD_TAGS} -${BUILD_DIR}/intermediate/gitaly-git2go: libgit2 ${BUILD_DIR}/intermediate/%: clear-go-build-cache-if-needed .FORCE @ # We're building intermediate binaries first which contain a fixed build ID @ # of "TEMP_GITALY_BUILD_ID". In the final binary we replace this build ID with diff --git a/devel/gitaly/files/patch-ruby_Gemfile b/devel/gitaly/files/patch-ruby_Gemfile index be0367a4849e..de8e2a38653c 100644 --- a/devel/gitaly/files/patch-ruby_Gemfile +++ b/devel/gitaly/files/patch-ruby_Gemfile @@ -1,36 +1,34 @@ ---- ruby/Gemfile.orig 2022-11-21 09:43:30 UTC +--- ruby/Gemfile.orig 2023-01-12 20:00:15 UTC +++ ruby/Gemfile -@@ -1,9 +1,9 @@ +@@ -1,8 +1,8 @@ source 'https://rubygems.org' gem 'rugged', '~> 1.2' --gem 'github-linguist', '~> 7.20.0', require: 'linguist' -gem 'gitlab-markup', '~> 1.7.1' -gem 'activesupport', '~> 6.1.6.1' -+gem 'github-linguist', '~> 7.23', require: 'linguist' +gem 'gitlab-markup', '~> 1.8.0' +gem 'activesupport', '~> 6.1.6' gem 'grpc', '~> 1.42.0' # keep in lock-step with grpc-tools gem 'sentry-raven', '~> 3.0', require: false gem 'rbtrace', require: false -@@ -26,19 +26,10 @@ gem 'google-protobuf', '~> 3.21.9' +@@ -25,19 +25,10 @@ gem 'google-protobuf', '~> 3.21.12' # dependency and can thus be removed when the version constraint is gone. gem 'redis', '~> 4.8.0' -group :development, :test do - gem 'rubocop', '~> 0.69', require: false - gem 'rspec', require: false - gem 'rspec-parameterized', require: false - gem 'timecop', require: false - gem 'factory_bot', require: false - gem 'pry', '~> 0.12.2', require: false -end - # Gems required in omnibus-gitlab pipeline group :development, :test, :omnibus do # Using a fork until https://github.com/pivotal/LicenseFinder/pull/816 is # resolved. For details, check discussion in # https://gitlab.com/gitlab-org/gitlab/-/merge_requests/74881 - gem 'gitlab-license_finder', require: false + gem 'license_finder', require: false end