Skip to content

Release Notes

jokade edited this page Sep 17, 2020 · 10 revisions

Version 0.6.2 (17.09.20)

Published for Scala 2.12.x/2.13.x, Scala.js 1.0, and Scala Native 0.3.9/0.4.0-M2.

Version 0.6.1 (28.01.17)

Published for Scala 2.11.12/2.12.2, Scala.js 0.6.19, and Scala Native 0.3.6.

New Features

  • add GLibLoggerFactory backend

Version 0.6.0 (04.10.17)

Published for Scala 2.11.11/2.12.2, Scala.js 0.6.19, and Scala Native 0.3.2.

Major Changes

  • #28: Add support for Scala Native
  • #29: Simplify implementation of Loggers with LoggerTemplate
  • #30: Improve Configuration of PrintLogger
  • #31: Add TerminalLogger for Scala Native
  • #32: Add Support for syslog on Scala Native

Solved Issues

  • #22: HttpLoggerFactory should use content type application/json

Version 0.5.3 (11.07.17)

Published for Scala 2.11.11/2.12.2 and Scala.js 0.6.18.

Minor Changes and Enhancements

  • #25: Add module support for winston backend

Version 0.5.2 (20.11.16)

Published for Scala 2.11.8/2.12.0 and Scala.js 0.6.13; no modifications.

Version 0.5.1 (23.10.16)

Major Changes and Enhancements

  • #18: Agnostic HttpLogger

Solved Issues

  • #17: Fix HttpLoggers log method overloads

Version 0.5.0 (10.06.16)

Major Changes and Enhancements

Slogging now supports SLF4J-style parameterized messages:

val obj = new SomeObject
logger.debug("The new object is: {}.",obj)

Version 0.4.0 (23.01.16)

Major Changes and Enhancements

  • LoggerHolder now has the member loggerName which is used as the source name for all logging statements; as a result, PrintLogger, ConsoleLogger, HttpLogger and WinstonLogger no longer require the source name as an instance variable and a single instance of these loggers will be used. However, when using SLF4JLoggerFactory still a single instance is used for each LoggingHolder due to the underlying architecture.
  • The new FilterLogger allows more fine-grained control over what is actually logged via FilterLogger.filter.
  • MultiLogger is a simple wrapper for sending a logging message to more than one backend.
  • Set PrintLogger.printTimestamp = true to enable timestamp logging for all PrintLogger instances.

Version 0.3 (15.05.15)

Major Changes and Enhancements

Logger Configuration

Configuration and activation of a specific LoggerFactory has changed since version 0.2; the factory to be used now has to be assigned explicitly:

import slogging._

// set logger factory to be used
LoggerConfig.factory = PrintLoggerFactory()

// set log level
LoggerConfig.level = LogLevel.TRACE

New Backends

This release comes with the following new backends:

  • SLF4JLoggerFactory: a wrapper around the slf4j logging library
  • WinstonLoggerFactory: a wrapper around the Node.js winston logging library
  • HttpLoggerFactory: a simple backend that sends log messages to a HTTP server via Ajavax POST requests

Disable Logging at Compile Time

It is now possible to disable logging altogether at compile time. To this end add

scalacOptions += "-Xmacro-settings:slogging.disable"

to your build.sbt.