From c92211f98b936da8b7b5e3e36593d75a99e17d63 Mon Sep 17 00:00:00 2001 From: Alberto De Bortoli Date: Mon, 1 Apr 2019 21:58:57 +0100 Subject: [PATCH] Swift 5 support --- Example/Podfile.lock | 6 +- .../Pods/Local Podspecs/Skopelos.podspec.json | 8 +- Example/Pods/Manifest.lock | 6 +- Example/Pods/Pods.xcodeproj/project.pbxproj | 458 +++++++++--------- .../xcschemes/Skopelos.xcscheme | 4 +- .../Pods-Skopelos_Example-Info.plist | 26 + ...Skopelos_Example-acknowledgements.markdown | 13 +- ...ds-Skopelos_Example-acknowledgements.plist | 13 +- .../Pods-Skopelos_Example-frameworks.sh | 28 +- .../Pods-Skopelos_Example.debug.xcconfig | 6 +- .../Pods-Skopelos_Example.release.xcconfig | 6 +- .../Pods-Skopelos_UnitTests-Info.plist | 26 + .../Pods-Skopelos_UnitTests.debug.xcconfig | 3 +- .../Pods-Skopelos_UnitTests.release.xcconfig | 3 +- .../Skopelos/Skopelos-Info.plist | 26 + .../Skopelos/Skopelos.xcconfig | 4 +- Example/Skopelos.xcodeproj/project.pbxproj | 11 +- .../UserInterfaceState.xcuserstate | Bin 51456 -> 53249 bytes Gemfile | 2 +- Gemfile.lock | 48 +- LICENSE | 2 +- Skopelos.podspec | 4 +- .../Extensions/NSManagedObject+Skopelos.swift | 26 +- .../Extensions/NSObject+Introspection.swift | 4 +- 24 files changed, 409 insertions(+), 324 deletions(-) create mode 100644 Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-Info.plist create mode 100644 Example/Pods/Target Support Files/Pods-Skopelos_UnitTests/Pods-Skopelos_UnitTests-Info.plist create mode 100644 Example/Pods/Target Support Files/Skopelos/Skopelos-Info.plist diff --git a/Example/Podfile.lock b/Example/Podfile.lock index fc1b2a3..de871db 100644 --- a/Example/Podfile.lock +++ b/Example/Podfile.lock @@ -1,5 +1,5 @@ PODS: - - Skopelos (2.3.1) + - Skopelos (2.4.0) DEPENDENCIES: - Skopelos (from `../`) @@ -9,8 +9,8 @@ EXTERNAL SOURCES: :path: "../" SPEC CHECKSUMS: - Skopelos: c7288f747de71a9cc09d15cb811f588578bfb269 + Skopelos: fec42040fad49a0fa2e52959e18178800e652aeb PODFILE CHECKSUM: a98061a7b34df316b0e9cf6cfeb958d787401759 -COCOAPODS: 1.5.3 +COCOAPODS: 1.6.1 diff --git a/Example/Pods/Local Podspecs/Skopelos.podspec.json b/Example/Pods/Local Podspecs/Skopelos.podspec.json index f2c8c7f..848e2b4 100644 --- a/Example/Pods/Local Podspecs/Skopelos.podspec.json +++ b/Example/Pods/Local Podspecs/Skopelos.podspec.json @@ -1,6 +1,6 @@ { "name": "Skopelos", - "version": "2.3.1", + "version": "2.4.0", "license": { "type": "MIT", "file": "LICENSE" @@ -9,11 +9,11 @@ "description": "A minimalistic, thread safe, non-boilerplate and super easy to use version of Active Record on Core Data. Simply all you need for doing Core Data. Swift flavour.", "homepage": "https://github.com/albertodebortoli/Skopelos", "authors": { - "Alberto De Bortoli": "albertodebortoli@gmail.com" + "Alberto De Bortoli": "albertodebortoli.website@gmail.com" }, "source": { "git": "https://github.com/albertodebortoli/Skopelos.git", - "tag": "2.3.1" + "tag": "2.4.0" }, "social_media_url": "https://twitter.com/albertodebo", "module_name": "Skopelos", @@ -21,7 +21,7 @@ "ios": "10.0", "watchos": "4.0" }, - "swift_version": "4.2", + "swift_version": "5.0", "source_files": "Skopelos/Classes/**/*", "resources": "Skopelos/Classes/**/*", "frameworks": [ diff --git a/Example/Pods/Manifest.lock b/Example/Pods/Manifest.lock index fc1b2a3..de871db 100644 --- a/Example/Pods/Manifest.lock +++ b/Example/Pods/Manifest.lock @@ -1,5 +1,5 @@ PODS: - - Skopelos (2.3.1) + - Skopelos (2.4.0) DEPENDENCIES: - Skopelos (from `../`) @@ -9,8 +9,8 @@ EXTERNAL SOURCES: :path: "../" SPEC CHECKSUMS: - Skopelos: c7288f747de71a9cc09d15cb811f588578bfb269 + Skopelos: fec42040fad49a0fa2e52959e18178800e652aeb PODFILE CHECKSUM: a98061a7b34df316b0e9cf6cfeb958d787401759 -COCOAPODS: 1.5.3 +COCOAPODS: 1.6.1 diff --git a/Example/Pods/Pods.xcodeproj/project.pbxproj b/Example/Pods/Pods.xcodeproj/project.pbxproj index 6b2618c..a87cbb4 100644 --- a/Example/Pods/Pods.xcodeproj/project.pbxproj +++ b/Example/Pods/Pods.xcodeproj/project.pbxproj @@ -8,26 +8,26 @@ /* Begin PBXBuildFile section */ 104F3BDB2A6D6349C7907B749BA54A21 /* DALProtocol.swift in Resources */ = {isa = PBXBuildFile; fileRef = 498FE040B181A5BA1BD4C0D8CFD06848 /* DALProtocol.swift */; }; - 1416AD3B3E9AA038E9EF9C388B4DDF1C /* Skopelos-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 20704F83FC0CFED1EA10C96C486F2CE3 /* Skopelos-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 1416AD3B3E9AA038E9EF9C388B4DDF1C /* Skopelos-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 9F2F5AEA90CF4FA5E0A1F2DE745BFB71 /* Skopelos-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 14B6667A9AD11872E8C0B28D14BD233F /* NSManagedObject+Skopelos.swift in Resources */ = {isa = PBXBuildFile; fileRef = 113A87565FDAB4BD73ED7DE88FECC9A0 /* NSManagedObject+Skopelos.swift */; }; 16FB30A1765944AD08545CBEDF1A2F6B /* CommandModelProtocol.swift in Resources */ = {isa = PBXBuildFile; fileRef = 7E0FE3266A58C644E55740B9C8231CE6 /* CommandModelProtocol.swift */; }; 1839F98E8A00711CEF9540E32353EA26 /* Skopelos.swift in Resources */ = {isa = PBXBuildFile; fileRef = 9B7314C641A6938FB0F689D456CD881D /* Skopelos.swift */; }; 191D00A9A4F6CED3D535A420B610F6AF /* AppStateReactor.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1319C2A475E61E81F48686E92E6D16A /* AppStateReactor.swift */; }; 1A2FD0D35E845A517BCFBFC72FC1510F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 845780EC2D8DAA61EF61AB8C461A181D /* Foundation.framework */; }; 1AE9DA4DFD602A593C6EBEEB7D8D090B /* CoreDataStack.swift in Resources */ = {isa = PBXBuildFile; fileRef = 7F9F8695C1BB243B4CB05B48F2E6E668 /* CoreDataStack.swift */; }; - 1B0964CC1A5EB65047E264F16B254CD7 /* Pods-Skopelos_UnitTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = E3A2424B6BB73B7B09C24BEA213E56D5 /* Pods-Skopelos_UnitTests-dummy.m */; }; + 1B0964CC1A5EB65047E264F16B254CD7 /* Pods-Skopelos_UnitTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 5C672B9603828BCC12C177482261041C /* Pods-Skopelos_UnitTests-dummy.m */; }; 1E752E4987C1DFA93F9E348410F221CD /* NSObject+Introspection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C059920E8C585B81C3FE18E7A9B92BB /* NSObject+Introspection.swift */; }; - 26C846FA45513BD496DC84E79181C8CD /* Pods-Skopelos_UnitTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 0946C9EE686C4A246DB3A20C8D51F1FC /* Pods-Skopelos_UnitTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 26C846FA45513BD496DC84E79181C8CD /* Pods-Skopelos_UnitTests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 9F17A4B51DF18D2AA99447A429397C3B /* Pods-Skopelos_UnitTests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 282C36C2972560755AF7BE108D2314C6 /* String+Bool.swift in Sources */ = {isa = PBXBuildFile; fileRef = B0A92575435223DDEF03B42FAA825D93 /* String+Bool.swift */; }; 3FC2EC5F4502886DA733384641B75B49 /* Protocols in Resources */ = {isa = PBXBuildFile; fileRef = 58B1E3DCB721B68A66F517E6E808823F /* Protocols */; }; 52ECA58F21B3BCF1B1F7FB69F05FC056 /* QueryModelProtocol.swift in Resources */ = {isa = PBXBuildFile; fileRef = 432B0335BF4183FF8F1FE65FAD659AE5 /* QueryModelProtocol.swift */; }; - 5E835B4C035C71BB1E903AE724B0FABF /* Skopelos-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A175453ACF6E1F2DEB14B1B48EF986AB /* Skopelos-dummy.m */; }; + 5E835B4C035C71BB1E903AE724B0FABF /* Skopelos-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 024E045810F70BD7B0C2A94E25F99AD2 /* Skopelos-dummy.m */; }; 69FCBF0CF9E3145F9D124DF807F62F11 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 845780EC2D8DAA61EF61AB8C461A181D /* Foundation.framework */; }; 7C7511AD4BB0A865A32F5724549301B2 /* DALProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 498FE040B181A5BA1BD4C0D8CFD06848 /* DALProtocol.swift */; }; 81D86ED62A50E37639B5352FF864AEBC /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0A0DE1D7094780E8325380D5B7F11305 /* UIKit.framework */; }; 82517D29D374EBBADB3B19664EBDF100 /* CoreDataStack.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F9F8695C1BB243B4CB05B48F2E6E668 /* CoreDataStack.swift */; }; 85FA7087B5B468753FCB8E1AC8BEB71E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 845780EC2D8DAA61EF61AB8C461A181D /* Foundation.framework */; }; - 89E4AEF68AD5F5368AF7179FEDF28508 /* Pods-Skopelos_Example-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 66D82DE0FC8A3231FC07914017477309 /* Pods-Skopelos_Example-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 89E4AEF68AD5F5368AF7179FEDF28508 /* Pods-Skopelos_Example-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = AB9F8A256C42DF5D0A3069EDC6B42B9B /* Pods-Skopelos_Example-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 8BE07E3728C4A08DB9B0DB82C6A03C10 /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3FAB8AB80EF91CD677DEB2E5BE6F8BF2 /* CoreData.framework */; }; 8BE82A827968043D2AC2823B7B47649B /* AppStateReactor.swift in Resources */ = {isa = PBXBuildFile; fileRef = B1319C2A475E61E81F48686E92E6D16A /* AppStateReactor.swift */; }; 934F41DBB8E3DA199068B595F1F98336 /* Extensions in Resources */ = {isa = PBXBuildFile; fileRef = C4E304B0660F3D02FB7FE5EE8668CA5D /* Extensions */; }; @@ -37,7 +37,7 @@ A727D6CEE879686F6C59E38A2B3CA872 /* String+Bool.swift in Resources */ = {isa = PBXBuildFile; fileRef = B0A92575435223DDEF03B42FAA825D93 /* String+Bool.swift */; }; B3CFD357AD9959604FF3A8C0082D9706 /* QueryModelProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 432B0335BF4183FF8F1FE65FAD659AE5 /* QueryModelProtocol.swift */; }; B7D9D6C2DFA6DE36307AEC1D38308B1E /* CoreDataStackProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA8BF5E10DCC3A3E86CCEF83BE7EF882 /* CoreDataStackProtocol.swift */; }; - BAC9FD69F2722FCB2D684564681E9AB1 /* Pods-Skopelos_Example-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7E7C91BFAED76B6AF901922228CAF9FD /* Pods-Skopelos_Example-dummy.m */; }; + BAC9FD69F2722FCB2D684564681E9AB1 /* Pods-Skopelos_Example-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 2E3A80F45BDA7B3BA44107225BFA9A38 /* Pods-Skopelos_Example-dummy.m */; }; C00D30D2592E1A150CE6206F99E4A24C /* NSManagedObject+Skopelos.swift in Sources */ = {isa = PBXBuildFile; fileRef = 113A87565FDAB4BD73ED7DE88FECC9A0 /* NSManagedObject+Skopelos.swift */; }; C1221E1E9EF26D0C7C0DA6EF69925888 /* CoreDataStackProtocol.swift in Resources */ = {isa = PBXBuildFile; fileRef = FA8BF5E10DCC3A3E86CCEF83BE7EF882 /* CoreDataStackProtocol.swift */; }; C6F0AF61F183240246C846DD9ED9D125 /* Skopelos.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B7314C641A6938FB0F689D456CD881D /* Skopelos.swift */; }; @@ -63,54 +63,51 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 0946C9EE686C4A246DB3A20C8D51F1FC /* Pods-Skopelos_UnitTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Skopelos_UnitTests-umbrella.h"; sourceTree = ""; }; + 024E045810F70BD7B0C2A94E25F99AD2 /* Skopelos-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Skopelos-dummy.m"; sourceTree = ""; }; + 0696A0A1F20F12F93F1B705B012DB5F4 /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; + 096D7E069031792D36447F914AD23534 /* Pods-Skopelos_UnitTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Skopelos_UnitTests-acknowledgements.plist"; sourceTree = ""; }; 0A0DE1D7094780E8325380D5B7F11305 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; }; 0C059920E8C585B81C3FE18E7A9B92BB /* NSObject+Introspection.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "NSObject+Introspection.swift"; sourceTree = ""; }; + 0DBC1CF999BC3DC0D704468A606AC6AA /* Skopelos-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Skopelos-Info.plist"; sourceTree = ""; }; 113A87565FDAB4BD73ED7DE88FECC9A0 /* NSManagedObject+Skopelos.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "NSManagedObject+Skopelos.swift"; sourceTree = ""; }; - 13E8E69B675E22E4DE857FDF0AEEDD4C /* Pods-Skopelos_Example-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Skopelos_Example-acknowledgements.markdown"; sourceTree = ""; }; - 1724A129A1D84438B8EE07B40731158A /* Skopelos.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; lastKnownFileType = text; path = Skopelos.podspec; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - 19730EC4FCD19065A5299E1D34E790BA /* Pods-Skopelos_UnitTests-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Skopelos_UnitTests-resources.sh"; sourceTree = ""; }; - 1A8168012EBAEB2CF647218E08A4F66B /* Pods-Skopelos_UnitTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Skopelos_UnitTests-acknowledgements.markdown"; sourceTree = ""; }; - 1B81FDFA43472BABFB33A2E1508ADDB4 /* Skopelos.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Skopelos.xcconfig; sourceTree = ""; }; - 20704F83FC0CFED1EA10C96C486F2CE3 /* Skopelos-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Skopelos-umbrella.h"; sourceTree = ""; }; - 24390EFD555DD124430DFF9724065945 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - 33ECD95C66E1156C9BDFF4BFEDC2BD57 /* Pods-Skopelos_UnitTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Skopelos_UnitTests.release.xcconfig"; sourceTree = ""; }; - 349BB589DDEB8AD87BFAF0A4319BC415 /* Pods-Skopelos_Example.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Skopelos_Example.debug.xcconfig"; sourceTree = ""; }; - 38F0782A282590263AB71EC1A2D5C662 /* Pods-Skopelos_UnitTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Skopelos_UnitTests-acknowledgements.plist"; sourceTree = ""; }; - 3CFAA329DBA6160797885BEECF54A6D0 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 195C473B15758D847963E3DD48368A90 /* Skopelos.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; path = Skopelos.podspec; sourceTree = ""; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 25935F09E524277AF3D235D28F3E63F8 /* Pods-Skopelos_UnitTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Skopelos_UnitTests.release.xcconfig"; sourceTree = ""; }; + 28027CDCC21BAE9741C2B3F069135406 /* Pods-Skopelos_Example.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Skopelos_Example.debug.xcconfig"; sourceTree = ""; }; + 2BA2B2FB48C6A2A9BE3991E50917BE18 /* Skopelos.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Skopelos.xcconfig; sourceTree = ""; }; + 2E3A80F45BDA7B3BA44107225BFA9A38 /* Pods-Skopelos_Example-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Skopelos_Example-dummy.m"; sourceTree = ""; }; + 30C0844F98FFE6452E4FAFCBE2352743 /* Pods-Skopelos_Example-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Skopelos_Example-acknowledgements.markdown"; sourceTree = ""; }; 3FAB8AB80EF91CD677DEB2E5BE6F8BF2 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/CoreData.framework; sourceTree = DEVELOPER_DIR; }; 432B0335BF4183FF8F1FE65FAD659AE5 /* QueryModelProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = QueryModelProtocol.swift; sourceTree = ""; }; - 43F9D0515A2D53B446154AC76DC21079 /* Pods-Skopelos_Example-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Skopelos_Example-resources.sh"; sourceTree = ""; }; - 455B31262E49FCA603B740021C74FC30 /* Pods-Skopelos_UnitTests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Skopelos_UnitTests-frameworks.sh"; sourceTree = ""; }; 498FE040B181A5BA1BD4C0D8CFD06848 /* DALProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DALProtocol.swift; sourceTree = ""; }; - 4C3117F1A62CCDBD9FD648D915D7F1BF /* Skopelos.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Skopelos.modulemap; sourceTree = ""; }; + 536C98FA7B5119973D85C0A080FF1493 /* Pods-Skopelos_UnitTests-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Skopelos_UnitTests-Info.plist"; sourceTree = ""; }; 58B1E3DCB721B68A66F517E6E808823F /* Protocols */ = {isa = PBXFileReference; includeInIndex = 1; name = Protocols; path = Skopelos/Classes/Protocols; sourceTree = ""; }; - 66D82DE0FC8A3231FC07914017477309 /* Pods-Skopelos_Example-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Skopelos_Example-umbrella.h"; sourceTree = ""; }; - 6D0E160D015B14BCB20201D4FED7B81E /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE; sourceTree = ""; }; - 6DCB84975FC7F10B819BBA3C1DDD1029 /* Pods-Skopelos_Example-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Skopelos_Example-acknowledgements.plist"; sourceTree = ""; }; - 714C126A6CEB3C753FF663532C69D3A9 /* Pods-Skopelos_Example-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Skopelos_Example-frameworks.sh"; sourceTree = ""; }; + 5C672B9603828BCC12C177482261041C /* Pods-Skopelos_UnitTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Skopelos_UnitTests-dummy.m"; sourceTree = ""; }; 7724DE5772CDCA1672930EE772F195C9 /* Pods_Skopelos_Example.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_Skopelos_Example.framework; path = "Pods-Skopelos_Example.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 77587189F35E434F9E72D2C5C114C55D /* Pods-Skopelos_Example.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Skopelos_Example.release.xcconfig"; sourceTree = ""; }; + 77BA2ED49135CBE40A4F7630723B081C /* Pods-Skopelos_UnitTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Skopelos_UnitTests-acknowledgements.markdown"; sourceTree = ""; }; 79C8A8283CCC5F830D795C4D6B17896A /* Skopelos.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Skopelos.framework; path = Skopelos.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 7BA53F8A8340DE25829EA114A9626C9A /* Pods-Skopelos_Example.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Skopelos_Example.modulemap"; sourceTree = ""; }; + 7DE0D64EE8CA2B0ECDF7170E495FA527 /* Pods-Skopelos_Example-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Skopelos_Example-Info.plist"; sourceTree = ""; }; 7E0FE3266A58C644E55740B9C8231CE6 /* CommandModelProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CommandModelProtocol.swift; sourceTree = ""; }; - 7E7C91BFAED76B6AF901922228CAF9FD /* Pods-Skopelos_Example-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Skopelos_Example-dummy.m"; sourceTree = ""; }; 7F9F8695C1BB243B4CB05B48F2E6E668 /* CoreDataStack.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CoreDataStack.swift; sourceTree = ""; }; 845780EC2D8DAA61EF61AB8C461A181D /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; - 8A4C477BCBB9F49A89CF757F9020B128 /* Pods-Skopelos_UnitTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Skopelos_UnitTests.debug.xcconfig"; sourceTree = ""; }; - 8CEB0E2F3D690DC94E409A3E292D9A75 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 9064530F6D908D82886108B01B6F3AAE /* Pods_Skopelos_UnitTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_Skopelos_UnitTests.framework; path = "Pods-Skopelos_UnitTests.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; 9B7314C641A6938FB0F689D456CD881D /* Skopelos.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Skopelos.swift; path = Skopelos/Classes/Skopelos.swift; sourceTree = ""; }; - A175453ACF6E1F2DEB14B1B48EF986AB /* Skopelos-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Skopelos-dummy.m"; sourceTree = ""; }; + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 9F17A4B51DF18D2AA99447A429397C3B /* Pods-Skopelos_UnitTests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Skopelos_UnitTests-umbrella.h"; sourceTree = ""; }; + 9F2F5AEA90CF4FA5E0A1F2DE745BFB71 /* Skopelos-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Skopelos-umbrella.h"; sourceTree = ""; }; + AB9F8A256C42DF5D0A3069EDC6B42B9B /* Pods-Skopelos_Example-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Skopelos_Example-umbrella.h"; sourceTree = ""; }; B0A92575435223DDEF03B42FAA825D93 /* String+Bool.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = "String+Bool.swift"; sourceTree = ""; }; B1319C2A475E61E81F48686E92E6D16A /* AppStateReactor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AppStateReactor.swift; sourceTree = ""; }; B769F10740B5CEE453A499D0CFD5F27D /* Core */ = {isa = PBXFileReference; includeInIndex = 1; name = Core; path = Skopelos/Classes/Core; sourceTree = ""; }; - B8382B3194D5D63A88A85F04ECA7C216 /* Skopelos-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Skopelos-prefix.pch"; sourceTree = ""; }; - BEB6D2A513C0AEE7ED7AC18F2B1F351B /* Pods-Skopelos_UnitTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Skopelos_UnitTests.modulemap"; sourceTree = ""; }; - C31FB4143E4DCAD4DAB2DAA5525F15A5 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + BB14CD51DC9613C8675544A9239AB95C /* Pods-Skopelos_UnitTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Skopelos_UnitTests.debug.xcconfig"; sourceTree = ""; }; + BD30F53BC3BE70AE903FC103B47F81A8 /* Pods-Skopelos_Example-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Skopelos_Example-acknowledgements.plist"; sourceTree = ""; }; C4E304B0660F3D02FB7FE5EE8668CA5D /* Extensions */ = {isa = PBXFileReference; includeInIndex = 1; name = Extensions; path = Skopelos/Classes/Extensions; sourceTree = ""; }; - D72A8C7B533D8540A5AB4ABD17133E95 /* Pods-Skopelos_Example.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Skopelos_Example.modulemap"; sourceTree = ""; }; - D8263054A4C09460BD9481528AB054CB /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; path = README.md; sourceTree = ""; }; - E3A2424B6BB73B7B09C24BEA213E56D5 /* Pods-Skopelos_UnitTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Skopelos_UnitTests-dummy.m"; sourceTree = ""; }; + C50F53763F5A28AB472217AB0FB769B4 /* Skopelos-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Skopelos-prefix.pch"; sourceTree = ""; }; + C5BEED04A61B11FEEFA60272522E9082 /* Skopelos.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Skopelos.modulemap; sourceTree = ""; }; + E0B7753CC0EA4DF2F0D4BEDBC2D52438 /* Pods-Skopelos_UnitTests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-Skopelos_UnitTests.modulemap"; sourceTree = ""; }; + E14DE1F2C327EE2C6D42DF41E11FD2FD /* Pods-Skopelos_Example.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Skopelos_Example.release.xcconfig"; sourceTree = ""; }; + F0A014504919705FD8D37C18231C0CBA /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; path = LICENSE; sourceTree = ""; }; + F2284038A8453342D3A4B6EA5A15F68E /* Pods-Skopelos_Example-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Skopelos_Example-frameworks.sh"; sourceTree = ""; }; F94840AB37BC77F1022F69013EF6314A /* DALService.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DALService.swift; sourceTree = ""; }; FA8BF5E10DCC3A3E86CCEF83BE7EF882 /* CoreDataStackProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CoreDataStackProtocol.swift; sourceTree = ""; }; /* End PBXFileReference section */ @@ -163,22 +160,14 @@ name = Resources; sourceTree = ""; }; - 159B048194E576E8F8241A3A0F26ACC6 /* Pods-Skopelos_Example */ = { + 12C17D5DAAC8E53F6BAB81E85F6B418E /* Pod */ = { isa = PBXGroup; children = ( - 8CEB0E2F3D690DC94E409A3E292D9A75 /* Info.plist */, - D72A8C7B533D8540A5AB4ABD17133E95 /* Pods-Skopelos_Example.modulemap */, - 13E8E69B675E22E4DE857FDF0AEEDD4C /* Pods-Skopelos_Example-acknowledgements.markdown */, - 6DCB84975FC7F10B819BBA3C1DDD1029 /* Pods-Skopelos_Example-acknowledgements.plist */, - 7E7C91BFAED76B6AF901922228CAF9FD /* Pods-Skopelos_Example-dummy.m */, - 714C126A6CEB3C753FF663532C69D3A9 /* Pods-Skopelos_Example-frameworks.sh */, - 43F9D0515A2D53B446154AC76DC21079 /* Pods-Skopelos_Example-resources.sh */, - 66D82DE0FC8A3231FC07914017477309 /* Pods-Skopelos_Example-umbrella.h */, - 349BB589DDEB8AD87BFAF0A4319BC415 /* Pods-Skopelos_Example.debug.xcconfig */, - 77587189F35E434F9E72D2C5C114C55D /* Pods-Skopelos_Example.release.xcconfig */, + F0A014504919705FD8D37C18231C0CBA /* LICENSE */, + 0696A0A1F20F12F93F1B705B012DB5F4 /* README.md */, + 195C473B15758D847963E3DD48368A90 /* Skopelos.podspec */, ); - name = "Pods-Skopelos_Example"; - path = "Target Support Files/Pods-Skopelos_Example"; + name = Pod; sourceTree = ""; }; 15DD3994C532A235125F61950C2FBFC7 /* Extensions */ = { @@ -200,56 +189,35 @@ name = "Development Pods"; sourceTree = ""; }; - 200B98A9AB6E7530050A658A723FBD21 /* Pods-Skopelos_UnitTests */ = { - isa = PBXGroup; - children = ( - C31FB4143E4DCAD4DAB2DAA5525F15A5 /* Info.plist */, - BEB6D2A513C0AEE7ED7AC18F2B1F351B /* Pods-Skopelos_UnitTests.modulemap */, - 1A8168012EBAEB2CF647218E08A4F66B /* Pods-Skopelos_UnitTests-acknowledgements.markdown */, - 38F0782A282590263AB71EC1A2D5C662 /* Pods-Skopelos_UnitTests-acknowledgements.plist */, - E3A2424B6BB73B7B09C24BEA213E56D5 /* Pods-Skopelos_UnitTests-dummy.m */, - 455B31262E49FCA603B740021C74FC30 /* Pods-Skopelos_UnitTests-frameworks.sh */, - 19730EC4FCD19065A5299E1D34E790BA /* Pods-Skopelos_UnitTests-resources.sh */, - 0946C9EE686C4A246DB3A20C8D51F1FC /* Pods-Skopelos_UnitTests-umbrella.h */, - 8A4C477BCBB9F49A89CF757F9020B128 /* Pods-Skopelos_UnitTests.debug.xcconfig */, - 33ECD95C66E1156C9BDFF4BFEDC2BD57 /* Pods-Skopelos_UnitTests.release.xcconfig */, - ); - name = "Pods-Skopelos_UnitTests"; - path = "Target Support Files/Pods-Skopelos_UnitTests"; - sourceTree = ""; - }; 3DED8778A82996AE22B892304E32A243 /* Skopelos */ = { isa = PBXGroup; children = ( 9B7314C641A6938FB0F689D456CD881D /* Skopelos.swift */, 9FA712B90E212CC10B74E79D4B782810 /* Core */, 15DD3994C532A235125F61950C2FBFC7 /* Extensions */, - 6B3884A9CA0D81F39033CB41682029AB /* Pod */, + 12C17D5DAAC8E53F6BAB81E85F6B418E /* Pod */, B3BC60AB2ABA9001A0B2A52D1264E51F /* Protocols */, 0EE632D3D494641DE552A8D9924D1192 /* Resources */, - CDE4EDCE28AA7BFBF53B069B68088741 /* Support Files */, + C91B9A461AB305C749B096B4DE98B977 /* Support Files */, ); name = Skopelos; path = ../..; sourceTree = ""; }; - 60FC246AEBAA00F56088A930D18D5BAF /* Targets Support Files */ = { - isa = PBXGroup; - children = ( - 159B048194E576E8F8241A3A0F26ACC6 /* Pods-Skopelos_Example */, - 200B98A9AB6E7530050A658A723FBD21 /* Pods-Skopelos_UnitTests */, - ); - name = "Targets Support Files"; - sourceTree = ""; - }; - 6B3884A9CA0D81F39033CB41682029AB /* Pod */ = { + 954183176364625C51347B5D978E6FF0 /* Pods-Skopelos_UnitTests */ = { isa = PBXGroup; children = ( - 6D0E160D015B14BCB20201D4FED7B81E /* LICENSE */, - D8263054A4C09460BD9481528AB054CB /* README.md */, - 1724A129A1D84438B8EE07B40731158A /* Skopelos.podspec */, + E0B7753CC0EA4DF2F0D4BEDBC2D52438 /* Pods-Skopelos_UnitTests.modulemap */, + 77BA2ED49135CBE40A4F7630723B081C /* Pods-Skopelos_UnitTests-acknowledgements.markdown */, + 096D7E069031792D36447F914AD23534 /* Pods-Skopelos_UnitTests-acknowledgements.plist */, + 5C672B9603828BCC12C177482261041C /* Pods-Skopelos_UnitTests-dummy.m */, + 536C98FA7B5119973D85C0A080FF1493 /* Pods-Skopelos_UnitTests-Info.plist */, + 9F17A4B51DF18D2AA99447A429397C3B /* Pods-Skopelos_UnitTests-umbrella.h */, + BB14CD51DC9613C8675544A9239AB95C /* Pods-Skopelos_UnitTests.debug.xcconfig */, + 25935F09E524277AF3D235D28F3E63F8 /* Pods-Skopelos_UnitTests.release.xcconfig */, ); - name = Pod; + name = "Pods-Skopelos_UnitTests"; + path = "Target Support Files/Pods-Skopelos_UnitTests"; sourceTree = ""; }; 9FA712B90E212CC10B74E79D4B782810 /* Core */ = { @@ -285,15 +253,41 @@ name = Products; sourceTree = ""; }; - CDE4EDCE28AA7BFBF53B069B68088741 /* Support Files */ = { + C1D605D9B5F48CAAB77E5816DB731452 /* Targets Support Files */ = { + isa = PBXGroup; + children = ( + C5E9BBE02CC79004B818AFA135D084B9 /* Pods-Skopelos_Example */, + 954183176364625C51347B5D978E6FF0 /* Pods-Skopelos_UnitTests */, + ); + name = "Targets Support Files"; + sourceTree = ""; + }; + C5E9BBE02CC79004B818AFA135D084B9 /* Pods-Skopelos_Example */ = { + isa = PBXGroup; + children = ( + 7BA53F8A8340DE25829EA114A9626C9A /* Pods-Skopelos_Example.modulemap */, + 30C0844F98FFE6452E4FAFCBE2352743 /* Pods-Skopelos_Example-acknowledgements.markdown */, + BD30F53BC3BE70AE903FC103B47F81A8 /* Pods-Skopelos_Example-acknowledgements.plist */, + 2E3A80F45BDA7B3BA44107225BFA9A38 /* Pods-Skopelos_Example-dummy.m */, + F2284038A8453342D3A4B6EA5A15F68E /* Pods-Skopelos_Example-frameworks.sh */, + 7DE0D64EE8CA2B0ECDF7170E495FA527 /* Pods-Skopelos_Example-Info.plist */, + AB9F8A256C42DF5D0A3069EDC6B42B9B /* Pods-Skopelos_Example-umbrella.h */, + 28027CDCC21BAE9741C2B3F069135406 /* Pods-Skopelos_Example.debug.xcconfig */, + E14DE1F2C327EE2C6D42DF41E11FD2FD /* Pods-Skopelos_Example.release.xcconfig */, + ); + name = "Pods-Skopelos_Example"; + path = "Target Support Files/Pods-Skopelos_Example"; + sourceTree = ""; + }; + C91B9A461AB305C749B096B4DE98B977 /* Support Files */ = { isa = PBXGroup; children = ( - 3CFAA329DBA6160797885BEECF54A6D0 /* Info.plist */, - 4C3117F1A62CCDBD9FD648D915D7F1BF /* Skopelos.modulemap */, - 1B81FDFA43472BABFB33A2E1508ADDB4 /* Skopelos.xcconfig */, - A175453ACF6E1F2DEB14B1B48EF986AB /* Skopelos-dummy.m */, - B8382B3194D5D63A88A85F04ECA7C216 /* Skopelos-prefix.pch */, - 20704F83FC0CFED1EA10C96C486F2CE3 /* Skopelos-umbrella.h */, + C5BEED04A61B11FEEFA60272522E9082 /* Skopelos.modulemap */, + 2BA2B2FB48C6A2A9BE3991E50917BE18 /* Skopelos.xcconfig */, + 024E045810F70BD7B0C2A94E25F99AD2 /* Skopelos-dummy.m */, + 0DBC1CF999BC3DC0D704468A606AC6AA /* Skopelos-Info.plist */, + C50F53763F5A28AB472217AB0FB769B4 /* Skopelos-prefix.pch */, + 9F2F5AEA90CF4FA5E0A1F2DE745BFB71 /* Skopelos-umbrella.h */, ); name = "Support Files"; path = "Example/Pods/Target Support Files/Skopelos"; @@ -302,11 +296,11 @@ CF1408CF629C7361332E53B88F7BD30C = { isa = PBXGroup; children = ( - 24390EFD555DD124430DFF9724065945 /* Podfile */, + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */, 19C5E61537B6A5D8DBAB5FD2238745B5 /* Development Pods */, 03C5C200A0787E300053CFA8F53CA094 /* Frameworks */, B5224C57E111B7FF5F384C654B23AEF4 /* Products */, - 60FC246AEBAA00F56088A930D18D5BAF /* Targets Support Files */, + C1D605D9B5F48CAAB77E5816DB731452 /* Targets Support Files */, ); sourceTree = ""; }; @@ -526,9 +520,9 @@ /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ - 0F91C2FECFFCAE094F47C6D6E9267DFA /* Release */ = { + 16D78C5CF4FD2E98F85055D61F01EBB8 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 1B81FDFA43472BABFB33A2E1508ADDB4 /* Skopelos.xcconfig */; + baseConfigurationReference = 2BA2B2FB48C6A2A9BE3991E50917BE18 /* Skopelos.xcconfig */; buildSettings = { CLANG_ENABLE_OBJC_WEAK = NO; CODE_SIGN_IDENTITY = ""; @@ -541,7 +535,7 @@ DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; GCC_PREFIX_HEADER = "Target Support Files/Skopelos/Skopelos-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Skopelos/Info.plist"; + INFOPLIST_FILE = "Target Support Files/Skopelos/Skopelos-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 10.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; @@ -551,7 +545,7 @@ SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; @@ -559,43 +553,69 @@ }; name = Release; }; - 4A8390BE122238618C4C24FFFB757013 /* Debug */ = { + 3048B0C5C704DFFF688DA57F5380ED58 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 349BB589DDEB8AD87BFAF0A4319BC415 /* Pods-Skopelos_Example.debug.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - CLANG_ENABLE_OBJC_WEAK = NO; - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-Skopelos_Example/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_RELEASE=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; IPHONEOS_DEPLOYMENT_TARGET = 10.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example.modulemap"; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + PRODUCT_NAME = "$(TARGET_NAME)"; + STRIP_INSTALLED_PRODUCT = NO; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 4.2; + SYMROOT = "${SRCROOT}/../build"; }; - name = Debug; + name = Release; }; - 6802A1DA5FBDC96755657C57A3CC4D40 /* Debug */ = { + 3A790E4E62BD3E10B3DDE275224772FE /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 8A4C477BCBB9F49A89CF757F9020B128 /* Pods-Skopelos_UnitTests.debug.xcconfig */; + baseConfigurationReference = BB14CD51DC9613C8675544A9239AB95C /* Pods-Skopelos_UnitTests.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -608,7 +628,7 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-Skopelos_UnitTests/Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-Skopelos_UnitTests/Pods-Skopelos_UnitTests-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 10.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; @@ -627,39 +647,7 @@ }; name = Debug; }; - 84BDC44AEE7F4A47FE403D8A250102F2 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 1B81FDFA43472BABFB33A2E1508ADDB4 /* Skopelos.xcconfig */; - buildSettings = { - CLANG_ENABLE_OBJC_WEAK = NO; - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Skopelos/Skopelos-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Skopelos/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Skopelos/Skopelos.modulemap"; - PRODUCT_MODULE_NAME = Skopelos; - PRODUCT_NAME = Skopelos; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - 984B99C322F45D243D991CA6A63EF1F1 /* Debug */ = { + 5B0C8287D755FD95091CF35D87FB8B2D /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; @@ -691,8 +679,6 @@ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGNING_ALLOWED = NO; - CODE_SIGNING_REQUIRED = NO; COPY_PHASE_STRIP = NO; DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; @@ -725,9 +711,41 @@ }; name = Debug; }; - 9ED979F182EE254EB3944225C4434641 /* Release */ = { + 730CEB6388F7B82A7AD4CEEFAEC98DBF /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 33ECD95C66E1156C9BDFF4BFEDC2BD57 /* Pods-Skopelos_UnitTests.release.xcconfig */; + baseConfigurationReference = 2BA2B2FB48C6A2A9BE3991E50917BE18 /* Skopelos.xcconfig */; + buildSettings = { + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/Skopelos/Skopelos-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Skopelos/Skopelos-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 10.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/Skopelos/Skopelos.modulemap"; + PRODUCT_MODULE_NAME = Skopelos; + PRODUCT_NAME = Skopelos; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 74F3FB96AE6B52B1B0D2C52BB598092D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 25935F09E524277AF3D235D28F3E63F8 /* Pods-Skopelos_UnitTests.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -740,7 +758,7 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-Skopelos_UnitTests/Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-Skopelos_UnitTests/Pods-Skopelos_UnitTests-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 10.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; @@ -760,71 +778,43 @@ }; name = Release; }; - B7FD5B0ACE9286FFDADF4ACE2322AF4A /* Release */ = { + 8A5C2BFCCF118A5E8C6BAA8986296E45 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 28027CDCC21BAE9741C2B3F069135406 /* Pods-Skopelos_Example.debug.xcconfig */; buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGNING_ALLOWED = NO; - CODE_SIGNING_REQUIRED = NO; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_PREPROCESSOR_DEFINITIONS = ( - "POD_CONFIGURATION_RELEASE=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + CLANG_ENABLE_OBJC_WEAK = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = "Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 10.0; - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_NAME = "$(TARGET_NAME)"; - STRIP_INSTALLED_PRODUCT = NO; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - SWIFT_VERSION = 4.2; - SYMROOT = "${SRCROOT}/../build"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example.modulemap"; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; }; - name = Release; + name = Debug; }; - B8A5956C834738B50017A78107DE7164 /* Release */ = { + AB0F9A59FF1B4F1BBD54FF65222523DC /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 77587189F35E434F9E72D2C5C114C55D /* Pods-Skopelos_Example.release.xcconfig */; + baseConfigurationReference = E14DE1F2C327EE2C6D42DF41E11FD2FD /* Pods-Skopelos_Example.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; CLANG_ENABLE_OBJC_WEAK = NO; @@ -837,7 +827,7 @@ DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; - INFOPLIST_FILE = "Target Support Files/Pods-Skopelos_Example/Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 10.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; @@ -863,8 +853,8 @@ 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { isa = XCConfigurationList; buildConfigurations = ( - 984B99C322F45D243D991CA6A63EF1F1 /* Debug */, - B7FD5B0ACE9286FFDADF4ACE2322AF4A /* Release */, + 5B0C8287D755FD95091CF35D87FB8B2D /* Debug */, + 3048B0C5C704DFFF688DA57F5380ED58 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -872,8 +862,8 @@ A61FFB16A0E6CB8BC1FBECAD0157C338 /* Build configuration list for PBXNativeTarget "Pods-Skopelos_Example" */ = { isa = XCConfigurationList; buildConfigurations = ( - 4A8390BE122238618C4C24FFFB757013 /* Debug */, - B8A5956C834738B50017A78107DE7164 /* Release */, + 8A5C2BFCCF118A5E8C6BAA8986296E45 /* Debug */, + AB0F9A59FF1B4F1BBD54FF65222523DC /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -881,8 +871,8 @@ BF1C2DC612D6286C2F44559B1A85EB94 /* Build configuration list for PBXNativeTarget "Skopelos" */ = { isa = XCConfigurationList; buildConfigurations = ( - 84BDC44AEE7F4A47FE403D8A250102F2 /* Debug */, - 0F91C2FECFFCAE094F47C6D6E9267DFA /* Release */, + 730CEB6388F7B82A7AD4CEEFAEC98DBF /* Debug */, + 16D78C5CF4FD2E98F85055D61F01EBB8 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -890,8 +880,8 @@ E3E58EA9E06EDD9F5679E8BBC5ECC676 /* Build configuration list for PBXNativeTarget "Pods-Skopelos_UnitTests" */ = { isa = XCConfigurationList; buildConfigurations = ( - 6802A1DA5FBDC96755657C57A3CC4D40 /* Debug */, - 9ED979F182EE254EB3944225C4434641 /* Release */, + 3A790E4E62BD3E10B3DDE275224772FE /* Debug */, + 74F3FB96AE6B52B1B0D2C52BB598092D /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; diff --git a/Example/Pods/Pods.xcodeproj/xcuserdata/alberto.debortoli.xcuserdatad/xcschemes/Skopelos.xcscheme b/Example/Pods/Pods.xcodeproj/xcuserdata/alberto.debortoli.xcuserdatad/xcschemes/Skopelos.xcscheme index 756b852..5c7afc0 100644 --- a/Example/Pods/Pods.xcodeproj/xcuserdata/alberto.debortoli.xcuserdatad/xcschemes/Skopelos.xcscheme +++ b/Example/Pods/Pods.xcodeproj/xcuserdata/alberto.debortoli.xcuserdatad/xcschemes/Skopelos.xcscheme @@ -15,9 +15,9 @@ + ReferencedContainer = "container:Pods.xcodeproj"> diff --git a/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-Info.plist b/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-Info.plist new file mode 100644 index 0000000..2243fe6 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-acknowledgements.markdown b/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-acknowledgements.markdown index f53b3da..34f2d03 100644 --- a/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-acknowledgements.markdown +++ b/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-acknowledgements.markdown @@ -3,7 +3,9 @@ This application makes use of the following third party libraries: ## Skopelos -Copyright (c) 2019 Alberto De Bortoli +The MIT License (MIT) + +Copyright (c) 2019 Alberto De Bortoli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -12,15 +14,16 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + Generated by CocoaPods - https://cocoapods.org diff --git a/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-acknowledgements.plist b/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-acknowledgements.plist index 32c2f26..967adfb 100644 --- a/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-acknowledgements.plist +++ b/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-acknowledgements.plist @@ -14,7 +14,9 @@ FooterText - Copyright (c) 2019 Alberto De Bortoli <albertodebortoli.website@gmail.com> + The MIT License (MIT) + +Copyright (c) 2019 Alberto De Bortoli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -23,16 +25,17 @@ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + License MIT diff --git a/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-frameworks.sh b/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-frameworks.sh index 0962b9c..e4d50f5 100755 --- a/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-frameworks.sh +++ b/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-frameworks.sh @@ -3,10 +3,15 @@ set -e set -u set -o pipefail +function on_error { + echo "$(realpath -mq "${0}"):$1: error: Unexpected failure" +} +trap 'on_error $LINENO' ERR + if [ -z ${FRAMEWORKS_FOLDER_PATH+x} ]; then - # If FRAMEWORKS_FOLDER_PATH is not set, then there's nowhere for us to copy - # frameworks to, so exit 0 (signalling the script phase was successful). - exit 0 + # If FRAMEWORKS_FOLDER_PATH is not set, then there's nowhere for us to copy + # frameworks to, so exit 0 (signalling the script phase was successful). + exit 0 fi echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" @@ -36,8 +41,8 @@ install_framework() local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" if [ -L "${source}" ]; then - echo "Symlinked..." - source="$(readlink "${source}")" + echo "Symlinked..." + source="$(readlink "${source}")" fi # Use filter instead of exclude so missing patterns don't throw errors. @@ -47,8 +52,13 @@ install_framework() local basename basename="$(basename -s .framework "$1")" binary="${destination}/${basename}.framework/${basename}" + if ! [ -r "$binary" ]; then binary="${destination}/${basename}" + elif [ -L "${binary}" ]; then + echo "Destination binary is symlinked..." + dirname="$(dirname "${binary}")" + binary="${dirname}/$(readlink "${binary}")" fi # Strip invalid architectures so "fat" simulator / device frameworks work on device @@ -62,7 +72,7 @@ install_framework() # Embed linked Swift runtime libraries. No longer necessary as of Xcode 7. if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then local swift_runtime_libs - swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u && exit ${PIPESTATUS[0]}) + swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u) for lib in $swift_runtime_libs; do echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\"" rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}" @@ -101,8 +111,8 @@ install_dsym() { # Signs a framework with the provided identity code_sign_if_enabled() { - if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED:-}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then - # Use the current code_sign_identitiy + if [ -n "${EXPANDED_CODE_SIGN_IDENTITY:-}" -a "${CODE_SIGNING_REQUIRED:-}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then + # Use the current code_sign_identity echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}" local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS:-} --preserve-metadata=identifier,entitlements '$1'" @@ -131,7 +141,7 @@ strip_invalid_archs() { for arch in $binary_archs; do if ! [[ "${ARCHS}" == *"$arch"* ]]; then # Strip non-valid architectures in-place - lipo -remove "$arch" -output "$binary" "$binary" || exit 1 + lipo -remove "$arch" -output "$binary" "$binary" stripped="$stripped $arch" fi done diff --git a/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example.debug.xcconfig b/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example.debug.xcconfig index f008689..8c588cb 100644 --- a/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example.debug.xcconfig +++ b/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example.debug.xcconfig @@ -1,10 +1,10 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Skopelos" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Skopelos/Skopelos.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Skopelos/Skopelos.framework/Headers" -OTHER_LDFLAGS = $(inherited) -framework "Skopelos" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_LDFLAGS = $(inherited) -framework "CoreData" -framework "Foundation" -framework "Skopelos" -framework "UIKit" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example.release.xcconfig b/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example.release.xcconfig index f008689..8c588cb 100644 --- a/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example.release.xcconfig +++ b/Example/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example.release.xcconfig @@ -1,10 +1,10 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Skopelos" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Skopelos/Skopelos.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Skopelos/Skopelos.framework/Headers" -OTHER_LDFLAGS = $(inherited) -framework "Skopelos" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_LDFLAGS = $(inherited) -framework "CoreData" -framework "Foundation" -framework "Skopelos" -framework "UIKit" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/Example/Pods/Target Support Files/Pods-Skopelos_UnitTests/Pods-Skopelos_UnitTests-Info.plist b/Example/Pods/Target Support Files/Pods-Skopelos_UnitTests/Pods-Skopelos_UnitTests-Info.plist new file mode 100644 index 0000000..2243fe6 --- /dev/null +++ b/Example/Pods/Target Support Files/Pods-Skopelos_UnitTests/Pods-Skopelos_UnitTests-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Example/Pods/Target Support Files/Pods-Skopelos_UnitTests/Pods-Skopelos_UnitTests.debug.xcconfig b/Example/Pods/Target Support Files/Pods-Skopelos_UnitTests/Pods-Skopelos_UnitTests.debug.xcconfig index f18b0e0..88689ca 100644 --- a/Example/Pods/Target Support Files/Pods-Skopelos_UnitTests/Pods-Skopelos_UnitTests.debug.xcconfig +++ b/Example/Pods/Target Support Files/Pods-Skopelos_UnitTests/Pods-Skopelos_UnitTests.debug.xcconfig @@ -1,7 +1,8 @@ FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Skopelos" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Skopelos/Skopelos.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Skopelos/Skopelos.framework/Headers" +OTHER_LDFLAGS = $(inherited) -framework "CoreData" -framework "Foundation" -framework "Skopelos" -framework "UIKit" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/Example/Pods/Target Support Files/Pods-Skopelos_UnitTests/Pods-Skopelos_UnitTests.release.xcconfig b/Example/Pods/Target Support Files/Pods-Skopelos_UnitTests/Pods-Skopelos_UnitTests.release.xcconfig index f18b0e0..88689ca 100644 --- a/Example/Pods/Target Support Files/Pods-Skopelos_UnitTests/Pods-Skopelos_UnitTests.release.xcconfig +++ b/Example/Pods/Target Support Files/Pods-Skopelos_UnitTests/Pods-Skopelos_UnitTests.release.xcconfig @@ -1,7 +1,8 @@ FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Skopelos" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Skopelos/Skopelos.framework/Headers" LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Skopelos/Skopelos.framework/Headers" +OTHER_LDFLAGS = $(inherited) -framework "CoreData" -framework "Foundation" -framework "Skopelos" -framework "UIKit" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. diff --git a/Example/Pods/Target Support Files/Skopelos/Skopelos-Info.plist b/Example/Pods/Target Support Files/Skopelos/Skopelos-Info.plist new file mode 100644 index 0000000..e526849 --- /dev/null +++ b/Example/Pods/Target Support Files/Skopelos/Skopelos-Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 2.4.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Example/Pods/Target Support Files/Skopelos/Skopelos.xcconfig b/Example/Pods/Target Support Files/Skopelos/Skopelos.xcconfig index 3782ae2..9c436eb 100644 --- a/Example/Pods/Target Support Files/Skopelos/Skopelos.xcconfig +++ b/Example/Pods/Target Support Files/Skopelos/Skopelos.xcconfig @@ -1,7 +1,7 @@ CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/Skopelos GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -OTHER_LDFLAGS = -framework "CoreData" -framework "Foundation" -framework "UIKit" -OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +OTHER_LDFLAGS = $(inherited) -framework "CoreData" -framework "Foundation" -framework "UIKit" +OTHER_SWIFT_FLAGS = $(inherited) -D COCOAPODS PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_ROOT = ${SRCROOT} diff --git a/Example/Skopelos.xcodeproj/project.pbxproj b/Example/Skopelos.xcodeproj/project.pbxproj index 869035c..265ef29 100644 --- a/Example/Skopelos.xcodeproj/project.pbxproj +++ b/Example/Skopelos.xcodeproj/project.pbxproj @@ -269,6 +269,7 @@ developmentRegion = English; hasScannedForEncodings = 0; knownRegions = ( + English, en, Base, ); @@ -356,7 +357,7 @@ inputFileListPaths = ( ); inputPaths = ( - "${SRCROOT}/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-frameworks.sh", + "${PODS_ROOT}/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-frameworks.sh", "${BUILT_PRODUCTS_DIR}/Skopelos/Skopelos.framework", ); name = "[CP] Embed Pods Frameworks"; @@ -367,7 +368,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-frameworks.sh\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Skopelos_Example/Pods-Skopelos_Example-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; /* End PBXShellScriptBuildPhase section */ @@ -459,7 +460,6 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; SWIFT_OBJC_BRIDGING_HEADER = ""; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Skopelos_Example.app/Skopelos_Example"; }; @@ -489,7 +489,6 @@ PRODUCT_BUNDLE_IDENTIFIER = "com.albertodebortoli.Skopelos-UnitTests"; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = ""; - SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Skopelos_Example.app/Skopelos_Example"; }; @@ -545,6 +544,7 @@ ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; }; name = Debug; }; @@ -590,6 +590,7 @@ MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_VERSION = 5.0; VALIDATE_PRODUCT = YES; }; name = Release; @@ -607,7 +608,6 @@ PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_SWIFT3_OBJC_INFERENCE = Default; - SWIFT_VERSION = 4.0; }; name = Debug; }; @@ -624,7 +624,6 @@ PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_SWIFT3_OBJC_INFERENCE = Default; - SWIFT_VERSION = 4.0; }; name = Release; }; diff --git a/Example/Skopelos.xcworkspace/xcuserdata/alberto.debortoli.xcuserdatad/UserInterfaceState.xcuserstate b/Example/Skopelos.xcworkspace/xcuserdata/alberto.debortoli.xcuserdatad/UserInterfaceState.xcuserstate index 53dc1b188229321e440ccced32e19c389e6aeb4d..a61d53cefac22074b16fce7e7bc4526b6ce5571a 100644 GIT binary patch delta 27012 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۪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 diff --git a/Gemfile b/Gemfile index 6759c5d..f811fc5 100644 --- a/Gemfile +++ b/Gemfile @@ -2,5 +2,5 @@ ruby '2.5.3' source 'https://rubygems.org' -gem 'cocoapods', '~> 1.5.3' +gem 'cocoapods', '~> 1.6.1' gem 'fastlane', '~> 2.115.0' diff --git a/Gemfile.lock b/Gemfile.lock index c0a541a..0494f98 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -2,7 +2,7 @@ GEM remote: https://rubygems.org/ specs: CFPropertyList (3.0.0) - activesupport (4.2.11) + activesupport (4.2.11.1) i18n (~> 0.7) minitest (~> 5.1) thread_safe (~> 0.3, >= 0.3.4) @@ -12,30 +12,30 @@ GEM atomos (0.1.3) babosa (1.0.2) claide (1.0.2) - cocoapods (1.5.3) + cocoapods (1.6.1) activesupport (>= 4.0.2, < 5) claide (>= 1.0.2, < 2.0) - cocoapods-core (= 1.5.3) + cocoapods-core (= 1.6.1) cocoapods-deintegrate (>= 1.0.2, < 2.0) - cocoapods-downloader (>= 1.2.0, < 2.0) + cocoapods-downloader (>= 1.2.2, < 2.0) cocoapods-plugins (>= 1.0.0, < 2.0) cocoapods-search (>= 1.0.0, < 2.0) cocoapods-stats (>= 1.0.0, < 2.0) - cocoapods-trunk (>= 1.3.0, < 2.0) + cocoapods-trunk (>= 1.3.1, < 2.0) cocoapods-try (>= 1.1.0, < 2.0) colored2 (~> 3.1) escape (~> 0.0.4) - fourflusher (~> 2.0.1) + fourflusher (>= 2.2.0, < 3.0) gh_inspector (~> 1.0) - molinillo (~> 0.6.5) + molinillo (~> 0.6.6) nap (~> 1.0) - ruby-macho (~> 1.1) - xcodeproj (>= 1.5.7, < 2.0) - cocoapods-core (1.5.3) + ruby-macho (~> 1.4) + xcodeproj (>= 1.8.1, < 2.0) + cocoapods-core (1.6.1) activesupport (>= 4.0.2, < 6) fuzzy_match (~> 2.0.4) nap (~> 1.0) - cocoapods-deintegrate (1.0.2) + cocoapods-deintegrate (1.0.4) cocoapods-downloader (1.2.2) cocoapods-plugins (1.0.0) nap @@ -49,13 +49,13 @@ GEM colored2 (3.1.2) commander-fastlane (4.4.6) highline (~> 1.7.2) - concurrent-ruby (1.1.4) + concurrent-ruby (1.1.5) declarative (0.0.10) declarative-option (0.1.0) digest-crc (0.4.1) domain_name (0.5.20180417) unf (>= 0.0.5, < 1.0.0) - dotenv (2.6.0) + dotenv (2.7.2) emoji_regex (1.0.1) escape (0.0.4) excon (0.62.0) @@ -64,7 +64,7 @@ GEM faraday-cookie_jar (0.0.6) faraday (>= 0.7.4) http-cookie (~> 1.0.0) - faraday_middleware (0.13.0) + faraday_middleware (0.13.1) faraday (>= 0.7.4, < 1.0) fastimage (2.1.5) fastlane (2.115.0) @@ -104,7 +104,7 @@ GEM xcodeproj (>= 1.6.0, < 2.0.0) xcpretty (~> 0.3.0) xcpretty-travis-formatter (>= 0.0.3) - fourflusher (2.0.1) + fourflusher (2.2.0) fuzzy_match (2.0.4) gh_inspector (1.1.3) google-api-client (0.23.9) @@ -119,11 +119,11 @@ GEM google-cloud-env (~> 1.0) google-cloud-env (1.0.5) faraday (~> 0.11) - google-cloud-storage (1.15.0) + google-cloud-storage (1.16.0) digest-crc (~> 0.4) google-api-client (~> 0.23) google-cloud-core (~> 1.2) - googleauth (~> 0.6.2) + googleauth (>= 0.6.2, < 0.10.0) googleauth (0.6.7) faraday (~> 0.12) jwt (>= 1.4, < 3.0) @@ -137,12 +137,12 @@ GEM httpclient (2.8.3) i18n (0.9.5) concurrent-ruby (~> 1.0) - json (2.1.0) + json (2.2.0) jwt (2.1.0) memoist (0.16.0) mime-types (3.2.2) mime-types-data (~> 3.2015) - mime-types-data (3.2018.0812) + mime-types-data (3.2019.0331) mini_magick (4.5.1) minitest (5.11.3) molinillo (0.6.6) @@ -162,7 +162,7 @@ GEM uber (< 0.2.0) retriable (3.1.2) rouge (2.0.7) - ruby-macho (1.3.1) + ruby-macho (1.4.0) rubyzip (1.2.2) security (0.1.3) signet (0.11.0) @@ -178,7 +178,7 @@ GEM terminal-table (1.8.0) unicode-display_width (~> 1.1, >= 1.1.1) thread_safe (0.3.6) - tty-cursor (0.6.0) + tty-cursor (0.6.1) tty-screen (0.6.5) tty-spinner (0.9.0) tty-cursor (~> 0.6.0) @@ -188,9 +188,9 @@ GEM unf (0.1.4) unf_ext unf_ext (0.0.7.5) - unicode-display_width (1.4.1) + unicode-display_width (1.5.0) word_wrap (1.0.0) - xcodeproj (1.8.0) + xcodeproj (1.8.2) CFPropertyList (>= 2.3.3, < 4.0) atomos (~> 0.1.3) claide (>= 1.0.2, < 2.0) @@ -205,7 +205,7 @@ PLATFORMS ruby DEPENDENCIES - cocoapods (~> 1.5.3) + cocoapods (~> 1.6.1) fastlane (~> 2.115.0) RUBY VERSION diff --git a/LICENSE b/LICENSE index f705109..cb7187d 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2015 Alberto De Bortoli +Copyright (c) 2019 Alberto De Bortoli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/Skopelos.podspec b/Skopelos.podspec index e722daf..98f8c97 100644 --- a/Skopelos.podspec +++ b/Skopelos.podspec @@ -8,7 +8,7 @@ Pod::Spec.new do |s| s.name = 'Skopelos' - s.version = '2.3.1' + s.version = '2.4.0' s.license = { :type => 'Apache 2.0', :file => 'LICENSE' } s.summary = 'Simply all you need for doing Core Data. Swift flavour.' s.description = <<-DESC @@ -28,7 +28,7 @@ Pod::Spec.new do |s| s.ios.deployment_target = '10.0' s.watchos.deployment_target = '4.0' - s.swift_version = '4.2' + s.swift_version = '5.0' s.source_files = 'Skopelos/Classes/**/*' s.resources = 'Skopelos/Classes/**/*' diff --git a/Skopelos/Classes/Extensions/NSManagedObject+Skopelos.swift b/Skopelos/Classes/Extensions/NSManagedObject+Skopelos.swift index 0b23572..ee0c431 100644 --- a/Skopelos/Classes/Extensions/NSManagedObject+Skopelos.swift +++ b/Skopelos/Classes/Extensions/NSManagedObject+Skopelos.swift @@ -15,7 +15,7 @@ extension NSManagedObject : NSManagedObjectExtendable { } public extension NSManagedObjectExtendable where Self:NSManagedObject { - public func SK_inContext(_ otherContext: NSManagedObjectContext) -> Self? { + func SK_inContext(_ otherContext: NSManagedObjectContext) -> Self? { if self.objectID.isTemporaryID { do { @@ -31,11 +31,11 @@ public extension NSManagedObjectExtendable where Self:NSManagedObject { } @discardableResult - public static func SK_create(_ context: NSManagedObjectContext) -> Self { + static func SK_create(_ context: NSManagedObjectContext) -> Self { return NSEntityDescription.insertNewObject(forEntityName: self.nameOfClass, into: context) as! Self } - public static func SK_numberOfEntities(_ context: NSManagedObjectContext) -> Int { + static func SK_numberOfEntities(_ context: NSManagedObjectContext) -> Int { let request = basicFetchRequestInContext(context) @@ -51,7 +51,7 @@ public extension NSManagedObjectExtendable where Self:NSManagedObject { return result } - public static func SK_numberOfEntities(_ predicate: NSPredicate, context: NSManagedObjectContext) -> Int { + static func SK_numberOfEntities(_ predicate: NSPredicate, context: NSManagedObjectContext) -> Int { let request = basicFetchRequestInContext(context) request.predicate = predicate @@ -68,11 +68,11 @@ public extension NSManagedObjectExtendable where Self:NSManagedObject { return result } - public func SK_remove(_ context: NSManagedObjectContext) { + func SK_remove(_ context: NSManagedObjectContext) { context.delete(self) } - public static func SK_removeAll(_ context: NSManagedObjectContext) { + static func SK_removeAll(_ context: NSManagedObjectContext) { let request = basicFetchRequestInContext(context) request.returnsObjectsAsFaults = true request.includesPropertyValues = false @@ -88,7 +88,7 @@ public extension NSManagedObjectExtendable where Self:NSManagedObject { } } - public static func SK_all(_ context: NSManagedObjectContext) -> [Self] { + static func SK_all(_ context: NSManagedObjectContext) -> [Self] { let request = basicFetchRequestInContext(context) do { @@ -101,7 +101,7 @@ public extension NSManagedObjectExtendable where Self:NSManagedObject { return [] } - public static func SK_all(_ predicate: NSPredicate, context:NSManagedObjectContext) -> [Self] { + static func SK_all(_ predicate: NSPredicate, context:NSManagedObjectContext) -> [Self] { let request = basicFetchRequestInContext(context) request.predicate = predicate @@ -115,7 +115,7 @@ public extension NSManagedObjectExtendable where Self:NSManagedObject { return [] } - public static func SK_all(_ context: NSManagedObjectContext, predicate: NSPredicate, sortTerm: String, ascending: Bool) -> [Self] { + static func SK_all(_ context: NSManagedObjectContext, predicate: NSPredicate, sortTerm: String, ascending: Bool) -> [Self] { let request = basicFetchRequestInContext(context) request.predicate = predicate request.sortDescriptors = sortDescriptors(sortTerm, ascending:ascending) @@ -130,7 +130,7 @@ public extension NSManagedObjectExtendable where Self:NSManagedObject { return [] } - public static func SK_all(_ attribute: String, isEqualTo value: String, sortTerms: String, ascending: Bool, context: NSManagedObjectContext) -> [Self] { + static func SK_all(_ attribute: String, isEqualTo value: String, sortTerms: String, ascending: Bool, context: NSManagedObjectContext) -> [Self] { let request = basicFetchRequestInContext(context) request.predicate = NSPredicate(format: "%K = %@", attribute, value) request.sortDescriptors = sortDescriptors(sortTerms, ascending:ascending) @@ -145,7 +145,7 @@ public extension NSManagedObjectExtendable where Self:NSManagedObject { return [] } - public static func SK_first(_ context: NSManagedObjectContext) -> Self? { + static func SK_first(_ context: NSManagedObjectContext) -> Self? { let request = basicFetchRequestInContext(context) request.fetchLimit = 1 request.fetchBatchSize = 1 @@ -160,7 +160,7 @@ public extension NSManagedObjectExtendable where Self:NSManagedObject { return nil } - public static func SK_first(_ attribute: String, isEqualTo value: String, context: NSManagedObjectContext) -> Self? { + static func SK_first(_ attribute: String, isEqualTo value: String, context: NSManagedObjectContext) -> Self? { let request = basicFetchRequestInContext(context) request.fetchLimit = 1 request.fetchBatchSize = 1 @@ -176,7 +176,7 @@ public extension NSManagedObjectExtendable where Self:NSManagedObject { return nil } - public static func SK_first(_ predicate: NSPredicate, sortTerms: String, ascending: Bool, context: NSManagedObjectContext) -> Self? { + static func SK_first(_ predicate: NSPredicate, sortTerms: String, ascending: Bool, context: NSManagedObjectContext) -> Self? { let request = basicFetchRequestInContext(context) request.predicate = predicate request.fetchLimit = 1 diff --git a/Skopelos/Classes/Extensions/NSObject+Introspection.swift b/Skopelos/Classes/Extensions/NSObject+Introspection.swift index a72ec69..1625440 100644 --- a/Skopelos/Classes/Extensions/NSObject+Introspection.swift +++ b/Skopelos/Classes/Extensions/NSObject+Introspection.swift @@ -10,11 +10,11 @@ import Foundation public extension NSObject { - public class var nameOfClass: String{ + class var nameOfClass: String{ return NSStringFromClass(self).components(separatedBy: ".").last! } - public var nameOfClass: String { + var nameOfClass: String { return NSStringFromClass(type(of: self)).components(separatedBy: ".").last! } }