Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Missing gem dependency for activesupport #42

Open
wconrad opened this issue Oct 28, 2017 · 0 comments
Open

Missing gem dependency for activesupport #42

wconrad opened this issue Oct 28, 2017 · 0 comments

Comments

@wconrad
Copy link

wconrad commented Oct 28, 2017

The gem appears to require activesupport, but activesupport is not a dependency of tunemygc 1.0.69.

Given this program foo.rb:

ENV['RUBY_GC_SPY'] ||= 'manual'
require 'tunemygc'

TuneMyGc.booted
TuneMyGc.processing_started
TuneMyGc.processing_ended

Then running it generates this output, the last line of which is an error due to activesupport not being required:

$ RUBY_GC_TOKEN=(redacted) RUBY_GC_TUNE=200 bundle exec ruby foo.rb
[tunemygc] Rails not detected, loading minimal agent
I, [2017-10-28T09:53:52.687273 #10461]  INFO -- : [tunemygc, ppid: 17705, pid: 10461] interposing
I, [2017-10-28T09:53:52.690374 #10461]  INFO -- : [tunemygc, ppid: 17705, pid: 10461] hooked: GC tracepoints
I, [2017-10-28T09:53:52.691159 #10461]  INFO -- : [tunemygc, ppid: 17705, pid: 10461] hooked: manual
I, [2017-10-28T09:53:52.691181 #10461]  INFO -- : [tunemygc, ppid: 17705, pid: 10461] hooked: after_initialize
I, [2017-10-28T09:53:52.691195 #10461]  INFO -- : [tunemygc, ppid: 17705, pid: 10461] hooked: at_exit
I, [2017-10-28T09:53:52.691205 #10461]  INFO -- : [tunemygc, ppid: 17705, pid: 10461] interposed
I, [2017-10-28T09:53:52.691267 #10461]  INFO -- : [tunemygc, ppid: 17705, pid: 10461] at_exit
I, [2017-10-28T09:53:52.691283 #10461]  INFO -- : [tunemygc, ppid: 17705, pid: 10461] uninstalled manual spy
I, [2017-10-28T09:53:52.692316 #10461]  INFO -- : [tunemygc, ppid: 17705, pid: 10461] Sync required? true
I, [2017-10-28T09:53:52.692340 #10461]  INFO -- : [tunemygc, ppid: 17705, pid: 10461] Syncing 4 snapshots
I, [2017-10-28T09:53:52.693734 #10461]  INFO -- : [tunemygc, ppid: 17705, pid: 10461] Config recommendation error (uninitialized constant TuneMyGc::Syncer::ActiveSupport)

See the last line, having "uninitialized constant TuneMyGc::Syncer::ActiveSupport"

When the activesupport gem is included:

ENV['RUBY_GC_SPY'] ||= 'manual'
require 'tunemygc'
require 'active_support'

TuneMyGc.booted
TuneMyGc.processing_started
TuneMyGc.processing_ended

Then the "unitialized constant" error no longer appears:

$ RUBY_GC_TOKEN=(redacted) RUBY_GC_TUNE=200 bundle exec ruby foo.rb
[tunemygc] Rails not detected, loading minimal agent
I, [2017-10-28T09:55:58.529386 #10472]  INFO -- : [tunemygc, ppid: 17705, pid: 10472] interposing
I, [2017-10-28T09:55:58.532564 #10472]  INFO -- : [tunemygc, ppid: 17705, pid: 10472] hooked: GC tracepoints
I, [2017-10-28T09:55:58.533370 #10472]  INFO -- : [tunemygc, ppid: 17705, pid: 10472] hooked: manual
I, [2017-10-28T09:55:58.533391 #10472]  INFO -- : [tunemygc, ppid: 17705, pid: 10472] hooked: after_initialize
I, [2017-10-28T09:55:58.533405 #10472]  INFO -- : [tunemygc, ppid: 17705, pid: 10472] hooked: at_exit
I, [2017-10-28T09:55:58.533417 #10472]  INFO -- : [tunemygc, ppid: 17705, pid: 10472] interposed
I, [2017-10-28T09:55:58.568350 #10472]  INFO -- : [tunemygc, ppid: 17705, pid: 10472] at_exit
I, [2017-10-28T09:55:58.568387 #10472]  INFO -- : [tunemygc, ppid: 17705, pid: 10472] uninstalled manual spy
I, [2017-10-28T09:55:58.569838 #10472]  INFO -- : [tunemygc, ppid: 17705, pid: 10472] Sync required? true
I, [2017-10-28T09:55:58.569863 #10472]  INFO -- : [tunemygc, ppid: 17705, pid: 10472] Syncing 10 snapshots
I, [2017-10-28T09:55:59.192253 #10472]  INFO -- : [tunemygc, ppid: 17705, pid: 10472] Ruby version 2.4.2 or Rails version 0.0 not supported. Failed to sync 10 snapshots

(I'll create a separate issue for the error message, "Ruby version 2.4.2 or Rails version 0.0 not supported")

Additional info

Gemfile:

# frozen_string_literal: true
source "https://rubygems.org"

git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }

gem "activesupport"
gem "tunemygc"

Gemfile.lock:

GEM
  remote: https://rubygems.org/
  specs:
    activesupport (5.0.6)
      concurrent-ruby (~> 1.0, >= 1.0.2)
      i18n (~> 0.7)
      minitest (~> 5.1)
      tzinfo (~> 1.1)
    concurrent-ruby (1.0.5)
    i18n (0.9.0)
      concurrent-ruby (~> 1.0)
    minitest (5.10.3)
    thread_safe (0.3.6)
    tunemygc (1.0.69)
    tzinfo (1.2.3)
      thread_safe (~> 0.1)

PLATFORMS
  ruby

DEPENDENCIES
  activesupport
  tunemygc

BUNDLED WITH
   1.15.4

Ruby version: ruby-2.4.2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant