instana / ruby-sensor

💎 Ruby Distributed Tracing & Metrics Sensor for Instana
https://www.instana.com/
MIT License
26 stars 25 forks source link

[Bug]: Jruby - Installation failure on jruby due to 'oj' dependency #373

Closed ramasangita closed 6 months ago

ramasangita commented 6 months ago

Problem Description

On jruby, 'oj' dependency is added during bundle install. In gemspec, condition is available for jruby to avoid oj dependency but from 1.11.7 version onwards 'oj' is being installed when running bundle

spec.add_runtime_dependency('oj', '>=3.0.11') unless RUBY_PLATFORM =~ /java/i

Issue is not present in 1.11.6 version.

Minimal, Complete, Verifiable, Example

source 'https://rubygems.org'

ruby '3.1', engine: 'jruby', engine_version: '9.4.2.0'

gem 'instana', '>= 1.11.7', require: false gem 'puma' gem 'sinatra' gem 'racksh' gem 'csv'

This is the gem file. 1.11.6 works without any oj dependency but fails with 1.11.7 and later

Pasted Gemfile.lock of working version(1.11.6)

Gemfile.lock

GEM
  remote: https://rubygems.org/
  specs:
    base64 (0.2.0)
    csv (3.3.0)
    ffi (1.16.3-java)
    get_process_mem (0.2.7)
      ffi (~> 1.0)
    instana (1.11.6-java)
      ffi (>= 1.0.11)
      get_process_mem (>= 0.2.1)
      sys-proctable (>= 1.2.2)
      timers (>= 4.0.4)
    mustermann (3.0.0)
      ruby2_keywords (~> 0.0.1)
    nio4r (2.7.1-java)
    puma (6.4.2-java)
      nio4r (~> 2.0)
    rack (3.0.10)
    rack-protection (4.0.0)
      base64 (>= 0.1.0)
      rack (>= 3.0.0, < 4)
    rack-session (2.0.0)
      rack (>= 3.0.0)
    rack-test (2.1.0)
      rack (>= 1.3)
    racksh (1.0.1)
      rack (>= 1.0)
      rack-test (>= 0.5)
    ruby2_keywords (0.0.5)
    sinatra (4.0.0)
      mustermann (~> 3.0)
      rack (>= 3.0.0, < 4)
      rack-protection (= 4.0.0)
      rack-session (>= 2.0.0, < 3)
      tilt (~> 2.0)
    sys-proctable (1.3.0)
      ffi (~> 1.1)
    tilt (2.3.0)
    timers (4.3.5)

PLATFORMS
  universal-java-11

DEPENDENCIES
  csv
  instana (= 1.11.6)
  puma
  racksh
  sinatra

RUBY VERSION
   ruby 3.1.0p0 (jruby 9.4.2.0)

BUNDLED WITH
   2.5.6

Ruby Version

ruby '3.1', engine: 'jruby', engine_version: '9.4.2.0'
Ferenc- commented 6 months ago

jruby is not supported