Skip to content

Issues upgrading to 1.13.0 with ruby 2.2 #623

@alagos

Description

@alagos

I'm working in a ruby 2.2/rails 4.2 project (not my choice, sorry about that) and I've had some conflicts upgrading from 1.11.0 to 1.13.0, specifically a bunch of conflicts with nokogiri upgrade:

Bundler could not find compatible versions for gem "nokogiri":
  In Gemfile:
    capybara was resolved to 3.1.1, which depends on
      nokogiri (~> 1.8)

    caxlsx was resolved to 3.0.0, which depends on
      nokogiri (>= 1.8.2, ~> 1.8)

    rails (= 4.2.11.3) was resolved to 4.2.11.3, which depends on
      actionpack (= 4.2.11.3) was resolved to 4.2.11.3, which depends on
        rails-html-sanitizer (>= 1.0.2, ~> 1.0) was resolved to 1.3.0, which depends on
          loofah (~> 2.3) was resolved to 2.8.0, which depends on
            nokogiri (>= 1.5.9)

    rails_admin was resolved to 1.4.3, which depends on
      rack-pjax (>= 0.7) was resolved to 1.1.0, which depends on
        nokogiri (~> 1.5)

    rails (= 4.2.11.3) was resolved to 4.2.11.3, which depends on
      actionmailer (= 4.2.11.3) was resolved to 4.2.11.3, which depends on
        rails-dom-testing (>= 1.0.5, ~> 1.0) was resolved to 1.0.9, which depends on
          nokogiri (~> 1.6)

    quickbooks-ruby (~> 1.0) was resolved to 1.0.17, which depends on
      roxml (~> 4.0) was resolved to 4.1.1, which depends on
        nokogiri (>= 1.3.3)

    ruby-saml (~> 1.13.0) was resolved to 1.13.0, which depends on
      nokogiri (>= 1.10.5)

    sunspot_rails was resolved to 2.1.1, which depends on
      nokogiri

Bundler could not find compatible versions for gem "ruby":
  In Gemfile:
    ruby

    caxlsx was resolved to 3.0.0, which depends on
      nokogiri (>= 1.8.2, ~> 1.8) was resolved to 1.10.10, which depends on
        ruby (>= 2.3.0)

from this, it caught my attention that ruby-saml 1.13.0 depends on nokogiri >= 1.10.5, when due to the version restrictions, this should had been scoped between >= 1.9.1 and <= 1.10.0. Worth to mention my ruby version again:

┗ ruby -v
ruby 2.2.10p489 (2018-03-28 revision 63023) [x86_64-darwin19]

and the RUBY_VERSION variable in my rails console:

[31][12:43:19NZDT] pry(main)(deve)> RUBY_VERSION < '2.3'
=> true
[32][13:20:59NZDT] pry(main)(deve)> RUBY_VERSION
=> "2.2.10"

Regardless of that issue, ruby 2.2 support was dropped in Nokogiri 1.10.0, so the gemspec restriction should be something like:

  elsif RUBY_VERSION < '2.3'
    s.add_runtime_dependency('nokogiri', '>= 1.9.1', '< 1.10.0')

I´m working with a fork now, that probably isn't the solution you guys expect, but it works for me in the short term.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions