Gitlab requires rubygem-json 2.10.x, but ports tree recent upgrade to 2.11 and update to www/gitlab dependencies breaks Gitlab build, because www/gitlab LIB_DEPENDS references a non-existent port. Pointy hat: Po-Chuan Hsieh
Created attachment 260531 [details] Patch to create new port and fix Gitlab build
Created attachment 260545 [details] Patch to create new port and fix Gitlab build Correct patch - previous was missing PKGNAMESUFFIX.
I committed an gitlab update to 18.0.0, that should fix this problem. The new port rubygem-json-gitlab is not required anymore. Can you please test, that is it working again?
(In reply to Matthias Fechner from comment #3) Indeed - gitlab 18.0.0 builds successfully. Patch is not needed.
Something is wrong: nothing depends on 'databases/rubygem-redis-namespace', but the command su -l git -c "cd /usr/local/www/gitlab && RAILS_ENV=production NODE_ENV=production USE_DB=false SKIP_STORAGE_VALIDATION=true bundle exec rake gitlab:assets:compile" fails if 'databases/rubygem-redis-namespace' is not installed. Nothing depends on: devel/rubygem-hashdiff devel/rubygem-rb-fsevent devel/rubygem-rb-inotify devel/rubygem-rb-kqueue graphics/rubygem-ruby-vips www/rubygem-websocket devel/rubygem-xpath too.
(In reply to Vladimir Druzenko from comment #5) I cannot reproduce this. I tested a new installation and an upgrade and both have rubygem-redis-namespace110 installed. Are you sure you executed the commands listed here: https://gitlab.fechner.net/mfechner/Gitlab-docu/-/blob/master/update/17.11-18.0-freebsd.md?ref_type=heads#3-update-gitlab
(In reply to Matthias Fechner from comment #6) Can you show: pkg info -r databases/rubygem-redis-namespace > Are you sure you executed the commands listed here: I compile all ports from source on this host myself, so in my case this set of commands is not applicable in this form.
[gitlab17]$ pkg info -r databases/rubygem-redis-namespace rubygem-redis-namespace-1.11.0: rubygem-rails70-7.0.8.7 [gitlab17]$ pkg info -d rubygem-rails70-7.0.8.7 rubygem-rails70-7.0.8.7: rubygem-webrick-1.9.1 rubygem-webmock-3.25.1 rubygem-turbo-rails-rails70-2.0.12 rubygem-tailwindcss-rails-rails70-1.0.0 rubygem-stimulus-rails-rails70-1.3.4 rubygem-selenium-webdriver-4.31.0 rubygem-railties70-7.0.8.7 rubygem-rack-cache-1.17.0 rubygem-puma-6.6.0 rubygem-propshaft-rails70-1.1.0 rubygem-jsbundling-rails-rails70-1.3.1 rubygem-importmap-rails-rails70-2.1.0 rubygem-cssbundling-rails-rails70-1.4.3 rubygem-actionpack70-7.0.8.7 rubygem-actioncable70-7.0.8.7 rubygem-rexml-3.4.1 rubygem-nokogiri-1.18.8 rubygem-libxml-ruby-5.0.3 rubygem-actiontext70-7.0.8.7 rubygem-bundler-2.6.8,1 rubygem-connection_pool-2.5.1 rubygem-activestorage70-7.0.8.7 rubygem-actionmailer70-7.0.8.7 rubygem-actionmailbox70-7.0.8.7 ruby-3.3.8,1 rubygem-image_processing-1.14.0 rubygem-sucker_punch-3.2.0 rubygem-sprockets-rails-rails70-3.5.2 rubygem-readline-ext-0.2.0 rubygem-rake-13.2.1 rubygem-que-2.4.1 rubygem-minitest-5.25.5 rubygem-listen-3.9.0 rubygem-json-2.10.2 rubygem-capybara-3.40.0 rubygem-bootsnap-1.18.4 rubygem-activesupport70-7.0.8.7 rubygem-activejob70-7.0.8.7 rubygem-actionview70-7.0.8.7 ruby33-gems-3.6.8 rubygem-sqlite3-2.6.0 rubygem-redis-namespace-1.11.0 rubygem-dalli-3.2.8 rubygem-activerecord70-7.0.8.7 rubygem-activemodel70-7.0.8.7 [gitlab18]$ pkg info -r databases/rubygem-redis-namespace rubygem-redis-namespace-1.11.0: [gitlab18]$ pkg info -d rubygem-rails-gitlab rubygem-rails-gitlab-7.1.5.1: rubygem-railties-gitlab-7.1.5.1 rubygem-actionpack-gitlab-7.1.5.1 rubygem-actioncable-gitlab-7.1.5.1 rubygem-actiontext-gitlab-7.1.5.1 rubygem-bundler-2.6.8,1 rubygem-activestorage-gitlab-7.1.5.1 rubygem-actionmailer-gitlab-7.1.5.1 rubygem-actionmailbox-gitlab-7.1.5.1 ruby-3.3.8,1 rubygem-activesupport-gitlab-7.1.5.1 rubygem-activejob-gitlab-7.1.5.1 rubygem-actionview-gitlab-7.1.5.1 ruby33-gems-3.6.8 rubygem-activerecord-gitlab-7.1.5.1 rubygem-activemodel-gitlab-7.1.5.1 Check RUN_DEPENDS in www/rubygem-rails70/Makefile, www/rubygem-rails71/Makefile and www/rubygem-rails-gitlab/Makefile.
The following dependencies are missing: rubygem-bootsnap>=1.4.4:devel/rubygem-bootsnap \ rubygem-capybara>=3.39:devel/rubygem-capybara \ rubygem-connection_pool>=0:net/rubygem-connection_pool \ rubygem-cssbundling-rails-rails71>=0:www/rubygem-cssbundling-rails-rails71 \ rubygem-dalli>=3.0.1:databases/rubygem-dalli \ rubygem-image_processing>=1.2<2:graphics/rubygem-image_processing \ rubygem-importmap-rails-rails71>=0:www/rubygem-importmap-rails-rails71 \ rubygem-jbuilder-rails71>=0:devel/rubygem-jbuilder-rails71 \ rubygem-jsbundling-rails-rails71>=0:www/rubygem-jsbundling-rails-rails71 \ rubygem-json>=2.0.0:devel/rubygem-json \ rubygem-libxml-ruby>=0:textproc/rubygem-libxml-ruby \ rubygem-listen>=3.3<4:devel/rubygem-listen \ rubygem-minitest>=5.15.0:devel/rubygem-minitest \ rubygem-msgpack>=1.7.0:devel/rubygem-msgpack \ rubygem-nokogiri>=1.8.1:textproc/rubygem-nokogiri \ rubygem-propshaft-rails71>=0.1.7:www/rubygem-propshaft-rails71 \ rubygem-puma>=5.0.3:www/rubygem-puma \ rubygem-rack>=3.0,3<4,3:www/rubygem-rack \ rubygem-rack-cache>=1.2<2:www/rubygem-rack-cache \ rubygem-rake>=13:devel/rubygem-rake \ rubygem-readline-ext>=0:devel/rubygem-readline-ext \ rubygem-redis-namespace>=0:databases/rubygem-redis-namespace \ rubygem-rexml>=0:textproc/rubygem-rexml \ rubygem-selenium-webdriver>=4.11.0:www/rubygem-selenium-webdriver \ rubygem-sprockets-rails-rails71>=2.0.0:devel/rubygem-sprockets-rails-rails71 \ rubygem-sqlite3>=1.6.6:databases/rubygem-sqlite3 \ rubygem-stimulus-rails-rails71>=0:www/rubygem-stimulus-rails-rails71 \ rubygem-sucker_punch>=0:devel/rubygem-sucker_punch \ rubygem-tailwindcss-rails-rails71>=0:www/rubygem-tailwindcss-rails-rails71 \ rubygem-turbo-rails-rails71>=0:www/rubygem-turbo-rails-rails71 \ rubygem-web-console-rails71>=0:devel/rubygem-web-console-rails71 \ rubygem-webmock>=0:www/rubygem-webmock \ rubygem-webrick>=0:www/rubygem-webrick
This patch fixes issue for me: --- www/rubygem-rails-gitlab/Makefile.orig +++ www/rubygem-rails-gitlab/Makefile @@ -24,7 +24,32 @@ rubygem-activestorage-gitlab>=${PORTVERSION}<${PORTVERSION}_99:net/rubygem-activestorage-gitlab \ rubygem-activesupport-gitlab>=${PORTVERSION}<${PORTVERSION}_99:devel/rubygem-activesupport-gitlab \ rubygem-bundler>=1.15.0:sysutils/rubygem-bundler \ - rubygem-railties-gitlab>=${PORTVERSION}<${PORTVERSION}_99:www/rubygem-railties-gitlab + rubygem-railties-gitlab>=${PORTVERSION}<${PORTVERSION}_99:www/rubygem-railties-gitlab \ + rubygem-bootsnap>=1.4.4:devel/rubygem-bootsnap \ + rubygem-capybara>=3.39:devel/rubygem-capybara \ + rubygem-connection_pool>=0:net/rubygem-connection_pool \ + rubygem-cssbundling-rails-rails-gitlab>=0:www/rubygem-cssbundling-rails-rails-gitlab \ + rubygem-dalli>=3.0.1:databases/rubygem-dalli \ + rubygem-image_processing>=1.2<2:graphics/rubygem-image_processing \ + rubygem-json>=2.0.0:devel/rubygem-json \ + rubygem-libxml-ruby>=0:textproc/rubygem-libxml-ruby \ + rubygem-listen>=3.3<4:devel/rubygem-listen \ + rubygem-minitest>=5.15.0:devel/rubygem-minitest \ + rubygem-msgpack>=1.7.0:devel/rubygem-msgpack \ + rubygem-nokogiri>=1.8.1:textproc/rubygem-nokogiri \ + rubygem-puma>=5.0.3:www/rubygem-puma \ + rubygem-rack>=3.0,3<4,3:www/rubygem-rack \ + rubygem-rack-cache>=1.2<2:www/rubygem-rack-cache \ + rubygem-rake>=13:devel/rubygem-rake \ + rubygem-readline-ext>=0:devel/rubygem-readline-ext \ + rubygem-redis-namespace>=0:databases/rubygem-redis-namespace \ + rubygem-rexml>=0:textproc/rubygem-rexml \ + rubygem-selenium-webdriver>=4.11.0:www/rubygem-selenium-webdriver \ + rubygem-sprockets-rails-rails-gitlab>=2.0.0:devel/rubygem-sprockets-rails-rails-gitlab \ + rubygem-sqlite3>=1.6.6:databases/rubygem-sqlite3 \ + rubygem-sucker_punch>=0:devel/rubygem-sucker_punch \ + rubygem-webmock>=0:www/rubygem-webmock \ + rubygem-webrick>=0:www/rubygem-webrick USES= cpe gem
Offtopic: released 18.0.1 with security fixes: https://gitlab.com/gitlab-org/gitlab/-/raw/master/CHANGELOG.md
(In reply to Vladimir Druzenko from comment #10) this is wrong. The gem does not depend on this: https://rubygems.org/gems/rails/versions/7.1.5.1 This was one of the reasons why I must switch to gitlab specific set of rails version. If you do not use poudriere for building the packages (which I really recommend) you can switch to pkg to handle the gitlab installation on your host or remove all gitlab related packages, before you build version 18. This is maybe only required for version 18 upgrade.
(In reply to Matthias Fechner from comment #12) If they are required to update GitLab, they should be dependencies of www/gitlab.
(In reply to Vladimir Druzenko from comment #13) make fetchindex make search key=rubygem-json-gitlab