diff --git a/Example/Podfile.lock b/Example/Podfile.lock
index 323fa7d..885571b 100644
--- a/Example/Podfile.lock
+++ b/Example/Podfile.lock
@@ -1,5 +1,5 @@
PODS:
- - TimelineAnimations (2.9.2)
+ - TimelineAnimations (2.9.3)
DEPENDENCIES:
- TimelineAnimations (from `../`)
@@ -9,8 +9,8 @@ EXTERNAL SOURCES:
:path: "../"
SPEC CHECKSUMS:
- TimelineAnimations: a9eb43125bc8cc14b901c8d34e221862479c94f4
+ TimelineAnimations: 2a3fd03ab3ed90f7513bb35c1f354579368055ff
PODFILE CHECKSUM: 7793da11b2e6410c80174bd164f6005f5604edae
-COCOAPODS: 1.5.2
+COCOAPODS: 1.5.3
diff --git a/Example/Pods/Local Podspecs/TimelineAnimations.podspec.json b/Example/Pods/Local Podspecs/TimelineAnimations.podspec.json
index e601ca8..462b000 100644
--- a/Example/Pods/Local Podspecs/TimelineAnimations.podspec.json
+++ b/Example/Pods/Local Podspecs/TimelineAnimations.podspec.json
@@ -1,6 +1,6 @@
{
"name": "TimelineAnimations",
- "version": "2.9.2",
+ "version": "2.9.3",
"summary": "A powerfull wrapper around CoreAnimation that facilitates the sequencing of animations.",
"description": "A powerfull wrapper around CoreAnimation that facilitates the sequencing of animations.",
"homepage": "https://github.com/AbZorbaGames/TimelineAnimations",
@@ -13,7 +13,7 @@
},
"source": {
"git": "https://github.com/AbZorbaGames/TimelineAnimations",
- "tag": "2.9.2"
+ "tag": "2.9.3"
},
"platforms": {
"ios": "8.0"
diff --git a/Example/Pods/Manifest.lock b/Example/Pods/Manifest.lock
index 323fa7d..885571b 100644
--- a/Example/Pods/Manifest.lock
+++ b/Example/Pods/Manifest.lock
@@ -1,5 +1,5 @@
PODS:
- - TimelineAnimations (2.9.2)
+ - TimelineAnimations (2.9.3)
DEPENDENCIES:
- TimelineAnimations (from `../`)
@@ -9,8 +9,8 @@ EXTERNAL SOURCES:
:path: "../"
SPEC CHECKSUMS:
- TimelineAnimations: a9eb43125bc8cc14b901c8d34e221862479c94f4
+ TimelineAnimations: 2a3fd03ab3ed90f7513bb35c1f354579368055ff
PODFILE CHECKSUM: 7793da11b2e6410c80174bd164f6005f5604edae
-COCOAPODS: 1.5.2
+COCOAPODS: 1.5.3
diff --git a/Example/Pods/Target Support Files/TimelineAnimations/Info.plist b/Example/Pods/Target Support Files/TimelineAnimations/Info.plist
index f1c636a..8ae61ac 100644
--- a/Example/Pods/Target Support Files/TimelineAnimations/Info.plist
+++ b/Example/Pods/Target Support Files/TimelineAnimations/Info.plist
@@ -15,7 +15,7 @@
CFBundlePackageType
FMWK
CFBundleShortVersionString
- 2.9.2
+ 2.9.3
CFBundleSignature
????
CFBundleVersion
diff --git a/Example/TimelineAnimations.xcodeproj/project.pbxproj b/Example/TimelineAnimations.xcodeproj/project.pbxproj
index d97c409..dab7acb 100644
--- a/Example/TimelineAnimations.xcodeproj/project.pbxproj
+++ b/Example/TimelineAnimations.xcodeproj/project.pbxproj
@@ -7,20 +7,20 @@
objects = {
/* Begin PBXBuildFile section */
- 5FA5D23154879F1EA8534C5D /* Pods_TimelineAnimations_Tests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2C589FAACCB07788F106FD1C /* Pods_TimelineAnimations_Tests.framework */; };
+ 4B072C786F818A5D60A8EEEF /* Pods_TimelineAnimations_Tests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4CB12B22A05C3F88DB55D08D /* Pods_TimelineAnimations_Tests.framework */; };
607FACEC1AFB9204008FA782 /* Tests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 607FACEB1AFB9204008FA782 /* Tests.swift */; };
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
- 2C589FAACCB07788F106FD1C /* Pods_TimelineAnimations_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_TimelineAnimations_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ 1B3CFEFBDB433F89EE21998C /* Pods-TimelineAnimations_Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-TimelineAnimations_Tests.release.xcconfig"; path = "Pods/Target Support Files/Pods-TimelineAnimations_Tests/Pods-TimelineAnimations_Tests.release.xcconfig"; sourceTree = ""; };
+ 4CB12B22A05C3F88DB55D08D /* Pods_TimelineAnimations_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_TimelineAnimations_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; };
607FACE51AFB9204008FA782 /* TimelineAnimations_Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = TimelineAnimations_Tests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
607FACEA1AFB9204008FA782 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
607FACEB1AFB9204008FA782 /* Tests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Tests.swift; sourceTree = ""; };
7DF0FDEB75756812EDA11E7B /* TimelineAnimations.podspec */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = TimelineAnimations.podspec; path = ../TimelineAnimations.podspec; sourceTree = ""; };
+ 9509767CDFAC4D79C230DFDC /* Pods-TimelineAnimations_Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-TimelineAnimations_Tests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-TimelineAnimations_Tests/Pods-TimelineAnimations_Tests.debug.xcconfig"; sourceTree = ""; };
9EBC82B3A1A16869719C456C /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = LICENSE; path = ../LICENSE; sourceTree = ""; };
- B324451D22DAAB21A9B6277D /* Pods-TimelineAnimations_Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-TimelineAnimations_Tests.release.xcconfig"; path = "Pods/Target Support Files/Pods-TimelineAnimations_Tests/Pods-TimelineAnimations_Tests.release.xcconfig"; sourceTree = ""; };
C5EB4B51E30D309167AC31D0 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; name = README.md; path = ../README.md; sourceTree = ""; };
- DB44EEFC442D8F00355C7EC5 /* Pods-TimelineAnimations_Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-TimelineAnimations_Tests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-TimelineAnimations_Tests/Pods-TimelineAnimations_Tests.debug.xcconfig"; sourceTree = ""; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
@@ -28,7 +28,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
- 5FA5D23154879F1EA8534C5D /* Pods_TimelineAnimations_Tests.framework in Frameworks */,
+ 4B072C786F818A5D60A8EEEF /* Pods_TimelineAnimations_Tests.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -41,8 +41,8 @@
607FACF51AFB993E008FA782 /* Podspec Metadata */,
607FACE81AFB9204008FA782 /* Tests */,
607FACD11AFB9204008FA782 /* Products */,
- F5D6E02A3BF626BBE275D5F3 /* Pods */,
- 7823D121386CCBC3822ED6A2 /* Frameworks */,
+ AC589F9AC7FDCB727C4DDDF4 /* Pods */,
+ 8E49B719EBDF9DB393327172 /* Frameworks */,
);
sourceTree = "";
};
@@ -81,19 +81,19 @@
name = "Podspec Metadata";
sourceTree = "";
};
- 7823D121386CCBC3822ED6A2 /* Frameworks */ = {
+ 8E49B719EBDF9DB393327172 /* Frameworks */ = {
isa = PBXGroup;
children = (
- 2C589FAACCB07788F106FD1C /* Pods_TimelineAnimations_Tests.framework */,
+ 4CB12B22A05C3F88DB55D08D /* Pods_TimelineAnimations_Tests.framework */,
);
name = Frameworks;
sourceTree = "";
};
- F5D6E02A3BF626BBE275D5F3 /* Pods */ = {
+ AC589F9AC7FDCB727C4DDDF4 /* Pods */ = {
isa = PBXGroup;
children = (
- DB44EEFC442D8F00355C7EC5 /* Pods-TimelineAnimations_Tests.debug.xcconfig */,
- B324451D22DAAB21A9B6277D /* Pods-TimelineAnimations_Tests.release.xcconfig */,
+ 9509767CDFAC4D79C230DFDC /* Pods-TimelineAnimations_Tests.debug.xcconfig */,
+ 1B3CFEFBDB433F89EE21998C /* Pods-TimelineAnimations_Tests.release.xcconfig */,
);
name = Pods;
sourceTree = "";
@@ -105,11 +105,11 @@
isa = PBXNativeTarget;
buildConfigurationList = 607FACF21AFB9204008FA782 /* Build configuration list for PBXNativeTarget "TimelineAnimations_Tests" */;
buildPhases = (
- 7B114766FA8F2725926B9A11 /* [CP] Check Pods Manifest.lock */,
+ 93B07747D42A859135D97D1C /* [CP] Check Pods Manifest.lock */,
607FACE11AFB9204008FA782 /* Sources */,
607FACE21AFB9204008FA782 /* Frameworks */,
607FACE31AFB9204008FA782 /* Resources */,
- 91382B4F062D2D08B5AACA7E /* [CP] Embed Pods Frameworks */,
+ B89AFF6FE26527348EEF6AAC /* [CP] Embed Pods Frameworks */,
);
buildRules = (
);
@@ -166,7 +166,7 @@
/* End PBXResourcesBuildPhase section */
/* Begin PBXShellScriptBuildPhase section */
- 7B114766FA8F2725926B9A11 /* [CP] Check Pods Manifest.lock */ = {
+ 93B07747D42A859135D97D1C /* [CP] Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
@@ -184,7 +184,7 @@
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
showEnvVarsInLog = 0;
};
- 91382B4F062D2D08B5AACA7E /* [CP] Embed Pods Frameworks */ = {
+ B89AFF6FE26527348EEF6AAC /* [CP] Embed Pods Frameworks */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
@@ -353,7 +353,7 @@
};
607FACF31AFB9204008FA782 /* Debug */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = DB44EEFC442D8F00355C7EC5 /* Pods-TimelineAnimations_Tests.debug.xcconfig */;
+ baseConfigurationReference = 9509767CDFAC4D79C230DFDC /* Pods-TimelineAnimations_Tests.debug.xcconfig */;
buildSettings = {
FRAMEWORK_SEARCH_PATHS = (
"$(SDKROOT)/Developer/Library/Frameworks",
@@ -373,7 +373,7 @@
};
607FACF41AFB9204008FA782 /* Release */ = {
isa = XCBuildConfiguration;
- baseConfigurationReference = B324451D22DAAB21A9B6277D /* Pods-TimelineAnimations_Tests.release.xcconfig */;
+ baseConfigurationReference = 1B3CFEFBDB433F89EE21998C /* Pods-TimelineAnimations_Tests.release.xcconfig */;
buildSettings = {
FRAMEWORK_SEARCH_PATHS = (
"$(SDKROOT)/Developer/Library/Frameworks",
diff --git a/TimelineAnimations.podspec b/TimelineAnimations.podspec
index 2c0b81d..9f8f421 100644
--- a/TimelineAnimations.podspec
+++ b/TimelineAnimations.podspec
@@ -8,7 +8,7 @@
Pod::Spec.new do |s|
s.name = 'TimelineAnimations'
- s.version = '2.9.2'
+ s.version = '2.9.3'
s.summary = 'A powerfull wrapper around CoreAnimation that facilitates the sequencing of animations.'
# This description is used to generate tags and improve search results.
diff --git a/TimelineAnimations/Classes/objc/Categories/NSArray+TimelineSwiftyAdditions.m b/TimelineAnimations/Classes/objc/Categories/NSArray+TimelineSwiftyAdditions.m
index 8ba211b..6b01ea7 100644
--- a/TimelineAnimations/Classes/objc/Categories/NSArray+TimelineSwiftyAdditions.m
+++ b/TimelineAnimations/Classes/objc/Categories/NSArray+TimelineSwiftyAdditions.m
@@ -11,7 +11,7 @@
@implementation NSArray (TimelineSwiftyAdditions)
-- (NSArray *)_map:(id(^)(id))transform {
+- (NSArray *)_map:(NS_NOESCAPE id(^)(id))transform {
NSMutableArray *new = [[NSMutableArray alloc] initWithCapacity:self.count];
[self enumerateObjectsUsingBlock:^(id _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
id newObj = transform(obj);
@@ -20,7 +20,7 @@
return [new copy];
}
-- (id)_reduce:(id)result transform:(id(^)(id,id))next {
+- (id)_reduce:(id)result transform:(NS_NOESCAPE id(^)(id,id))next {
__block id res = result;
[self enumerateObjectsUsingBlock:^(id _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
res = next(res,obj);
@@ -28,7 +28,7 @@
return res;
}
-- (NSArray *)_filter:(BOOL(^)(id))isIncluded {
+- (NSArray *)_filter:(NS_NOESCAPE BOOL(^)(id))isIncluded {
NSMutableArray *new = [[NSMutableArray alloc] initWithCapacity:self.count];
[self enumerateObjectsUsingBlock:^(id _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (isIncluded(obj)) {
diff --git a/TimelineAnimations/Classes/objc/Categories/NSDictionary+TimelineSwiftyAdditions.m b/TimelineAnimations/Classes/objc/Categories/NSDictionary+TimelineSwiftyAdditions.m
index ecbd54c..2a029b7 100644
--- a/TimelineAnimations/Classes/objc/Categories/NSDictionary+TimelineSwiftyAdditions.m
+++ b/TimelineAnimations/Classes/objc/Categories/NSDictionary+TimelineSwiftyAdditions.m
@@ -11,7 +11,7 @@
@implementation NSDictionary (TimelineSwiftyAdditions)
-- (NSDictionary *)_mapValues:(id(^)(id))transform {
+- (NSDictionary *)_mapValues:(NS_NOESCAPE id(^)(id))transform {
@autoreleasepool {
id sharedKeyes = [NSDictionary sharedKeySetForKeys:self.allKeys];
NSMutableDictionary *new = [NSMutableDictionary sharedKeySetForKeys:sharedKeyes];
@@ -22,7 +22,7 @@
}
}
-- (NSDictionary *)_map:(id(^)(id,id))transform {
+- (NSDictionary *)_map:(NS_NOESCAPE id(^)(id,id))transform {
id sharedKeyes = [NSDictionary sharedKeySetForKeys:self.allKeys];
NSMutableDictionary *new = [NSMutableDictionary sharedKeySetForKeys:sharedKeyes];
@@ -32,7 +32,7 @@
return [new copy];
}
-- (id)_reduce:(id)result transform:(id(^)(id,id,id))next {
+- (id)_reduce:(id)result transform:(NS_NOESCAPE id(^)(id,id,id))next {
__block id res = result;
[self enumerateKeysAndObjectsUsingBlock:^(id _Nonnull key, id _Nonnull obj, BOOL * _Nonnull stop) {
res = next(res,key,obj);
@@ -40,7 +40,7 @@
return res;
}
-- (NSDictionary *)_filter:(id(^)(id,id))isIncluded {
+- (NSDictionary *)_filter:(NS_NOESCAPE id(^)(id,id))isIncluded {
id sharedKeyes = [NSDictionary sharedKeySetForKeys:self.allKeys];
NSMutableDictionary *new = [NSMutableDictionary sharedKeySetForKeys:sharedKeyes];
[new enumerateKeysAndObjectsUsingBlock:^(id _Nonnull key, id _Nonnull obj, BOOL * _Nonnull stop) {
diff --git a/TimelineAnimations/Classes/objc/Categories/NSSet+TimelineSwiftyAdditions.m b/TimelineAnimations/Classes/objc/Categories/NSSet+TimelineSwiftyAdditions.m
index 96810d8..3447c25 100644
--- a/TimelineAnimations/Classes/objc/Categories/NSSet+TimelineSwiftyAdditions.m
+++ b/TimelineAnimations/Classes/objc/Categories/NSSet+TimelineSwiftyAdditions.m
@@ -11,7 +11,7 @@
@implementation NSSet (TimelineSwiftyAdditions)
-- (NSArray *)_map:(id(^)(id))transform {
+- (NSArray *)_map:(NS_NOESCAPE id(^)(id))transform {
NSMutableArray *new = [[NSMutableArray alloc] initWithCapacity:self.count];
[self enumerateObjectsUsingBlock:^(id _Nonnull obj, BOOL * _Nonnull stop) {
id newObj = transform(obj);
@@ -20,7 +20,7 @@
return [new copy];
}
-- (id)_reduce:(id)result transform:(id(^)(id,id))next {
+- (id)_reduce:(id)result transform:(NS_NOESCAPE id(^)(id,id))next {
__block id res = result;
[self enumerateObjectsUsingBlock:^(id _Nonnull obj, BOOL * _Nonnull stop) {
res = next(res,obj);
@@ -28,7 +28,7 @@
return res;
}
-- (NSArray *)_filter:(id(^)(id))isIncluded {
+- (NSArray *)_filter:(NS_NOESCAPE id(^)(id))isIncluded {
NSMutableArray *new = [[NSMutableArray alloc] initWithCapacity:self.count];
[self enumerateObjectsUsingBlock:^(id _Nonnull obj, BOOL * _Nonnull stop) {
if (isIncluded(obj)) {