Releases: asenchi/scrolls
Progress must be made...
Some like it ERROR, others like it WARN
- Make syslog log_level adapting behavior configurable (@brphelps)
A LEVEL approach
- LOG_LEVEL is only applied to hash submissions to the Scrolls module methods (thanks @brphelps)
- Adjust license dates/names to best practices according to https://choosealicense.com/licenses/mit/
Beach Ball
- Add support for strict logfmt formatting (thanks @seveas)
Note: v0.9.2 I yanked because I messed up the release process, so the versions jump from v0.9.1 -> v0.9.3. Sorry for any confusion this may cause.
Solar Ball
- Fix confusing argument order for log_exception and update docs (thanks @sylvain-8422)
- Fix merging log data on nested exception (thanks @dbussink)
Thank you for the contributions!
Mirror Ball
This long overdue release of Scrolls brings it up speed with modern Ruby releases, improves the codebase and overall provides a better platform for further development.
After years of poor maintenance, Scrolls should now be usable again on recent versions of Ruby. In order to bring it up to speed, a number of backward incompatible changes were made:
Scrolls#global_context
is no longer mutable (see #54 and #71)- Scrolls is now initialized using
Scrolls#init
(though it doesn't have to be if the defaults are enough) Scrolls#log_exception
has changed to the following method shape (see #60):
Scrolls.log_exception(exception, data)
- Drop support for Ruby 1.8.7 and 1.9.3 (though it may work on the latter)
Additional changes include:
- Added functionality to escape keys of log data (see #67)
- Cleaned up codebase organization
- Fixed tests
- Fixed thread local context in recent Ruby versions
- Don't fail with
nil
error if unknown log level used (see #65)
The documentation has been mostly updated as well, though I plan to rework it all in the future.
I apologize for taking this long to bring the codebase up to speed and the overall lack of communication around the library. If there are still any users out there, thanks for your patience. I hope this release sets us up to add some much needed features (improved parsing, JSON output support, etc) soon.
Cannon Ball
This dev version breaks backwards compatibility for Scrolls. It is a rework/refactor of the initial work done in the following PR: #54.
Please report any bugs you find with this version on: #71
Backward Incompatible changes
- The #global_context is no longer mutable, instead we instantiate a class internally inside Scrolls::Logger that contains the global_context. This is to avoid various bad thread behaviors, that previous to Ruby 2.0, were allowed.
- The result of the above change removes #add_global_context.
- Currently Scrolls needs to be instantiated to be used (Scrolls.init(options)) however I'd like to work on a method for allowing one to just use Scrolls.log and get sane defaults.
- Due to this massive change I moved to "single line exceptions" by default since it lowers the amount of data produced by Scrolls when using #log_exception without losing the information.
- Officially kills Ruby 1.8.7 support (though literally no one should be using that version).
NOTE: I don't have a great setup right now to test everything here. I'm testing against Ruby 2.4.1 and all tests pass. Please test if you can. I'm going to cut a release of this version, 0.9.0.pre. I'm jumping versions here since we break backward compatibility. I'm hopeful with this and subsequent versions we can get to a place where a version 1.0 is a reality.
Please test this version as much as possible!
Beige Marble
IMPORTANT: This will be the last release with the current behavior. As noted in v0.3.8 release there are changes pending that break backward compatibility. I will bump the release appropriately. More information in this issue and the documentation here.
I apologize for the pour job I have done maintaining this gem for the past few years, I haven't worked much in Ruby over that time and let this go way too long. I will be working to clean it up and make sure everything is in order for Ruby versions 2.4+. Thank you for your patience.
Turquoise Marble
- Fix bug with Logger compatibility methods, see #56.
- Add tests and cleanup our testing setup to use new
#init
.
IMPORTANT: v0.3.9 will likely be the last minor release with current behavior. See documentation here and this issue on the changes in progress. Note, that when we do finally axe backwards compatibility the version will be bumped to 0.9.0 to avoid any conflicts and to signify the breaking changes. We will then spend 9 releases tightening up the API, testing and documentation to hit v1.0.
Teal Marble
- IMPORTANT Added warnings added around the planned deprecation of
#add_global_context
and#global_context()
. See this document for more details. These warnings are currently sent to$stderr
. - Add helper methods to support
Logger
functionality. These include#warn
,#fatal
and the like. This allows Scrolls to be a drop in replacement forLogger
. - Added
Scrolls#init
to mimic future behavior being laid out in this PR.