Skip to content

Feat(ruby): add racc gem as a dependancy for ruby 3.3

John Malc requested to merge dmpe/gitlab-triage:dmpe-master-patch-9404 into master
  • Please check this box if this contribution uses AI-generated content (including content generated by GitLab Duo features) as outlined in the GitLab DCO & CLA

What does this MR do and why?

Currently this package will not work in ruby 3.3+ (tested on fedora 40). Reason being is that racc dependancy is missing from the spec file.

[root@4ca5c4603909 /]# ruby --version
ruby 3.3.1 (2024-04-23 revision c56cd86388) [x86_64-linux]
[root@4ca5c4603909 /]# gem install gitlab-triage
Successfully installed gitlab-triage-1.43.0
Parsing documentation for gitlab-triage-1.43.0
Done installing documentation for gitlab-triage after 0 seconds
1 gem installed
[root@4ca5c4603909 /]# gitlab-triage --version
1.43.0
[root@4ca5c4603909 /]# gitlab-triage
<internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:136:in `require': cannot load such file -- racc/parser.rb (LoadError)
        from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:136:in `require'
        from /usr/local/share/gems/gems/graphql-2.0.30/lib/graphql/language/parser.rb:7:in `<top (required)>'
        from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:136:in `require'
        from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:136:in `require'
        from /usr/local/share/gems/gems/graphql-2.0.30/lib/graphql/language.rb:10:in `<top (required)>'
        from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:136:in `require'
        from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:136:in `require'
        from /usr/local/share/gems/gems/graphql-2.0.30/lib/graphql.rb:93:in `<top (required)>'
        from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:136:in `require'
        from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:136:in `require'
        from /usr/local/share/gems/gems/graphql-client-0.22.0/lib/graphql/client.rb:4:in `<top (required)>'
        from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:136:in `require'
        from <internal:/usr/share/rubygems/rubygems/core_ext/kernel_require.rb>:136:in `require'
        from /usr/local/share/gems/gems/gitlab-triage-1.43.0/lib/gitlab/triage/network_adapters/graphql_adapter.rb:3:in `<top (required)>'
        from /usr/local/share/gems/gems/gitlab-triage-1.43.0/lib/gitlab/triage/engine.rb:31:in `require_relative'
        from /usr/local/share/gems/gems/gitlab-triage-1.43.0/lib/gitlab/triage/engine.rb:31:in `<top (required)>'
        from /usr/local/share/gems/gems/gitlab-triage-1.43.0/bin/gitlab-triage:6:in `require_relative'
        from /usr/local/share/gems/gems/gitlab-triage-1.43.0/bin/gitlab-triage:6:in `<top (required)>'
        from /usr/local/bin/gitlab-triage:25:in `load'
        from /usr/local/bin/gitlab-triage:25:in `<main>'

Once however in the same docker image racc dependancy is installed, it starts working. So my suggestion would be to add racc to spec file. I have bumped the version file and it should be released, please 😄 to RubyGem repository.

Thanks!

Edited by 🤖 GitLab Bot 🤖

Merge request reports