Swift Log Versions Save

A Logging API for Swift

1.3.0

3 years ago

Highlights

LogHandler implementations should take care adjust their implementations moving forward to implement the following log function:

func log(
    level: Logging.Logger.Level, 
    message: Logging.Logger.Message, 
    metadata: Logging.Logger.Metadata?, 
    source: String, // new (!)
    file: String, function: String, line: UInt
)

rather than the previous function:

func log(
    level: Logging.Logger.Level, 
    message: Logging.Logger.Message, 
    metadata: Logging.Logger.Metadata?, 
    file: String, function: String, line: UInt
)

Compatibility shims are provided and existing implementations will continue to work as-is. However in order to reap benefits of the new source (which will contain the "module name from which this log message originates") parameter, they will have to change which log overload they implement. We suggest moving to implementing the new overload (with source:) as soon as possible, allowing the logging ecosystem to make use of this new capability.

For details see:

SemVer Minor

SemVer Patch

Credits

This release includes 15 issues/PRs, which were made possible with the help of 18 contributors 🎉

We would like to thank all everyone for their feedback and contributions:

Tomer Doron, Johannes Weiss, Konrad ktoso Malawski, Saleem Abdulrasool, Gwynne Raskind, prafsoni, Adam Fowler, Neal Lester, Artur Dryomov, Franz Busch, Shiva Huang, zach wick, Ravi Kandhadai, YR Chen, Jeremy Greenwood, Will Lisac, Mattt, Tanner

Thank you!

1.2.0

4 years ago

SemVer Major

  • Make log levels codable (#99)

SemVer Minor

  • docs: remove level parameter from log helpers (#91)
  • list more logging backends in readme (#95, #92, #88)

1.1.1

4 years ago

SemVer Patch

  • add flush api to default stdout/stderr logger (#87)
  • Fix typo in LogHandler doc comment (#76)
  • Link to ianpartridge/swift-log-syslog backend impl (#73)
  • Fix documented ordering of Level (#78)
  • Add Adorkable/swift-log-format-and-pipe to Backend list (#83)
  • test formatting issues as part of sanity check (#84)
  • better documentation around MetadataValue being expressible by literal
  • Add HeliumLogger to README (#88)

1.1.0

4 years ago

SemVer Minor

  • Expose an API for configuring basic stdio log handling (#61)
  • Added CaseIterable to Logger.Level enum (#46)

SemVer Patch

  • Add internal section link to README.md (#71)
  • add a CocoaPods podspec generator (#54)
  • Update README.md
  • explain the upcoming SwiftLog 0 (#69)
  • changed to isEmpty. (#65)
  • docs: improve API documentation coverage (#67)
  • Fix API documentation (#66)
  • Add 'Show on GitHub' link to API docs (#64)
  • add git commit template (#62)
  • fix docs #file -> #function (#59)
  • Fixed typo. (#58)
  • add contribution guidelines and github default config (#55)
  • fix linux tests formatting (#45)
  • fix docker setup to use release version of swift 5 (#48)
  • Link to more appropriate (still open) Swift issue (#50)
  • Fix typo in "critical" words in docs (#49)
  • retain SwiftNIO copyright header (#44)
  • readme: fix log levels (#43)
  • fix typo in API docs (#42)
  • use consistent, swifty naming convention (#41)

1.0.0

5 years ago

The initial release.