honeybadger-io / honeybadger-ruby

Ruby gem for reporting errors to honeybadger.io
https://docs.honeybadger.io/lib/ruby/
MIT License
250 stars 146 forks source link

undefined method `no_commands' for Thor:Class #78

Closed darrenboyd closed 10 years ago

darrenboyd commented 10 years ago

I am seeing the following error, when running a local development sidekiq process.

11:35:59 sidekiq.1 | ** [Honeybadger] Exception caught while injecting dependency: NoMethodError -- undefined method `no_commands' for Thor:Class

I have...

  * honeybadger (1.15.0)
  * thor (0.19.1)
  * sidekiq (3.1.4)

I run sidekiq (well, everything in dev) through foreman, with the following Procfile...

web: bundle exec puma -t ${PUMA_MIN_THREADS:-4}:${PUMA_MAX_THREADS:-12} -w ${PUMA_WORKERS:-2} -p $PORT -e ${RACK_ENV:-development}
worker: bundle exec sidekiq --concurrency 5

It appears that sidekiq continues to run without issue.

I can try and get more information if you need. I'm not even sure that honeybadger is at fault here, but all the error messages seem to be coming from honeybadger-ruby code.

joshuap commented 10 years ago

Thanks, Darren. I've had one other report of this issue, so I'm already working on it. :) I haven't figured out why yet, but it seems that in some cases Thor is being loaded without including it's modules. Thor::Base is where the no_commands method is defined. Luckily this error won't affect your sidekiq worker, so you can safely ignore it until we get to the bottom of it (soon, hopefully!)

joshuap commented 10 years ago

@darrenboyd could I see a copy of your Gemfile.lock file? Email to support at honeybadger.io if you don't want to post it here. Thanks!

darrenboyd commented 10 years ago
GEM
  remote: https://rubygems.org/
  specs:
    actionmailer (4.1.1)
      actionpack (= 4.1.1)
      actionview (= 4.1.1)
      mail (~> 2.5.4)
    actionpack (4.1.1)
      actionview (= 4.1.1)
      activesupport (= 4.1.1)
      rack (~> 1.5.2)
      rack-test (~> 0.6.2)
    actionview (4.1.1)
      activesupport (= 4.1.1)
      builder (~> 3.1)
      erubis (~> 2.7.0)
    activemodel (4.1.1)
      activesupport (= 4.1.1)
      builder (~> 3.1)
    activerecord (4.1.1)
      activemodel (= 4.1.1)
      activesupport (= 4.1.1)
      arel (~> 5.0.0)
    activesupport (4.1.1)
      i18n (~> 0.6, >= 0.6.9)
      json (~> 1.7, >= 1.7.7)
      minitest (~> 5.1)
      thread_safe (~> 0.1)
      tzinfo (~> 1.1)
    addressable (2.3.6)
    aggregate (0.2.2)
    akami (1.2.2)
      gyoku (>= 0.4.0)
      nokogiri
    arel (5.0.1.20140414130214)
    bcrypt (3.1.7)
    builder (3.2.2)
    cancan (1.6.10)
    carrierwave (0.10.0)
      activemodel (>= 3.2.0)
      activesupport (>= 3.2.0)
      json (>= 1.7)
      mime-types (>= 1.16)
    celluloid (0.15.2)
      timers (~> 1.1.0)
    chunky_png (1.3.1)
    coderay (1.1.0)
    coffee-rails (4.0.1)
      coffee-script (>= 2.2.0)
      railties (>= 4.0.0, < 5.0)
    coffee-script (2.2.0)
      coffee-script-source
      execjs
    coffee-script-source (1.7.0)
    compass (0.12.6)
      chunky_png (~> 1.2)
      fssm (>= 0.2.7)
      sass (~> 3.2.19)
    compass-rails (1.1.7)
      compass (>= 0.12.2)
      sprockets (<= 2.11.0)
    connection_pool (2.0.0)
    crack (0.4.2)
      safe_yaml (~> 1.0.0)
    css_parser (1.3.5)
      addressable
    database_cleaner (1.3.0)
    devise (3.2.4)
      bcrypt (~> 3.0)
      orm_adapter (~> 0.1)
      railties (>= 3.2.6, < 5)
      thread_safe (~> 0.1)
      warden (~> 1.2.3)
    diff-lcs (1.2.5)
    docile (1.1.5)
    dotenv (0.11.1)
      dotenv-deployment (~> 0.0.2)
    dotenv-deployment (0.0.2)
    draper (1.3.1)
      actionpack (>= 3.0)
      activemodel (>= 3.0)
      activesupport (>= 3.0)
      request_store (~> 1.0.3)
    erubis (2.7.0)
    excon (0.37.0)
    execjs (2.2.0)
    factory_girl (4.4.0)
      activesupport (>= 3.0.0)
    factory_girl_rails (4.4.1)
      factory_girl (~> 4.4.0)
      railties (>= 3.0.0)
    fakeredis (0.4.3)
      redis (~> 3.0.0)
    faraday (0.8.8)
      multipart-post (~> 1.2.0)
    ffi (1.9.3)
    fog (1.22.1)
      fog-brightbox
      fog-core (~> 1.22)
      fog-json
      ipaddress (~> 0.5)
      nokogiri (~> 1.5, >= 1.5.11)
    fog-brightbox (0.0.2)
      fog-core
      fog-json
    fog-core (1.22.0)
      builder
      excon (~> 0.33)
      formatador (~> 0.2)
      mime-types
      net-scp (~> 1.1)
      net-ssh (>= 2.1.3)
    fog-json (1.0.0)
      multi_json (~> 1.0)
    font-awesome-rails (4.1.0.0)
      railties (>= 3.2, < 5.0)
    foreman (0.71.0)
      dotenv (~> 0.11.1)
      thor (~> 0.19.1)
    formatador (0.2.5)
    foundation-rails (5.2.2.0)
      railties (>= 3.1.0)
      sass (>= 3.2.0)
    fssm (0.2.10)
    geocoder (1.2.2)
    guard (2.6.1)
      formatador (>= 0.2.4)
      listen (~> 2.7)
      lumberjack (~> 1.0)
      pry (>= 0.9.12)
      thor (>= 0.18.1)
    guard-rspec (4.2.10)
      guard (~> 2.1)
      rspec (>= 2.14, < 4.0)
    gyoku (1.1.1)
      builder (>= 2.1.2)
    haml (4.0.5)
      tilt
    haml-rails (0.5.3)
      actionpack (>= 4.0.1)
      activesupport (>= 4.0.1)
      haml (>= 3.1, < 5.0)
      railties (>= 4.0.1)
    hike (1.2.3)
    honeybadger (1.15.0)
      json
    httparty (0.13.1)
      json (~> 1.8)
      multi_xml (>= 0.5.2)
    httpi (2.1.0)
      rack
      rubyntlm (~> 0.3.2)
    i18n (0.6.9)
    ipaddress (0.8.0)
    jbuilder (2.1.1)
      activesupport (>= 3.0.0, < 5)
      multi_json (~> 1.2)
    jquery-rails (3.1.0)
      railties (>= 3.0, < 5.0)
      thor (>= 0.14, < 2.0)
    jquery-ui-rails (4.2.1)
      railties (>= 3.2.16)
    json (1.8.1)
    kaminari (0.16.1)
      actionpack (>= 3.0.0)
      activesupport (>= 3.0.0)
    librato-metrics (1.4.0)
      aggregate (~> 0.2.2)
      faraday (~> 0.7)
      multi_json
    librato-rack (0.4.5)
      librato-metrics (~> 1.1)
    librato-rails (0.10.3)
      activesupport (>= 3.0)
      librato-rack (~> 0.4.2)
      railties (>= 3.0)
    libv8 (3.16.14.3)
    listen (2.7.8)
      celluloid (>= 0.15.2)
      rb-fsevent (>= 0.9.3)
      rb-inotify (>= 0.9)
    lograge (0.3.0)
      actionpack (>= 3)
      activesupport (>= 3)
      railties (>= 3)
    lumberjack (1.0.6)
    macaddr (1.7.1)
      systemu (~> 2.6.2)
    mail (2.5.4)
      mime-types (~> 1.16)
      treetop (~> 1.4.8)
    method_source (0.8.2)
    mime-types (1.25.1)
    mini_magick (3.7.0)
      subexec (~> 0.2.1)
    mini_portile (0.6.0)
    minitest (5.3.5)
    multi_json (1.10.1)
    multi_xml (0.5.5)
    multipart-post (1.2.0)
    net-scp (1.2.1)
      net-ssh (>= 2.6.5)
    net-ssh (2.9.1)
    newrelic_rpm (3.8.1.221)
    nokogiri (1.6.2.1)
      mini_portile (= 0.6.0)
    nori (2.4.0)
    orm_adapter (0.5.0)
    pg (0.17.1)
    polyglot (0.3.5)
    pry (0.10.0)
      coderay (~> 1.1.0)
      method_source (~> 0.8.1)
      slop (~> 3.4)
    puma (2.8.2)
      rack (>= 1.1, < 2.0)
    quiet_assets (1.0.3)
      railties (>= 3.1, < 5.0)
    rack (1.5.2)
    rack-cors (0.2.9)
    rack-protection (1.5.3)
      rack
    rack-test (0.6.2)
      rack (>= 1.0)
    rails (4.1.1)
      actionmailer (= 4.1.1)
      actionpack (= 4.1.1)
      actionview (= 4.1.1)
      activemodel (= 4.1.1)
      activerecord (= 4.1.1)
      activesupport (= 4.1.1)
      bundler (>= 1.3.0, < 2.0)
      railties (= 4.1.1)
      sprockets-rails (~> 2.0)
    rails_12factor (0.0.2)
      rails_serve_static_assets
      rails_stdout_logging
    rails_autolink (1.1.6)
      rails (> 3.1)
    rails_serve_static_assets (0.0.2)
    rails_stdout_logging (0.0.3)
    railties (4.1.1)
      actionpack (= 4.1.1)
      activesupport (= 4.1.1)
      rake (>= 0.8.7)
      thor (>= 0.18.1, < 2.0)
    rake (10.3.2)
    rb-fsevent (0.9.4)
    rb-inotify (0.9.5)
      ffi (>= 0.5.0)
    rdoc (4.1.1)
      json (~> 1.4)
    redis (3.0.7)
    redis-namespace (1.4.1)
      redis (~> 3.0.4)
    ref (1.0.5)
    request_store (1.0.6)
    roadie (2.4.3)
      actionmailer (> 3.0.0, < 5.0.0)
      css_parser (~> 1.3.4)
      nokogiri (> 1.5.0)
      sprockets
    rspec (3.0.0)
      rspec-core (~> 3.0.0)
      rspec-expectations (~> 3.0.0)
      rspec-mocks (~> 3.0.0)
    rspec-core (3.0.1)
      rspec-support (~> 3.0.0)
    rspec-expectations (3.0.1)
      diff-lcs (>= 1.2.0, < 2.0)
      rspec-support (~> 3.0.0)
    rspec-its (1.0.1)
      rspec-core (>= 2.99.0.beta1)
      rspec-expectations (>= 2.99.0.beta1)
    rspec-mocks (3.0.1)
      rspec-support (~> 3.0.0)
    rspec-rails (3.0.1)
      actionpack (>= 3.0)
      activesupport (>= 3.0)
      railties (>= 3.0)
      rspec-core (~> 3.0.0)
      rspec-expectations (~> 3.0.0)
      rspec-mocks (~> 3.0.0)
      rspec-support (~> 3.0.0)
    rspec-support (3.0.0)
    rubyntlm (0.3.4)
    rufus-scheduler (3.0.8)
      tzinfo
    safe_yaml (1.0.3)
    sass (3.2.19)
    sass-rails (4.0.3)
      railties (>= 4.0.0, < 5.0)
      sass (~> 3.2.0)
      sprockets (~> 2.8, <= 2.11.0)
      sprockets-rails (~> 2.0)
    savon (2.5.1)
      akami (~> 1.2.0)
      builder (>= 2.1.2)
      gyoku (~> 1.1.0)
      httpi (~> 2.1.0)
      nokogiri (>= 1.4.0)
      nori (~> 2.4.0)
      uuid (~> 2.3.7)
      wasabi (~> 3.3.0)
    sdoc (0.4.0)
      json (~> 1.8)
      rdoc (~> 4.0, < 5.0)
    sidekiq (3.1.4)
      celluloid (>= 0.15.2)
      connection_pool (>= 2.0.0)
      json
      redis (>= 3.0.6)
      redis-namespace (>= 1.3.1)
    sidekiq-cron (0.1.9)
      rufus-scheduler (>= 2.0.24)
      sidekiq (>= 2.17.3)
    simplecov (0.8.2)
      docile (~> 1.1.0)
      multi_json
      simplecov-html (~> 0.8.0)
    simplecov-html (0.8.0)
    simplecov-rcov (0.2.3)
      simplecov (>= 0.4.1)
    sinatra (1.4.5)
      rack (~> 1.4)
      rack-protection (~> 1.4)
      tilt (~> 1.3, >= 1.3.4)
    slim (2.0.2)
      temple (~> 0.6.6)
      tilt (>= 1.3.3, < 2.1)
    slop (3.5.0)
    spring (1.1.3)
    spring-commands-rspec (1.0.2)
      spring (>= 0.9.1)
    sprockets (2.11.0)
      hike (~> 1.2)
      multi_json (~> 1.0)
      rack (~> 1.0)
      tilt (~> 1.1, != 1.3.0)
    sprockets-rails (2.1.3)
      actionpack (>= 3.0)
      activesupport (>= 3.0)
      sprockets (~> 2.8)
    subexec (0.2.3)
    systemu (2.6.4)
    temple (0.6.7)
    therubyracer (0.12.1)
      libv8 (~> 3.16.14.0)
      ref
    thor (0.19.1)
    thread_safe (0.3.4)
    tilt (1.4.1)
    timers (1.1.0)
    treetop (1.4.15)
      polyglot
      polyglot (>= 0.3.1)
    turbolinks (2.2.2)
      coffee-rails
    tzinfo (1.2.1)
      thread_safe (~> 0.1)
    uglifier (2.5.1)
      execjs (>= 0.3.0)
      json (>= 1.8.0)
    unf (0.1.4)
      unf_ext
    unf_ext (0.0.6)
    uuid (2.3.7)
      macaddr (~> 1.0)
    warden (1.2.3)
      rack (>= 1.0)
    wasabi (3.3.0)
      httpi (~> 2.0)
      mime-types (< 2.0.0)
      nokogiri (>= 1.4.0)
    webmock (1.18.0)
      addressable (>= 2.3.6)
      crack (>= 0.3.2)

PLATFORMS
  ruby

DEPENDENCIES
  cancan
  carrierwave
  coffee-rails (~> 4.0.0)
  compass-rails
  database_cleaner
  devise
  draper
  factory_girl_rails
  fakeredis
  faraday (= 0.8.8)
  fog
  font-awesome-rails
  foreman
  foundation-rails (= 5.2.2.0)
  geocoder
  guard-rspec
  haml
  haml-rails
  honeybadger
  httparty
  jbuilder (~> 2.0)
  jquery-rails
  jquery-ui-rails
  kaminari
  librato-rails
  libv8
  lograge
  mini_magick
  newrelic_rpm
  nokogiri
  pg
  puma
  quiet_assets
  rack-cors
  rails (= 4.1.1)
  rails_12factor
  rails_autolink
  rb-fsevent (~> 0.9)
  redis
  redis-namespace
  roadie
  rspec (~> 3.0)
  rspec-its
  rspec-rails
  sass-rails (~> 4.0.2)
  savon
  sdoc
  sidekiq
  sidekiq-cron
  simplecov
  simplecov-rcov
  sinatra (>= 1.3.0)
  slim (>= 1.3.0)
  spring
  spring-commands-rspec
  therubyracer
  thor
  turbolinks
  uglifier (>= 1.3.0)
  unf
  webmock
mockdeep commented 10 years ago

Also started seeing this after a recent upgrade. Here's a link to our Gemfile.lock: https://gist.github.com/mockdeep/e417f1b199d49d997cfa

joshuap commented 10 years ago

Just fixed it -- I'll release a patch shortly. Fwiw it shouldn't cause any issues beyond adding an extra log message.

mockdeep commented 10 years ago

Cool, thanks!

joshuap commented 10 years ago

Upgrade to 1.15.1 to get the fix. :)