All notable changes to this project will be documented in this file.
Willow
adheres to Semantic Versioning.
6.0.x
Releases - 6.0.0
4.0.x
Releases - 4.0.0
2.0.x
Releases - 2.0.0
Released on 2019-04-30. All issues associated with this milestone can be found using this filter.
- Swift 4.2 support.
- Removed by Greg Tropino in Pull Request #54.
- Deprecated functions on
Optional
Logger extension.- Removed by Greg Tropino in Pull Request #54.
Released on 2019-04-30. All issues associated with this milestone can be found using this filter.
- To Swift 5 with backwards compatability with 4.2 and Xcode 10.1.
- Updated by Greg Tropino in Pull Request #54.
OSLogLevel
to now be overridable and the default mapping.- Updated by Eric Jensen in Pull Request #53 in regards to Issue #45.
Released on 2018-09-17. All issues associated with this milestone can be found using this filter.
- A
Logger.disabled
static variable that can be assigned to aLogger
variable. ThisLogger
will not write any messages sent to it.- Added by Eric Jensen in Pull Request #42.
- The Xcode workspace to be compatible with Xcode 10 and Swift 4.2.
- Updated by Eric Jensen in Pull Request #40.
- The podspec
swift-version
to4.2
.- Updated by Eric Jensen in Pull Request #43.
- The Travis-CI yaml file to build with Xcode 10 by leveraging bundler and a Gemfile.
- Updated by Christian Noon in Pull Request #44.
- The
Optional<Logger>
extensions are now deprecated. Use a non-optionalLogger
variable:var log: Logger? = nil
→var log: Logger = .disabled
.- Deprecated by Eric Jensen in Pull Request #42.
Released on 2018-04-10. All issues associated with this milestone can be found using this filter.
- The Xcode project to support Xcode 9.3.
- Updated by Colby Williams in Pull Request #38.
- The Travis-CI YAML file to support Xcode 9.3.
- Updated by Christian Noon in Pull Request #39.
- Compiler warnings in the test suite on Xcode 9.3 for the
characters
property onString
.- Fixed by Christian Noon in Pull Request #39.
Released on 2018-01-02. All issues associated with this milestone can be found using this filter.
- The Xcode project and Travis CI to support Xcode 9.2.
- Updated by Christian Noon in Pull Request #35.
Released on 2017-09-20. All issues associated with this milestone can be found using this filter.
- Migration Guide for Willow 5 and added it to the README.
- Added by Christian Noon in Pull Request #32.
- Log message string APIs to include
Message
suffix to remove ambiguity withLogMessage
APIs.- Updated by Christian Noon in Pull Request #32.
- The README to match the updated APIs.
- Updated by Christian Noon in Pull Request #32.
- The
Package
file to be compatible with SPM v4.- Updated by Christian Noon in Pull Request #32.
Released on 2017-08-30. All issues associated with this milestone can be found using this filter.
- Support for structured messages and simplified
Logger
setup. - New package file for Willow to support the Swift Package Manager.
- Added by Christian Noon in Pull Request #31.
- The Xcode project and source code to Swift 4.0.
- The log level enabled check to run prior to acquiring the lock or async dispatch queue resulting in a small performance gain.
- The example frameworks to not have a default logger instance.
- The example app configuration logic to match the new APIs.
- The
LogMessageWriter
protocol by splitting it into two new protocols:LogWriter
andLogModifierWriter
. The former is a basic writer. The latter is a writer that also accepts an array of modifiers to apply to incoming messages. - Example frameworks to show intended usage of the new
LogMessage
APIs.
LoggerConfiguration
entirely.Logger
construction now takes a log level, writers array, and execution method which greatly simplifies setup and usage.
Released on 2017-08-30. All issues associated with this milestone can be found using this filter.
- Xcode project to be compatible with Xcode 9 and Swift 3.2.
- Updated by Christian Noon in Pull Request #30.
- The
.swift-version
file to3.2
to support CocoaPods deployment.- Updated by Christian Noon in Pull Request #30.
Released on 2017-08-17. All issues associated with this milestone can be found using this filter.
- Network example framework to WebServices to avoid a name collision with an iOS 11 private framework with the same name.
- SWIFT_VERSION to 3.2 in all targets. All targets still build with Swift 3.1/Xcode 8.3.x.
- Copyright dates to 2017.
- ExecutionMethod enum casing in example.
- Updated by Eric Jensen in Pull Request #22.
- Compiler error for Swift 3.2/4.0.
- Remove redundant cast from Date to Date
- Fixed by Eric Jensen in Pull Request #23.
Released on 2017-01-13. All issues associated with this milestone can be found using this filter.
- A new
.swift-version
file for CocoaPods pointed at Swift 3.0.- Added by Christian Noon.
- A migration guide for the Willow 3.0 release.
- Added by Christian Noon in Pull Request #21.
- Support for
OSLogWriter
on macOS 10.12+ by removing preprocessor guards.- Added by Silvan Mosberger in Pull Request #19.
- The Travis-CI YAML file to Xcode 8.2 and the latest SDKs and destinations.
- Added by Silvan Mosberger in Pull Request #19.
- The Travis-CI YAML file by re-enabling
pod lib lint
since lint issue is resolved.- Updated by Christian Noon in Pull Request #21.
- The Xcode projects to Xcode 8.2 and disabled automatic signing on frameworks.
- Updated by Christian Noon in Pull Request #21.
- Instances of
OSX
withmacOS
including the framework and target names.- Updated by Christian Noon in Pull Request #21.
ExecutionMethod
enum cases to be lowercased to match Swift API Design Guidelines.- Updated by Christian Noon in Pull Request #21.
- Crash in WriterTests on iOS and tvOS 9 where
os_log
APIs are not available.- Fixed by Christian Noon in Pull Request #21.
- Compiler warnings in the example app around private and fileprivate ACLs.
- Fixed by Christian Noon in Pull Request #21.
Released on 2016-09-07. All issues associated with this milestone can be found using this filter.
OSLogWriter
to use theos_log
APIs indirectly through aLogger
instance.- Added by Christian Noon in Pull Request #14.
- The
Method
enumeration onConsoleWriter
to switch betweenprint
andNSLog
functions.- Added by Christian Noon in Pull Request #15.
- A Willow 2.0 Migration Guide detailing all breaking changes between 1.x and 2.0.
- Added by Christian Noon.
- All source, test and example logic and project settings to compile against Swift 3.0.
- Updated by Christian Noon in Pull Requests #8, #9 and #13.
- The
Formatter
protocol to beLogMessageModifier
to avoid naming collisions with Foundation.- Updated by Christian Noon in Pull Request #9.
- The
Writer
protocol to beLogMessageWriter
to matchLogMessageModifier
naming convention.- Updated by Christian Noon in Pull Request #9.
- The README and all sample code to match the new APIs and conventions.
- Updated by Christian Noon.
- Code generation from all framework targets by default due to instability issues.
- Removed by Christian Noon.
Released on 2016-09-07. All issues associated with this milestone can be found using this filter.
- All source, test and example logic to compile against Swift 2.3 and Xcode 8.
- Updated by Christian Noon.
- The Travis CI yaml file to build against iOS 10 and the new suite of simulators.
- Updated by Christian Noon.
- The iOS Example app to use emoticons in the
PrefixFormatter
.- Updated by Christian Noon.
- Slather reporting from the test suite due to instability issues with Xcode and Travis CI.
- Removed by Christian Noon.
- CocoaPods linting from the Travis CI yaml file due to current instabilities with Xcode 8.
- Removed by Christian Noon.
- The
ColorFormatter
and all logic associated with it since plugins are no longer supported.- Removed by Christian Noon.
- Removed the color formatting section and examples from the README.
- Removed by Christian Noon.
Released on 2016-07-11. All issues associated with this milestone can be found using this filter.
- The README to explain the differences between autoclosure and closure APIs.
- Updated by Christian Noon in Pull Request #4.
Released on 2016-06-27.
- Initial release of Willow.
- Added by Christian Noon.