Honeybadger v3.0.0 Release Notes
Release Date: 2017-02-06 // about 7 years ago-
โ Added
- ๐ You may now require 'honeybadger/ruby' instead of 'honeybadger' to get the agent without the integrations (no railtie, plugins or monkey patching).
- You can now create multiple instances of the Honeybadger agent with different configurations (many classes in the library can be composed).
- ๐ง
Honeybadger.configure
works again -- use it to configure the library from Ruby! (we still default to honeybadger.yml in our installer) - โ Our test suite is now leaner and meaner (which means we can add new features faster). Reduced typical build times from up to 2 minutes to 20 seconds.
- We've rebuilt the CLI from scratch. The new CLI features super verbose error
messages with (hopefully) helpful suggestions, some new commands, and better
framework detection in the
install
andtest
commands. - ๐ Use
honeybadger exec your_command
from the command line to report the error when the command fails due to a non-zero exit status or standard error output. (Use it to report failures in cron!) Seehoneybadger help exec
. - ๐ Use
honeybadger notify
from the command line to report custom errors to Honeybadger. Seehoneybadger help notify
. - 0๏ธโฃ ~/honeybadger.yml is now a default config path for the CLI and standalone-ruby installations.
- ๐ป
Honeybadger.notify
now converts arguments which are notException
orHash
types to strings and assigns them as the error message. Example:Honeybadger.notify("Something went wrong")
. - ๐ The currently deployed git revision is now detected automatically and sent with error reports.
๐ Changed
- ๐
Honeybadger.start
has been deprecated and has no effect. - We've changed some of the underlying code of the library. If you depend on internal APIs (such as thread local variable names or any functions not marked public in the code comments) then you may need to update your code. If you are developing 3rd-party integrations with our gem let us know so that we can work with you to build the public APIs you need.
- All Rack middleware no longer require an argument (which used to be a
Honeybadger::Config
instance) when using them. They now default to the global agent and accept an optional argument which expects an alternateHoneybadger::Agent
instance. - ๐ The plugins.skip config option has been renamed to skipped_plugins.
- The sidekiq.use_component config option is now
true
by default. To get the old behavior, set it tofalse
. When enabled, the Sidekiq plugin will automatically set the component to the class of the job, which helps with grouping. - The
request.filter_keys
option now includes partial matches: with the filter value "password", keys such as "password" and "otherpassword" will be filtered. - CGI variables are now whitelisted when sending the Rack environment to Honeybadger to prevent sensitive data leakage.
- ๐ป
Honeybadger.notify
now raises an exception in development mode when called without the required arguments. It logs outside of development and continues to send a generic error report.
โ Removed
- ๐ Ruby 1.9.3 and 2.0.x are no longer supported.
Honeybadger.notify_or_ignore
has been removed. UseHoneybadger.notify(e)
andHoneybadger.notify(e, force: true)
(to skip ignore filters).- ๐ The CLI command
honeybadger config
has been removed. - ๐ All deprecated Rails controller methods (from version 1.x) have been removed.
- ๐ The deprecated
Honeybadger::Rack::MetricsReporter
middleware has been removed.
๐ Fixed
- Arrays are no longer compacted during sanitization (
nil
values will be sent as they originally appeared). - ๐ Resque plugin now reports
Resque::DirtyExit
exceptions.