Skip to content

Releases: daboross/fern

Release version 0.3.3

02 Jan 01:05
Compare
Choose a tag to compare
  • Update for rustc version 9854143cb (1.0.0-beta)
  • Derive Clone for all types deriving Copy
  • Update docs a bit for that switch to time crate
  • Switch to time crate instead of chrono for tests, as chrono hasn't updated for rustc 1.0.0-beta yet.
  • Instead of implementing a pseudo-time crate as a workaround for rust-lang/cargo#1474, just disable the doc test, and copy the code to a separate file in tests/

Release version 0.3.2

02 Jan 01:04
Compare
Choose a tag to compare
  • Update to rustc version 2e3b0c051
  • Add a workaround for rust-lang/cargo#1474 in doc tests
  • Implement From for errors instead of FromError
  • Remove now unrequired feature gate
  • Implement error::Error for error types

Release version 0.3.1

02 Jan 01:04
Compare
Choose a tag to compare
  • Updates to rustc version 27901849e

Release version 0.3.0

02 Jan 01:03
Compare
Choose a tag to compare
  • Updates to rustc version 123a754cb
  • Updates to log version 0.3.0
  • Reworks fern::OutputConfig to be a struct with functions to construct configurations, rather than an enum with variants for each configuration.
  • This is a breaking change, as all constructors on fern::OutputConfig have been renamed from UpperCase to lower_case.
  • This also now allows fern::OutputConfig to be constructed with anything which implements AsRef<path::Path>.
  • For example, fern::OutputConfig::file("some-file.log") works, without having to construct a Path or PathBuf manually.

Release version 0.2.1

02 Jan 01:03
Compare
Choose a tag to compare
  • Updates to rustc version 3e4be02b8
  • Updates documentation

Release version 0.2.0

02 Jan 01:03
Compare
Choose a tag to compare

This version reworks the public API in order to turn fern into a backend to the log crate.

API Changes:

  • Remove the local module, as the log crate now handles storing a global logger.
  • fern::Logger must now be Sync + Send
  • BoxedLogger and ArcLogger typedefs are removed, due to writing + Sync + Send no longer being required
  • Now everything just uses Box
  • Level is removed, in favor of using log::LogLevel and log::LogLevelFilter
  • LoggerConfig is renamed into DispatchConfig
  • Rename Error to LogError
    • Implement fmt::Display for LogError
  • A new Formatter type is added for formatting closures. It also now takes a &log::LogLocation parameters as well.
  • OutputConfig::Parent is renamed into OutputConfig::Child, this seems to make more sense, given that you can have any number of children
  • Logger::log() now takes (&str, &log::LogLevel, &log::LogLocation) instead of (&fern::Level, &str)
  • Add an IntoLog trait which DispatchConfig and OutputConfig implement (instead of having into_logger() on each of them.
  • Add an into_log() method to the IntoLog trait that turns a log configuration into a log::Log (as apposed to fern::Logger)
  • Rename IntoLog.into_logger() to IntoLog.into_fern_logger() in order to differentiate from the into_log() method.
  • Add a fern::init_global_logger() method which sets the global log crate logger from a log configuration
  • Add an InitError error which is used by init_global_logger() for either an IO error or log::SetLoggerError
  • Update everything to use the new io and path modules
  • Add a FileOptions option to OutputConfig which allows for specifying an OpenOptions for opening the log file with

Also:

  • The docs have been rewritten to be up to date with all the above changes
  • The code snippets in the docs are now all tested! This is instead of having no_test and not having fully workable code examples.
  • There is a new tests/lib.rs file which contains tests for initializing fern and log filtering with different log levels.

Release version 0.1.12

02 Jan 01:02
Compare
Choose a tag to compare
  • Fixes compile warnings and errors for rustc version 522d09dfe
  • Adds static life bound
  • Switches to using old_path feature instead of path feature

Release version 0.1.11

02 Jan 01:02
Compare
Choose a tag to compare
  • Fixes small documentation error
  • Fixes compile errors in rustc version 3ef8ff1f8

Release version 0.1.9

02 Jan 01:01
Compare
Choose a tag to compare
  • Updates to rustc version eaf4c5c78
    • Changes all usages of std::io to std::old_io

Release version 0.1.10

02 Jan 01:01
Compare
Choose a tag to compare
  • Finishes updating to rustc version eaf4c5c78
    • Last version compiled, but had many warnings
    • Move all #[experimental] features to #[unstable]
    • Add #![feature(io, core)]
    • Remove unrequired .iter() call