- Swift 3.0 and Xcode 8 support via #769, fixes #771 and #772. Many thanks to @ffried @max-potapov @chrisdoc @BarakRL @devxoul and the others who contributed
- Swift 2.3 explicit so that the project compiles on Xcode 8 - #747 #773 fix #762 #763 #766
- CocoaPods 1.0.0 fully adopted - 0f5a793 637dfc1 70439fe #729
- Fix CLIColor.h not found for non-AppKit binaries w/o clang modules #745
- Retrieve the
DDLogLevel
of each logger associated toDDLog
#753 - updated doc: #727 a9f54c9 #741, diagrams in 8bd128d
- Added CONTRIBUTING, ISSUE and PULL_REQUEST TEMPLATE and added a small Communication section to the Readme
- Fixed an issue with one demo #760
- Updated to Swift 2.2 - #704
- replaced deprecated
__FUNCTION__
,__FILE__
,__LINE__
with newly added to Swift 2.2:#function
,#file
,#line
- Xcode 7.3 update - #692 #662
- simplify usage and integration of the static library target - #657
- DDLog usable via instances - #679
- Swift cleanup - #649
- Enable Application extension API only for tvOS - #701
- Added
appletvos
andappletvsimulator
toSUPPORTED_PLATFORMS
and setTVOS_DEPLOYMENT_TARGET
- #707 - fixed
OSSpinLock
init issue - #653 - Added check to prevent duplicate loggers - #682
- fixed typo in import - #693
- updated the docs - #646 #650 #656 #655 #661 #664 #667 #684 #724
- added
tvOS
support (thanks @sinoru) - #634 #640 #630 #628 #618 #611 - Remove
(escaping)
from the Swift@autoclosure
parameters - #642
- Fixed the version for the Carthage builds - see #633
- Improved documentation
- Refactored the
NSDateFormatter
related code to fix a bunch of issues: #621 - Fix Issue #488: Support
DDLog
withoutAppKit Dependency
(#define DD_CLI
): #627 - Re-add
NS_DESIGNATED_INITIALIZER
#619
- Updated the library to use Swift 2.0 and Xcode 7 #617 #545 #534
- WatchOS support (2.0) #583 #581 #579
- Compatibility with Xcode 6 that was broken by the 2.0.2 patch - f042fd3
- Swift 1.2 fixes #546 #578 plus and update to Swift 2.0 5627dff imported from our swift_2.0 branch
- Make build work on
tvOS
#597 - Make
CocoaLumberjackSwift-iOS
target depends onCocoaLumberjack-iOS
#575 APPLICATION_EXTENSION_API_ONLY
toYES
for Extensions #576- Remove unnecessary
NS_DESIGNATED_INITIALIZER
s #593 fixes #592 - Add ignore warning mark for
DDMakeColor
#553 - Kill unused function warnings from
DDTTYLogger.h
#613 - Flag unused parameters as being unused to silence strict warnings #566
- Extend ignore unused warning pragma to cover all platforms #559
- Removed images.xcassets from Mobile project #580
- Silence the Xcode 7 upgrade check - #595
- Fix import for when CL framework files are manually imported into project #560
- Don't override defines in case they're already set at project level #551
- log full filepath when failing to set attribute #550
- Fix issue in standalone build with
DDLegacyMacros.h
#552 - Update
CustomFormatters.md
with proper thread-safe blurb #555 - typo in parameter's variable name fixed #568
- Typo: minor fix #571
- Surely we should be adding 1, not 0 for
OSAtomicAdd32
? #587 rollLogFileWithCompletionBlock
calls back on background queue instead of main queue #589- Removing extraneous
\
on line 55 #600 - Updated
GettingStarted.md
to includeddLogLevel
#602 - Remove redundant check for
processorCount
availability #604
- Carthage support #521 #526
- fixed crash on
DDASLLogCapture
whenTIME
orTIME_NSEC
isNULL
#484 - Swift fixes and improvements: #483 #509 #518 #522 5eafceb
- Unit tests: #500 #498 #499
- Fix #478 by reverting #473
- Add
armv7s
to static library #538 - Fix
NSLog
threadid
mismatch with iOS 8+/OSX 10.10+ #514 - Fixed the
LogV
macros so that avalist is no longer undefined #511 - Using type safe
DDColor
alias instead of #define directive #506 - Several fixes/tweaks to
DDASLLogCapture
#512 - Prevent duplicate log entries when both
DDASLLogCapture
andDDASLLogger
are used #515 - Fix memory leaks in
DDTTYLogger
, add self annotations to blocks #536 - Update older syntax to modern subscripting for array access #482
- Remove execute permission on non-executable files #517
- Change code samples to use
DDLogFlagWarning
#520 - Fix seemingly obvious typo in the
toLogLevel
function #508
The library was strongly refactored, with a few goals in mind:
- Swift support - that we will release in a separate milestone, since CocoaPods 0.36.0 just got out
- Unit tests support
- reorganised things (on disk)
- better coding style
- Bucket of Swift improvements - #434 #437 #449 #440
- Fixed #433 (build issue due to dispatch_queue properties) - #455
- Enable codesign for iOS device framework builds - #444
- Declare
automaticallyAppendNewlineForCustomFormatters
properties asnonatomic
- #443 - Warning fixes & type standardization - #419
- Legacy checks updated - #424
- Documentation updates
- Fix
dispatch_queue_t
properties. - Fix
registeredClasses
crashes at launch.
- Major refactoring and clean up.
- Remove superfluous
log
from property names and use underscore for direct variable access. - Preliminar Swift support through
CocoaLumberjack.swift
. - Automatic 1.9.x legacy support when
DDLog.h
is imported instead of the newCocoaLumberjack.h
.
- Modernize flag variables to be
NS_OPTIONS
/NS_ENUM
. - Change the log flags and levels to
NSUInteger
. - Fix warning when compiled with assertions blocked.
- Crash fixes.
- Cleanup code.
- Match
NSLog
read UID functionality inDDASLLogger
. - Update framework and static libraries.
- Fixed
NSCalendar components:fromDate:
crash - #140 #307 #216 - New
DDAssert
macros - #306 - Limit log growth by disk space only, not the number of files - #195 #303
- Change the mechanism for adding new line character (i.e. '\n) to log messages in some logger - #308 #310
- Fixed deprecations - #320 #312 #317
aslmsg
not freed and causing memory leak - #314- Fixed
CompresingLogFileManager
compression bug - #315 - Remove unnecessary
NULL
check beforefree()
- #316
- Fixed issues in rolling frequency - #243 #295 @georgekola
- Fixed critical issue,
addLogger
method should use a full bit mask instead ofLOG_LEVEL_VERBOSE
, otherwise extended logs or extra flags are ignored fe6824c @robbiehanson - Performance optimisation: use compiler macros to skip iOS version checks - 4656d3b #298 #291 @robbiehanson @liviur
- Changed the
Build Active Architecture Only
toNO
#294 #293 - Optimisation by reusing
NSDateFormatter
instances #296 #301
- New ASL capture module #242 #263
- Override default
NSFileProtection
handling #285 - Replaced warnings when ARC was not enabled with errors #284
- Fix for issue #278 where really large log files can keep growing #280
- Fixed Xcode warnings #279
- Update
calendarUnitFlags
with new iOS SDK values #277 - Fix possible crash in
[NSCalendar components:fromDate:]
#277 - Fix #262 inverted ifs when renaming log #264
- Proper way of doing singletons (via
dispatch_once
) #259 - Explicitly declare
DDFileLogger
andDDDispatchQueueLogFormatter
properties as atomic to avoid Xcode warnings #258 - Set
NSFileProtectionKey
on the temporary file created during compression #256 - Fix a rare crash in
CompressingLogFileManager
caused by an unchecked result from read #255 - Add explicit casts for integer conversion #253
- Replace use of
NSThread.detachNewThreadSelector
#251 - Add a constructor override for
initWithLogsDirectory:
#252 - Check and log the streamError whenever we fail to write during compression and log any failures when removing the original file or cleaning up the temporary file after compression failed #250
- Following Apple's guidelines for iOS Static Libraries #249
- Some extra warnings for the mobile framework xcode project a2e5666
- Update
FineGrainedLoggingAppDelegate.m
#244 - New
[DDLog log:message:]
primitive 7f8af2e - Fixed issue #181 when logging messages in iOS7 devices aren't properly retrieved by
asl_search
#240 - Allow prevention of log file reuse #238
DDTTYLogger
: Favour XcodeColors environment variable #237DDLog
: callingatexit_b
in CLI applications, that use Foundation framework #234
- read access to all loggers - #217 #219
- fixed bug with archived logs not being handled correctly on iOS simulator - #218
- log the
strerror(errno)
value whensetxattr()
fails - #211 - Add a check for an archived log before overwriting - #214
- improved safety by using assertions instead of comments (
DDLog
in the core) - #221 - added Lumberjack logo :)
DDFileLogger
custom logfile (name) format - #208- Security static analysis fix - #202
DDFileLogger
: usingCFBundleIdentifier
as a log filename prefix on OSX and iOS - #206- Allow disabling of specific levels per-logger - #204
- Improve support for OS X command line tools - #194
DDFileLogger
: fixed crash that occurred in case if application name == nil - #198DDFileLogger
: fixed comment - #199- Fix Travis - #205
- fixed compatibility with Xcode 4.4+ #187
DDFileLogger
refactoring and fixes (thanks @dvor and @an0):
- Fixed #63 Loggers don't flush in Command Line Tool #184
- Fixed #52 Force log rotation #183
- Fixed #55 After deleting log file or log dir they aren't created again without relaunching the app #183
- Fixed #129 [iOS]
DDFileLogger
causes crash when logging from background app #183 - Fixed #153 Log file on iPhone only contains a single line #177
- Fixed #155 How do I combine all my log levels into one file? #177
- Fixed #175
DFileLogger
creationDate
bug on 64-bit iOS system #177 - Allow customizing the naming convention for log files to use timestamps #174
Other:
- Implemented multiple formatter (
DDMultiFormatter
- alows chaining of formatters) #178 - Added DD preffix to extension classes (
ContextFilterLogFormatter
andDispatchQueueLogFormatter
) #178 - Updated code indentation: Tabs changed to spaces #180
- Included
DDLog+LOGV.h
in Cocoapods sources d253bd7 - other fixes/improvements
- "Fix" conflicts with 3rd party libraries using
CocoaLumberjack
#172 - Ignore deprecated warning for
dispatch_get_current_queue
#167 - Add new
DEBUG
log level support to included loggers #166 - Method declarations that make it easier to extend/modify
DispatchQueueLogFormatter
#164
- Add
LOGV
-style macros #161 - Fix getting queue's label #159
- New log level
DEBUG
#145 - Use
DISPATCH_CURRENT_QUEUE_LABEL
if available #159 - Different
logLevel
per each logger #151 - Created 2 subspecs,
Core
andExtensions
#152 - Updated observer for keypath using
NSStringFromSelector
+@selector
38e5da3 - Replaced
id
return type withinstancetype
ebee454 - Remove implicit conversion warnings #149
DDTTYLogger
: Allow to set default color profiles for all contexts at once #146 #158DDTTYLogger
: By default applysetForegroundColor:backgroundColor:forFlag:
toLOG_CONTEXT_ALL
#154DispatchQueueLogFormatter
: Use modern Objective-C #142DispatchQueueLogFormatter
: Make sure to always use aNSGregorianCalendar
for date formatter #142- Replaced explicit reference to class name in
logFileWithPath
factory method #131 - Catch exceptions in
logMessage:
#130 - Fix enum type conversion warnings #124
- Add deployment target condition for workaround #121
- Fix static analyzer warnings about
nil
values in dictionary #122 - Fix
dispatch_get_current_queue
crash #121 - Fixing colors in greyscale color-space not working d019cfd
- Guard around
dispatch_resume()
being called with null pointer #107 NULL
safety checks #107