Skip to content

Update asciidoc dependencies for Ruby 3

Matthias Käppler requested to merge 328031-asciidoc-update into master

What does this MR do?

To enable GitLab to run on Ruby 3, we need to update a number of dependencies. Most of those are due to deprecations that would now break, such as keyword arguments. In this case, it should resolve https://gitlab.com/gitlab-org/gitlab/-/jobs/1401110409/artifacts/file/deprecations/lib/gitlab/asciidoc.yml

This MR updates asciidoctor and related dependencies:

I also dropped a monkey patch that according to the code comment is not necessary anymore, since the problem was fixed upstream.

Screenshots or Screencasts (strongly suggested)

Before:

$ bin/spring rspec spec/lib/gitlab/asciidoc_spec.rb
...
1) Gitlab::Asciidoc without project with Kroki enabled converts a graphviz diagram to image
     Failure/Error: raise RaiseDisallowedDeprecation.new(test, current_deprecations)
     
     DeprecationToolkitEnv::DeprecationBehaviors::SelectiveRaise::RaiseDisallowedDeprecation:
       Disallowed deprecations detected while running test #<RSpec::Core::Example "converts a graphviz diagram to image">:
     
       DEPRECATION WARNING: /data/cache/bundle-2.7.2/ruby/2.7.0/gems/asciidoctor-2.0.15/lib/asciidoctor/extensions.rb:1398: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call
       /data/cache/bundle-2.7.2/ruby/2.7.0/gems/asciidoctor-kroki-0.4.0/lib/asciidoctor/extensions/asciidoctor_kroki/extension.rb:22: warning: The called method `initialize' is defined here
        (called from block (2 levels) in render at /home/git/gitlab/lib/gitlab/asciidoc.rb:60)

After:

bin/spring rspec spec/lib/gitlab/asciidoc_spec.rb
...
Finished in 23.91 seconds (files took 1.52 seconds to load)
65 examples, 0 failures

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

Related to #328031 (closed)

Edited by Matthias Käppler

Merge request reports