Skip to content

OpenNebula gem cannot install with nokogiri >= 1.16 due to version constraint #7419

@ogajduse

Description

@ogajduse

Description
The OpenNebula Ruby gem (opennebula) has an overly restrictive version constraint for the nokogiri dependency, limiting it to versions < 1.16. This constraint is hardcoded in the gem generation script and prevents the gem from working with current versions of nokogiri (1.16.x, 1.17.x, and newer).

To Reproduce

  1. Check the gem dependency specification in share/rubygems/generate line 84
  2. Note the constraint: ['nokogiri','<1.16']

Expected behavior
The gem should either:

  1. Remove the upper version bound entirely (preferred)
  2. Update the constraint to support current nokogiri versions

Nokogiri follows semantic versioning and maintains backwards compatibility within major versions. The current 1.x series (including 1.16 and 1.17) should work without issues.

ref: https://github.com/sparklemotion/nokogiri#semantic-versioning-policy

Details

  • Affected Component: Ruby gem specification (share/rubygems/generate)
  • Version: urrent master branch
  • Link to problematic code:
    ['nokogiri','<1.16'],

Additional context
This overly restrictive constraint forces downstream packagers (e.g., Foreman packaging, OS distributions) to patch the gemspec file to remove or relax the version constraint. This creates maintenance burden and delays adoption of security updates in nokogiri.

Related discussion: theforeman/foreman-packaging#12646

Progress Status

  • Code committed
  • Testing - QA
  • Documentation (Release notes - resolved issues, compatibility, known issues)

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions