summary refs log tree commit diff
diff options
context:
space:
mode:
authorYureka <yuka@yuka.dev>2023-03-13 23:59:19 +0100
committerGitHub <noreply@github.com>2023-03-13 23:59:19 +0100
commit9cf4b8b3ebe77c729c9f7599deb725fbdf62aa40 (patch)
tree164af2d005cf6610d96e647f3628afed78cb9f40
parent3eb31802d97966605879330fbdbf4244c4cab18a (diff)
downloadnixpkgs-9cf4b8b3ebe77c729c9f7599deb725fbdf62aa40.tar
nixpkgs-9cf4b8b3ebe77c729c9f7599deb725fbdf62aa40.tar.gz
nixpkgs-9cf4b8b3ebe77c729c9f7599deb725fbdf62aa40.tar.bz2
nixpkgs-9cf4b8b3ebe77c729c9f7599deb725fbdf62aa40.tar.lz
nixpkgs-9cf4b8b3ebe77c729c9f7599deb725fbdf62aa40.tar.xz
nixpkgs-9cf4b8b3ebe77c729c9f7599deb725fbdf62aa40.tar.zst
nixpkgs-9cf4b8b3ebe77c729c9f7599deb725fbdf62aa40.zip
gitlab: 15.8.4 -> 15.9.3 (#220482)
https://about.gitlab.com/releases/2023/02/22/gitlab-15-9-released/
-rw-r--r--pkgs/applications/version-management/gitlab/Remove-geo-from-database.yml.patch34
-rw-r--r--pkgs/applications/version-management/gitlab/data.json16
-rw-r--r--pkgs/applications/version-management/gitlab/default.nix1
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/Gemfile20
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock160
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/default.nix6
-rw-r--r--pkgs/applications/version-management/gitlab/gitaly/gemset.nix276
-rw-r--r--pkgs/applications/version-management/gitlab/gitlab-shell/default.nix10
-rw-r--r--pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix4
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv/Gemfile71
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock424
-rw-r--r--pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix527
12 files changed, 794 insertions, 755 deletions
diff --git a/pkgs/applications/version-management/gitlab/Remove-geo-from-database.yml.patch b/pkgs/applications/version-management/gitlab/Remove-geo-from-database.yml.patch
index 968e618f312..46d2c317146 100644
--- a/pkgs/applications/version-management/gitlab/Remove-geo-from-database.yml.patch
+++ b/pkgs/applications/version-management/gitlab/Remove-geo-from-database.yml.patch
@@ -8,13 +8,13 @@ Subject: [PATCH] Remove geo from database.yml
  1 file changed, 28 deletions(-)
 
 diff --git a/config/database.yml.postgresql b/config/database.yml.postgresql
-index 5329a8e9fd7..a4daab1fd0c 100644
+index c1b1247b5b08..a81437d1e1b5 100644
 --- a/config/database.yml.postgresql
 +++ b/config/database.yml.postgresql
-@@ -18,13 +18,6 @@ production:
-     #     port: 8600
-     #     record: secondary.postgresql.service.consul
-     #     interval: 300
+@@ -26,13 +26,6 @@ production:
+   #   username: git
+   #   password: "secure password"
+   #   host: localhost
 -  geo:
 -    adapter: postgresql
 -    encoding: unicode
@@ -25,10 +25,10 @@ index 5329a8e9fd7..a4daab1fd0c 100644
  
  #
  # Development specific
-@@ -39,13 +32,6 @@ development:
-     host: localhost
-     variables:
-       statement_timeout: 15s
+@@ -57,13 +50,6 @@ development:
+   #   host: localhost
+   #   variables:
+   #     statement_timeout: 15s
 -  geo:
 -    adapter: postgresql
 -    encoding: unicode
@@ -39,10 +39,10 @@ index 5329a8e9fd7..a4daab1fd0c 100644
  
  #
  # Staging specific
-@@ -58,13 +44,6 @@ staging:
-     username: git
-     password: "secure password"
-     host: localhost
+@@ -84,13 +70,6 @@ staging:
+   #   username: git
+   #   password: "secure password"
+   #   host: localhost
 -  geo:
 -    adapter: postgresql
 -    encoding: unicode
@@ -53,10 +53,10 @@ index 5329a8e9fd7..a4daab1fd0c 100644
  
  # Warning: The database defined as "test" will be erased and
  # re-generated from your development database when you run "rake".
-@@ -80,10 +59,3 @@ test: &test
-     prepared_statements: false
-     variables:
-       statement_timeout: 15s
+@@ -117,10 +96,3 @@ test: &test
+   #   prepared_statements: false
+   #   variables:
+   #     statement_timeout: 15s
 -  geo:
 -    adapter: postgresql
 -    encoding: unicode
diff --git a/pkgs/applications/version-management/gitlab/data.json b/pkgs/applications/version-management/gitlab/data.json
index f068e7618d0..77d930b0712 100644
--- a/pkgs/applications/version-management/gitlab/data.json
+++ b/pkgs/applications/version-management/gitlab/data.json
@@ -1,14 +1,14 @@
 {
-  "version": "15.8.4",
-  "repo_hash": "sha256-8R2a934nC6n482Am7EruV3yHgxFSICuGcKgRBCy7GGI=",
-  "yarn_hash": "1famdjvsbhvnkg5sp2vnc3jzaixww41833pb0427s3qpig0fc7az",
+  "version": "15.9.3",
+  "repo_hash": "sha256-WYzhKknxx3NwCsXsQCPNQNdoya010YbVh9uTpcHgSl4=",
+  "yarn_hash": "0msrbzqz5hgyl0c6dcxyzi6qnf2k3fmg44d201pa578p08xb0lld",
   "owner": "gitlab-org",
   "repo": "gitlab",
-  "rev": "v15.8.4-ee",
+  "rev": "v15.9.3-ee",
   "passthru": {
-    "GITALY_SERVER_VERSION": "15.8.4",
-    "GITLAB_PAGES_VERSION": "15.8.4",
-    "GITLAB_SHELL_VERSION": "14.15.0",
-    "GITLAB_WORKHORSE_VERSION": "15.8.4"
+    "GITALY_SERVER_VERSION": "15.9.3",
+    "GITLAB_PAGES_VERSION": "15.9.3",
+    "GITLAB_SHELL_VERSION": "14.17.0",
+    "GITLAB_WORKHORSE_VERSION": "15.9.3"
   }
 }
diff --git a/pkgs/applications/version-management/gitlab/default.nix b/pkgs/applications/version-management/gitlab/default.nix
index e6cd605a51e..c83478f05a9 100644
--- a/pkgs/applications/version-management/gitlab/default.nix
+++ b/pkgs/applications/version-management/gitlab/default.nix
@@ -166,6 +166,7 @@ stdenv.mkDerivation {
     # path, not their relative state directory path. This gets rid of
     # warnings and means we don't have to link back to lib from the
     # state directory.
+    ${replace}/bin/replace-literal -f -r -e '../../lib' "$out/share/gitlab/lib" config
     ${replace}/bin/replace-literal -f -r -e '../lib' "$out/share/gitlab/lib" config
     ${replace}/bin/replace-literal -f -r -e "require_relative 'application'" "require_relative '$out/share/gitlab/config/application'" config
   '';
diff --git a/pkgs/applications/version-management/gitlab/gitaly/Gemfile b/pkgs/applications/version-management/gitlab/gitaly/Gemfile
index 9c561119f11..2b7fa73d910 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/Gemfile
+++ b/pkgs/applications/version-management/gitlab/gitaly/Gemfile
@@ -1,10 +1,10 @@
 source 'https://rubygems.org'
 
-gem 'rugged', '~> 1.2'
-gem 'gitlab-markup', '~> 1.7.1'
-gem 'activesupport', '~> 6.1.6.1'
-gem 'grpc', '~> 1.42.0' # keep in lock-step with grpc-tools
-gem 'sentry-raven', '~> 3.0', require: false
+gem 'rugged', '~> 1.5.1'
+gem 'gitlab-markup', '~> 1.8.0'
+gem 'activesupport', '~> 6.1.7.2'
+gem 'grpc', '~> 1.42.0' # keep in lock-step with grpc-tools in ../tools/protogem
+gem 'sentry-raven', '~> 3.1', require: false
 gem 'rbtrace', require: false
 
 # The Gitaly Gem contains the Protobuf and gRPC definitions required by the
@@ -12,13 +12,14 @@ gem 'rbtrace', require: false
 gem 'gitaly', '~> 15.5.0'
 
 # Labkit provides observability functionality
-gem 'gitlab-labkit', '~> 0.29'
+gem 'gitlab-labkit', '~> 0.31'
 
 # Detects the open source license the repository includes
 # This version needs to be in sync with GitLab CE/EE
 gem 'licensee', '~> 9.15'
 
 gem 'google-protobuf', '~> 3.21.12'
+gem 'nokogiri', '~> 1.14'
 
 # Rails is currently blocked on the upgrade to the new major version for Redis,
 # so we don't upgrade either until the issue is resolved. This is an indirect
@@ -26,12 +27,11 @@ gem 'google-protobuf', '~> 3.21.12'
 gem 'redis', '~> 4.8.0'
 
 group :development, :test do
-  gem 'rubocop', '~> 0.69', require: false
-  gem 'rspec', require: false
+  gem 'rubocop', '~> 1.38', require: false
+  gem 'rspec', '~> 3.12.0', require: false
   gem 'rspec-parameterized', require: false
-  gem 'timecop', require: false
   gem 'factory_bot', require: false
-  gem 'pry', '~> 0.12.2', require: false
+  gem 'pry', '~> 0.13.1', require: false
 end
 
 # Gems required in omnibus-gitlab pipeline
diff --git a/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock b/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock
index 2b90a2e0cda..93b568efe86 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock
+++ b/pkgs/applications/version-management/gitlab/gitaly/Gemfile.lock
@@ -1,52 +1,46 @@
 GEM
   remote: https://rubygems.org/
   specs:
-    abstract_type (0.0.7)
-    actionpack (6.1.6.1)
-      actionview (= 6.1.6.1)
-      activesupport (= 6.1.6.1)
+    actionpack (6.1.7.2)
+      actionview (= 6.1.7.2)
+      activesupport (= 6.1.7.2)
       rack (~> 2.0, >= 2.0.9)
       rack-test (>= 0.6.3)
       rails-dom-testing (~> 2.0)
       rails-html-sanitizer (~> 1.0, >= 1.2.0)
-    actionview (6.1.6.1)
-      activesupport (= 6.1.6.1)
+    actionview (6.1.7.2)
+      activesupport (= 6.1.7.2)
       builder (~> 3.1)
       erubi (~> 1.4)
       rails-dom-testing (~> 2.0)
       rails-html-sanitizer (~> 1.1, >= 1.2.0)
-    activesupport (6.1.6.1)
+    activesupport (6.1.7.2)
       concurrent-ruby (~> 1.0, >= 1.0.2)
       i18n (>= 1.6, < 2)
       minitest (>= 5.1)
       tzinfo (~> 2.0)
       zeitwerk (~> 2.3)
-    adamantium (0.2.0)
-      ice_nine (~> 0.11.0)
-      memoizable (~> 0.4.0)
     addressable (2.8.0)
       public_suffix (>= 2.0.2, < 5.0)
     ast (2.4.2)
-    binding_ninja (0.2.3)
+    binding_of_caller (1.0.0)
+      debug_inspector (>= 0.0.1)
     builder (3.2.4)
     coderay (1.1.2)
-    concord (0.1.5)
-      adamantium (~> 0.2.0)
-      equalizer (~> 0.0.9)
-    concurrent-ruby (1.1.10)
+    concurrent-ruby (1.2.0)
     crass (1.0.6)
+    debug_inspector (1.1.0)
     diff-lcs (1.3)
     dotenv (2.7.6)
-    equalizer (0.0.11)
-    erubi (1.11.0)
-    factory_bot (5.0.2)
-      activesupport (>= 4.2.0)
+    erubi (1.12.0)
+    factory_bot (6.2.1)
+      activesupport (>= 5.0.0)
     faraday (1.0.1)
       multipart-post (>= 1.2, < 3)
     ffi (1.15.5)
     gitaly (15.5.0)
       grpc (~> 1.0)
-    gitlab-labkit (0.29.0)
+    gitlab-labkit (0.31.0)
       actionpack (>= 5.0.0, < 8.0.0)
       activesupport (>= 5.0.0, < 8.0.0)
       grpc (>= 1.37)
@@ -61,7 +55,7 @@ GEM
       tomlrb (>= 1.3, < 2.1)
       with_env (= 1.1.0)
       xml-simple (~> 1.1.5)
-    gitlab-markup (1.7.1)
+    gitlab-markup (1.8.1)
     google-protobuf (3.21.12)
     googleapis-common-protos-types (1.4.0)
       google-protobuf (~> 3.14)
@@ -70,10 +64,10 @@ GEM
       googleapis-common-protos-types (~> 1.0)
     i18n (1.12.0)
       concurrent-ruby (~> 1.0)
-    ice_nine (0.11.2)
     jaeger-client (1.1.0)
       opentracing (~> 0.3)
       thrift
+    json (2.6.3)
     licensee (9.15.2)
       dotenv (~> 2.0)
       octokit (~> 4.20)
@@ -83,14 +77,12 @@ GEM
     loofah (2.19.1)
       crass (~> 1.0.2)
       nokogiri (>= 1.5.9)
-    memoizable (0.4.2)
-      thread_safe (~> 0.3, >= 0.3.1)
-    method_source (0.9.2)
-    mini_portile2 (2.8.0)
-    minitest (5.16.3)
+    method_source (1.0.0)
+    mini_portile2 (2.8.1)
+    minitest (5.17.0)
     msgpack (1.3.3)
     multipart-post (2.1.1)
-    nokogiri (1.13.10)
+    nokogiri (1.14.1)
       mini_portile2 (~> 2.8.0)
       racc (~> 1.4)
     octokit (4.20.0)
@@ -98,120 +90,118 @@ GEM
       sawyer (~> 0.8.0, >= 0.5.3)
     opentracing (0.5.0)
     optimist (3.0.1)
-    parallel (1.19.2)
-    parser (3.0.3.2)
+    parallel (1.22.1)
+    parser (3.2.0.0)
       ast (~> 2.4.1)
-    pg_query (2.2.0)
+    pg_query (2.2.1)
       google-protobuf (>= 3.19.2)
     proc_to_ast (0.1.0)
       coderay
       parser
       unparser
-    procto (0.0.3)
-    pry (0.12.2)
-      coderay (~> 1.1.0)
-      method_source (~> 0.9.0)
+    pry (0.13.1)
+      coderay (~> 1.1)
+      method_source (~> 1.0)
     public_suffix (4.0.7)
-    racc (1.6.1)
-    rack (2.2.4)
+    racc (1.6.2)
+    rack (2.2.6.2)
     rack-test (2.0.2)
       rack (>= 1.3)
     rails-dom-testing (2.0.3)
       activesupport (>= 4.2.0)
       nokogiri (>= 1.6)
-    rails-html-sanitizer (1.4.4)
+    rails-html-sanitizer (1.5.0)
       loofah (~> 2.19, >= 2.19.1)
-    rainbow (3.0.0)
+    rainbow (3.1.1)
     rbtrace (0.4.14)
       ffi (>= 1.0.6)
       msgpack (>= 0.4.3)
       optimist (>= 3.0.0)
     redis (4.8.0)
-    regexp_parser (1.8.1)
+    regexp_parser (2.6.2)
     reverse_markdown (1.4.0)
       nokogiri
     rexml (3.2.5)
-    rspec (3.8.0)
-      rspec-core (~> 3.8.0)
-      rspec-expectations (~> 3.8.0)
-      rspec-mocks (~> 3.8.0)
-    rspec-core (3.8.0)
-      rspec-support (~> 3.8.0)
-    rspec-expectations (3.8.3)
+    rspec (3.12.0)
+      rspec-core (~> 3.12.0)
+      rspec-expectations (~> 3.12.0)
+      rspec-mocks (~> 3.12.0)
+    rspec-core (3.12.0)
+      rspec-support (~> 3.12.0)
+    rspec-expectations (3.12.2)
       diff-lcs (>= 1.2.0, < 2.0)
-      rspec-support (~> 3.8.0)
-    rspec-mocks (3.8.0)
+      rspec-support (~> 3.12.0)
+    rspec-mocks (3.12.3)
       diff-lcs (>= 1.2.0, < 2.0)
-      rspec-support (~> 3.8.0)
-    rspec-parameterized (0.4.2)
-      binding_ninja (>= 0.2.3)
+      rspec-support (~> 3.12.0)
+    rspec-parameterized (1.0.0)
+      rspec-parameterized-core (< 2)
+      rspec-parameterized-table_syntax (< 2)
+    rspec-parameterized-core (1.0.0)
       parser
       proc_to_ast
       rspec (>= 2.13, < 4)
       unparser
-    rspec-support (3.8.0)
-    rubocop (0.86.0)
+    rspec-parameterized-table_syntax (1.0.0)
+      binding_of_caller
+      rspec-parameterized-core (< 2)
+    rspec-support (3.12.0)
+    rubocop (1.44.0)
+      json (~> 2.3)
       parallel (~> 1.10)
-      parser (>= 2.7.0.1)
+      parser (>= 3.2.0.0)
       rainbow (>= 2.2.2, < 4.0)
-      regexp_parser (>= 1.7)
-      rexml
-      rubocop-ast (>= 0.0.3, < 1.0)
+      regexp_parser (>= 1.8, < 3.0)
+      rexml (>= 3.2.5, < 4.0)
+      rubocop-ast (>= 1.24.1, < 2.0)
       ruby-progressbar (~> 1.7)
-      unicode-display_width (>= 1.4.0, < 2.0)
-    rubocop-ast (0.2.0)
-      parser (>= 2.7.0.1)
-    ruby-progressbar (1.10.1)
+      unicode-display_width (>= 2.4.0, < 3.0)
+    rubocop-ast (1.24.1)
+      parser (>= 3.1.1.0)
+    ruby-progressbar (1.11.0)
     rubyzip (2.3.2)
-    rugged (1.2.0)
+    rugged (1.5.1)
     sawyer (0.8.2)
       addressable (>= 2.3.5)
       faraday (> 0.8, < 2.0)
-    sentry-raven (3.0.4)
+    sentry-raven (3.1.2)
       faraday (>= 1.0)
     thor (1.1.0)
-    thread_safe (0.3.6)
     thrift (0.17.0)
-    timecop (0.9.1)
     tomlrb (2.0.1)
     tzinfo (2.0.5)
       concurrent-ruby (~> 1.0)
-    unicode-display_width (1.7.0)
-    unparser (0.4.7)
-      abstract_type (~> 0.0.7)
-      adamantium (~> 0.2.0)
-      concord (~> 0.1.5)
+    unicode-display_width (2.4.2)
+    unparser (0.6.7)
       diff-lcs (~> 1.3)
-      equalizer (~> 0.0.9)
-      parser (>= 2.6.5)
-      procto (~> 0.0.2)
+      parser (>= 3.2.0)
     with_env (1.1.0)
     xml-simple (1.1.9)
       rexml
-    zeitwerk (2.6.0)
+    zeitwerk (2.6.6)
 
 PLATFORMS
   ruby
 
 DEPENDENCIES
-  activesupport (~> 6.1.6.1)
+  activesupport (~> 6.1.7.2)
   factory_bot
   gitaly (~> 15.5.0)
-  gitlab-labkit (~> 0.29)
+  gitlab-labkit (~> 0.31)
   gitlab-license_finder
-  gitlab-markup (~> 1.7.1)
+  gitlab-markup (~> 1.8.0)
   google-protobuf (~> 3.21.12)
   grpc (~> 1.42.0)
   licensee (~> 9.15)
-  pry (~> 0.12.2)
+  nokogiri (~> 1.14)
+  pry (~> 0.13.1)
   rbtrace
   redis (~> 4.8.0)
-  rspec
+  rspec (~> 3.12.0)
   rspec-parameterized
-  rubocop (~> 0.69)
-  rugged (~> 1.2)
-  sentry-raven (~> 3.0)
-  timecop
+  rubocop (~> 1.38)
+  rugged (~> 1.5.1)
+  sentry-raven (~> 3.1)
 
 BUNDLED WITH
-   2.3.26
+   2.4.6
diff --git a/pkgs/applications/version-management/gitlab/gitaly/default.nix b/pkgs/applications/version-management/gitlab/gitaly/default.nix
index 53b290066be..38f56ff7727 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitaly/default.nix
@@ -11,7 +11,7 @@ let
     gemdir = ./.;
   };
 
-  version = "15.8.4";
+  version = "15.9.3";
   package_version = "v${lib.versions.major version}";
   gitaly_package = "gitlab.com/gitlab-org/gitaly/${package_version}";
 
@@ -22,10 +22,10 @@ let
       owner = "gitlab-org";
       repo = "gitaly";
       rev = "v${version}";
-      sha256 = "sha256-att8MR94uINKOTYlj2sZLezMXZag11qP2p9T9a3Eklc=";
+      sha256 = "sha256-WBg1fo8tG0tfrsu8QtIo0SY1ZbktVHfcTf77Ny29DSM=";
     };
 
-    vendorSha256 = "sha256-8P5X/bqeI1hY45IGsvEWOg3GuetEQF/XtZzUMdX22pA=";
+    vendorSha256 = "sha256-IIvvI7CKLWB2W4fi/HLFtfZdovehxDmtQ8GUEw24fbY=";
 
     ldflags = [ "-X ${gitaly_package}/internal/version.version=${version}" "-X ${gitaly_package}/internal/version.moduleVersion=${version}" ];
 
diff --git a/pkgs/applications/version-management/gitlab/gitaly/gemset.nix b/pkgs/applications/version-management/gitlab/gitaly/gemset.nix
index f3a4a082f20..d31f4c3d785 100644
--- a/pkgs/applications/version-management/gitlab/gitaly/gemset.nix
+++ b/pkgs/applications/version-management/gitlab/gitaly/gemset.nix
@@ -1,22 +1,14 @@
 {
-  abstract_type = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "09330cmhrc2wmfhdj9zzg82sv6cdhm3qgdkva5ni5xfjril2pf14";
-      type = "gem";
-    };
-    version = "0.0.7";
-  };
   actionpack = {
     dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1m5x42s72mik9xkrgbway4ra139k71p2dfxcvg5gwdmac8maiq7k";
+      sha256 = "0c2y6sqpan68lrx78pvhbxb2917m75s808r6cg1kyygwvg31niza";
       type = "gem";
     };
-    version = "6.1.6.1";
+    version = "6.1.7.2";
   };
   actionview = {
     dependencies = ["activesupport" "builder" "erubi" "rails-dom-testing" "rails-html-sanitizer"];
@@ -24,10 +16,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0syh8jwih5qvv87zfyzl37rz6sc1prhy6gia95bn76zyqk9cfzx8";
+      sha256 = "10g5gk8h4mfhvgqylzbf591fqf5p78ca35cb97p9bclpv9jfy0za";
       type = "gem";
     };
-    version = "6.1.6.1";
+    version = "6.1.7.2";
   };
   activesupport = {
     dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo" "zeitwerk"];
@@ -35,19 +27,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0vb0xi7yvgfqky9h4clyncb886mr1wvz9amk7d9ffmgpwrpzvjaz";
-      type = "gem";
-    };
-    version = "6.1.6.1";
-  };
-  adamantium = {
-    dependencies = ["ice_nine" "memoizable"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0165r2ikgfwv2rm8dzyijkp74fvg0ni72hpdx8ay2v7cj08dqyak";
+      sha256 = "14pjq2k761qaywaznpqq8ziivjk2ks1ma2cjwdflkxqgndxjmsr2";
       type = "gem";
     };
-    version = "0.2.0";
+    version = "6.1.7.2";
   };
   addressable = {
     dependencies = ["public_suffix"];
@@ -70,15 +53,16 @@
     };
     version = "2.4.2";
   };
-  binding_ninja = {
+  binding_of_caller = {
+    dependencies = ["debug_inspector"];
     groups = ["default" "development" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "17fa3sv6p2fw9g8fxpwx1kjhhs28aw41akkba0hlgvk60055b1aa";
+      sha256 = "078n2dkpgsivcf0pr50981w95nfc2bsrp3wpf9wnxz1qsp8jbb9s";
       type = "gem";
     };
-    version = "0.2.3";
+    version = "1.0.0";
   };
   builder = {
     groups = ["default"];
@@ -98,24 +82,15 @@
     };
     version = "1.1.2";
   };
-  concord = {
-    dependencies = ["adamantium" "equalizer"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1b6cdn0fg4n9gzbdr7zyf4jq40y6h0c0g9cra7wk9hhmsylk91bg";
-      type = "gem";
-    };
-    version = "0.1.5";
-  };
   concurrent-ruby = {
     groups = ["default" "development" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0s4fpn3mqiizpmpy2a24k4v365pv75y50292r8ajrv4i1p5b2k14";
+      sha256 = "1qnsflsbjj38im8xq35g0vihlz96h09wjn2dad5g543l3vvrkrx5";
       type = "gem";
     };
-    version = "1.1.10";
+    version = "1.2.0";
   };
   crass = {
     groups = ["default"];
@@ -127,6 +102,16 @@
     };
     version = "1.0.6";
   };
+  debug_inspector = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01l678ng12rby6660pmwagmyg8nccvjfgs3487xna7ay378a59ga";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
   diff-lcs = {
     source = {
       remotes = ["https://rubygems.org"];
@@ -145,23 +130,15 @@
     };
     version = "2.7.6";
   };
-  equalizer = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1kjmx3fygx8njxfrwcmn7clfhjhb6bvv3scy2lyyi0wqyi3brra4";
-      type = "gem";
-    };
-    version = "0.0.11";
-  };
   erubi = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "11bz1v1cxabm8672gabrw542zyg51dizlcvdck6vvwzagxbjv9zx";
+      sha256 = "08s75vs9cxlc4r1q2bjg4br8g9wc5lc5x5vl0vv4zq5ivxsdpgi7";
       type = "gem";
     };
-    version = "1.11.0";
+    version = "1.12.0";
   };
   factory_bot = {
     dependencies = ["activesupport"];
@@ -169,10 +146,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "02ijqa3g6lb8l8mvi40z1zgh9bb3gr08p2r2ym159ghhfbcrmbwk";
+      sha256 = "1pfk942d6qwhw151hxaz7n4knk6whyxqvvywdx2cdw9yhykyaqzq";
       type = "gem";
     };
-    version = "5.0.2";
+    version = "6.2.1";
   };
   faraday = {
     dependencies = ["multipart-post"];
@@ -212,10 +189,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "09xlv72nbys9a5iqvhxfzdr7vy3s3m2a6ixqb9vq71k925faq6gb";
+      sha256 = "07zd8r189qcqr3xp6dinlw94sylxbyn56nnas7k0aw6xvr74q12v";
       type = "gem";
     };
-    version = "0.29.0";
+    version = "0.31.0";
   };
   gitlab-license_finder = {
     dependencies = ["rubyzip" "thor" "tomlrb" "with_env" "xml-simple"];
@@ -233,10 +210,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xnlra517pfj3hx07kasbqlcw51ix4xajr6bsd3mwg8bc92dlwy7";
+      sha256 = "0yvh8vv9kgd06hc8c1pl2hq56w56vr0n7dr5mz19fx4p2v89y7xb";
       type = "gem";
     };
-    version = "1.7.1";
+    version = "1.8.1";
   };
   google-protobuf = {
     groups = ["default"];
@@ -281,14 +258,6 @@
     };
     version = "1.12.0";
   };
-  ice_nine = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1nv35qg1rps9fsis28hz2cq2fx1i96795f91q4nmkm934xynll2x";
-      type = "gem";
-    };
-    version = "0.11.2";
-  };
   jaeger-client = {
     dependencies = ["opentracing" "thrift"];
     groups = ["default"];
@@ -300,6 +269,16 @@
     };
     version = "1.1.0";
   };
+  json = {
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nalhin1gda4v8ybk6lq8f407cgfrj6qzn234yra4ipkmlbfmal6";
+      type = "gem";
+    };
+    version = "2.6.3";
+  };
   licensee = {
     dependencies = ["dotenv" "octokit" "reverse_markdown" "rugged" "thor"];
     groups = ["default"];
@@ -322,42 +301,35 @@
     };
     version = "2.19.1";
   };
-  memoizable = {
-    dependencies = ["thread_safe"];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0v42bvghsvfpzybfazl14qhkrjvx0xlmxz0wwqc960ga1wld5x5c";
-      type = "gem";
-    };
-    version = "0.4.2";
-  };
   method_source = {
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1pviwzvdqd90gn6y7illcdd9adapw8fczml933p5vl739dkvl3lq";
+      sha256 = "1pnyh44qycnf9mzi1j6fywd5fkskv3x7nmsqrrws0rjn5dd4ayfp";
       type = "gem";
     };
-    version = "0.9.2";
+    version = "1.0.0";
   };
   mini_portile2 = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0rapl1sfmfi3bfr68da4ca16yhc0pp93vjwkj7y3rdqrzy3b41hy";
+      sha256 = "1af4yarhbbx62f7qsmgg5fynrik0s36wjy3difkawy536xg343mp";
       type = "gem";
     };
-    version = "2.8.0";
+    version = "2.8.1";
   };
   minitest = {
     groups = ["default" "development" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0516ypqlx0mlcfn5xh7qppxqc3xndn1fnadxawa8wld5dkcimy30";
+      sha256 = "1kjy67qajw4rnkbjs5jyk7kc3lyhz5613fwj1i8f6ppdk4zampy0";
       type = "gem";
     };
-    version = "5.16.3";
+    version = "5.17.0";
   };
   msgpack = {
     groups = ["default"];
@@ -385,10 +357,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0n79k78c5vdcyl0m3y3l5x9kxl6xf5lgriwi2vd665qmdkr01vnk";
+      sha256 = "0qr6psd9qgv83pklpw7cpmshkcasnv8d777ksmvwsacwfvvkmnxj";
       type = "gem";
     };
-    version = "1.13.10";
+    version = "1.14.1";
   };
   octokit = {
     dependencies = ["faraday" "sawyer"];
@@ -426,10 +398,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "17b127xxmm2yqdz146qwbs57046kn0js1h8synv01dwqz2z1kp2l";
+      sha256 = "07vnk6bb54k4yc06xnwck7php50l09vvlw1ga8wdz0pia461zpzb";
       type = "gem";
     };
-    version = "1.19.2";
+    version = "1.22.1";
   };
   parser = {
     dependencies = ["ast"];
@@ -437,10 +409,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0sszdl9mpzqzn9kxrp28sqmg47mjxcwypr4d60vbajqba4v885di";
+      sha256 = "0zk8mdyr0322r11d63rcp5jhz4lakxilhvyvdv0ql5dw4lb83623";
       type = "gem";
     };
-    version = "3.0.3.2";
+    version = "3.2.0.0";
   };
   pg_query = {
     dependencies = ["google-protobuf"];
@@ -448,10 +420,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0l79y41nwwacabj61jkbh4r7haajaf8y4bn5pihh0m1g8547b8w4";
+      sha256 = "1slcbzzqdv6104l5h8ql6kj43zmnm16g2dav8bc8dasfpwmrg1k0";
       type = "gem";
     };
-    version = "2.2.0";
+    version = "2.2.1";
   };
   proc_to_ast = {
     dependencies = ["coderay" "parser" "unparser"];
@@ -462,22 +434,16 @@
     };
     version = "0.1.0";
   };
-  procto = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "13imvg1x50rz3r0yyfbhxwv72lbf7q28qx9l9nfbb91h2n9ch58c";
-      type = "gem";
-    };
-    version = "0.0.3";
-  };
   pry = {
     dependencies = ["coderay" "method_source"];
+    groups = ["development" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "00rm71x0r1jdycwbs83lf9l6p494m99asakbvqxh8rz7zwnlzg69";
+      sha256 = "0iyw4q4an2wmk8v5rn2ghfy2jaz9vmw2nk8415nnpx2s866934qk";
       type = "gem";
     };
-    version = "0.12.2";
+    version = "0.13.1";
   };
   public_suffix = {
     groups = ["default"];
@@ -494,20 +460,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0p685i23lr8pl7l09g9l2mcj615fr7g33w3mkcr472lcg34nq8n8";
+      sha256 = "09jgz6r0f7v84a7jz9an85q8vvmp743dqcsdm3z9c8rqcqv6pljq";
       type = "gem";
     };
-    version = "1.6.1";
+    version = "1.6.2";
   };
   rack = {
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0axc6w0rs4yj0pksfll1hjgw1k6a5q0xi2lckh91knfb72v348pa";
+      sha256 = "0qvp6h2abmlsl4sqjsvac03cr2mxq6143gbx4kq52rpazp021qsb";
       type = "gem";
     };
-    version = "2.2.4";
+    version = "2.2.6.2";
   };
   rack-test = {
     dependencies = ["rack"];
@@ -537,18 +503,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1mcb75qvldfz6zsr4inrfx7dmb0ngxy507awx28khqmnla3hqpc9";
+      sha256 = "0ygav4xyq943qqyhjmi3mzirn180j565mc9h5j4css59x1sn0cmz";
       type = "gem";
     };
-    version = "1.4.4";
+    version = "1.5.0";
   };
   rainbow = {
+    groups = ["default" "development" "test"];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0bb2fpjspydr6x0s8pn1pqkzmxszvkfapv0p4627mywl7ky4zkhk";
+      sha256 = "0smwg4mii0fm38pyb5fddbmrdpifwv22zv3d3px2xx497am93503";
       type = "gem";
     };
-    version = "3.0.0";
+    version = "3.1.1";
   };
   rbtrace = {
     dependencies = ["ffi" "msgpack" "optimist"];
@@ -576,10 +544,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0n9d14ppshnx71i3mi1pnm3hwhcbb6m6vsc0b0dqgsab8r2rs96n";
+      sha256 = "0zjg29w5zvar7by1kqck3zilbdzm5iz3jp5d1zn3970krskfazh2";
       type = "gem";
     };
-    version = "1.8.1";
+    version = "2.6.2";
   };
   reverse_markdown = {
     dependencies = ["nokogiri"];
@@ -608,10 +576,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "15ppasvb9qrscwlyjz67ppw1lnxiqnkzx5vkx1bd8x5n3dhikxc3";
+      sha256 = "171rc90vcgjl8p1bdrqa92ymrj8a87qf6w20x05xq29mljcigi6c";
       type = "gem";
     };
-    version = "3.8.0";
+    version = "3.12.0";
   };
   rspec-core = {
     dependencies = ["rspec-support"];
@@ -619,10 +587,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1p1s5bnbqp3sxk67y0fh0x884jjym527r0vgmhbm81w7aq6b7l4p";
+      sha256 = "1ibb81slc35q5yp276sixp3yrvj9q92wlmi1glbnwlk6g49z8rn4";
       type = "gem";
     };
-    version = "3.8.0";
+    version = "3.12.0";
   };
   rspec-expectations = {
     dependencies = ["diff-lcs" "rspec-support"];
@@ -630,10 +598,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1c4gs5ybf7km0qshdm92p38zvg32n1j2kr5fgs2icacz7xf2y6fy";
+      sha256 = "03ba3lfdsj9zl00v1yvwgcx87lbadf87livlfa5kgqssn9qdnll6";
       type = "gem";
     };
-    version = "3.8.3";
+    version = "3.12.2";
   };
   rspec-mocks = {
     dependencies = ["diff-lcs" "rspec-support"];
@@ -641,42 +609,64 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "06y508cjqycb4yfhxmb3nxn0v9xqf17qbd46l1dh4xhncinr4fyp";
+      sha256 = "0sq2cc9pm5gq411y7iwfvzbmgv3g91lyf7y7cqn1lr3yf1v122nc";
       type = "gem";
     };
-    version = "3.8.0";
+    version = "3.12.3";
   };
   rspec-parameterized = {
-    dependencies = ["binding_ninja" "parser" "proc_to_ast" "rspec" "unparser"];
+    dependencies = ["rspec-parameterized-core" "rspec-parameterized-table_syntax"];
     groups = ["development" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1c0892jbaznnldk1wi24qxm70g4zhw2idqx516rhgdzgd7yh5j31";
+      sha256 = "11mk52x34j957rqccxfqlsqjzg26dz04ipd1v4yx5yraqx1v01ww";
+      type = "gem";
+    };
+    version = "1.0.0";
+  };
+  rspec-parameterized-core = {
+    dependencies = ["parser" "proc_to_ast" "rspec" "unparser"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1hfc2q7g8f5s6kdh1chwlalvz3fvj57vlfpn18b23677hm4ljyr8";
       type = "gem";
     };
-    version = "0.4.2";
+    version = "1.0.0";
+  };
+  rspec-parameterized-table_syntax = {
+    dependencies = ["binding_of_caller" "rspec-parameterized-core"];
+    groups = ["default" "development" "test"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "134q0hki279np9dv7mgr85wspdrvhpj9lpvxr9kx6pcwzwg9bpyp";
+      type = "gem";
+    };
+    version = "1.0.0";
   };
   rspec-support = {
     groups = ["default" "development" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0p3m7drixrlhvj2zpc38b11x145bvm311x6f33jjcxmvcm0wq609";
+      sha256 = "12y52zwwb3xr7h91dy9k3ndmyyhr3mjcayk0nnarnrzz8yr48kfx";
       type = "gem";
     };
-    version = "3.8.0";
+    version = "3.12.0";
   };
   rubocop = {
-    dependencies = ["parallel" "parser" "rainbow" "regexp_parser" "rexml" "rubocop-ast" "ruby-progressbar" "unicode-display_width"];
+    dependencies = ["json" "parallel" "parser" "rainbow" "regexp_parser" "rexml" "rubocop-ast" "ruby-progressbar" "unicode-display_width"];
     groups = ["development" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1jl3ghxw1bpj272s5s3gl07l2rbd1vwr9z9jmlxxaa2faldn9gms";
+      sha256 = "0a2j57r6pvngqlzkmww031gs5isax3nsr9n7cbfpqnh34ljh2lk1";
       type = "gem";
     };
-    version = "0.86.0";
+    version = "1.44.0";
   };
   rubocop-ast = {
     dependencies = ["parser"];
@@ -684,20 +674,20 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1w5rjkwxaxkr2jr1sl5wz0nffal27ik6b1qfzx5skl43vfk2jz97";
+      sha256 = "1pdzabz95hv3z5sfbkfqa8bdybsfl13gv7rjb32v3ss8klq99lbd";
       type = "gem";
     };
-    version = "0.2.0";
+    version = "1.24.1";
   };
   ruby-progressbar = {
     groups = ["default" "development" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1k77i0d4wsn23ggdd2msrcwfy0i376cglfqypkk2q77r2l3408zf";
+      sha256 = "02nmaw7yx9kl7rbaan5pl8x5nn0y4j5954mzrkzi9i3dhsrps4nc";
       type = "gem";
     };
-    version = "1.10.1";
+    version = "1.11.0";
   };
   rubyzip = {
     groups = ["default" "development" "omnibus" "test"];
@@ -714,10 +704,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1v846qs2pa3wnzgz95jzbcdrgl9vyjl65qiscw4q4dvm5sb7j68i";
+      sha256 = "0wnfgxx59nq2wpvi8ll7bqw9x99x5hps6i38xdjrwbb5a3896d58";
       type = "gem";
     };
-    version = "1.2.0";
+    version = "1.5.1";
   };
   sawyer = {
     dependencies = ["addressable" "faraday"];
@@ -736,10 +726,10 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "17j4br2lpnd8066d50mkg9kwk9v70hn3zfiqkvysd8p9nffmqnm0";
+      sha256 = "0jin9x4f43lplglhr9smv2wxsjgmph2ygqlci4s0v0aq5493ng8h";
       type = "gem";
     };
-    version = "3.0.4";
+    version = "3.1.2";
   };
   thor = {
     groups = ["default"];
@@ -751,14 +741,6 @@
     };
     version = "1.1.0";
   };
-  thread_safe = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy";
-      type = "gem";
-    };
-    version = "0.3.6";
-  };
   thrift = {
     groups = ["default"];
     platforms = [];
@@ -769,14 +751,6 @@
     };
     version = "0.17.0";
   };
-  timecop = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0d7mm786180v4kzvn1f77rhfppsg5n0sq2bdx63x9nv114zm8jrp";
-      type = "gem";
-    };
-    version = "0.9.1";
-  };
   tomlrb = {
     groups = ["default" "development" "omnibus" "test"];
     platforms = [];
@@ -803,21 +777,21 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "06i3id27s60141x6fdnjn5rar1cywdwy64ilc59cz937303q3mna";
+      sha256 = "1gi82k102q7bkmfi7ggn9ciypn897ylln1jk9q67kjhr39fj043a";
       type = "gem";
     };
-    version = "1.7.0";
+    version = "2.4.2";
   };
   unparser = {
-    dependencies = ["abstract_type" "adamantium" "concord" "diff-lcs" "equalizer" "parser" "procto"];
+    dependencies = ["diff-lcs" "parser"];
     groups = ["default" "development" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0qg1apxlnf4kxfj9jpm6hhv73jsncbs4zpsgyan32p5r331q1gmx";
+      sha256 = "1j6ym6cn43ry4lvcal7cv0n9g9awny7kcrn1crp7cwx2vwzffhmf";
       type = "gem";
     };
-    version = "0.4.7";
+    version = "0.6.7";
   };
   with_env = {
     groups = ["default" "development" "omnibus" "test"];
@@ -845,9 +819,9 @@
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0xjdr2szxvn3zb1sb5l8nfd6k9jr3b4qqbbg1mj9grf68m3fxckc";
+      sha256 = "09pqhdi6q4sqv0p1gnjpbcy4az0yv8hrpykjngdgh9qiqd87nfdv";
       type = "gem";
     };
-    version = "2.6.0";
+    version = "2.6.6";
   };
 }
diff --git a/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix b/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix
index 25e2a064242..cfc79c9f265 100644
--- a/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitlab-shell/default.nix
@@ -1,20 +1,20 @@
-{ lib, fetchFromGitLab, buildGoModule, ruby }:
+{ lib, fetchFromGitLab, buildGoModule, ruby, libkrb5 }:
 
 buildGoModule rec {
   pname = "gitlab-shell";
-  version = "14.15.0";
+  version = "14.17.0";
   src = fetchFromGitLab {
     owner = "gitlab-org";
     repo = "gitlab-shell";
     rev = "v${version}";
-    sha256 = "sha256-GDhYBL5LT3r6UIjDDY3LV5VgcBch190hYLPb6uMWETs=";
+    sha256 = "sha256-GTy+1O6Z7i+L8SSSQpYnN6SRfqDutkJYrj66tpX4f5M=";
   };
 
-  buildInputs = [ ruby ];
+  buildInputs = [ ruby libkrb5 ];
 
   patches = [ ./remove-hardcoded-locations.patch ];
 
-  vendorSha256 = "sha256-2DpQNJw67ipIW3ctHDJthuDrKNZCYvjXGlDxzBEMGWs=";
+  vendorSha256 = "sha256-mFGkT5lyQfcaGz503vgqx/kP5S0V2Ks5HDmjx+BxZzg=";
 
   postInstall = ''
     cp -r "$NIX_BUILD_TOP/source"/bin/* $out/bin
diff --git a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
index a01d8aa221f..25064f22f4b 100644
--- a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
@@ -5,7 +5,7 @@ in
 buildGoModule rec {
   pname = "gitlab-workhorse";
 
-  version = "15.8.4";
+  version = "15.9.3";
 
   src = fetchFromGitLab {
     owner = data.owner;
@@ -16,7 +16,7 @@ buildGoModule rec {
 
   sourceRoot = "source/workhorse";
 
-  vendorSha256 = "sha256-0FWR6cIV/0R2OrOAKhvuVnIY3Hkw4CIjyBUeF/paumw=";
+  vendorSha256 = "sha256-wvoMBzRGp8RX2kHKKz3REDq8YLTsHbDayEMYi7hSzTE=";
   buildInputs = [ git ];
   ldflags = [ "-X main.Version=${version}" ];
   doCheck = false;
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile
index 96517b56ff9..ed0c5127f73 100644
--- a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile
+++ b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile
@@ -13,9 +13,9 @@ gem 'bundler-checksum', '~> 0.1.0', path: 'vendor/gems/bundler-checksum', requir
 # NOTE: When incrementing the major or minor version here, also increment activerecord_version
 # in vendor/gems/attr_encrypted/attr_encrypted.gemspec until we resolve
 # https://gitlab.com/gitlab-org/gitlab/-/issues/375713
-gem 'rails', '~> 6.1.6.1'
+gem 'rails', '~> 6.1.7.2'
 
-gem 'bootsnap', '~> 1.15.0', require: false
+gem 'bootsnap', '~> 1.16.0', require: false
 
 # Pin openssl to match the version bundled with our supported Rubies.
 # See https://stdgems.org/openssl/#gem-version.
@@ -39,7 +39,7 @@ gem 'default_value_for', '~> 3.4.0'
 # Supported DBs
 gem 'pg', '~> 1.4.5'
 
-gem 'rugged', '~> 1.2'
+gem 'rugged', '~> 1.5'
 gem 'grape-path-helpers', '~> 1.7.1'
 
 gem 'faraday', '~> 1.0'
@@ -62,25 +62,26 @@ gem 'omniauth-azure-activedirectory-v2', '~> 2.0'
 gem 'omniauth-azure-oauth2', '~> 0.0.9', path: 'vendor/gems/omniauth-azure-oauth2' # See gem README.md
 gem 'omniauth-cas3', '~> 1.1.4', path: 'vendor/gems/omniauth-cas3' # See vendor/gems/omniauth-cas3/README.md
 gem 'omniauth-dingtalk-oauth2', '~> 1.0'
-gem 'omniauth-alicloud', '~> 2.0.0'
+gem 'omniauth-alicloud', '~> 2.0.1'
 gem 'omniauth-facebook', '~> 4.0.0'
 gem 'omniauth-github', '2.0.1'
 gem 'omniauth-gitlab', '~> 4.0.0', path: 'vendor/gems/omniauth-gitlab' # See vendor/gems/omniauth-gitlab/README.md
 gem 'omniauth-google-oauth2', '~> 1.1'
 gem 'omniauth-oauth2-generic', '~> 0.2.2'
 gem 'omniauth-saml', '~> 2.0.0'
-gem 'omniauth-shibboleth', '~> 1.3.0'
 gem 'omniauth-twitter', '~> 1.4'
 gem 'omniauth_crowd', '~> 2.4.0', path: 'vendor/gems/omniauth_crowd' # See vendor/gems/omniauth_crowd/README.md
-gem 'omniauth-authentiq', '~> 0.3.3'
-gem 'gitlab-omniauth-openid-connect', '~> 0.10.0', require: 'omniauth_openid_connect'
+gem 'omniauth_openid_connect', '~> 0.6.1'
+# Locked until Ruby 3.0 upgrade since upgrading will pull in an updated net-smtp gem.
+# See https://docs.gitlab.com/ee/development/emails.html#rationale.
+gem 'openid_connect', '= 1.3.0'
 gem 'omniauth-salesforce', '~> 1.0.5', path: 'vendor/gems/omniauth-salesforce' # See gem README.md
 gem 'omniauth-atlassian-oauth2', '~> 0.2.0'
 gem 'rack-oauth2', '~> 1.21.3'
 gem 'jwt', '~> 2.1.0'
 
 # Kerberos authentication. EE-only
-gem 'gssapi', group: :kerberos
+gem 'gssapi', '~> 1.3.1', group: :kerberos
 gem 'timfel-krb5-auth', '~> 0.8', group: :kerberos
 
 # Spam and anti-bot protection
@@ -150,11 +151,26 @@ gem 'fog-google', '~> 1.19', require: 'fog/google'
 gem 'fog-local', '~> 0.8'
 gem 'fog-openstack', '~> 1.0'
 gem 'fog-rackspace', '~> 0.1.1'
-gem 'fog-aliyun', '~> 0.3'
-gem 'gitlab-fog-azure-rm', '~> 1.4.0', require: 'fog/azurerm'
+# NOTE:
+# the fog-aliyun gem since v0.4 pulls in aliyun-sdk transitively, which monkey-patches
+# the rest-client gem to drop the Content-Length header field for chunked transfers,
+# which may have knock-on effects on other features using `RestClient`.
+# We may want to update this dependency if this is ever addressed upstream, e.g. via
+# https://github.com/aliyun/aliyun-oss-ruby-sdk/pull/93
+gem 'fog-aliyun', '~> 0.4'
+gem 'gitlab-fog-azure-rm', '~> 1.7.0', require: 'fog/azurerm'
 
 # for Google storage
-gem 'google-api-client', '~> 0.33'
+gem 'google-cloud-storage', '~> 1.44.0'
+gem 'google-apis-core', '~> 0.10.0'
+gem 'google-apis-compute_v1', '~> 0.57.0'
+gem 'google-apis-container_v1', '~> 0.43.0'
+gem 'google-apis-container_v1beta1', '~> 0.43.0'
+gem 'google-apis-cloudbilling_v1', '~> 0.21.0'
+gem 'google-apis-cloudresourcemanager_v1', '~> 0.31.0'
+gem 'google-apis-iam_v1', '~> 0.36.0'
+gem 'google-apis-serviceusage_v1', '~> 0.28.0'
+gem 'google-apis-sqladmin_v1beta4', '~> 0.41.0'
 
 # for aws storage
 gem 'unf', '~> 0.1.4'
@@ -166,16 +182,16 @@ gem 'seed-fu', '~> 2.3.7'
 gem 'elasticsearch-model', '~> 7.2'
 gem 'elasticsearch-rails', '~> 7.2', require: 'elasticsearch/rails/instrumentation'
 gem 'elasticsearch-api',   '7.13.3'
-gem 'aws-sdk-core', '~> 3.168.4'
+gem 'aws-sdk-core', '~> 3.170.0'
 gem 'aws-sdk-cloudformation', '~> 1'
-gem 'aws-sdk-s3', '~> 1.117.2'
+gem 'aws-sdk-s3', '~> 1.119.1'
 gem 'faraday_middleware-aws-sigv4', '~>0.3.0'
 gem 'typhoeus', '~> 1.4.0' # Used with Elasticsearch to support http keep-alive connections
 
 # Markdown and HTML processing
 gem 'html-pipeline', '~> 2.14.3'
 gem 'deckar01-task_list', '2.3.2'
-gem 'gitlab-markup', '~> 1.8.0', require: 'github/markup'
+gem 'gitlab-markup', '~> 1.9.0', require: 'github/markup'
 gem 'commonmarker', '~> 0.23.6'
 gem 'kramdown', '~> 2.3.1'
 gem 'RedCloth', '~> 4.3.2'
@@ -189,8 +205,7 @@ gem 'asciidoctor-plantuml', '~> 0.0.16'
 gem 'asciidoctor-kroki', '~> 0.7.0', require: false
 gem 'rouge', '~> 3.30.0'
 gem 'truncato', '~> 0.7.12'
-gem 'bootstrap_form', '~> 4.2.0'
-gem 'nokogiri', '~> 1.13.10'
+gem 'nokogiri', '~> 1.14.1'
 
 # Calendar rendering
 gem 'icalendar'
@@ -223,7 +238,7 @@ gem 'redis-namespace', '~> 1.9.0'
 gem 'gitlab-sidekiq-fetcher', '0.9.0', require: 'sidekiq-reliable-fetch'
 
 # Cron Parser
-gem 'fugit', '~> 1.2.1'
+gem 'fugit', '~> 1.8.1'
 
 # HTTP requests
 gem 'httparty', '~> 0.20.0'
@@ -329,15 +344,15 @@ gem 'sentry-sidekiq', '~> 5.1.1'
 
 # PostgreSQL query parsing
 #
-gem 'pg_query', '~> 2.2'
+gem 'pg_query', '~> 2.2', '>= 2.2.1'
 
 gem 'premailer-rails', '~> 1.10.3'
 
-gem 'gitlab-labkit', '~> 0.29.0'
+gem 'gitlab-labkit', '~> 0.30.1'
 gem 'thrift', '>= 0.16.0'
 
 # I18n
-gem 'ruby_parser', '~> 3.15', require: false
+gem 'ruby_parser', '~> 3.19', require: false
 gem 'rails-i18n', '~> 7.0'
 gem 'gettext_i18n_rails', '~> 1.8.0'
 gem 'gettext_i18n_rails_js', '~> 1.3'
@@ -358,12 +373,12 @@ gem 'prometheus-client-mmap', '~> 0.17', require: 'prometheus/client'
 gem 'warning', '~> 1.3.0'
 
 group :development do
-  gem 'lefthook', '~> 1.2.7', require: false
+  gem 'lefthook', '~> 1.2.9', require: false
   gem 'rubocop'
   gem 'solargraph', '~> 0.47.2', require: false
 
   gem 'letter_opener_web', '~> 2.0.0'
-  gem 'lookbook', '~> 1.4', '>= 1.4.5'
+  gem 'lookbook', '~> 1.5', '>= 1.5.3'
 
   # Better errors handler
   gem 'better_errors', '~> 2.9.1'
@@ -378,13 +393,13 @@ group :development, :test do
   gem 'bullet', '~> 7.0.2'
   gem 'pry-byebug'
   gem 'pry-rails', '~> 0.3.9'
-  gem 'pry-shell', '~> 0.5.1'
+  gem 'pry-shell', '~> 0.6.1'
 
   gem 'awesome_print', require: false
 
   gem 'database_cleaner', '~> 1.7.0'
   gem 'factory_bot_rails', '~> 6.2.0'
-  gem 'rspec-rails', '~> 5.0.1'
+  gem 'rspec-rails', '~> 6.0.1'
 
   # Prevent occasions where minitest is not bundled in packaged versions of ruby (see #3826)
   gem 'minitest', '~> 5.11.0'
@@ -395,7 +410,7 @@ group :development, :test do
   gem 'spring', '~> 4.1.0'
   gem 'spring-commands-rspec', '~> 1.0.4'
 
-  gem 'gitlab-styles', '~> 9.2.0', require: false
+  gem 'gitlab-styles', '~> 10.0.0', require: false
 
   gem 'haml_lint', '~> 0.40.0', require: false
   gem 'bundler-audit', '~> 0.7.0.1', require: false
@@ -421,7 +436,7 @@ group :development, :test do
 end
 
 group :development, :test, :danger do
-  gem 'gitlab-dangerfiles', '~> 3.6.4', require: false
+  gem 'gitlab-dangerfiles', '~> 3.7.0', require: false
 end
 
 group :development, :test, :coverage do
@@ -496,7 +511,7 @@ gem 'ssh_data', '~> 1.3'
 gem 'spamcheck', '~> 1.0.0'
 
 # Gitaly GRPC protocol definitions
-gem 'gitaly', '~> 15.5.2'
+gem 'gitaly', '~> 15.9.0-rc3'
 
 # KAS GRPC protocol definitions
 gem 'kas-grpc', '~> 0.0.2'
@@ -544,7 +559,7 @@ gem 'lockbox', '~> 1.1.1'
 gem 'valid_email', '~> 0.1'
 
 # JSON
-gem 'json', '~> 2.5.1'
+gem 'json', '~> 2.6.3'
 gem 'json_schemer', '~> 0.2.18'
 gem 'oj', '~> 3.13.21'
 gem 'oj-introspect', '~> 0.7'
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
index ea1771e5af3..c988145616e 100644
--- a/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
+++ b/pkgs/applications/version-management/gitlab/rubyEnv/Gemfile.lock
@@ -100,63 +100,63 @@ GEM
     acme-client (2.0.11)
       faraday (>= 1.0, < 3.0.0)
       faraday-retry (~> 1.0)
-    actioncable (6.1.6.1)
-      actionpack (= 6.1.6.1)
-      activesupport (= 6.1.6.1)
+    actioncable (6.1.7.2)
+      actionpack (= 6.1.7.2)
+      activesupport (= 6.1.7.2)
       nio4r (~> 2.0)
       websocket-driver (>= 0.6.1)
-    actionmailbox (6.1.6.1)
-      actionpack (= 6.1.6.1)
-      activejob (= 6.1.6.1)
-      activerecord (= 6.1.6.1)
-      activestorage (= 6.1.6.1)
-      activesupport (= 6.1.6.1)
+    actionmailbox (6.1.7.2)
+      actionpack (= 6.1.7.2)
+      activejob (= 6.1.7.2)
+      activerecord (= 6.1.7.2)
+      activestorage (= 6.1.7.2)
+      activesupport (= 6.1.7.2)
       mail (>= 2.7.1)
-    actionmailer (6.1.6.1)
-      actionpack (= 6.1.6.1)
-      actionview (= 6.1.6.1)
-      activejob (= 6.1.6.1)
-      activesupport (= 6.1.6.1)
+    actionmailer (6.1.7.2)
+      actionpack (= 6.1.7.2)
+      actionview (= 6.1.7.2)
+      activejob (= 6.1.7.2)
+      activesupport (= 6.1.7.2)
       mail (~> 2.5, >= 2.5.4)
       rails-dom-testing (~> 2.0)
-    actionpack (6.1.6.1)
-      actionview (= 6.1.6.1)
-      activesupport (= 6.1.6.1)
+    actionpack (6.1.7.2)
+      actionview (= 6.1.7.2)
+      activesupport (= 6.1.7.2)
       rack (~> 2.0, >= 2.0.9)
       rack-test (>= 0.6.3)
       rails-dom-testing (~> 2.0)
       rails-html-sanitizer (~> 1.0, >= 1.2.0)
-    actiontext (6.1.6.1)
-      actionpack (= 6.1.6.1)
-      activerecord (= 6.1.6.1)
-      activestorage (= 6.1.6.1)
-      activesupport (= 6.1.6.1)
+    actiontext (6.1.7.2)
+      actionpack (= 6.1.7.2)
+      activerecord (= 6.1.7.2)
+      activestorage (= 6.1.7.2)
+      activesupport (= 6.1.7.2)
       nokogiri (>= 1.8.5)
-    actionview (6.1.6.1)
-      activesupport (= 6.1.6.1)
+    actionview (6.1.7.2)
+      activesupport (= 6.1.7.2)
       builder (~> 3.1)
       erubi (~> 1.4)
       rails-dom-testing (~> 2.0)
       rails-html-sanitizer (~> 1.1, >= 1.2.0)
-    activejob (6.1.6.1)
-      activesupport (= 6.1.6.1)
+    activejob (6.1.7.2)
+      activesupport (= 6.1.7.2)
       globalid (>= 0.3.6)
-    activemodel (6.1.6.1)
-      activesupport (= 6.1.6.1)
-    activerecord (6.1.6.1)
-      activemodel (= 6.1.6.1)
-      activesupport (= 6.1.6.1)
+    activemodel (6.1.7.2)
+      activesupport (= 6.1.7.2)
+    activerecord (6.1.7.2)
+      activemodel (= 6.1.7.2)
+      activesupport (= 6.1.7.2)
     activerecord-explain-analyze (0.1.0)
       activerecord (>= 4)
       pg
-    activestorage (6.1.6.1)
-      actionpack (= 6.1.6.1)
-      activejob (= 6.1.6.1)
-      activerecord (= 6.1.6.1)
-      activesupport (= 6.1.6.1)
+    activestorage (6.1.7.2)
+      actionpack (= 6.1.7.2)
+      activejob (= 6.1.7.2)
+      activerecord (= 6.1.7.2)
+      activesupport (= 6.1.7.2)
       marcel (~> 1.0)
       mini_mime (>= 1.1.0)
-    activesupport (6.1.6.1)
+    activesupport (6.1.7.2)
       concurrent-ruby (~> 1.0, >= 1.0.2)
       i18n (>= 1.6, < 2)
       minitest (>= 5.1)
@@ -168,6 +168,9 @@ GEM
       public_suffix (>= 2.0.2, < 6.0)
     aes_key_wrap (1.1.0)
     akismet (3.0.0)
+    aliyun-sdk (0.8.0)
+      nokogiri (~> 1.6)
+      rest-client (~> 2.0)
     android_key_attestation (0.3.0)
     apollo_upload_server (2.1.0)
       actionpack (>= 4.2)
@@ -197,19 +200,19 @@ GEM
     awesome_print (1.9.2)
     awrence (1.1.1)
     aws-eventstream (1.2.0)
-    aws-partitions (1.674.0)
+    aws-partitions (1.703.0)
     aws-sdk-cloudformation (1.41.0)
       aws-sdk-core (~> 3, >= 3.99.0)
       aws-sigv4 (~> 1.1)
-    aws-sdk-core (3.168.4)
+    aws-sdk-core (3.170.0)
       aws-eventstream (~> 1, >= 1.0.2)
       aws-partitions (~> 1, >= 1.651.0)
       aws-sigv4 (~> 1.5)
       jmespath (~> 1, >= 1.6.1)
-    aws-sdk-kms (1.61.0)
+    aws-sdk-kms (1.62.0)
       aws-sdk-core (~> 3, >= 3.165.0)
       aws-sigv4 (~> 1.1)
-    aws-sdk-s3 (1.117.2)
+    aws-sdk-s3 (1.119.1)
       aws-sdk-core (~> 3, >= 3.165.0)
       aws-sdk-kms (~> 1)
       aws-sigv4 (~> 1.4)
@@ -241,11 +244,8 @@ GEM
       rack (>= 0.9.0)
     bindata (2.4.11)
     binding_ninja (0.2.3)
-    bootsnap (1.15.0)
+    bootsnap (1.16.0)
       msgpack (~> 1.2)
-    bootstrap_form (4.2.0)
-      actionpack (>= 5.0)
-      activemodel (>= 5.0)
     browser (5.3.1)
     builder (3.2.4)
     bullet (7.0.2)
@@ -266,11 +266,11 @@ GEM
     capybara-screenshot (1.0.22)
       capybara (>= 1.0, < 4)
       launchy
-    carrierwave (1.3.2)
+    carrierwave (1.3.3)
       activemodel (>= 4.0.0)
       activesupport (>= 4.0.0)
       mime-types (>= 1.16)
-      ssrf_filter (~> 1.0)
+      ssrf_filter (~> 1.0, < 1.1.0)
     cbor (0.5.9.6)
     character_set (1.4.1)
       sorted_set (~> 1.0)
@@ -294,7 +294,7 @@ GEM
     coderay (1.1.3)
     colored2 (3.1.2)
     commonmarker (0.23.6)
-    concurrent-ruby (1.1.10)
+    concurrent-ruby (1.2.0)
     connection_pool (2.3.0)
     cork (0.3.0)
       colored2 (~> 3.1)
@@ -334,7 +334,6 @@ GEM
     deckar01-task_list (2.3.2)
       html-pipeline
     declarative (0.0.20)
-    declarative-option (0.1.0)
     declarative_policy (1.1.0)
     default_value_for (3.4.0)
       activerecord (>= 3.2.0, < 7.0)
@@ -368,6 +367,8 @@ GEM
     diff-lcs (1.5.0)
     diff_match_patch (0.1.0)
     diffy (3.4.2)
+    digest-crc (0.6.4)
+      rake (>= 12.0.0, < 14.0.0)
     discordrb-webhooks (3.4.2)
       rest-client (>= 2.0.0)
     docile (1.4.0)
@@ -422,7 +423,7 @@ GEM
       launchy (~> 2.1)
       mail (~> 2.7)
     encryptor (3.0.0)
-    erubi (1.11.0)
+    erubi (1.12.0)
     escape_utils (1.2.1)
     et-orbi (1.2.7)
       tzinfo
@@ -477,7 +478,7 @@ GEM
       faraday_middleware
       multi_json
     fast_blank (1.0.0)
-    fast_gettext (2.1.0)
+    fast_gettext (2.3.0)
     ffaker (2.10.0)
     ffi (1.15.5)
     ffi-compiler (1.0.1)
@@ -494,7 +495,9 @@ GEM
     flipper-active_support_cache_store (0.25.0)
       activesupport (>= 4.2, < 8)
       flipper (~> 0.25.0)
-    fog-aliyun (0.3.3)
+    fog-aliyun (0.4.0)
+      addressable (~> 2.8.0)
+      aliyun-sdk (~> 0.8.0)
       fog-core
       fog-json
       ipaddress (~> 0.8)
@@ -538,15 +541,14 @@ GEM
       fog-core
       nokogiri (>= 1.5.11, < 2.0.0)
     formatador (0.2.5)
-    fugit (1.2.3)
-      et-orbi (~> 1.1, >= 1.1.8)
-      raabro (~> 1.1)
+    fugit (1.8.1)
+      et-orbi (~> 1, >= 1.2.7)
+      raabro (~> 1.4)
     fuubar (2.2.0)
       rspec-core (~> 3.0)
       ruby-progressbar (~> 1.4)
     fuzzyurl (0.9.0)
     gemoji (3.0.1)
-    gems (1.2.0)
     get_process_mem (0.2.7)
       ffi (~> 1.0)
     gettext (3.3.6)
@@ -561,28 +563,28 @@ GEM
       rails (>= 3.2.0)
     git (1.11.0)
       rchardet (~> 1.8)
-    gitaly (15.5.2)
+    gitaly (15.9.0.pre.rc3)
       grpc (~> 1.0)
     gitlab (4.19.0)
       httparty (~> 0.20)
       terminal-table (>= 1.5.1)
     gitlab-chronic (0.10.5)
       numerizer (~> 0.2)
-    gitlab-dangerfiles (3.6.4)
+    gitlab-dangerfiles (3.7.0)
       danger (>= 8.4.5)
       danger-gitlab (>= 8.0.0)
       rake
     gitlab-experiment (0.7.1)
       activesupport (>= 3.0)
       request_store (>= 1.0)
-    gitlab-fog-azure-rm (1.4.0)
+    gitlab-fog-azure-rm (1.7.0)
       azure-storage-blob (~> 2.0)
       azure-storage-common (~> 2.0)
       fog-core (= 2.1.0)
       fog-json (~> 1.2.0)
       mime-types
       ms_rest_azure (~> 0.12.0)
-    gitlab-labkit (0.29.0)
+    gitlab-labkit (0.30.1)
       actionpack (>= 5.0.0, < 8.0.0)
       activesupport (>= 5.0.0, < 8.0.0)
       grpc (>= 1.37)
@@ -592,22 +594,17 @@ GEM
       redis (> 3.0.0, < 6.0.0)
     gitlab-license (2.2.1)
     gitlab-mail_room (0.0.9)
-    gitlab-markup (1.8.1)
+    gitlab-markup (1.9.0)
     gitlab-net-dns (0.9.1)
-    gitlab-omniauth-openid-connect (0.10.0)
-      addressable (~> 2.7)
-      omniauth (>= 1.9, < 3)
-      openid_connect (~> 1.2)
     gitlab-sidekiq-fetcher (0.9.0)
       json (>= 2.5)
       sidekiq (~> 6.1)
-    gitlab-styles (9.2.0)
-      rubocop (~> 1.38.0)
-      rubocop-gitlab-security (~> 0.1.1)
-      rubocop-graphql (~> 0.14)
-      rubocop-performance (~> 1.14)
-      rubocop-rails (~> 2.15)
-      rubocop-rspec (~> 2.15)
+    gitlab-styles (10.0.0)
+      rubocop (~> 1.43.0)
+      rubocop-graphql (~> 0.18)
+      rubocop-performance (~> 1.15)
+      rubocop-rails (~> 2.17)
+      rubocop-rspec (~> 2.18)
     gitlab_chronic_duration (0.10.6.2)
       numerizer (~> 0.2)
     gitlab_omniauth-ldap (2.2.0)
@@ -622,12 +619,17 @@ GEM
       i18n (>= 0.7)
       multi_json
       request_store (>= 1.0)
-    google-api-client (0.53.0)
-      google-apis-core (~> 0.1)
-      google-apis-generator (~> 0.1)
-    google-apis-compute_v1 (0.53.0)
-      google-apis-core (>= 0.9.0, < 2.a)
-    google-apis-core (0.9.1)
+    google-apis-cloudbilling_v1 (0.21.0)
+      google-apis-core (>= 0.9.1, < 2.a)
+    google-apis-cloudresourcemanager_v1 (0.31.0)
+      google-apis-core (>= 0.9.1, < 2.a)
+    google-apis-compute_v1 (0.57.0)
+      google-apis-core (>= 0.9.1, < 2.a)
+    google-apis-container_v1 (0.43.0)
+      google-apis-core (>= 0.9.1, < 2.a)
+    google-apis-container_v1beta1 (0.43.0)
+      google-apis-core (>= 0.9.1, < 2.a)
+    google-apis-core (0.10.0)
       addressable (~> 2.5, >= 2.5.1)
       googleauth (>= 0.16.2, < 2.a)
       httpclient (>= 2.8.1, < 3.a)
@@ -636,28 +638,36 @@ GEM
       retriable (>= 2.0, < 4.a)
       rexml
       webrick
-    google-apis-discovery_v1 (0.12.0)
-      google-apis-core (>= 0.9.0, < 2.a)
     google-apis-dns_v1 (0.28.0)
       google-apis-core (>= 0.9.0, < 2.a)
-    google-apis-generator (0.11.0)
-      activesupport (>= 5.0)
-      gems (~> 1.2)
+    google-apis-iam_v1 (0.36.0)
       google-apis-core (>= 0.9.1, < 2.a)
-      google-apis-discovery_v1 (~> 0.5)
-      thor (>= 0.20, < 2.a)
     google-apis-iamcredentials_v1 (0.15.0)
       google-apis-core (>= 0.9.0, < 2.a)
     google-apis-monitoring_v3 (0.37.0)
       google-apis-core (>= 0.9.1, < 2.a)
     google-apis-pubsub_v1 (0.30.0)
       google-apis-core (>= 0.9.1, < 2.a)
-    google-apis-sqladmin_v1beta4 (0.38.0)
-      google-apis-core (>= 0.9.0, < 2.a)
-    google-apis-storage_v1 (0.20.0)
+    google-apis-serviceusage_v1 (0.28.0)
+      google-apis-core (>= 0.9.1, < 2.a)
+    google-apis-sqladmin_v1beta4 (0.41.0)
       google-apis-core (>= 0.9.1, < 2.a)
+    google-apis-storage_v1 (0.19.0)
+      google-apis-core (>= 0.9.0, < 2.a)
+    google-cloud-core (1.6.0)
+      google-cloud-env (~> 1.0)
+      google-cloud-errors (~> 1.0)
     google-cloud-env (1.6.0)
       faraday (>= 0.17.3, < 3.0)
+    google-cloud-errors (1.3.0)
+    google-cloud-storage (1.44.0)
+      addressable (~> 2.8)
+      digest-crc (~> 0.4)
+      google-apis-iamcredentials_v1 (~> 0.1)
+      google-apis-storage_v1 (~> 0.19.0)
+      google-cloud-core (~> 1.6)
+      googleauth (>= 0.16.2, < 2.a)
+      mini_mime (~> 1.0)
     google-protobuf (3.21.12)
     googleapis-common-protos-types (1.3.0)
       google-protobuf (~> 3.14)
@@ -716,7 +726,7 @@ GEM
     grpc (1.42.0)
       google-protobuf (~> 3.18)
       googleapis-common-protos-types (~> 1.0)
-    gssapi (1.2.0)
+    gssapi (1.3.1)
       ffi (>= 1.0.1)
     guard (2.16.2)
       formatador (>= 0.2.4)
@@ -799,7 +809,7 @@ GEM
       character_set (~> 1.4)
       regexp_parser (~> 2.5)
       regexp_property_values (~> 1.0)
-    json (2.5.1)
+    json (2.6.3)
     json-jwt (1.15.3)
       activesupport (>= 4.2)
       aes_key_wrap
@@ -835,7 +845,7 @@ GEM
       kramdown (~> 2.0)
     launchy (2.5.0)
       addressable (~> 2.7)
-    lefthook (1.2.7)
+    lefthook (1.2.9)
     letter_opener (1.7.0)
       launchy (~> 2.2)
     letter_opener_web (2.0.0)
@@ -873,7 +883,7 @@ GEM
     loofah (2.19.1)
       crass (~> 1.0.2)
       nokogiri (>= 1.5.9)
-    lookbook (1.4.5)
+    lookbook (1.5.3)
       actioncable
       activemodel
       css_parser
@@ -883,7 +893,7 @@ GEM
       railties (>= 5.0)
       redcarpet (~> 3.5)
       rouge (>= 3.26, < 5.0)
-      view_component (~> 2.0)
+      view_component (> 2.0, < 4)
       yard (~> 0.9.25)
       zeitwerk (~> 2.5)
     lru_redux (1.1.0)
@@ -903,7 +913,7 @@ GEM
     mini_histogram (0.3.1)
     mini_magick (4.10.1)
     mini_mime (1.1.2)
-    mini_portile2 (2.8.0)
+    mini_portile2 (2.8.1)
     minitest (5.11.3)
     mixlib-cli (2.1.8)
     mixlib-config (3.0.9)
@@ -924,7 +934,7 @@ GEM
     multi_json (1.14.1)
     multi_xml (0.6.0)
     multipart-post (2.2.3)
-    murmurhash3 (0.1.6)
+    murmurhash3 (0.1.7)
     mustermann (1.1.1)
       ruby2_keywords (~> 0.0.1)
     mustermann-grape (1.0.1)
@@ -941,7 +951,7 @@ GEM
     netrc (0.11.0)
     nio4r (2.5.8)
     no_proxy_fix (0.1.2)
-    nokogiri (1.13.10)
+    nokogiri (1.14.1)
       mini_portile2 (~> 2.8.0)
       racc (~> 1.4)
     notiffany (0.1.3)
@@ -973,22 +983,19 @@ GEM
       train-core
       wmi-lite (~> 1.0)
     oj (3.13.23)
-    oj-introspect (0.7.1)
+    oj-introspect (0.7.2)
       oj (>= 3.13.23)
     omniauth (2.1.0)
       hashie (>= 3.4.6)
       rack (>= 2.2.3)
       rack-protection
-    omniauth-alicloud (2.0.0)
+    omniauth-alicloud (2.0.1)
       omniauth-oauth2 (~> 1.8)
     omniauth-atlassian-oauth2 (0.2.0)
       omniauth (>= 1.1.1)
       omniauth-oauth2 (>= 1.5)
     omniauth-auth0 (2.0.0)
       omniauth-oauth2 (~> 1.4)
-    omniauth-authentiq (0.3.3)
-      jwt (>= 1.5)
-      omniauth-oauth2 (>= 1.5)
     omniauth-azure-activedirectory-v2 (2.0.0)
       omniauth-oauth2 (~> 1.8)
     omniauth-dingtalk-oauth2 (1.0.1)
@@ -1015,11 +1022,12 @@ GEM
     omniauth-saml (2.0.0)
       omniauth (~> 2.0)
       ruby-saml (~> 1.9)
-    omniauth-shibboleth (1.3.0)
-      omniauth (>= 1.0.0)
     omniauth-twitter (1.4.0)
       omniauth-oauth (~> 1.1)
       rack
+    omniauth_openid_connect (0.6.1)
+      omniauth (>= 1.9, < 3)
+      openid_connect (~> 1.1)
     open4 (1.3.4)
     openid_connect (1.3.0)
       activemodel
@@ -1039,7 +1047,7 @@ GEM
     org-ruby (0.9.12)
       rubypants (~> 0.2)
     orm_adapter (0.5.0)
-    os (1.1.1)
+    os (1.1.4)
     pact (1.63.0)
       pact-mock_service (~> 3.0, >= 3.3.1)
       pact-support (~> 1.16, >= 1.16.9)
@@ -1064,7 +1072,7 @@ GEM
       expgen (~> 0.1)
       rainbow (~> 3.1.1)
     parallel (1.22.1)
-    parser (3.1.3.0)
+    parser (3.2.0.0)
       ast (~> 2.4.1)
     parslet (1.8.2)
     pastel (0.8.0)
@@ -1072,7 +1080,7 @@ GEM
     peek (1.1.0)
       railties (>= 4.0.0)
     pg (1.4.5)
-    pg_query (2.2.0)
+    pg_query (2.2.1)
       google-protobuf (>= 3.19.2)
     plist (3.6.0)
     png_quantizator (0.2.1)
@@ -1090,16 +1098,16 @@ GEM
       parser
       unparser
     prometheus-client-mmap (0.17.0)
-    pry (0.13.1)
+    pry (0.14.2)
       coderay (~> 1.1)
       method_source (~> 1.0)
-    pry-byebug (3.9.0)
+    pry-byebug (3.10.1)
       byebug (~> 11.0)
-      pry (~> 0.13.0)
+      pry (>= 0.13, < 0.15)
     pry-rails (0.3.9)
       pry (>= 0.10.4)
-    pry-shell (0.5.1)
-      pry (~> 0.13.0)
+    pry-shell (0.6.1)
+      pry (>= 0.13.0)
       tty-markdown
       tty-prompt
     public_suffix (5.0.0)
@@ -1110,7 +1118,7 @@ GEM
       puma (>= 2.7)
     pyu-ruby-sasl (0.0.3.3)
     raabro (1.4.0)
-    racc (1.6.1)
+    racc (1.6.2)
     rack (2.2.6.2)
     rack-accept (0.4.5)
       rack (>= 0.4)
@@ -1131,20 +1139,20 @@ GEM
     rack-test (2.0.2)
       rack (>= 1.3)
     rack-timeout (0.6.3)
-    rails (6.1.6.1)
-      actioncable (= 6.1.6.1)
-      actionmailbox (= 6.1.6.1)
-      actionmailer (= 6.1.6.1)
-      actionpack (= 6.1.6.1)
-      actiontext (= 6.1.6.1)
-      actionview (= 6.1.6.1)
-      activejob (= 6.1.6.1)
-      activemodel (= 6.1.6.1)
-      activerecord (= 6.1.6.1)
-      activestorage (= 6.1.6.1)
-      activesupport (= 6.1.6.1)
+    rails (6.1.7.2)
+      actioncable (= 6.1.7.2)
+      actionmailbox (= 6.1.7.2)
+      actionmailer (= 6.1.7.2)
+      actionpack (= 6.1.7.2)
+      actiontext (= 6.1.7.2)
+      actionview (= 6.1.7.2)
+      activejob (= 6.1.7.2)
+      activemodel (= 6.1.7.2)
+      activerecord (= 6.1.7.2)
+      activestorage (= 6.1.7.2)
+      activesupport (= 6.1.7.2)
       bundler (>= 1.15.0)
-      railties (= 6.1.6.1)
+      railties (= 6.1.7.2)
       sprockets-rails (>= 2.0.0)
     rails-controller-testing (1.0.5)
       actionpack (>= 5.0.1.rc1)
@@ -1153,14 +1161,14 @@ GEM
     rails-dom-testing (2.0.3)
       activesupport (>= 4.2.0)
       nokogiri (>= 1.6)
-    rails-html-sanitizer (1.4.4)
+    rails-html-sanitizer (1.5.0)
       loofah (~> 2.19, >= 2.19.1)
     rails-i18n (7.0.3)
       i18n (>= 0.7, < 2)
       railties (>= 6.0.0, < 8)
-    railties (6.1.6.1)
-      actionpack (= 6.1.6.1)
-      activesupport (= 6.1.6.1)
+    railties (6.1.7.2)
+      actionpack (= 6.1.7.2)
+      activesupport (= 6.1.7.2)
       method_source
       rake (>= 12.2)
       thor (~> 1.0)
@@ -1173,14 +1181,14 @@ GEM
       ffi (>= 1.0.6)
       msgpack (>= 0.4.3)
       optimist (>= 3.0.0)
-    rbtree (0.4.4)
+    rbtree (0.4.6)
     rchardet (1.8.0)
     rdoc (6.3.2)
     re2 (1.6.0)
     recaptcha (5.12.3)
       json
     recursive-open-struct (1.1.3)
-    redcarpet (3.5.1)
+    redcarpet (3.6.0)
     redis (4.8.0)
     redis-actionpack (5.3.0)
       actionpack (>= 5, < 8)
@@ -1195,9 +1203,9 @@ GEM
       redis (>= 4, < 5)
     regexp_parser (2.6.0)
     regexp_property_values (1.0.0)
-    representable (3.0.4)
+    representable (3.2.0)
       declarative (< 0.1.0)
-      declarative-option (< 0.2.0)
+      trailblazer-option (>= 0.1.1, < 0.2.0)
       uber (< 0.2.0)
     request_store (1.5.1)
       rack (>= 1.4)
@@ -1220,40 +1228,40 @@ GEM
       chunky_png
     rqrcode-rails3 (0.1.7)
       rqrcode (>= 0.4.2)
-    rspec (3.10.0)
-      rspec-core (~> 3.10.0)
-      rspec-expectations (~> 3.10.0)
-      rspec-mocks (~> 3.10.0)
+    rspec (3.12.0)
+      rspec-core (~> 3.12.0)
+      rspec-expectations (~> 3.12.0)
+      rspec-mocks (~> 3.12.0)
     rspec-benchmark (0.6.0)
       benchmark-malloc (~> 0.2)
       benchmark-perf (~> 0.6)
       benchmark-trend (~> 0.4)
       rspec (>= 3.0)
-    rspec-core (3.10.2)
-      rspec-support (~> 3.10.0)
-    rspec-expectations (3.10.1)
+    rspec-core (3.12.0)
+      rspec-support (~> 3.12.0)
+    rspec-expectations (3.12.2)
       diff-lcs (>= 1.2.0, < 2.0)
-      rspec-support (~> 3.10.0)
-    rspec-mocks (3.10.3)
+      rspec-support (~> 3.12.0)
+    rspec-mocks (3.12.3)
       diff-lcs (>= 1.2.0, < 2.0)
-      rspec-support (~> 3.10.0)
+      rspec-support (~> 3.12.0)
     rspec-parameterized (0.5.0)
       binding_ninja (>= 0.2.3)
       parser
       proc_to_ast
       rspec (>= 2.13, < 4)
       unparser
-    rspec-rails (5.0.1)
-      actionpack (>= 5.2)
-      activesupport (>= 5.2)
-      railties (>= 5.2)
-      rspec-core (~> 3.10)
-      rspec-expectations (~> 3.10)
-      rspec-mocks (~> 3.10)
-      rspec-support (~> 3.10)
+    rspec-rails (6.0.1)
+      actionpack (>= 6.1)
+      activesupport (>= 6.1)
+      railties (>= 6.1)
+      rspec-core (~> 3.11)
+      rspec-expectations (~> 3.11)
+      rspec-mocks (~> 3.11)
+      rspec-support (~> 3.11)
     rspec-retry (0.6.1)
       rspec-core (> 3.3)
-    rspec-support (3.10.3)
+    rspec-support (3.12.0)
     rspec_junit_formatter (0.6.0)
       rspec-core (>= 2, < 4, != 2.12.0)
     rspec_profiling (0.0.6)
@@ -1261,31 +1269,32 @@ GEM
       pg
       rails
       sqlite3
-    rubocop (1.38.0)
+    rubocop (1.43.0)
       json (~> 2.3)
       parallel (~> 1.10)
-      parser (>= 3.1.2.1)
+      parser (>= 3.2.0.0)
       rainbow (>= 2.2.2, < 4.0)
       regexp_parser (>= 1.8, < 3.0)
       rexml (>= 3.2.5, < 4.0)
-      rubocop-ast (>= 1.23.0, < 2.0)
+      rubocop-ast (>= 1.24.1, < 2.0)
       ruby-progressbar (~> 1.7)
-      unicode-display_width (>= 1.4.0, < 3.0)
-    rubocop-ast (1.23.0)
+      unicode-display_width (>= 2.4.0, < 3.0)
+    rubocop-ast (1.24.1)
       parser (>= 3.1.1.0)
-    rubocop-gitlab-security (0.1.1)
-      rubocop (>= 0.51)
-    rubocop-graphql (0.18.0)
+    rubocop-capybara (2.17.0)
+      rubocop (~> 1.41)
+    rubocop-graphql (0.19.0)
       rubocop (>= 0.87, < 2)
-    rubocop-performance (1.15.1)
+    rubocop-performance (1.16.0)
       rubocop (>= 1.7.0, < 2.0)
       rubocop-ast (>= 0.4.0)
-    rubocop-rails (2.17.3)
+    rubocop-rails (2.17.4)
       activesupport (>= 4.2.0)
       rack (>= 1.1)
       rubocop (>= 1.33.0, < 2.0)
-    rubocop-rspec (2.16.0)
+    rubocop-rspec (2.18.1)
       rubocop (~> 1.33)
+      rubocop-capybara (~> 2.17)
     ruby-fogbugz (0.3.0)
       crack (~> 0.4)
       multipart-post (~> 2.0)
@@ -1297,12 +1306,12 @@ GEM
       rexml
     ruby-statistics (3.0.0)
     ruby2_keywords (0.0.5)
-    ruby_parser (3.15.0)
-      sexp_processor (~> 4.9)
+    ruby_parser (3.19.2)
+      sexp_processor (~> 4.16)
     rubyntlm (0.6.3)
     rubypants (0.2.0)
     rubyzip (2.3.2)
-    rugged (1.2.0)
+    rugged (1.5.1)
     safe_yaml (1.0.4)
     safety_net_attestation (0.4.0)
       jwt (~> 2.0)
@@ -1348,7 +1357,7 @@ GEM
       sidekiq (>= 3.0)
     set (1.0.1)
     settingslogic (2.0.9)
-    sexp_processor (4.15.1)
+    sexp_processor (4.16.1)
     shellany (0.0.1)
     shoulda-matchers (5.1.0)
       activesupport (>= 5.2.0)
@@ -1412,9 +1421,10 @@ GEM
       actionpack (>= 5.2)
       activesupport (>= 5.2)
       sprockets (>= 3.0.0)
-    sqlite3 (1.4.2)
+    sqlite3 (1.6.0)
+      mini_portile2 (~> 2.8.0)
     ssh_data (1.3.0)
-    ssrf_filter (1.0.7)
+    ssrf_filter (1.0.8)
     stackprof (0.2.21)
     state_machines (0.5.0)
     state_machines-activemodel (0.8.0)
@@ -1465,6 +1475,7 @@ GEM
     tpm-key_attestation (0.9.0)
       bindata (~> 2.4)
       openssl-signature_algorithm (~> 0.4.0)
+    trailblazer-option (0.1.2)
     train-core (3.4.9)
       addressable (~> 2.5)
       ffi (!= 1.13.0)
@@ -1477,7 +1488,7 @@ GEM
       nokogiri (>= 1.7.0, <= 2.0)
     tty-color (0.6.0)
     tty-cursor (0.7.1)
-    tty-markdown (0.7.0)
+    tty-markdown (0.7.1)
       kramdown (>= 1.16.2, < 3.0)
       pastel (~> 0.8)
       rouge (~> 3.14)
@@ -1494,18 +1505,18 @@ GEM
     tty-screen (0.8.1)
     typhoeus (1.4.0)
       ethon (>= 0.9.0)
-    tzinfo (2.0.5)
+    tzinfo (2.0.6)
       concurrent-ruby (~> 1.0)
     u2f (0.2.1)
     uber (0.1.0)
-    undercover (0.4.4)
+    undercover (0.4.5)
       imagen (>= 0.1.8)
       rainbow (>= 2.1, < 4.0)
-      rugged (>= 0.27, < 1.3)
+      rugged (>= 0.27, < 1.6)
     unf (0.1.4)
       unf_ext
     unf_ext (0.0.8.2)
-    unicode-display_width (1.8.0)
+    unicode-display_width (2.4.2)
     unicode_utils (1.4.0)
     uniform_notifier (1.16.0)
     unleash (3.2.2)
@@ -1596,8 +1607,8 @@ DEPENDENCIES
   autoprefixer-rails (= 10.2.5.1)
   awesome_print
   aws-sdk-cloudformation (~> 1)
-  aws-sdk-core (~> 3.168.4)
-  aws-sdk-s3 (~> 1.117.2)
+  aws-sdk-core (~> 3.170.0)
+  aws-sdk-s3 (~> 1.119.1)
   babosa (~> 1.0.4)
   base32 (~> 0.3.0)
   batch-loader (~> 2.0.1)
@@ -1605,8 +1616,7 @@ DEPENDENCIES
   benchmark-ips (~> 2.3.0)
   benchmark-memory (~> 0.1)
   better_errors (~> 2.9.1)
-  bootsnap (~> 1.15.0)
-  bootstrap_form (~> 4.2.0)
+  bootsnap (~> 1.16.0)
   browser (~> 5.3.1)
   bullet (~> 7.0.2)
   bundler-audit (~> 0.7.0.1)
@@ -1652,35 +1662,43 @@ DEPENDENCIES
   flipper (~> 0.25.0)
   flipper-active_record (~> 0.25.0)
   flipper-active_support_cache_store (~> 0.25.0)
-  fog-aliyun (~> 0.3)
+  fog-aliyun (~> 0.4)
   fog-aws (~> 3.15)
   fog-core (= 2.1.0)
   fog-google (~> 1.19)
   fog-local (~> 0.8)
   fog-openstack (~> 1.0)
   fog-rackspace (~> 0.1.1)
-  fugit (~> 1.2.1)
+  fugit (~> 1.8.1)
   fuubar (~> 2.2.0)
   gettext (~> 3.3)
   gettext_i18n_rails (~> 1.8.0)
   gettext_i18n_rails_js (~> 1.3)
-  gitaly (~> 15.5.2)
+  gitaly (~> 15.9.0.pre.rc3)
   gitlab-chronic (~> 0.10.5)
-  gitlab-dangerfiles (~> 3.6.4)
+  gitlab-dangerfiles (~> 3.7.0)
   gitlab-experiment (~> 0.7.1)
-  gitlab-fog-azure-rm (~> 1.4.0)
-  gitlab-labkit (~> 0.29.0)
+  gitlab-fog-azure-rm (~> 1.7.0)
+  gitlab-labkit (~> 0.30.1)
   gitlab-license (~> 2.2.1)
   gitlab-mail_room (~> 0.0.9)
-  gitlab-markup (~> 1.8.0)
+  gitlab-markup (~> 1.9.0)
   gitlab-net-dns (~> 0.9.1)
-  gitlab-omniauth-openid-connect (~> 0.10.0)
   gitlab-sidekiq-fetcher (= 0.9.0)
-  gitlab-styles (~> 9.2.0)
+  gitlab-styles (~> 10.0.0)
   gitlab_chronic_duration (~> 0.10.6.2)
   gitlab_omniauth-ldap (~> 2.2.0)
   gon (~> 6.4.0)
-  google-api-client (~> 0.33)
+  google-apis-cloudbilling_v1 (~> 0.21.0)
+  google-apis-cloudresourcemanager_v1 (~> 0.31.0)
+  google-apis-compute_v1 (~> 0.57.0)
+  google-apis-container_v1 (~> 0.43.0)
+  google-apis-container_v1beta1 (~> 0.43.0)
+  google-apis-core (~> 0.10.0)
+  google-apis-iam_v1 (~> 0.36.0)
+  google-apis-serviceusage_v1 (~> 0.28.0)
+  google-apis-sqladmin_v1beta4 (~> 0.41.0)
+  google-cloud-storage (~> 1.44.0)
   google-protobuf (~> 3.21, >= 3.21.12)
   gpgme (~> 2.0.22)
   grape (~> 1.5.2)
@@ -1695,7 +1713,7 @@ DEPENDENCIES
   graphql (~> 1.13.12)
   graphql-docs (~> 2.1.0)
   grpc (~> 1.42.0)
-  gssapi
+  gssapi (~> 1.3.1)
   guard-rspec
   haml_lint (~> 0.40.0)
   hamlit (~> 2.15.0)
@@ -1712,7 +1730,7 @@ DEPENDENCIES
   ipynbdiff!
   jira-ruby (~> 2.1.4)
   js_regex (~> 3.8)
-  json (~> 2.5.1)
+  json (~> 2.6.3)
   json_schemer (~> 0.2.18)
   jwt (~> 2.1.0)
   kaminari (~> 1.2.2)
@@ -1720,7 +1738,7 @@ DEPENDENCIES
   knapsack (~> 1.21.1)
   kramdown (~> 2.3.1)
   kubeclient (~> 4.9.3)!
-  lefthook (~> 1.2.7)
+  lefthook (~> 1.2.9)
   letter_opener_web (~> 2.0.0)
   license_finder (~> 7.0)
   licensee (~> 9.15)
@@ -1728,7 +1746,7 @@ DEPENDENCIES
   lockbox (~> 1.1.1)
   lograge (~> 0.5)
   loofah (~> 2.19.1)
-  lookbook (~> 1.4, >= 1.4.5)
+  lookbook (~> 1.5, >= 1.5.3)
   lru_redux
   mail (= 2.7.1)
   mail-smtp_pool (~> 0.1.0)!
@@ -1740,17 +1758,16 @@ DEPENDENCIES
   multi_json (~> 1.14.1)
   net-ldap (~> 0.17.1)
   net-ntp
-  nokogiri (~> 1.13.10)
+  nokogiri (~> 1.14.1)
   oauth2 (~> 2.0)
   octokit (~> 4.15)
   ohai (~> 16.10)
   oj (~> 3.13.21)
   oj-introspect (~> 0.7)
   omniauth (~> 2.1.0)
-  omniauth-alicloud (~> 2.0.0)
+  omniauth-alicloud (~> 2.0.1)
   omniauth-atlassian-oauth2 (~> 0.2.0)
   omniauth-auth0 (~> 2.0.0)
-  omniauth-authentiq (~> 0.3.3)
   omniauth-azure-activedirectory-v2 (~> 2.0)
   omniauth-azure-oauth2 (~> 0.0.9)!
   omniauth-cas3 (~> 1.1.4)!
@@ -1762,9 +1779,10 @@ DEPENDENCIES
   omniauth-oauth2-generic (~> 0.2.2)
   omniauth-salesforce (~> 1.0.5)!
   omniauth-saml (~> 2.0.0)
-  omniauth-shibboleth (~> 1.3.0)
   omniauth-twitter (~> 1.4)
   omniauth_crowd (~> 2.4.0)!
+  omniauth_openid_connect (~> 0.6.1)
+  openid_connect (= 1.3.0)
   openssl (= 2.2.2)
   org-ruby (~> 0.9.12)
   pact (~> 1.63)
@@ -1772,13 +1790,13 @@ DEPENDENCIES
   parslet (~> 1.8)
   peek (~> 1.1)
   pg (~> 1.4.5)
-  pg_query (~> 2.2)
+  pg_query (~> 2.2, >= 2.2.1)
   png_quantizator (~> 0.2.1)
   premailer-rails (~> 1.10.3)
   prometheus-client-mmap (~> 0.17)
   pry-byebug
   pry-rails (~> 0.3.9)
-  pry-shell (~> 0.5.1)
+  pry-shell (~> 0.6.1)
   puma (~> 5.6.5)
   puma_worker_killer (~> 0.3.1)
   rack (~> 2.2.6, >= 2.2.6.2)
@@ -1787,7 +1805,7 @@ DEPENDENCIES
   rack-oauth2 (~> 1.21.3)
   rack-proxy (~> 0.7.6)
   rack-timeout (~> 0.6.3)
-  rails (~> 6.1.6.1)
+  rails (~> 6.1.7.2)
   rails-controller-testing
   rails-i18n (~> 7.0)
   rainbow (~> 3.0)
@@ -1806,7 +1824,7 @@ DEPENDENCIES
   rqrcode-rails3 (~> 0.1.7)
   rspec-benchmark (~> 0.6.0)
   rspec-parameterized
-  rspec-rails (~> 5.0.1)
+  rspec-rails (~> 6.0.1)
   rspec-retry (~> 0.6.1)
   rspec_junit_formatter
   rspec_profiling (~> 0.0.6)
@@ -1815,9 +1833,9 @@ DEPENDENCIES
   ruby-magic (~> 0.5)
   ruby-progressbar (~> 1.10)
   ruby-saml (~> 1.13.0)
-  ruby_parser (~> 3.15)
+  ruby_parser (~> 3.19)
   rubyzip (~> 2.3.2)
-  rugged (~> 1.2)
+  rugged (~> 1.5)
   sanitize (~> 6.0)
   sassc-rails (~> 2.1.0)
   sd_notify (~> 0.1.0)
@@ -1875,4 +1893,4 @@ DEPENDENCIES
   yajl-ruby (~> 1.4.3)
 
 BUNDLED WITH
-   2.3.26
+   2.4.6
diff --git a/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix b/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
index 269318a0961..3e3e5d0d328 100644
--- a/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
+++ b/pkgs/applications/version-management/gitlab/rubyEnv/gemset.nix
@@ -17,10 +17,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "06wn3yiada1hxnhnq6ww118k6xckrkh9m9z4h5l04cph3ha7kw0i";
+      sha256 = "1y9lj7ra9xf4q4mryydmd498grsndqmz1zwasb4ai9gv62igvw3s";
       type = "gem";
     };
-    version = "6.1.6.1";
+    version = "6.1.7.2";
   };
   actionmailbox = {
     dependencies = ["actionpack" "activejob" "activerecord" "activestorage" "activesupport" "mail"];
@@ -28,10 +28,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1lh3dmr84jw0ihqdgqy7758gd12v1pr4pz394vif97accgz1dk54";
+      sha256 = "0bzacsr93sxv90nljv3ajw54nmyz1v9k2v2wx1pxsi0jasqg5fvn";
       type = "gem";
     };
-    version = "6.1.6.1";
+    version = "6.1.7.2";
   };
   actionmailer = {
     dependencies = ["actionpack" "actionview" "activejob" "activesupport" "mail" "rails-dom-testing"];
@@ -39,10 +39,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "19qjvs621hrvgyv08wsc80fv39402fvsxdsc602xgvvm9bzlp5hk";
+      sha256 = "1rjddp1a5l4amsbibhnf7g2rb69qvq0nc0a2dvr6r57bpkf82hj4";
       type = "gem";
     };
-    version = "6.1.6.1";
+    version = "6.1.7.2";
   };
   actionpack = {
     dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"];
@@ -50,10 +50,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1m5x42s72mik9xkrgbway4ra139k71p2dfxcvg5gwdmac8maiq7k";
+      sha256 = "0c2y6sqpan68lrx78pvhbxb2917m75s808r6cg1kyygwvg31niza";
       type = "gem";
     };
-    version = "6.1.6.1";
+    version = "6.1.7.2";
   };
   actiontext = {
     dependencies = ["actionpack" "activerecord" "activestorage" "activesupport" "nokogiri"];
@@ -61,10 +61,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1h7s384cvzd4rz4k653gwjvxlb1b4cxn2kz7q3rvvx5nd5kvj9pz";
+      sha256 = "1jx8wi961i34v7x0j3h4wjw3qbyx9bkzb598vg42kidzk2f90dyj";
       type = "gem";
     };
-    version = "6.1.6.1";
+    version = "6.1.7.2";
   };
   actionview = {
     dependencies = ["activesupport" "builder" "erubi" "rails-dom-testing" "rails-html-sanitizer"];
@@ -72,10 +72,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0syh8jwih5qvv87zfyzl37rz6sc1prhy6gia95bn76zyqk9cfzx8";
+      sha256 = "10g5gk8h4mfhvgqylzbf591fqf5p78ca35cb97p9bclpv9jfy0za";
       type = "gem";
     };
-    version = "6.1.6.1";
+    version = "6.1.7.2";
   };
   activejob = {
     dependencies = ["activesupport" "globalid"];
@@ -83,21 +83,21 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0rfvn1m7c21fm5hq6262a76snaja9mb0jfl47fvsmaiikm4y9zly";
+      sha256 = "0ililjwy4x52a6x5fidh1iyllf6vx49nz93fd2hxypc5bpryx9mz";
       type = "gem";
     };
-    version = "6.1.6.1";
+    version = "6.1.7.2";
   };
   activemodel = {
     dependencies = ["activesupport"];
-    groups = ["default" "test"];
+    groups = ["default" "development" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1qm3whcaiv5kkgp6plyxi6xa6n3sap18m6w1lfwvr93xb8v57693";
+      sha256 = "0nn17y72fhsynwn11bqg75bazqp6r1g8mpwwyv64harwvh3fh5qj";
       type = "gem";
     };
-    version = "6.1.6.1";
+    version = "6.1.7.2";
   };
   activerecord = {
     dependencies = ["activemodel" "activesupport"];
@@ -105,10 +105,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1c6hcy2affwkkggd49v1g1j6ahijikbcxrcksngm9silmc24ixw2";
+      sha256 = "1k69m3b0lb4jx20jx8vsvdqm1ki1r6riq9haabyddkcpvmgz1wh7";
       type = "gem";
     };
-    version = "6.1.6.1";
+    version = "6.1.7.2";
   };
   activerecord-explain-analyze = {
     dependencies = ["activerecord" "pg"];
@@ -127,10 +127,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1idgd8r1hlkih8kyfn38z7kxqnr40s7as130cwa6x939b8slrgrz";
+      sha256 = "0c3cvc01azfkccg5hsl96wafsxb5hf1nva3cn8rif2mlwx17p8n3";
       type = "gem";
     };
-    version = "6.1.6.1";
+    version = "6.1.7.2";
   };
   activesupport = {
     dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo" "zeitwerk"];
@@ -138,10 +138,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0vb0xi7yvgfqky9h4clyncb886mr1wvz9amk7d9ffmgpwrpzvjaz";
+      sha256 = "14pjq2k761qaywaznpqq8ziivjk2ks1ma2cjwdflkxqgndxjmsr2";
       type = "gem";
     };
-    version = "6.1.6.1";
+    version = "6.1.7.2";
   };
   acts-as-taggable-on = {
     dependencies = ["activerecord"];
@@ -185,6 +185,17 @@ src:
     };
     version = "3.0.0";
   };
+  aliyun-sdk = {
+    dependencies = ["nokogiri" "rest-client"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "17avsza5r4f6d0f2ajgy6clmasrxs7jd16hz7ljq502jkczmv4b5";
+      type = "gem";
+    };
+    version = "0.8.0";
+  };
   android_key_attestation = {
     groups = ["default"];
     platforms = [];
@@ -368,10 +379,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0a4inr58vqzqb6g4j09pch55xyhj4kbbl4drsk1apfwhakc70vpr";
+      sha256 = "0j579s8y4ppgcxvvsxwbmisplgbi6l09jc4v593y17vrnbfgqcix";
       type = "gem";
     };
-    version = "1.674.0";
+    version = "1.703.0";
   };
   aws-sdk-cloudformation = {
     dependencies = ["aws-sdk-core" "aws-sigv4"];
@@ -390,10 +401,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "131acgw2hi893n0dfbczs42bkc41afhyrmd9w8zx5y8r1k5zd6rc";
+      sha256 = "0zc4zhv2wq7s5p8c9iaplama1lpg2kwldg81j83c8w4xydf1wd2r";
       type = "gem";
     };
-    version = "3.168.4";
+    version = "3.170.0";
   };
   aws-sdk-kms = {
     dependencies = ["aws-sdk-core" "aws-sigv4"];
@@ -401,10 +412,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0ajp7yvnf95d60xmg618xznfwsy8h1vrkzj33r1bsf2gsfp50vzy";
+      sha256 = "070s86pxrbq98iddq6shdq7g0lrzgsdqnsnc5l4kygvqimliq4dr";
       type = "gem";
     };
-    version = "1.61.0";
+    version = "1.62.0";
   };
   aws-sdk-s3 = {
     dependencies = ["aws-sdk-core" "aws-sdk-kms" "aws-sigv4"];
@@ -412,10 +423,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1xpb8c8zw1c0grbw1rcc0ynlys1301vm9kkqy4ls3i2zqk5v6n91";
+      sha256 = "1rpnlzsl52znhcki13jkwdshgwf51pn26267481f4fa842gr7xgp";
       type = "gem";
     };
-    version = "1.117.2";
+    version = "1.119.1";
   };
   aws-sigv4 = {
     dependencies = ["aws-eventstream"];
@@ -598,21 +609,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1ln89f9ypzincd5hqgmzd5vvfgf7fgir56v1spsri40ma88vnipj";
+      sha256 = "1vcg52gwl64xhhal6kwk1pc01y1klzdlnv1awyk89kb91z010x7q";
       type = "gem";
     };
-    version = "1.15.0";
-  };
-  bootstrap_form = {
-    dependencies = ["actionpack" "activemodel"];
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "044pi097jwh3z68g1zfmbcl9xchqfcsls1j1nvx1bkyj034v6y7m";
-      type = "gem";
-    };
-    version = "4.2.0";
+    version = "1.16.0";
   };
   browser = {
     groups = ["default"];
@@ -708,10 +708,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "055i3ybjv9n9hqaazxn3d9ibqhlwh93d4hdlwbpjjfy8qbrz6hiw";
+      sha256 = "1w8k7bbwknqmq64mygl2a137vx3cs8xrjmdp8l3whm6f5vg480hg";
       type = "gem";
     };
-    version = "1.3.2";
+    version = "1.3.3";
   };
   cbor = {
     groups = ["default"];
@@ -866,10 +866,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0s4fpn3mqiizpmpy2a24k4v365pv75y50292r8ajrv4i1p5b2k14";
+      sha256 = "1qnsflsbjj38im8xq35g0vihlz96h09wjn2dad5g543l3vvrkrx5";
       type = "gem";
     };
-    version = "1.1.10";
+    version = "1.2.0";
   };
   connection_pool = {
     groups = ["default"];
@@ -1040,16 +1040,6 @@ src:
     };
     version = "0.0.20";
   };
-  declarative-option = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1g4ibxq566f1frnhdymzi9hxxcm4g2gw4n21mpjk2mhwym4q6l0p";
-      type = "gem";
-    };
-    version = "0.1.0";
-  };
   declarative_policy = {
     groups = ["default"];
     platforms = [];
@@ -1165,6 +1155,17 @@ src:
     };
     version = "3.4.2";
   };
+  digest-crc = {
+    dependencies = ["rake"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1czaak53w8n13y1fr0q23gp0fhklvxjac5n562qj3xk6sh5ad0x2";
+      type = "gem";
+    };
+    version = "0.6.4";
+  };
   discordrb-webhooks = {
     dependencies = ["rest-client"];
     groups = ["default"];
@@ -1435,10 +1436,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "11bz1v1cxabm8672gabrw542zyg51dizlcvdck6vvwzagxbjv9zx";
+      sha256 = "08s75vs9cxlc4r1q2bjg4br8g9wc5lc5x5vl0vv4zq5ivxsdpgi7";
       type = "gem";
     };
-    version = "1.11.0";
+    version = "1.12.0";
   };
   escape_utils = {
     groups = ["default" "development" "test"];
@@ -1728,10 +1729,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "05df0w58w748n3bwcb5cbbh6l203hwl6k59vl6p3qfq0bay5s28d";
+      sha256 = "112gsrqah2w03kgi9mjsn6hl74mrwckphf223h36iayc4djf4lq2";
       type = "gem";
     };
-    version = "2.1.0";
+    version = "2.3.0";
   };
   ffaker = {
     groups = ["development" "test"];
@@ -1828,15 +1829,15 @@ src:
     version = "0.25.0";
   };
   fog-aliyun = {
-    dependencies = ["fog-core" "fog-json" "ipaddress" "xml-simple"];
+    dependencies = ["addressable" "aliyun-sdk" "fog-core" "fog-json" "ipaddress" "xml-simple"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1vl5zf9wr6qwm1awxscyifvrrfqnyacidxgzhkba2wqlgizk3anh";
+      sha256 = "0f6cwnq4vq628lgv1wn7fzmwgcpv840zbmcwpfpiwy7b9dh388wg";
       type = "gem";
     };
-    version = "0.3.3";
+    version = "0.4.0";
   };
   fog-aws = {
     dependencies = ["fog-core" "fog-json" "fog-xml"];
@@ -1942,10 +1943,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0idp3hcg50rd7nh8lywyk39s40wgq7axc9nc64si0saf3whmifm0";
+      sha256 = "1cm2lrvhrpqq19hbdsxf4lq2nkb2qdldbdxh3gvi15l62dlb5zqq";
       type = "gem";
     };
-    version = "1.2.3";
+    version = "1.8.1";
   };
   fuubar = {
     dependencies = ["rspec-core" "ruby-progressbar"];
@@ -1978,16 +1979,6 @@ src:
     };
     version = "3.0.1";
   };
-  gems = {
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1w26k4db8yj6x1gpxvh1rma4p36hz61xkk7kjf0z61nrajyp8g9l";
-      type = "gem";
-    };
-    version = "1.2.0";
-  };
   get_process_mem = {
     dependencies = ["ffi"];
     groups = ["default" "puma" "test"];
@@ -2049,10 +2040,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "10bq1l9445b9ff921kyayrn5w1b0f7qm1sjia3wmnl54jq2vxfk2";
+      sha256 = "1gja1b2zirv1clavlg6c0c3xc0z2si2xvxcp9cd165q4lwh47ika";
       type = "gem";
     };
-    version = "15.5.2";
+    version = "15.9.0.pre.rc3";
   };
   gitlab = {
     dependencies = ["httparty" "terminal-table"];
@@ -2082,10 +2073,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0v3m056hpds46byqsacvf4y4xgikgm9ngmz0xlrz57il812a4kl6";
+      sha256 = "0kg5nyp1lfqlksrh4dlnq8a4nhdbhhiwm4hif2smlmqcwr1bri9m";
       type = "gem";
     };
-    version = "3.6.4";
+    version = "3.7.0";
   };
   gitlab-experiment = {
     dependencies = ["activesupport" "request_store"];
@@ -2104,10 +2095,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0zpbw2i1igv6ywqikip64w2xa5sqb9vg98qli0hab2h25g1n6hdg";
+      sha256 = "1hix4q2ibrq0r97bn492vzxj4fgijc209kbak8jlrbal7ja6g74n";
       type = "gem";
     };
-    version = "1.4.0";
+    version = "1.7.0";
   };
   gitlab-labkit = {
     dependencies = ["actionpack" "activesupport" "grpc" "jaeger-client" "opentracing" "pg_query" "redis"];
@@ -2115,10 +2106,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "09xlv72nbys9a5iqvhxfzdr7vy3s3m2a6ixqb9vq71k925faq6gb";
+      sha256 = "04xi2b9wna2z7qw6cdlypfibp5wnf30xn80dlpbdz0sc063bvvdx";
       type = "gem";
     };
-    version = "0.29.0";
+    version = "0.30.1";
   };
   gitlab-license = {
     groups = ["default"];
@@ -2145,10 +2136,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0yvh8vv9kgd06hc8c1pl2hq56w56vr0n7dr5mz19fx4p2v89y7xb";
+      sha256 = "1m3ypny84jyvlxf060p3q3d8pb4yihxa2br5hh012bgc11d09nky";
       type = "gem";
     };
-    version = "1.8.1";
+    version = "1.9.0";
   };
   gitlab-net-dns = {
     groups = ["default"];
@@ -2160,17 +2151,6 @@ src:
     };
     version = "0.9.1";
   };
-  gitlab-omniauth-openid-connect = {
-    dependencies = ["addressable" "omniauth" "openid_connect"];
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0lqizfap12ica5c6q74ldarzmbpmhgl156bap9xhamrlm4za4i7a";
-      type = "gem";
-    };
-    version = "0.10.0";
-  };
   gitlab-sidekiq-fetcher = {
     dependencies = ["json" "sidekiq"];
     groups = ["default"];
@@ -2183,15 +2163,15 @@ src:
     version = "0.9.0";
   };
   gitlab-styles = {
-    dependencies = ["rubocop" "rubocop-gitlab-security" "rubocop-graphql" "rubocop-performance" "rubocop-rails" "rubocop-rspec"];
+    dependencies = ["rubocop" "rubocop-graphql" "rubocop-performance" "rubocop-rails" "rubocop-rspec"];
     groups = ["development" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "196fhlbhhanpbn5iriccp7m04xgkq7swyk07im50q7z05pxyf1ki";
+      sha256 = "1w0kd66l92ckv5z3gqfifhkny8ipxx4cckpdyign0lgknpvj06wa";
       type = "gem";
     };
-    version = "9.2.0";
+    version = "10.0.0";
   };
   gitlab_chronic_duration = {
     dependencies = ["numerizer"];
@@ -2237,16 +2217,27 @@ src:
     };
     version = "6.4.0";
   };
-  google-api-client = {
-    dependencies = ["google-apis-core" "google-apis-generator"];
+  google-apis-cloudbilling_v1 = {
+    dependencies = ["google-apis-core"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00hy54g38rwz71l5gh41zm7v9gywrz7mh6m1z3bwrqh98ixq8bga";
+      type = "gem";
+    };
+    version = "0.21.0";
+  };
+  google-apis-cloudresourcemanager_v1 = {
+    dependencies = ["google-apis-core"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1zypv7qz37ql5fqnlmk39krbazzshjzsw44syg7p0ap03zr6w021";
+      sha256 = "1gzv5svbj62qcdw5ljva0sh8wifjx9wwx00kfj9bbff052i7597h";
       type = "gem";
     };
-    version = "0.53.0";
+    version = "0.31.0";
   };
   google-apis-compute_v1 = {
     dependencies = ["google-apis-core"];
@@ -2254,32 +2245,43 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0jsz21m0mkjhn6yik2rshgg8i17sdwm8rmq0pfhfs6pwkv7kg5b2";
+      sha256 = "0s40lzp1nvnpda45lvybira8gll8snkdd4v3x7sl8fmwi9a18ia0";
       type = "gem";
     };
-    version = "0.53.0";
+    version = "0.57.0";
   };
-  google-apis-core = {
-    dependencies = ["addressable" "googleauth" "httpclient" "mini_mime" "representable" "retriable" "rexml" "webrick"];
+  google-apis-container_v1 = {
+    dependencies = ["google-apis-core"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0d5h7sm8asxg252dnkk91sq51ynk1m06i15an6s04ihsi5ja64n0";
+      sha256 = "0914hq1wcnvg68vcdwpq5kxnm5h38ay7rrdsrzlqn9i7rca2a7bq";
       type = "gem";
     };
-    version = "0.9.1";
+    version = "0.43.0";
   };
-  google-apis-discovery_v1 = {
+  google-apis-container_v1beta1 = {
     dependencies = ["google-apis-core"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "05as93y4c613dg70xpyzs18a18vqm0bkl2slv3myb1382bzcqnif";
+      sha256 = "1l0k0davbaaqx76jy9vb6vk6j0l9hl68jmkgn7m6r4nvi37qzi38";
       type = "gem";
     };
-    version = "0.12.0";
+    version = "0.43.0";
+  };
+  google-apis-core = {
+    dependencies = ["addressable" "googleauth" "httpclient" "mini_mime" "representable" "retriable" "rexml" "webrick"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "02fqn9505q3d3m6lpa5ic2j3pa81k2x440qyw2fairsidrms5jk8";
+      type = "gem";
+    };
+    version = "0.10.0";
   };
   google-apis-dns_v1 = {
     dependencies = ["google-apis-core"];
@@ -2292,16 +2294,16 @@ src:
     };
     version = "0.28.0";
   };
-  google-apis-generator = {
-    dependencies = ["activesupport" "gems" "google-apis-core" "google-apis-discovery_v1" "thor"];
+  google-apis-iam_v1 = {
+    dependencies = ["google-apis-core"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0y8j6bxgl1sxq2n3hslvld09xv6bcympk30if681xci1s6zgwmj6";
+      sha256 = "0rhzka4h1zg83zdyalbic25xbp8wrywsdfi6hdp663axdf3y5dqd";
       type = "gem";
     };
-    version = "0.11.0";
+    version = "0.36.0";
   };
   google-apis-iamcredentials_v1 = {
     dependencies = ["google-apis-core"];
@@ -2336,16 +2338,27 @@ src:
     };
     version = "0.30.0";
   };
+  google-apis-serviceusage_v1 = {
+    dependencies = ["google-apis-core"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0qmh25nvf8f9p9fribm18nszvamilshavrmwyq3xmrs76q17w2sz";
+      type = "gem";
+    };
+    version = "0.28.0";
+  };
   google-apis-sqladmin_v1beta4 = {
     dependencies = ["google-apis-core"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0r8npqk6hsvj31dcfn8y0449gds2v75jkk209r7vyj2mrk6pj0nh";
+      sha256 = "17bljsgmbp80d6wn3wjbzi537a9f5hmcr0zv776z2y8q92v565am";
       type = "gem";
     };
-    version = "0.38.0";
+    version = "0.41.0";
   };
   google-apis-storage_v1 = {
     dependencies = ["google-apis-core"];
@@ -2353,10 +2366,21 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0l6qhspmpgafj7wgwad6j7fxv1kxvim7sxvfyzb6d6chzh3ww6la";
+      sha256 = "17qamcjnf22zvw1g169g8a2gkzdsxx4ij3a4ganihyrcf9r62asj";
       type = "gem";
     };
-    version = "0.20.0";
+    version = "0.19.0";
+  };
+  google-cloud-core = {
+    dependencies = ["google-cloud-env" "google-cloud-errors"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0amp8vd16pzbdrfbp7k0k38rqxpwd88bkyp35l3x719hbb6l85za";
+      type = "gem";
+    };
+    version = "1.6.0";
   };
   google-cloud-env = {
     dependencies = ["faraday"];
@@ -2369,6 +2393,27 @@ src:
     };
     version = "1.6.0";
   };
+  google-cloud-errors = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0jynh1s93nl8njm5l5wcy86pnjmv112cq6m0443s52f04hg6h2s5";
+      type = "gem";
+    };
+    version = "1.3.0";
+  };
+  google-cloud-storage = {
+    dependencies = ["addressable" "digest-crc" "google-apis-iamcredentials_v1" "google-apis-storage_v1" "google-cloud-core" "googleauth" "mini_mime"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1skhlpcykxxzw3050cwngdyc3n746wfx443w1w9chxwjbh2ix6i9";
+      type = "gem";
+    };
+    version = "1.44.0";
+  };
   google-protobuf = {
     groups = ["default"];
     platforms = [];
@@ -2559,10 +2604,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0j93nsf9j57p7x4aafalvjg8hia2mmqv3aky7fmw2ck5yci343ix";
+      sha256 = "1qdfhj12aq8v0y961v4xv96a1y2z80h3xhvzrs9vsfgf884g6765";
       type = "gem";
     };
-    version = "1.2.0";
+    version = "1.3.1";
   };
   guard = {
     dependencies = ["formatador" "listen" "lumberjack" "nenv" "notiffany" "pry" "shellany" "thor"];
@@ -2944,14 +2989,14 @@ src:
     version = "3.8.0";
   };
   json = {
-    groups = ["default"];
+    groups = ["default" "development" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0lrirj0gw420kw71bjjlqkqhqbrplla61gbv1jzgsz6bv90qr3ci";
+      sha256 = "0nalhin1gda4v8ybk6lq8f407cgfrj6qzn234yra4ipkmlbfmal6";
       type = "gem";
     };
-    version = "2.5.1";
+    version = "2.6.3";
   };
   json-jwt = {
     dependencies = ["activesupport" "aes_key_wrap" "bindata" "httpclient"];
@@ -3109,10 +3154,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "18vcakjkb5fhavq9s6j7zwjc14c652361qws5g1slqb300anfww2";
+      sha256 = "07bh4ns9b58nrjjsfx2r69ki56f7nclcczsravkj9ilgw1lagm0z";
       type = "gem";
     };
-    version = "1.2.7";
+    version = "1.2.9";
   };
   letter_opener = {
     dependencies = ["launchy"];
@@ -3238,10 +3283,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1nww5h9frmbjfpfy2nb296vn78xnq1qg0lq3lsn52ky8s8rb65dw";
+      sha256 = "0f4b0bp7y7bw57lfynd5d5kgdn0dqkxl2masyk6hvpl5mxsz83sa";
       type = "gem";
     };
-    version = "1.4.5";
+    version = "1.5.3";
   };
   lru_redux = {
     groups = ["default"];
@@ -3405,10 +3450,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0rapl1sfmfi3bfr68da4ca16yhc0pp93vjwkj7y3rdqrzy3b41hy";
+      sha256 = "1af4yarhbbx62f7qsmgg5fynrik0s36wjy3difkawy536xg343mp";
       type = "gem";
     };
-    version = "2.8.0";
+    version = "2.8.1";
   };
   minitest = {
     groups = ["development" "test"];
@@ -3529,10 +3574,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1szwcm44z5jg1l4dq73zyjw4rjin23ihkhrw5cpcjrb6cg8hd3y7";
+      sha256 = "0dh9xnjs98a2by2rd8jlcmx94miryssk1ral2pji21xbx7i2q2ip";
       type = "gem";
     };
-    version = "0.1.6";
+    version = "0.1.7";
   };
   mustermann = {
     dependencies = ["ruby2_keywords"];
@@ -3664,10 +3709,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0n79k78c5vdcyl0m3y3l5x9kxl6xf5lgriwi2vd665qmdkr01vnk";
+      sha256 = "0qr6psd9qgv83pklpw7cpmshkcasnv8d777ksmvwsacwfvvkmnxj";
       type = "gem";
     };
-    version = "1.13.10";
+    version = "1.14.1";
   };
   notiffany = {
     dependencies = ["nenv" "shellany"];
@@ -3749,10 +3794,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1h2hw0cxs8z6g3bkrsrxmlixcmalnlmj9rzcd8sxaqjs95w4wn7a";
+      sha256 = "0g9ksljmlkg56xz8ddzsjkhjh89jv4hr99k3x7c70a7dcx2s85f4";
       type = "gem";
     };
-    version = "0.7.1";
+    version = "0.7.2";
   };
   omniauth = {
     dependencies = ["hashie" "rack" "rack-protection"];
@@ -3771,10 +3816,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1qsx4ri5rbr68djyqd5523rcyxhzi5v05f66wz0iflyda6fkdkwf";
+      sha256 = "1ls87xxzhh1bbm4iqz221hz57y7iq1ifn33i7vvx1d02r9dl4k5i";
       type = "gem";
     };
-    version = "2.0.0";
+    version = "2.0.1";
   };
   omniauth-atlassian-oauth2 = {
     dependencies = ["omniauth" "omniauth-oauth2"];
@@ -3798,17 +3843,6 @@ src:
     };
     version = "2.0.0";
   };
-  omniauth-authentiq = {
-    dependencies = ["jwt" "omniauth-oauth2"];
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0k7vajxwplsp188xfj4mi9iqbc7f7djqh02by4mphc51hl87kcqi";
-      type = "gem";
-    };
-    version = "0.3.3";
-  };
   omniauth-azure-activedirectory-v2 = {
     dependencies = ["omniauth-oauth2"];
     groups = ["default"];
@@ -3948,17 +3982,6 @@ src:
     };
     version = "2.0.0";
   };
-  omniauth-shibboleth = {
-    dependencies = ["omniauth"];
-    groups = ["default"];
-    platforms = [];
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "04yin7j8xpr8llvank3ivzahqkc6ss5bppc7q6znzdswxmf75fxh";
-      type = "gem";
-    };
-    version = "1.3.0";
-  };
   omniauth-twitter = {
     dependencies = ["omniauth-oauth" "rack"];
     groups = ["default"];
@@ -3980,6 +4003,17 @@ src:
     };
     version = "2.4.0";
   };
+  omniauth_openid_connect = {
+    dependencies = ["omniauth" "openid_connect"];
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "08yl0x203k6nrshc70zawfqh79ap1c3fyka9zwwy61cvn7sih4sz";
+      type = "gem";
+    };
+    version = "0.6.1";
+  };
   open4 = {
     groups = ["default" "development"];
     platforms = [];
@@ -4068,10 +4102,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "12fli64wz5j9868gpzv5wqsingk1jk457qyqksv9ksmq9b0zpc9x";
+      sha256 = "0gwd20smyhxbm687vdikfh1gpi96h8qb1x28s2pdcysf6dm6v0ap";
       type = "gem";
     };
-    version = "1.1.1";
+    version = "1.1.4";
   };
   pact = {
     dependencies = ["pact-mock_service" "pact-support" "rack-test" "rspec" "term-ansicolor" "thor" "webrick"];
@@ -4122,10 +4156,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "17qfhjvnr9q2gp1gfdl6kndy2mb6qdwsls3vnjhb1h8ddimdm4s5";
+      sha256 = "0zk8mdyr0322r11d63rcp5jhz4lakxilhvyvdv0ql5dw4lb83623";
       type = "gem";
     };
-    version = "3.1.3.0";
+    version = "3.2.0.0";
   };
   parslet = {
     groups = ["default" "development" "test"];
@@ -4175,10 +4209,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0l79y41nwwacabj61jkbh4r7haajaf8y4bn5pihh0m1g8547b8w4";
+      sha256 = "1slcbzzqdv6104l5h8ql6kj43zmnm16g2dav8bc8dasfpwmrg1k0";
       type = "gem";
     };
-    version = "2.2.0";
+    version = "2.2.1";
   };
   plist = {
     groups = ["default"];
@@ -4257,17 +4291,13 @@ src:
   pry = {
     dependencies = ["coderay" "method_source"];
     groups = ["default" "development" "test"];
-    platforms = [{
-      engine = "maglev";
-    } {
-      engine = "ruby";
-    }];
+    platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0iyw4q4an2wmk8v5rn2ghfy2jaz9vmw2nk8415nnpx2s866934qk";
+      sha256 = "0k9kqkd9nps1w1r1rb7wjr31hqzkka2bhi8b518x78dcxppm9zn4";
       type = "gem";
     };
-    version = "0.13.1";
+    version = "0.14.2";
   };
   pry-byebug = {
     dependencies = ["byebug" "pry"];
@@ -4275,10 +4305,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "096y5vmzpyy4x9h4ky4cs4y7d19vdq9vbwwrqafbh5gagzwhifiv";
+      sha256 = "1y41al94ks07166qbp2200yzyr5y60hm7xaiw4lxpgsm4b1pbyf8";
       type = "gem";
     };
-    version = "3.9.0";
+    version = "3.10.1";
   };
   pry-rails = {
     dependencies = ["pry"];
@@ -4297,10 +4327,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0zb7mfj07vafp2h3ixz0v5lw1drl379m7yjmdzbgbb3p0vih141b";
+      sha256 = "031nacdzds5821p384qzhliim1h6d60nc63ml572gpz4zwynp6m9";
       type = "gem";
     };
-    version = "0.5.1";
+    version = "0.6.1";
   };
   public_suffix = {
     groups = ["danger" "default" "development" "test"];
@@ -4359,10 +4389,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0p685i23lr8pl7l09g9l2mcj615fr7g33w3mkcr472lcg34nq8n8";
+      sha256 = "09jgz6r0f7v84a7jz9an85q8vvmp743dqcsdm3z9c8rqcqv6pljq";
       type = "gem";
     };
-    version = "1.6.1";
+    version = "1.6.2";
   };
   rack = {
     groups = ["default" "development" "test"];
@@ -4467,10 +4497,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "11injrn9khwkw3ydb4lbgabi5fznml32nm44ym0v6gwilchlj0hp";
+      sha256 = "1b7ggchi3d7pwzmj8jn9fhbazr5fr4dy304f0hz7kqbg23s9c1ym";
       type = "gem";
     };
-    version = "6.1.6.1";
+    version = "6.1.7.2";
   };
   rails-controller-testing = {
     dependencies = ["actionpack" "actionview" "activesupport"];
@@ -4500,10 +4530,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1mcb75qvldfz6zsr4inrfx7dmb0ngxy507awx28khqmnla3hqpc9";
+      sha256 = "0ygav4xyq943qqyhjmi3mzirn180j565mc9h5j4css59x1sn0cmz";
       type = "gem";
     };
-    version = "1.4.4";
+    version = "1.5.0";
   };
   rails-i18n = {
     dependencies = ["i18n" "railties"];
@@ -4522,10 +4552,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0cwpjj9inak65cvs9wyhpjdsx1xajzbiy25p397a8kmyvkrcvzms";
+      sha256 = "0mm3nf3y715ln6v8k6g4351ggkr1bcwc5637vr979yw8vsmdi42k";
       type = "gem";
     };
-    version = "6.1.6.1";
+    version = "6.1.7.2";
   };
   rainbow = {
     groups = ["coverage" "default" "development" "test"];
@@ -4584,10 +4614,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0p0x2sxm0ar4ywsxp94yh3glawf83bdikdkccpc8zzln5987l9y1";
+      sha256 = "1z0h1x7fpkzxamnvbw1nry64qd6n0nqkwprfair29z94kd3a9vhl";
       type = "gem";
     };
-    version = "0.4.4";
+    version = "0.4.6";
   };
   rchardet = {
     groups = ["default" "development"];
@@ -4645,10 +4675,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0bvk8yyns5s1ls437z719y5sdv9fr8kfs8dmr6g8s761dv5n8zvi";
+      sha256 = "1sg9sbf9pm91l7lac7fs4silabyn0vflxwaa2x3lrzsm0ff8ilca";
       type = "gem";
     };
-    version = "3.5.1";
+    version = "3.6.0";
   };
   RedCloth = {
     groups = ["default"];
@@ -4735,15 +4765,15 @@ src:
     version = "1.0.0";
   };
   representable = {
-    dependencies = ["declarative" "declarative-option" "uber"];
+    dependencies = ["declarative" "trailblazer-option" "uber"];
     groups = ["default"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0qm9rgi1j5a6nv726ka4mmixivlxfsg91h8rpp72wwd4vqbkkm07";
+      sha256 = "1kms3r6w6pnryysnaqqa9fsn0v73zx1ilds9d1c565n3xdzbyafc";
       type = "gem";
     };
-    version = "3.0.4";
+    version = "3.2.0";
   };
   request_store = {
     dependencies = ["rack"];
@@ -4863,14 +4893,14 @@ src:
   };
   rspec = {
     dependencies = ["rspec-core" "rspec-expectations" "rspec-mocks"];
-    groups = ["default" "test"];
+    groups = ["default" "development" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1dwai7jnwmdmd7ajbi2q0k0lx1dh88knv5wl7c34wjmf94yv8w5q";
+      sha256 = "171rc90vcgjl8p1bdrqa92ymrj8a87qf6w20x05xq29mljcigi6c";
       type = "gem";
     };
-    version = "3.10.0";
+    version = "3.12.0";
   };
   rspec-benchmark = {
     dependencies = ["benchmark-malloc" "benchmark-perf" "benchmark-trend" "rspec"];
@@ -4889,10 +4919,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "06wmcjsslx9vmw0bair46551ya8mb76csjyb59fxsmnkkp75jmh0";
+      sha256 = "1ibb81slc35q5yp276sixp3yrvj9q92wlmi1glbnwlk6g49z8rn4";
       type = "gem";
     };
-    version = "3.10.2";
+    version = "3.12.0";
   };
   rspec-expectations = {
     dependencies = ["diff-lcs" "rspec-support"];
@@ -4900,10 +4930,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1sz9bj4ri28adsklnh257pnbq4r5ayziw02qf67wry0kvzazbb17";
+      sha256 = "03ba3lfdsj9zl00v1yvwgcx87lbadf87livlfa5kgqssn9qdnll6";
       type = "gem";
     };
-    version = "3.10.1";
+    version = "3.12.2";
   };
   rspec-mocks = {
     dependencies = ["diff-lcs" "rspec-support"];
@@ -4911,10 +4941,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "02i64ihazgm2dp07y89q1m9pyk724g5n9l83cy21x6snnzcg7xnj";
+      sha256 = "0sq2cc9pm5gq411y7iwfvzbmgv3g91lyf7y7cqn1lr3yf1v122nc";
       type = "gem";
     };
-    version = "3.10.3";
+    version = "3.12.3";
   };
   rspec-parameterized = {
     dependencies = ["binding_ninja" "parser" "proc_to_ast" "rspec" "unparser"];
@@ -4933,10 +4963,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1pj2a9vrkp2xzlq0810q90sdc2zcqc7k92n57hxzhri2vcspy7n6";
+      sha256 = "0d3fnabkaw8n0na2dpnlg2xygggj51djzpj9x6y5rkiqbfyqwv01";
       type = "gem";
     };
-    version = "5.0.1";
+    version = "6.0.1";
   };
   rspec-retry = {
     dependencies = ["rspec-core"];
@@ -4954,10 +4984,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0pjckrh8q6sqxy38xw7f4ziylq1983k84xh927s6352pps68zj35";
+      sha256 = "12y52zwwb3xr7h91dy9k3ndmyyhr3mjcayk0nnarnrzz8yr48kfx";
       type = "gem";
     };
-    version = "3.10.3";
+    version = "3.12.0";
   };
   rspec_junit_formatter = {
     dependencies = ["rspec-core"];
@@ -4987,10 +5017,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1fhyia6fw438ld83vz7vx37zynmzv042saf04ir43ga6sxk4m9k4";
+      sha256 = "1imdfx3mx2p1k7bhc5qm35zvqw12hyz52yy2k9xj3dwrdpzjg0fh";
       type = "gem";
     };
-    version = "1.38.0";
+    version = "1.43.0";
   };
   rubocop-ast = {
     dependencies = ["parser"];
@@ -4998,21 +5028,21 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1qiq3q66w57im0ryrvnd1yq0g2s2safhywpv94441kvc1amayjzy";
+      sha256 = "1pdzabz95hv3z5sfbkfqa8bdybsfl13gv7rjb32v3ss8klq99lbd";
       type = "gem";
     };
-    version = "1.23.0";
+    version = "1.24.1";
   };
-  rubocop-gitlab-security = {
+  rubocop-capybara = {
     dependencies = ["rubocop"];
     groups = ["default" "development" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0v0040kpx46fxz3p7dsdjgvsx89qjhwy17n8vxnqg9a7g1rfvxln";
+      sha256 = "1h4qcjkz0365qlhi7y1ni94qj14k397cad566zygm20p15ypbp5v";
       type = "gem";
     };
-    version = "0.1.1";
+    version = "2.17.0";
   };
   rubocop-graphql = {
     dependencies = ["rubocop"];
@@ -5020,10 +5050,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1669dfwhnfkmz7yz7fl5bhhsdwxivnh2zkp260my7w4yzfckki7i";
+      sha256 = "0hryrjmcl04br06ibjzzrbb2am8ybbhnl2l7w13xl3wz3k4jyjxs";
       type = "gem";
     };
-    version = "0.18.0";
+    version = "0.19.0";
   };
   rubocop-performance = {
     dependencies = ["rubocop" "rubocop-ast"];
@@ -5031,10 +5061,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "00ld0hfm2x5hzms9xhkyjfxs8afsmlg1kf0mklk68cq4wwwihkwd";
+      sha256 = "1n7g0vg06ldjaq4f8c11c7yqy99zng1qdrkkk4kfziippy24yxnc";
       type = "gem";
     };
-    version = "1.15.1";
+    version = "1.16.0";
   };
   rubocop-rails = {
     dependencies = ["activesupport" "rack" "rubocop"];
@@ -5042,21 +5072,21 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1bv51vwcg5m4v35n7653xclw9vv3ifvgbhvc2l79wz2p76ipm1bx";
+      sha256 = "1nxyifly45y7dfiaf0ql8aq7xykrg0sh1l7dxmn3sb9p2jd18140";
       type = "gem";
     };
-    version = "2.17.3";
+    version = "2.17.4";
   };
   rubocop-rspec = {
-    dependencies = ["rubocop"];
+    dependencies = ["rubocop" "rubocop-capybara"];
     groups = ["default" "development" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1rpcww107xq6aj5wkypzjj346jaxhqal33wmhlwb9gc2h425yg5k";
+      sha256 = "1vmmin3ymgq7bhv2hl4pd0zpwawy709p816axc4vi67w61b4bij1";
       type = "gem";
     };
-    version = "2.16.0";
+    version = "2.18.1";
   };
   ruby-fogbugz = {
     dependencies = ["crack" "multipart-post"];
@@ -5127,10 +5157,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0b6l5bxbamaplp904i7f088j806v0pqi0kvhb8xx81v4whl40y2k";
+      sha256 = "15pqbxh15djxpcfkschkwdfhmb3xz7a10zv61qpc7rk3jbfwxbda";
       type = "gem";
     };
-    version = "3.15.0";
+    version = "3.19.2";
   };
   rubyntlm = {
     groups = ["default"];
@@ -5163,14 +5193,14 @@ src:
     version = "2.3.2";
   };
   rugged = {
-    groups = ["default"];
+    groups = ["coverage" "default" "development" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1v846qs2pa3wnzgz95jzbcdrgl9vyjl65qiscw4q4dvm5sb7j68i";
+      sha256 = "0wnfgxx59nq2wpvi8ll7bqw9x99x5hps6i38xdjrwbb5a3896d58";
       type = "gem";
     };
-    version = "1.2.0";
+    version = "1.5.1";
   };
   safe_yaml = {
     groups = ["default" "test"];
@@ -5381,10 +5411,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0p0jj2la8bhb7kgqmqbksaq7idnpgjv6asgfd18d2l3z4kra14cj";
+      sha256 = "1p0r92dyffx6wkgazv3wi4m2yfm39kvvr9cjp2f57az5pgsdpajw";
       type = "gem";
     };
-    version = "4.15.1";
+    version = "4.16.1";
   };
   shellany = {
     groups = ["default" "test"];
@@ -5640,14 +5670,15 @@ src:
     version = "3.4.2";
   };
   sqlite3 = {
+    dependencies = ["mini_portile2"];
     groups = ["default" "test"];
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0lja01cp9xd5m6vmx99zwn4r7s97r1w5cb76gqd8xhbm1wxyzf78";
+      sha256 = "0f24qp50mc1qg8yvv7b3x73mh78d6mzd3b7rqib1ixfbsdiayx1x";
       type = "gem";
     };
-    version = "1.4.2";
+    version = "1.6.0";
   };
   ssh_data = {
     groups = ["default"];
@@ -5664,10 +5695,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0flmg6f444liaxjgdwdrwcfwyyhc54a7wp26kqih2cklwll5gp40";
+      sha256 = "1nx0vap3mrh62v37lr45h77ipp4li8x77v4kxr1psh3yhda9zx03";
       type = "gem";
     };
-    version = "1.0.7";
+    version = "1.0.8";
   };
   stackprof = {
     groups = ["default"];
@@ -5973,6 +6004,16 @@ src:
     };
     version = "0.9.0";
   };
+  trailblazer-option = {
+    groups = ["default"];
+    platforms = [];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "18s48fndi2kfvrfzmq6rxvjfwad347548yby0341ixz1lhpg3r10";
+      type = "gem";
+    };
+    version = "0.1.2";
+  };
   train-core = {
     dependencies = ["addressable" "ffi" "json" "mixlib-shellout" "net-scp" "net-ssh"];
     groups = ["default"];
@@ -6021,10 +6062,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0hp6b6mcawg563098gs93wr49xmg871lkaj8m8gwk2va3zvqw7i5";
+      sha256 = "14nwxdh5yr2xlpgxjqmdgjlrj1h9ddpc1r00sp1jxp1sc7jsqbq6";
       type = "gem";
     };
-    version = "0.7.0";
+    version = "0.7.1";
   };
   tty-prompt = {
     dependencies = ["pastel" "tty-reader"];
@@ -6075,10 +6116,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0rx114mpqnw2k4h98vc0rs0x0bmf0img84yh8mkkjkal07cjydf5";
+      sha256 = "16w2g84dzaf3z13gxyzlzbf748kylk5bdgg3n1ipvkvvqy685bwd";
       type = "gem";
     };
-    version = "2.0.5";
+    version = "2.0.6";
   };
   u2f = {
     groups = ["default"];
@@ -6106,10 +6147,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "19gnc5sr41z3rqbw03k8v3sdpn7rccmgivnc0x5pdq4x7bhcpi31";
+      sha256 = "1fgkhqg7npixc95h060ykbjz0a07ldl3dp9y7wd2qgi5irq5vfr7";
       type = "gem";
     };
-    version = "0.4.4";
+    version = "0.4.5";
   };
   unf = {
     dependencies = ["unf_ext"];
@@ -6137,10 +6178,10 @@ src:
     platforms = [];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1204c1jx2g89pc25qk5150mk7j5k90692i7ihgfzqnad6qni74h2";
+      sha256 = "1gi82k102q7bkmfi7ggn9ciypn897ylln1jk9q67kjhr39fj043a";
       type = "gem";
     };
-    version = "1.8.0";
+    version = "2.4.2";
   };
   unicode_utils = {
     groups = ["default"];