Skip to content

Releases: codeFi/XcodeLogger

2.2.0

21 Jun 20:17

Choose a tag to compare

XcodeLogger 2.2.0

This release expands XcodeLogger around a synchronous core with asynchronous sink delivery and adds the main configuration APIs needed for production use.

Highlights

  • Scoped child loggers with category(_:) and scoped(...)
  • Per-sink policy for minimum levels, file overrides, regex category rules, sampling, and rate limiting
  • Global redaction for metadata keys and message bodies before sink rendering
  • Async-capable sink delivery with deterministic ordering on one internal serial coordinator
  • New FileSink with size-based rotation and archive retention
  • New package-shipped TestSink for logger-focused test suites
  • Simpler build gating with LoggerConfiguration.whenEnabled(_:)
  • Removal of the dead Objective-C implementation tree while keeping the Swift compatibility facade and Compatibility/XcodeLogger.h

Documentation Notes

The README now includes concrete 2.2 usage examples and guidelines for:

  • Scoped child logger composition
  • Build gating with whenEnabled(_:)
  • Redaction setup
  • Per-sink filtering policy
  • Sampling and rate limiting
  • Async file delivery and rotation
  • FileSink and TestSink usage

Validation

  • swift test passes on the release branch

2.1.0

21 Jun 19:48

Choose a tag to compare

Highlights

  • Add app-owned build-configuration gating via LoggerBuildConfigurationProviding and LoggerConfiguration.isEnabled
  • Suppress all logger output when logging is disabled for a build
  • Rename legacy OLog compatibility macros to NLog and the built-in category to networking
  • Rewrite the README from a migration-focused 2.1.0 perspective

XcodeLogger 2.0.0

21 Jun 18:02

Choose a tag to compare

XcodeLogger 2.0.0 refreshes the project as a Swift-first logging library, adds OSLog/DebugConsole/Stdout sinks, keeps demos in Examples while keeping SwiftPM library-only, replaces the legacy sample apps with new SwiftUI demos, and updates the README for the current package and sink behavior.

Version 1.2.1

30 Sep 18:50

Choose a tag to compare

  • Added a global filter option through the XL_FILTER_GLOBAL_LEVELS macro
  • A minor addition to XLogObject class which isn't used at this moment (the dealloc method)

Version 1.2.0

24 Aug 17:04

Choose a tag to compare

Bug fixes

  • Fixed some issues regarding Logs Header Descriptions
  • Fixed other issues throughout the library

Changes

  • More refactoring
  • _HIGHLIGHT log level renamed to _IMPORTANT
  • Deprecated setLogHeaderDescription:forLogType:level:
  • New method setLogHeaderDescription:forLogType:level:color:
  • New & Updated Color Themes
  • Added the option to set the same header format for all Log Types for a given level
  • Added the option to set the same log header description for all Log Types for a given level
  • Added the option to set the same text color for all Log Types for a given level
  • Added the option to set the same background color for all Log Types for a given level
  • Other minor improvements

Known bugs

If a project for the iOS platform is using the Xcode Logger library and the XcodeColors environment variable is set to YES while the Xcode Colors plugin isn't installed or loaded, the colors escape codes will appear in the console, scrambling the output.

Version 1.1.1

19 Aug 16:06

Choose a tag to compare

Changes

  1. LOTS & LOTS of refactoring!
  2. Log Filters
  3. Color Themes
  4. UIColor / NSColor support
  5. Log status description customization options

Known bugs

If a project for the iOS platform is using the Xcode Logger library and the XcodeColors environment variable is set to YES while the Xcode Colors plugin isn't installed or loaded, the colors escape codes will appear in the console, scrambling the output.

Version 1.0.1

11 Aug 20:46

Choose a tag to compare

Changes

  1. Added a check for Xcode Colors plugin. If the plugin isn't loaded (only on OS X) or enabled (both iOS and OS X), Xcode Logger will strip away any color escape codes.
  2. Fixed paths to Xcode Logger source files for sample projects.
  3. Removed the Tests target for the OSX Sample Project.
  4. Added License to source files.
  5. Code maintenance.
  6. Updated the Cocoapods repo.

Known bugs

If a project for the iOS platform is using the Xcode Logger library and the XcodeColors environment variable is set to YES while the Xcode Colors plugin isn't installed or loaded, the colors escape codes will appear in the console, scrambling the output.

The fix is to comment setenv("XcodeColors", "YES", 0) or set the variable to NO before building the project.

First Version

23 Aug 21:46

Choose a tag to compare

Initial release.