diff --git a/.travis.yml b/.travis.yml index a36cf94..f0842b5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,9 +1,12 @@ language: objective-c +os: osx +osx_image: xcode10.1 before_install: - export LANG=en_US.UTF-8 - bundle install - pod install --project-directory=Example -script: -- set -o pipefail -- xcodebuild -workspace Example/DBGHTMLEntitiesExample.xcworkspace -scheme DBGHTMLEntitiesExample -sdk iphonesimulator -configuration Debug test -destination platform='iOS Simulator',OS='10.0',name='iPhone 7' | xcpretty -c -- pod lib lint +xcode_workspace: Example/DBGHTMLEntitiesExample.xcworkspace +xcode_scheme: DBGHTMLEntitiesExample +xcode_destination: platform=iOS Simulator,OS=11.4,name=iPhone X +after_success: + - pod lib lint --quick diff --git a/Example/DBGHTMLEntitiesExample.xcodeproj/project.pbxproj b/Example/DBGHTMLEntitiesExample.xcodeproj/project.pbxproj index 0bd0936..5660c22 100644 --- a/Example/DBGHTMLEntitiesExample.xcodeproj/project.pbxproj +++ b/Example/DBGHTMLEntitiesExample.xcodeproj/project.pbxproj @@ -7,10 +7,8 @@ objects = { /* Begin PBXBuildFile section */ - 23C55572782D7810175CC3ED /* libPods-DBGHTMLEntitiesExample.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 1EECAC5ED3C079D931A6E1DB /* libPods-DBGHTMLEntitiesExample.a */; }; - 5513F52D18FDE43F0029581D /* DBGPageViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 5513F52C18FDE43F0029581D /* DBGPageViewController.m */; }; - 5513F53018FDE83E0029581D /* DBGEncodeExampleViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 5513F52F18FDE83E0029581D /* DBGEncodeExampleViewController.m */; }; - 5513F53318FECDFA0029581D /* DBGLabelHelpers.m in Sources */ = {isa = PBXBuildFile; fileRef = 5513F53218FECDFA0029581D /* DBGLabelHelpers.m */; }; + 2906CB4121DD52AB006D03AE /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 2906CB4021DD52AB006D03AE /* LaunchScreen.storyboard */; }; + 5513F53318FECDFA0029581D /* DBGLabels.m in Sources */ = {isa = PBXBuildFile; fileRef = 5513F53218FECDFA0029581D /* DBGLabels.m */; }; 554BF4EF18F718E600AC2DE0 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 554BF4EE18F718E600AC2DE0 /* Foundation.framework */; }; 554BF4F118F718E600AC2DE0 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 554BF4F018F718E600AC2DE0 /* CoreGraphics.framework */; }; 554BF4F318F718E600AC2DE0 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 554BF4F218F718E600AC2DE0 /* UIKit.framework */; }; @@ -24,11 +22,12 @@ 554BF51218F718E700AC2DE0 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 554BF51018F718E700AC2DE0 /* InfoPlist.strings */; }; 554BF52018F7217A00AC2DE0 /* DecoderSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 554BF51F18F7217A00AC2DE0 /* DecoderSpec.m */; }; 554BF52E18F7297500AC2DE0 /* DecodeMapSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 554BF52C18F7297500AC2DE0 /* DecodeMapSpec.m */; }; - 554BF53418F884F900AC2DE0 /* DBGDecodeExampleViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 554BF53318F884F900AC2DE0 /* DBGDecodeExampleViewController.m */; }; + 554BF53418F884F900AC2DE0 /* DBGExampleViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 554BF53318F884F900AC2DE0 /* DBGExampleViewController.m */; }; 55513FB218FC613F00EAF893 /* EncoderSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 55513FB118FC613F00EAF893 /* EncoderSpec.m */; }; 55513FB818FC83C000EAF893 /* EncoderMapSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 55513FB718FC83C000EAF893 /* EncoderMapSpec.m */; }; 55632C32190370C500AE50F1 /* RoundTripSpec.m in Sources */ = {isa = PBXBuildFile; fileRef = 55632C31190370C500AE50F1 /* RoundTripSpec.m */; }; - BCF84159E977995258262822 /* libPods-DBGHTMLEntitiesExampleTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 34AF51B655DFE3B09F624D80 /* libPods-DBGHTMLEntitiesExampleTests.a */; }; + C9FC0CED214BF55641415D9F /* Pods_DBGHTMLEntitiesExampleTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D3E78F46E47CF1ACDB1A8A42 /* Pods_DBGHTMLEntitiesExampleTests.framework */; }; + F3A8ADBFD30879EDB95E35F8 /* Pods_DBGHTMLEntitiesExample.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 78B465E236D3414F11C270D4 /* Pods_DBGHTMLEntitiesExample.framework */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -42,16 +41,10 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 1EECAC5ED3C079D931A6E1DB /* libPods-DBGHTMLEntitiesExample.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-DBGHTMLEntitiesExample.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - 34AF51B655DFE3B09F624D80 /* libPods-DBGHTMLEntitiesExampleTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-DBGHTMLEntitiesExampleTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - 50C65B54B2BF788EDCC809E3 /* Pods-DBGHTMLEntitiesExampleTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DBGHTMLEntitiesExampleTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-DBGHTMLEntitiesExampleTests/Pods-DBGHTMLEntitiesExampleTests.release.xcconfig"; sourceTree = ""; }; - 524A7F2E778B5988F5E00E97 /* Pods-DBGHTMLEntitiesExample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DBGHTMLEntitiesExample.debug.xcconfig"; path = "Pods/Target Support Files/Pods-DBGHTMLEntitiesExample/Pods-DBGHTMLEntitiesExample.debug.xcconfig"; sourceTree = ""; }; - 5513F52B18FDE43F0029581D /* DBGPageViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DBGPageViewController.h; sourceTree = ""; }; - 5513F52C18FDE43F0029581D /* DBGPageViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DBGPageViewController.m; sourceTree = ""; }; - 5513F52E18FDE83E0029581D /* DBGEncodeExampleViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DBGEncodeExampleViewController.h; sourceTree = ""; }; - 5513F52F18FDE83E0029581D /* DBGEncodeExampleViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DBGEncodeExampleViewController.m; sourceTree = ""; }; - 5513F53118FECDFA0029581D /* DBGLabelHelpers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DBGLabelHelpers.h; sourceTree = ""; }; - 5513F53218FECDFA0029581D /* DBGLabelHelpers.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DBGLabelHelpers.m; sourceTree = ""; }; + 07B716E5A89C5D419DDAE2EC /* Pods-DBGHTMLEntitiesExampleTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DBGHTMLEntitiesExampleTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-DBGHTMLEntitiesExampleTests/Pods-DBGHTMLEntitiesExampleTests.debug.xcconfig"; sourceTree = ""; }; + 2906CB4021DD52AB006D03AE /* LaunchScreen.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = LaunchScreen.storyboard; sourceTree = ""; }; + 5513F53118FECDFA0029581D /* DBGLabels.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DBGLabels.h; sourceTree = ""; }; + 5513F53218FECDFA0029581D /* DBGLabels.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DBGLabels.m; sourceTree = ""; }; 5513F535190023690029581D /* DBGHTMLEntityEncoder+Private.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "DBGHTMLEntityEncoder+Private.h"; path = "../Classes/DBGHTMLEntityEncoder+Private.h"; sourceTree = ""; }; 5513F536190023BE0029581D /* DBGHTMLEntityDecoder+Private.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "DBGHTMLEntityDecoder+Private.h"; path = "../Classes/DBGHTMLEntityDecoder+Private.h"; sourceTree = ""; }; 554BF4EB18F718E600AC2DE0 /* DBGHTMLEntitiesExample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = DBGHTMLEntitiesExample.app; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -75,8 +68,8 @@ 554BF52C18F7297500AC2DE0 /* DecodeMapSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = DecodeMapSpec.m; path = ../../Tests/DecodeMapSpec.m; sourceTree = ""; }; 554BF52F18F744F500AC2DE0 /* DBGHTMLEntityDecoder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DBGHTMLEntityDecoder.h; path = ../Classes/DBGHTMLEntityDecoder.h; sourceTree = ""; }; 554BF53018F744F500AC2DE0 /* DBGHTMLEntityDecoder.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = DBGHTMLEntityDecoder.m; path = ../Classes/DBGHTMLEntityDecoder.m; sourceTree = ""; }; - 554BF53218F884F900AC2DE0 /* DBGDecodeExampleViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DBGDecodeExampleViewController.h; sourceTree = ""; }; - 554BF53318F884F900AC2DE0 /* DBGDecodeExampleViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DBGDecodeExampleViewController.m; sourceTree = ""; }; + 554BF53218F884F900AC2DE0 /* DBGExampleViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DBGExampleViewController.h; sourceTree = ""; }; + 554BF53318F884F900AC2DE0 /* DBGExampleViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DBGExampleViewController.m; sourceTree = ""; }; 55513FB118FC613F00EAF893 /* EncoderSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = EncoderSpec.m; path = ../../Tests/EncoderSpec.m; sourceTree = ""; }; 55513FB318FC643900EAF893 /* DBGHTMLEntityEncoder.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = DBGHTMLEntityEncoder.h; path = ../Classes/DBGHTMLEntityEncoder.h; sourceTree = ""; }; 55513FB418FC643900EAF893 /* DBGHTMLEntityEncoder.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = DBGHTMLEntityEncoder.m; path = ../Classes/DBGHTMLEntityEncoder.m; sourceTree = ""; }; @@ -84,8 +77,11 @@ 55513FB618FC7E9300EAF893 /* DBGHTMLEntityEncodeMap.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = DBGHTMLEntityEncodeMap.m; path = ../Classes/DBGHTMLEntityEncodeMap.m; sourceTree = ""; }; 55513FB718FC83C000EAF893 /* EncoderMapSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = EncoderMapSpec.m; path = ../../Tests/EncoderMapSpec.m; sourceTree = ""; }; 55632C31190370C500AE50F1 /* RoundTripSpec.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = RoundTripSpec.m; path = ../../Tests/RoundTripSpec.m; sourceTree = ""; }; - 67B7F47F8866924AAF033981 /* Pods-DBGHTMLEntitiesExample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DBGHTMLEntitiesExample.release.xcconfig"; path = "Pods/Target Support Files/Pods-DBGHTMLEntitiesExample/Pods-DBGHTMLEntitiesExample.release.xcconfig"; sourceTree = ""; }; - 7DEF42E99A1307627F9BCC73 /* Pods-DBGHTMLEntitiesExampleTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DBGHTMLEntitiesExampleTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-DBGHTMLEntitiesExampleTests/Pods-DBGHTMLEntitiesExampleTests.debug.xcconfig"; sourceTree = ""; }; + 62A4B0A28FDAE74BA6296B33 /* Pods-DBGHTMLEntitiesExample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DBGHTMLEntitiesExample.debug.xcconfig"; path = "Pods/Target Support Files/Pods-DBGHTMLEntitiesExample/Pods-DBGHTMLEntitiesExample.debug.xcconfig"; sourceTree = ""; }; + 78B465E236D3414F11C270D4 /* Pods_DBGHTMLEntitiesExample.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_DBGHTMLEntitiesExample.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 9A247BEB2610883E3FECDED3 /* Pods-DBGHTMLEntitiesExampleTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DBGHTMLEntitiesExampleTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-DBGHTMLEntitiesExampleTests/Pods-DBGHTMLEntitiesExampleTests.release.xcconfig"; sourceTree = ""; }; + A5156041412F593C132EF7AB /* Pods-DBGHTMLEntitiesExample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-DBGHTMLEntitiesExample.release.xcconfig"; path = "Pods/Target Support Files/Pods-DBGHTMLEntitiesExample/Pods-DBGHTMLEntitiesExample.release.xcconfig"; sourceTree = ""; }; + D3E78F46E47CF1ACDB1A8A42 /* Pods_DBGHTMLEntitiesExampleTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_DBGHTMLEntitiesExampleTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -96,7 +92,7 @@ 554BF4F118F718E600AC2DE0 /* CoreGraphics.framework in Frameworks */, 554BF4F318F718E600AC2DE0 /* UIKit.framework in Frameworks */, 554BF4EF18F718E600AC2DE0 /* Foundation.framework in Frameworks */, - 23C55572782D7810175CC3ED /* libPods-DBGHTMLEntitiesExample.a in Frameworks */, + F3A8ADBFD30879EDB95E35F8 /* Pods_DBGHTMLEntitiesExample.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -107,7 +103,7 @@ 554BF50818F718E700AC2DE0 /* XCTest.framework in Frameworks */, 554BF50A18F718E700AC2DE0 /* UIKit.framework in Frameworks */, 554BF50918F718E700AC2DE0 /* Foundation.framework in Frameworks */, - BCF84159E977995258262822 /* libPods-DBGHTMLEntitiesExampleTests.a in Frameworks */, + C9FC0CED214BF55641415D9F /* Pods_DBGHTMLEntitiesExampleTests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -122,7 +118,7 @@ 554BF50D18F718E700AC2DE0 /* DBGHTMLEntitiesExampleTests */, 554BF4ED18F718E600AC2DE0 /* Frameworks */, 554BF4EC18F718E600AC2DE0 /* Products */, - F6680C934C34F65CF6C2BF96 /* Pods */, + 6103A66A36C038A09DCF26F7 /* Pods */, ); sourceTree = ""; }; @@ -142,8 +138,8 @@ 554BF4F018F718E600AC2DE0 /* CoreGraphics.framework */, 554BF4F218F718E600AC2DE0 /* UIKit.framework */, 554BF50718F718E700AC2DE0 /* XCTest.framework */, - 34AF51B655DFE3B09F624D80 /* libPods-DBGHTMLEntitiesExampleTests.a */, - 1EECAC5ED3C079D931A6E1DB /* libPods-DBGHTMLEntitiesExample.a */, + 78B465E236D3414F11C270D4 /* Pods_DBGHTMLEntitiesExample.framework */, + D3E78F46E47CF1ACDB1A8A42 /* Pods_DBGHTMLEntitiesExampleTests.framework */, ); name = Frameworks; sourceTree = ""; @@ -153,16 +149,13 @@ children = ( 554BF4FD18F718E600AC2DE0 /* DBGAppDelegate.h */, 554BF4FE18F718E600AC2DE0 /* DBGAppDelegate.m */, + 554BF53218F884F900AC2DE0 /* DBGExampleViewController.h */, + 554BF53318F884F900AC2DE0 /* DBGExampleViewController.m */, + 5513F53118FECDFA0029581D /* DBGLabels.h */, + 5513F53218FECDFA0029581D /* DBGLabels.m */, 554BF50018F718E600AC2DE0 /* Images.xcassets */, + 2906CB4021DD52AB006D03AE /* LaunchScreen.storyboard */, 554BF4F518F718E600AC2DE0 /* Supporting Files */, - 554BF53218F884F900AC2DE0 /* DBGDecodeExampleViewController.h */, - 554BF53318F884F900AC2DE0 /* DBGDecodeExampleViewController.m */, - 5513F52B18FDE43F0029581D /* DBGPageViewController.h */, - 5513F52C18FDE43F0029581D /* DBGPageViewController.m */, - 5513F52E18FDE83E0029581D /* DBGEncodeExampleViewController.h */, - 5513F52F18FDE83E0029581D /* DBGEncodeExampleViewController.m */, - 5513F53118FECDFA0029581D /* DBGLabelHelpers.h */, - 5513F53218FECDFA0029581D /* DBGLabelHelpers.m */, ); path = DBGHTMLEntitiesExample; sourceTree = ""; @@ -217,13 +210,13 @@ name = DBGHTMLEntities; sourceTree = ""; }; - F6680C934C34F65CF6C2BF96 /* Pods */ = { + 6103A66A36C038A09DCF26F7 /* Pods */ = { isa = PBXGroup; children = ( - 7DEF42E99A1307627F9BCC73 /* Pods-DBGHTMLEntitiesExampleTests.debug.xcconfig */, - 50C65B54B2BF788EDCC809E3 /* Pods-DBGHTMLEntitiesExampleTests.release.xcconfig */, - 524A7F2E778B5988F5E00E97 /* Pods-DBGHTMLEntitiesExample.debug.xcconfig */, - 67B7F47F8866924AAF033981 /* Pods-DBGHTMLEntitiesExample.release.xcconfig */, + 62A4B0A28FDAE74BA6296B33 /* Pods-DBGHTMLEntitiesExample.debug.xcconfig */, + A5156041412F593C132EF7AB /* Pods-DBGHTMLEntitiesExample.release.xcconfig */, + 07B716E5A89C5D419DDAE2EC /* Pods-DBGHTMLEntitiesExampleTests.debug.xcconfig */, + 9A247BEB2610883E3FECDED3 /* Pods-DBGHTMLEntitiesExampleTests.release.xcconfig */, ); name = Pods; sourceTree = ""; @@ -235,10 +228,11 @@ isa = PBXNativeTarget; buildConfigurationList = 554BF51718F718E700AC2DE0 /* Build configuration list for PBXNativeTarget "DBGHTMLEntitiesExample" */; buildPhases = ( - 020274342329BBBAE4359AA1 /* [CP] Check Pods Manifest.lock */, + 463E6CFDF037C7FB32A736C9 /* [CP] Check Pods Manifest.lock */, 554BF4E718F718E600AC2DE0 /* Sources */, 554BF4E818F718E600AC2DE0 /* Frameworks */, 554BF4E918F718E600AC2DE0 /* Resources */, + 13FC6DFEAC556580C5DABB3B /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -253,10 +247,11 @@ isa = PBXNativeTarget; buildConfigurationList = 554BF51A18F718E700AC2DE0 /* Build configuration list for PBXNativeTarget "DBGHTMLEntitiesExampleTests" */; buildPhases = ( - C6F05643E77C09667C653366 /* [CP] Check Pods Manifest.lock */, + D97342C53C6A555CD0C2B3DE /* [CP] Check Pods Manifest.lock */, 554BF50218F718E700AC2DE0 /* Sources */, 554BF50318F718E700AC2DE0 /* Frameworks */, 554BF50418F718E700AC2DE0 /* Resources */, + DD89AE161C23A005658B9096 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -275,7 +270,7 @@ isa = PBXProject; attributes = { CLASSPREFIX = DBG; - LastUpgradeCheck = 0920; + LastUpgradeCheck = 1010; ORGANIZATIONNAME = "David Grandinetti"; TargetAttributes = { 554BF50518F718E700AC2DE0 = { @@ -306,6 +301,7 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + 2906CB4121DD52AB006D03AE /* LaunchScreen.storyboard in Resources */, 554BF4F918F718E600AC2DE0 /* InfoPlist.strings in Resources */, 554BF50118F718E600AC2DE0 /* Images.xcassets in Resources */, ); @@ -322,16 +318,42 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ - 020274342329BBBAE4359AA1 /* [CP] Check Pods Manifest.lock */ = { + 13FC6DFEAC556580C5DABB3B /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); + inputFileListPaths = ( + ); + inputPaths = ( + "${SRCROOT}/Pods/Target Support Files/Pods-DBGHTMLEntitiesExample/Pods-DBGHTMLEntitiesExample-frameworks.sh", + "${BUILT_PRODUCTS_DIR}/DBGHTMLEntities/DBGHTMLEntities.framework", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + ); + outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/DBGHTMLEntities.framework", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-DBGHTMLEntitiesExample/Pods-DBGHTMLEntitiesExample-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + 463E6CFDF037C7FB32A736C9 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); inputPaths = ( "${PODS_PODFILE_DIR_PATH}/Podfile.lock", "${PODS_ROOT}/Manifest.lock", ); name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); outputPaths = ( "$(DERIVED_FILE_DIR)/Pods-DBGHTMLEntitiesExample-checkManifestLockResult.txt", ); @@ -340,16 +362,20 @@ 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; }; - C6F05643E77C09667C653366 /* [CP] Check Pods Manifest.lock */ = { + D97342C53C6A555CD0C2B3DE /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); + inputFileListPaths = ( + ); inputPaths = ( "${PODS_PODFILE_DIR_PATH}/Podfile.lock", "${PODS_ROOT}/Manifest.lock", ); name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); outputPaths = ( "$(DERIVED_FILE_DIR)/Pods-DBGHTMLEntitiesExampleTests-checkManifestLockResult.txt", ); @@ -358,6 +384,32 @@ 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; }; + DD89AE161C23A005658B9096 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${SRCROOT}/Pods/Target Support Files/Pods-DBGHTMLEntitiesExampleTests/Pods-DBGHTMLEntitiesExampleTests-frameworks.sh", + "${BUILT_PRODUCTS_DIR}/DBGHTMLEntities/DBGHTMLEntities.framework", + "${BUILT_PRODUCTS_DIR}/Expecta/Expecta.framework", + "${BUILT_PRODUCTS_DIR}/Specta/Specta.framework", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + ); + outputPaths = ( + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/DBGHTMLEntities.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Expecta.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Specta.framework", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-DBGHTMLEntitiesExampleTests/Pods-DBGHTMLEntitiesExampleTests-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ @@ -365,12 +417,10 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 554BF53418F884F900AC2DE0 /* DBGDecodeExampleViewController.m in Sources */, - 5513F53018FDE83E0029581D /* DBGEncodeExampleViewController.m in Sources */, - 5513F53318FECDFA0029581D /* DBGLabelHelpers.m in Sources */, + 554BF53418F884F900AC2DE0 /* DBGExampleViewController.m in Sources */, + 5513F53318FECDFA0029581D /* DBGLabels.m in Sources */, 554BF4FF18F718E600AC2DE0 /* DBGAppDelegate.m in Sources */, 554BF4FB18F718E600AC2DE0 /* main.m in Sources */, - 5513F52D18FDE43F0029581D /* DBGPageViewController.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -428,12 +478,14 @@ 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_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; @@ -478,12 +530,14 @@ 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_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; @@ -511,14 +565,12 @@ }; 554BF51818F718E700AC2DE0 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 524A7F2E778B5988F5E00E97 /* Pods-DBGHTMLEntitiesExample.debug.xcconfig */; + baseConfigurationReference = 62A4B0A28FDAE74BA6296B33 /* Pods-DBGHTMLEntitiesExample.debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "DBGHTMLEntitiesExample/DBGHTMLEntitiesExample-Prefix.pch"; INFOPLIST_FILE = "DBGHTMLEntitiesExample/DBGHTMLEntitiesExample-Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; PRODUCT_BUNDLE_IDENTIFIER = "com.wegoto12.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = "$(TARGET_NAME)"; WRAPPER_EXTENSION = app; @@ -527,14 +579,12 @@ }; 554BF51918F718E700AC2DE0 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 67B7F47F8866924AAF033981 /* Pods-DBGHTMLEntitiesExample.release.xcconfig */; + baseConfigurationReference = A5156041412F593C132EF7AB /* Pods-DBGHTMLEntitiesExample.release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "DBGHTMLEntitiesExample/DBGHTMLEntitiesExample-Prefix.pch"; INFOPLIST_FILE = "DBGHTMLEntitiesExample/DBGHTMLEntitiesExample-Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; PRODUCT_BUNDLE_IDENTIFIER = "com.wegoto12.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = "$(TARGET_NAME)"; WRAPPER_EXTENSION = app; @@ -543,14 +593,9 @@ }; 554BF51B18F718E700AC2DE0 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 7DEF42E99A1307627F9BCC73 /* Pods-DBGHTMLEntitiesExampleTests.debug.xcconfig */; + baseConfigurationReference = 07B716E5A89C5D419DDAE2EC /* Pods-DBGHTMLEntitiesExampleTests.debug.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/DBGHTMLEntitiesExample.app/DBGHTMLEntitiesExample"; - FRAMEWORK_SEARCH_PATHS = ( - "$(SDKROOT)/Developer/Library/Frameworks", - "$(inherited)", - "$(DEVELOPER_FRAMEWORKS_DIR)", - ); GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "DBGHTMLEntitiesExample/DBGHTMLEntitiesExample-Prefix.pch"; GCC_PREPROCESSOR_DEFINITIONS = ( @@ -567,14 +612,9 @@ }; 554BF51C18F718E700AC2DE0 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 50C65B54B2BF788EDCC809E3 /* Pods-DBGHTMLEntitiesExampleTests.release.xcconfig */; + baseConfigurationReference = 9A247BEB2610883E3FECDED3 /* Pods-DBGHTMLEntitiesExampleTests.release.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/DBGHTMLEntitiesExample.app/DBGHTMLEntitiesExample"; - FRAMEWORK_SEARCH_PATHS = ( - "$(SDKROOT)/Developer/Library/Frameworks", - "$(inherited)", - "$(DEVELOPER_FRAMEWORKS_DIR)", - ); GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "DBGHTMLEntitiesExample/DBGHTMLEntitiesExample-Prefix.pch"; INFOPLIST_FILE = "DBGHTMLEntitiesExampleTests/DBGHTMLEntitiesExampleTests-Info.plist"; diff --git a/Example/DBGHTMLEntitiesExample.xcodeproj/xcshareddata/xcschemes/DBGHTMLEntitiesExample.xcscheme b/Example/DBGHTMLEntitiesExample.xcodeproj/xcshareddata/xcschemes/DBGHTMLEntitiesExample.xcscheme index b3d7abe..c072737 100644 --- a/Example/DBGHTMLEntitiesExample.xcodeproj/xcshareddata/xcschemes/DBGHTMLEntitiesExample.xcscheme +++ b/Example/DBGHTMLEntitiesExample.xcodeproj/xcshareddata/xcschemes/DBGHTMLEntitiesExample.xcscheme @@ -1,6 +1,6 @@ + + + + diff --git a/Example/DBGHTMLEntitiesExample/DBGAppDelegate.m b/Example/DBGHTMLEntitiesExample/DBGAppDelegate.m index bffa5bd..ae120e5 100644 --- a/Example/DBGHTMLEntitiesExample/DBGAppDelegate.m +++ b/Example/DBGHTMLEntitiesExample/DBGAppDelegate.m @@ -7,7 +7,7 @@ // #import "DBGAppDelegate.h" -#import "DBGPageViewController.h" +#import "DBGExampleViewController.h" @implementation DBGAppDelegate @@ -15,10 +15,10 @@ - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:( { application.statusBarHidden = YES; - self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; - self.window.backgroundColor = [UIColor blackColor]; + self.window = [[UIWindow alloc] initWithFrame:UIScreen.mainScreen.bounds]; + self.window.backgroundColor = UIColor.blackColor; - self.window.rootViewController = [[DBGPageViewController alloc] init]; + self.window.rootViewController = [DBGExampleViewController new]; [self.window makeKeyAndVisible]; return YES; diff --git a/Example/DBGHTMLEntitiesExample/DBGDecodeExampleViewController.m b/Example/DBGHTMLEntitiesExample/DBGDecodeExampleViewController.m deleted file mode 100644 index 470012b..0000000 --- a/Example/DBGHTMLEntitiesExample/DBGDecodeExampleViewController.m +++ /dev/null @@ -1,93 +0,0 @@ -// -// DBGExampleViewController.m -// DBGHTMLEntitiesExample -// -// Created by David Grandinetti on 4/11/14. -// Copyright (c) 2014 David Grandinetti. All rights reserved. -// - -#import "DBGDecodeExampleViewController.h" -#import "DBGHTMLEntityDecoder.h" -#import "DBGLabelHelpers.h" - -#import - -@implementation DBGDecodeExampleViewController - -- (void)loadView { - ORStackScrollView *stackScrollView = [[ORStackScrollView alloc] init]; - stackScrollView.backgroundColor = [UIColor whiteColor]; - self.view = stackScrollView; - - ORStackView *stackView = stackScrollView.stackView; - - DBGHTMLEntityDecoder *decoder = [[DBGHTMLEntityDecoder alloc] init]; - - [stackView addSubview:[DBGLabelHelpers titleLabel:@"Decoder Examples"] - withPrecedingMargin:40 - sideMargin:20]; - - // - // examples with NSString, one is regular, the other is decoded - // - [stackView addSubview:[DBGLabelHelpers explainLabel:@"Labels with an NSString"] - withPrecedingMargin:50 - sideMargin:20]; - - [stackView addSubview:[DBGLabelHelpers basicLabel:[self basicString]] - withPrecedingMargin:10 - sideMargin:20]; - - NSString *decodedString = [decoder decodeString:[self basicString]]; - [stackView addSubview:[DBGLabelHelpers basicLabel:decodedString] - withPrecedingMargin:10 - sideMargin:20]; - - // - // examples with NSAttributedString, one regular, one decoded - // - [stackView addSubview:[DBGLabelHelpers explainLabel:@"Labels with an NSMutableAttributedString"] - withPrecedingMargin:50 - sideMargin:20]; - - [stackView addSubview:[DBGLabelHelpers attributedLabel:[self tweetString]] - withPrecedingMargin:10 - sideMargin:20]; - - NSMutableAttributedString *tweetString = [self tweetString]; - NSMutableString *mutableTweetString = tweetString.mutableString; - [decoder decodeStringInPlace:mutableTweetString]; - - [stackView addSubview:[DBGLabelHelpers attributedLabel:tweetString] - withPrecedingMargin:10 - sideMargin:20]; - - // footer spacer - [stackView addSubview:[[UIView alloc] init] withPrecedingMargin:40]; -} - - -#pragma mark - String generators - -- (NSString *)basicString { - return @"Today & tomorrow only, we've got extra pies to give out. Not to be confused with π #betterthandonuts, cc/ @dbgrandi 👍"; -} - -- (NSMutableAttributedString *)tweetString { - UIFont *labelFont = [UIFont fontWithName:@"AvenirNext-Regular" size:22]; - NSDictionary *attributes = @{NSFontAttributeName:labelFont}; - - NSString *basicString = [self basicString]; - - NSMutableAttributedString *attributedTweetString = [[NSMutableAttributedString alloc] initWithString:basicString attributes:attributes]; - - NSRange hashtagRange = [basicString rangeOfString:@"#betterthandonuts"]; - [attributedTweetString addAttribute:NSForegroundColorAttributeName value:[UIColor lightGrayColor] range:hashtagRange]; - - NSRange mentionRange = [basicString rangeOfString:@"@dbgrandi"]; - [attributedTweetString addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:mentionRange]; - - return attributedTweetString; -} - -@end diff --git a/Example/DBGHTMLEntitiesExample/DBGEncodeExampleViewController.h b/Example/DBGHTMLEntitiesExample/DBGEncodeExampleViewController.h deleted file mode 100644 index 80caaee..0000000 --- a/Example/DBGHTMLEntitiesExample/DBGEncodeExampleViewController.h +++ /dev/null @@ -1,11 +0,0 @@ -// -// DBGEncodeExampleViewController.h -// DBGHTMLEntitiesExample -// -// Created by David Grandinetti on 4/15/14. -// Copyright (c) 2014 David Grandinetti. All rights reserved. -// - -@interface DBGEncodeExampleViewController : UIViewController - -@end diff --git a/Example/DBGHTMLEntitiesExample/DBGEncodeExampleViewController.m b/Example/DBGHTMLEntitiesExample/DBGEncodeExampleViewController.m deleted file mode 100644 index e649de6..0000000 --- a/Example/DBGHTMLEntitiesExample/DBGEncodeExampleViewController.m +++ /dev/null @@ -1,116 +0,0 @@ -// -// DBGEncodeExampleViewController.m -// DBGHTMLEntitiesExample -// -// Created by David Grandinetti on 4/15/14. -// Copyright (c) 2014 David Grandinetti. All rights reserved. -// - -#import "DBGEncodeExampleViewController.h" -#import "DBGHTMLEntityEncoder.h" -#import "DBGLabelHelpers.h" - -#import - -@implementation DBGEncodeExampleViewController - -- (void)loadView { - ORStackScrollView *stackScrollView = [[ORStackScrollView alloc] init]; - stackScrollView.backgroundColor = [UIColor whiteColor]; - self.view = stackScrollView; - - ORStackView *stackView = stackScrollView.stackView; - - DBGHTMLEntityEncoder *encoder = [[DBGHTMLEntityEncoder alloc] init]; - - UILabel *titleLabel = [DBGLabelHelpers titleLabel:@"Encoder Examples"]; - [stackView addSubview:titleLabel withPrecedingMargin:40 sideMargin:20]; - - // - // examples of the default encoding (named > decimal) - // - [stackView addSubview:[DBGLabelHelpers explainLabel:@"Our example string..."] - withPrecedingMargin:50 - sideMargin:20]; - - [stackView addSubview:[DBGLabelHelpers basicLabel:[self basicString]] - withPrecedingMargin:10 - sideMargin:20]; - - [stackView addSubview:[DBGLabelHelpers explainLabel:@"Encoded with default settings..."] - withPrecedingMargin:50 - sideMargin:20]; - - NSString *defaultEncode = [encoder encode:[self basicString]]; - [stackView addSubview:[DBGLabelHelpers basicLabel:defaultEncode] - withPrecedingMargin:10 - sideMargin:20]; - - [stackView addSubview:[DBGLabelHelpers explainLabel:@"Encoded with decimal only..."] - withPrecedingMargin:50 - sideMargin:20]; - - NSString *decimalEncode = [encoder encode:[self basicString] withFormats:(DBGHTMLEntityEncoderDecimalFormat)]; - [stackView addSubview:[DBGLabelHelpers basicLabel:decimalEncode] - withPrecedingMargin:10 - sideMargin:20]; - - [stackView addSubview:[DBGLabelHelpers explainLabel:@"Encoded with named preference over hex..."] - withPrecedingMargin:50 - sideMargin:20]; - - NSString *hexPreferenceEncode = [encoder encode:[self basicString] withFormats:(DBGHTMLEntityEncoderNamedFormat|DBGHTMLEntityEncoderHexFormat)]; - [stackView addSubview:[DBGLabelHelpers basicLabel:hexPreferenceEncode] - withPrecedingMargin:10 - sideMargin:20]; - - // - // examples of default encoding with NSAttributedString, one regular, one decoded - // - [stackView addSubview:[DBGLabelHelpers explainLabel:@"Default encoding with an NSMutableAttributedString"] - withPrecedingMargin:50 - sideMargin:20]; - - [stackView addSubview:[DBGLabelHelpers attributedLabel:[self tweetString]] - withPrecedingMargin:10 - sideMargin:20]; - - NSMutableAttributedString *tweetString = [self tweetString]; - NSMutableString *mutableTweetString = tweetString.mutableString; - [encoder encodeStringInPlace:mutableTweetString]; - - [stackView addSubview:[DBGLabelHelpers attributedLabel:tweetString] - withPrecedingMargin:10 - sideMargin:20]; - - // footer spacer - [stackView addSubview:[[UIView alloc] init] withPrecedingMargin:40]; -} - -#pragma mark - String generators - -- (NSString *)basicString { - return @"Today & tomorrow only, we've got extra pies to give out. Not to be confused with π #betterthandonuts, cc/ @dbgrandi 👍 ☺"; -} - -- (NSMutableAttributedString *)tweetString { - UIFont *labelFont = [UIFont fontWithName:@"AvenirNext-Regular" size:22]; - NSDictionary *attributes = @{NSFontAttributeName:labelFont}; - - NSString *basicString = [self basicString]; - - NSMutableAttributedString *attributedTweetString = [[NSMutableAttributedString alloc] initWithString:basicString attributes:attributes]; - - NSRange underlineRange = [basicString rangeOfString:@"Today & tomorrow only"]; - [attributedTweetString addAttribute:NSUnderlineStyleAttributeName value:@(NSUnderlineStyleSingle) range:underlineRange]; - - NSRange hashtagRange = [basicString rangeOfString:@"#betterthandonuts"]; - [attributedTweetString addAttribute:NSForegroundColorAttributeName value:[UIColor lightGrayColor] range:hashtagRange]; - - NSRange mentionRange = [basicString rangeOfString:@"@dbgrandi"]; - [attributedTweetString addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:mentionRange]; - - return attributedTweetString; -} - -@end diff --git a/Example/DBGHTMLEntitiesExample/DBGDecodeExampleViewController.h b/Example/DBGHTMLEntitiesExample/DBGExampleViewController.h similarity index 74% rename from Example/DBGHTMLEntitiesExample/DBGDecodeExampleViewController.h rename to Example/DBGHTMLEntitiesExample/DBGExampleViewController.h index 60429bc..6688dd0 100644 --- a/Example/DBGHTMLEntitiesExample/DBGDecodeExampleViewController.h +++ b/Example/DBGHTMLEntitiesExample/DBGExampleViewController.h @@ -6,6 +6,6 @@ // Copyright (c) 2014 David Grandinetti. All rights reserved. // -@interface DBGDecodeExampleViewController : UIViewController +@interface DBGExampleViewController : UIViewController @end diff --git a/Example/DBGHTMLEntitiesExample/DBGExampleViewController.m b/Example/DBGHTMLEntitiesExample/DBGExampleViewController.m new file mode 100644 index 0000000..416ee39 --- /dev/null +++ b/Example/DBGHTMLEntitiesExample/DBGExampleViewController.m @@ -0,0 +1,173 @@ +// +// DBGExampleViewController.m +// DBGHTMLEntitiesExample +// +// Created by David Grandinetti on 4/11/14. +// Copyright (c) 2014 David Grandinetti. All rights reserved. +// + +#import "DBGExampleViewController.h" +#import "DBGHTMLEntityDecoder.h" +#import "DBGHTMLEntityEncoder.h" +#import "DBGLabels.h" + +@interface UIStackView (SpacingHelper) +- (void)addArrangedSubview:(UIView *)view withCustomSpacing:(CGFloat)spacing; +@end + +@implementation UIStackView (SpacingHelper) +- (void)addArrangedSubview:(UIView *)view withCustomSpacing:(CGFloat)spacing { + [self addArrangedSubview:view]; + [self setCustomSpacing:spacing afterView:view]; +} +@end + +@interface DBGExampleViewController () +@property (nonatomic) UIStackView *stackView; +@end + +@implementation DBGExampleViewController + +- (void)viewDidLoad { + [super viewDidLoad]; + + self.view.backgroundColor = UIColor.whiteColor; + + UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectZero]; + scrollView.translatesAutoresizingMaskIntoConstraints = NO; + scrollView.backgroundColor = UIColor.whiteColor; + [self.view addSubview:scrollView]; + + UILayoutGuide *safe = self.view.safeAreaLayoutGuide; + + [scrollView.topAnchor constraintEqualToAnchor:safe.topAnchor].active = YES; + [scrollView.bottomAnchor constraintEqualToAnchor:safe.bottomAnchor].active = YES; + [scrollView.leadingAnchor constraintEqualToAnchor:safe.leadingAnchor].active = YES; + [scrollView.trailingAnchor constraintEqualToAnchor:safe.trailingAnchor].active = YES; + + self.stackView = [[UIStackView alloc] initWithFrame:CGRectZero]; + self.stackView.translatesAutoresizingMaskIntoConstraints = NO; + self.stackView.axis = UILayoutConstraintAxisVertical; + self.stackView.alignment = UIStackViewAlignmentFill; + [scrollView addSubview:self.stackView]; + + [self.stackView.topAnchor constraintEqualToAnchor:scrollView.topAnchor].active = YES; + [self.stackView.bottomAnchor constraintEqualToAnchor:scrollView.bottomAnchor].active = YES; + [self.stackView.leadingAnchor constraintEqualToAnchor:scrollView.leadingAnchor constant:20].active = YES; + [self.stackView.trailingAnchor constraintEqualToAnchor:scrollView.trailingAnchor constant:-20].active = YES; + [self.stackView.widthAnchor constraintEqualToAnchor:scrollView.widthAnchor constant:-40].active = YES; + + [self addDecoderExamples]; + [self addEncoderExamples]; +} + +- (void) addDecoderExamples { + DBGHTMLEntityDecoder *decoder = [[DBGHTMLEntityDecoder alloc] init]; + NSString *encodedString = @"Today & tomorrow only, we've got extra pies to give out. Not to be confused with π #betterthandonuts, cc/ @dbgrandi 👍"; + + [self.stackView addArrangedSubview:[[UIView alloc] initWithFrame:CGRectZero] withCustomSpacing:80]; + [self.stackView addArrangedSubview:[DBGLabels title:@"Decoder Examples"] withCustomSpacing:30]; + + // + // examples with NSString, one is regular, the other is decoded + // + [self.stackView addArrangedSubview:[DBGLabels explain:@"Labels with an NSString"] withCustomSpacing:40]; + [self.stackView addArrangedSubview:[DBGLabels basic:encodedString] withCustomSpacing:20]; + + NSString *decodedString = [decoder decodeString:encodedString]; + [self.stackView addArrangedSubview:[DBGLabels basic:decodedString] withCustomSpacing:50]; + + // + // examples with NSAttributedString, one regular, one decoded + // + [self.stackView addArrangedSubview:[DBGLabels explain:@"Labels with an NSMutableAttributedString"] withCustomSpacing:40]; + [self.stackView addArrangedSubview:[DBGLabels attributed:[self encodedTweetString]] withCustomSpacing:20]; + + NSMutableAttributedString *tweetString = [self encodedTweetString]; + NSMutableString *mutableTweetString = tweetString.mutableString; + [decoder decodeStringInPlace:mutableTweetString]; + + [self.stackView addArrangedSubview:[DBGLabels attributed:tweetString] withCustomSpacing:50]; +} + +- (void)addEncoderExamples { + DBGHTMLEntityEncoder *encoder = [[DBGHTMLEntityEncoder alloc] init]; + + NSString *decodedString = @"Today & tomorrow only, we've got extra pies to give out. Not to be confused with π #betterthandonuts, cc/ @dbgrandi 👍 ☺"; + + [self.stackView addArrangedSubview:[DBGLabels title:@"Encoder Examples"] withCustomSpacing:50]; + + // + // examples of the default encoding (named > decimal) + // + [self.stackView addArrangedSubview:[DBGLabels explain:@"Our example string..."] withCustomSpacing:10]; + [self.stackView addArrangedSubview:[DBGLabels basic:decodedString] withCustomSpacing:50]; + [self.stackView addArrangedSubview:[DBGLabels explain:@"Encoded with default settings..."] withCustomSpacing:10]; + + NSString *defaultEncode = [encoder encode:decodedString]; + [self.stackView addArrangedSubview:[DBGLabels basic:defaultEncode] withCustomSpacing:50]; + [self.stackView addArrangedSubview:[DBGLabels explain:@"Encoded with decimal only..."] withCustomSpacing:10]; + + NSString *decimalEncode = [encoder encode:decodedString withFormats:(DBGHTMLEntityEncoderDecimalFormat)]; + [self.stackView addArrangedSubview:[DBGLabels basic:decimalEncode] withCustomSpacing:50]; + [self.stackView addArrangedSubview:[DBGLabels explain:@"Encoded with named preference over hex..."] withCustomSpacing:10]; + + NSString *hexPreferenceEncode = [encoder encode:decodedString withFormats:(DBGHTMLEntityEncoderNamedFormat|DBGHTMLEntityEncoderHexFormat)]; + [self.stackView addArrangedSubview:[DBGLabels basic:hexPreferenceEncode] withCustomSpacing:50]; + + // + // examples of default encoding with NSAttributedString, one regular, one decoded + // + [self.stackView addArrangedSubview:[DBGLabels explain:@"Default encoding with an NSMutableAttributedString"] withCustomSpacing:10]; + [self.stackView addArrangedSubview:[DBGLabels attributed:[self decodedTweetString]] withCustomSpacing:10]; + + NSMutableAttributedString *tweetString = [self decodedTweetString]; + NSMutableString *mutableTweetString = tweetString.mutableString; + [encoder encodeStringInPlace:mutableTweetString]; + + [self.stackView addArrangedSubview:[DBGLabels attributed:tweetString] withCustomSpacing:40]; + + // footer spacer + [self.stackView addArrangedSubview:[[UIView alloc] initWithFrame:CGRectZero]]; +} + +#pragma mark - String generators + +- (NSMutableAttributedString *)encodedTweetString { + UIFont *labelFont = [UIFont systemFontOfSize:22]; + NSDictionary *attributes = @{NSFontAttributeName:labelFont}; + + NSString *basicString = @"Today & tomorrow only, we've got extra pies to give out. Not to be confused with π #betterthandonuts, cc/ @dbgrandi 👍"; + + NSMutableAttributedString *attributedTweetString = [[NSMutableAttributedString alloc] initWithString:basicString attributes:attributes]; + + NSRange hashtagRange = [basicString rangeOfString:@"#betterthandonuts"]; + [attributedTweetString addAttribute:NSForegroundColorAttributeName value:UIColor.lightGrayColor range:hashtagRange]; + + NSRange mentionRange = [basicString rangeOfString:@"@dbgrandi"]; + [attributedTweetString addAttribute:NSForegroundColorAttributeName value:UIColor.blueColor range:mentionRange]; + + return attributedTweetString; +} + +- (NSMutableAttributedString *)decodedTweetString { + UIFont *labelFont = [UIFont fontWithName:@"AvenirNext-Regular" size:22]; + NSDictionary *attributes = @{NSFontAttributeName:labelFont}; + + NSString *basicString = @"Today & tomorrow only, we've got extra pies to give out. Not to be confused with π #betterthandonuts, cc/ @dbgrandi 👍 ☺"; + + NSMutableAttributedString *attributedTweetString = [[NSMutableAttributedString alloc] initWithString:basicString attributes:attributes]; + + NSRange underlineRange = [basicString rangeOfString:@"Today & tomorrow only"]; + [attributedTweetString addAttribute:NSUnderlineStyleAttributeName value:@(NSUnderlineStyleSingle) range:underlineRange]; + + NSRange hashtagRange = [basicString rangeOfString:@"#betterthandonuts"]; + [attributedTweetString addAttribute:NSForegroundColorAttributeName value:[UIColor lightGrayColor] range:hashtagRange]; + + NSRange mentionRange = [basicString rangeOfString:@"@dbgrandi"]; + [attributedTweetString addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:mentionRange]; + + return attributedTweetString; +} + +@end diff --git a/Example/DBGHTMLEntitiesExample/DBGHTMLEntitiesExample-Info.plist b/Example/DBGHTMLEntitiesExample/DBGHTMLEntitiesExample-Info.plist index 8e4edb2..875c4d7 100644 --- a/Example/DBGHTMLEntitiesExample/DBGHTMLEntitiesExample-Info.plist +++ b/Example/DBGHTMLEntitiesExample/DBGHTMLEntitiesExample-Info.plist @@ -24,6 +24,8 @@ 1.0 LSRequiresIPhoneOS + UILaunchStoryboardName + LaunchScreen UIRequiredDeviceCapabilities armv7 diff --git a/Example/DBGHTMLEntitiesExample/DBGLabelHelpers.h b/Example/DBGHTMLEntitiesExample/DBGLabelHelpers.h deleted file mode 100644 index 4b8c85e..0000000 --- a/Example/DBGHTMLEntitiesExample/DBGLabelHelpers.h +++ /dev/null @@ -1,16 +0,0 @@ -// -// LabelGenerator.h -// DBGHTMLEntitiesExample -// -// Created by David Grandinetti on 4/16/14. -// Copyright (c) 2014 David Grandinetti. All rights reserved. -// - -@interface DBGLabelHelpers : NSObject - -+ (UILabel *)titleLabel:(NSString *)text; -+ (UILabel *)explainLabel:(NSString *)text; -+ (UILabel *)basicLabel:(id)text; -+ (UILabel *)attributedLabel:(NSAttributedString *)attributedText; - -@end diff --git a/Example/DBGHTMLEntitiesExample/DBGLabelHelpers.m b/Example/DBGHTMLEntitiesExample/DBGLabelHelpers.m deleted file mode 100644 index 84e36e3..0000000 --- a/Example/DBGHTMLEntitiesExample/DBGLabelHelpers.m +++ /dev/null @@ -1,52 +0,0 @@ -// -// LabelGenerator.m -// DBGHTMLEntitiesExample -// -// Created by David Grandinetti on 4/16/14. -// Copyright (c) 2014 David Grandinetti. All rights reserved. -// - -#import "DBGLabelHelpers.h" - -@implementation DBGLabelHelpers - -+ (UILabel *)titleLabel:(NSString *)text { - UILabel *titleLabel = [[UILabel alloc] init]; - titleLabel.font = [UIFont fontWithName:@"AvenirNext-Medium" size:28]; - titleLabel.numberOfLines = 0; - titleLabel.text = text; - titleLabel.backgroundColor = UIColor.whiteColor; - - return titleLabel; -} - -+ (UILabel *)explainLabel:(NSString *)text { - UILabel *label = [[UILabel alloc] init]; - label.font = [UIFont fontWithName:@"AvenirNext-Medium" size:22]; - label.numberOfLines = 0; - label.text = text; - label.backgroundColor = UIColor.whiteColor; - - return label; -} - -+ (UILabel *)basicLabel:(id)text { - UILabel *label = [[UILabel alloc] init]; - label.numberOfLines = 0; - label.font = [UIFont fontWithName:@"AvenirNext-Regular" size:22]; - label.text = text; - label.backgroundColor = UIColor.whiteColor; - - return label; -} - -+ (UILabel *)attributedLabel:(NSAttributedString *)attributedText { - UILabel *label = [[UILabel alloc] init]; - label.numberOfLines = 0; - label.attributedText = attributedText; - label.backgroundColor = UIColor.whiteColor; - - return label; -} - -@end diff --git a/Example/DBGHTMLEntitiesExample/DBGLabels.h b/Example/DBGHTMLEntitiesExample/DBGLabels.h new file mode 100644 index 0000000..aadf9a6 --- /dev/null +++ b/Example/DBGHTMLEntitiesExample/DBGLabels.h @@ -0,0 +1,16 @@ +// +// LabelGenerator.h +// DBGHTMLEntitiesExample +// +// Created by David Grandinetti on 4/16/14. +// Copyright (c) 2014 David Grandinetti. All rights reserved. +// + +@interface DBGLabels : NSObject + ++ (UILabel *)title:(NSString *)text; ++ (UILabel *)explain:(NSString *)text; ++ (UILabel *)basic:(id)text; ++ (UILabel *)attributed:(NSAttributedString *)attributedText; + +@end diff --git a/Example/DBGHTMLEntitiesExample/DBGLabels.m b/Example/DBGHTMLEntitiesExample/DBGLabels.m new file mode 100644 index 0000000..09d2ea6 --- /dev/null +++ b/Example/DBGHTMLEntitiesExample/DBGLabels.m @@ -0,0 +1,57 @@ +// +// LabelGenerator.m +// DBGHTMLEntitiesExample +// +// Created by David Grandinetti on 4/16/14. +// Copyright (c) 2014 David Grandinetti. All rights reserved. +// + +#import "DBGLabels.h" + +@implementation DBGLabels + ++ (UILabel *)title:(NSString *)text { + UILabel *titleLabel = [[UILabel alloc] initWithFrame:CGRectZero]; + titleLabel.translatesAutoresizingMaskIntoConstraints = NO; + titleLabel.font = [UIFont systemFontOfSize:26 weight:UIFontWeightMedium]; + titleLabel.numberOfLines = 0; + titleLabel.text = text; + titleLabel.backgroundColor = UIColor.whiteColor; + + return titleLabel; +} + ++ (UILabel *)explain:(NSString *)text { + UILabel *label = [[UILabel alloc] initWithFrame:CGRectZero]; + label.translatesAutoresizingMaskIntoConstraints = NO; + label.font = [UIFont systemFontOfSize:16 weight:UIFontWeightBold]; + label.numberOfLines = 0; + label.text = text; + label.backgroundColor = UIColor.whiteColor; + + return label; +} + ++ (UILabel *)basic:(id)text { + UILabel *label = [[UILabel alloc] initWithFrame:CGRectZero]; + label.translatesAutoresizingMaskIntoConstraints = NO; + label.numberOfLines = 0; + label.lineBreakMode = NSLineBreakByWordWrapping; + label.font = [UIFont systemFontOfSize:22]; + label.text = text; + label.backgroundColor = UIColor.whiteColor; + + return label; +} + ++ (UILabel *)attributed:(NSAttributedString *)attributedText { + UILabel *label = [[UILabel alloc] initWithFrame:CGRectZero]; + label.numberOfLines = 0; + label.lineBreakMode = NSLineBreakByWordWrapping; + label.attributedText = attributedText; + label.backgroundColor = UIColor.whiteColor; + + return label; +} + +@end diff --git a/Example/DBGHTMLEntitiesExample/DBGPageViewController.h b/Example/DBGHTMLEntitiesExample/DBGPageViewController.h deleted file mode 100644 index fa6efec..0000000 --- a/Example/DBGHTMLEntitiesExample/DBGPageViewController.h +++ /dev/null @@ -1,11 +0,0 @@ -// -// DBGPageViewController.h -// DBGHTMLEntitiesExample -// -// Created by David Grandinetti on 4/15/14. -// Copyright (c) 2014 David Grandinetti. All rights reserved. -// - -@interface DBGPageViewController : UIPageViewController - -@end diff --git a/Example/DBGHTMLEntitiesExample/DBGPageViewController.m b/Example/DBGHTMLEntitiesExample/DBGPageViewController.m deleted file mode 100644 index 453ce1e..0000000 --- a/Example/DBGHTMLEntitiesExample/DBGPageViewController.m +++ /dev/null @@ -1,63 +0,0 @@ -// -// DBGPageViewController.m -// DBGHTMLEntitiesExample -// -// Created by David Grandinetti on 4/15/14. -// Copyright (c) 2014 David Grandinetti. All rights reserved. -// - -#import "DBGPageViewController.h" - -#import "DBGDecodeExampleViewController.h" -#import "DBGEncodeExampleViewController.h" - -@interface DBGPageViewController () - -@property (nonatomic, strong) DBGDecodeExampleViewController *example1; -@property (nonatomic, strong) DBGEncodeExampleViewController *example2; - -@end - -@implementation DBGPageViewController - -- (id)init { - self = [super initWithTransitionStyle:UIPageViewControllerTransitionStyleScroll - navigationOrientation:UIPageViewControllerNavigationOrientationHorizontal - options:@{UIPageViewControllerOptionInterPageSpacingKey:@6.0}]; - - if (self) { - self.dataSource = self; - } - - return self; -} - -- (void)viewDidLoad { - self.example1 = [[DBGDecodeExampleViewController alloc] init]; - self.example2 = [[DBGEncodeExampleViewController alloc] init]; - - [self setViewControllers:@[self.example1] - direction:UIPageViewControllerNavigationDirectionForward - animated:NO - completion:nil]; -} - -#pragma mark - UIPageViewControllerDataSource - -- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerBeforeViewController:(UIViewController *)viewController { - return (viewController == self.example1) ? nil : self.example1; -} - -- (UIViewController *)pageViewController:(UIPageViewController *)pageViewController viewControllerAfterViewController:(UIViewController *)viewController { - return (viewController == self.example2) ? nil : self.example2; -} - -- (NSInteger)presentationCountForPageViewController:(UIPageViewController *)pageViewController { - return 2; -} - -- (NSInteger)presentationIndexForPageViewController:(UIPageViewController *)pageViewController { - return ([self.viewControllers objectAtIndex:0] == self.example1) ? 0 : 1; -} - -@end diff --git a/Example/DBGHTMLEntitiesExample/Images.xcassets/AppIcon.appiconset/Contents.json b/Example/DBGHTMLEntitiesExample/Images.xcassets/AppIcon.appiconset/Contents.json index a396706..19882d5 100644 --- a/Example/DBGHTMLEntitiesExample/Images.xcassets/AppIcon.appiconset/Contents.json +++ b/Example/DBGHTMLEntitiesExample/Images.xcassets/AppIcon.appiconset/Contents.json @@ -1,19 +1,49 @@ { "images" : [ + { + "idiom" : "iphone", + "size" : "20x20", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "20x20", + "scale" : "3x" + }, { "idiom" : "iphone", "size" : "29x29", "scale" : "2x" }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "3x" + }, { "idiom" : "iphone", "size" : "40x40", "scale" : "2x" }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "3x" + }, { "idiom" : "iphone", "size" : "60x60", "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "3x" + }, + { + "idiom" : "ios-marketing", + "size" : "1024x1024", + "scale" : "1x" } ], "info" : { diff --git a/Example/DBGHTMLEntitiesExample/Images.xcassets/Contents.json b/Example/DBGHTMLEntitiesExample/Images.xcassets/Contents.json new file mode 100644 index 0000000..da4a164 --- /dev/null +++ b/Example/DBGHTMLEntitiesExample/Images.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/Example/DBGHTMLEntitiesExample/Images.xcassets/LaunchImage.launchimage/Contents.json b/Example/DBGHTMLEntitiesExample/Images.xcassets/LaunchImage.launchimage/Contents.json index c79ebd3..fadb823 100644 --- a/Example/DBGHTMLEntitiesExample/Images.xcassets/LaunchImage.launchimage/Contents.json +++ b/Example/DBGHTMLEntitiesExample/Images.xcassets/LaunchImage.launchimage/Contents.json @@ -10,9 +10,9 @@ { "orientation" : "portrait", "idiom" : "iphone", - "subtype" : "retina4", "extent" : "full-screen", "minimum-system-version" : "7.0", + "subtype" : "retina4", "scale" : "2x" } ], diff --git a/Example/DBGHTMLEntitiesExample/LaunchScreen.storyboard b/Example/DBGHTMLEntitiesExample/LaunchScreen.storyboard new file mode 100644 index 0000000..8647b3b --- /dev/null +++ b/Example/DBGHTMLEntitiesExample/LaunchScreen.storyboard @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Example/Podfile b/Example/Podfile index 77af058..bb0d313 100644 --- a/Example/Podfile +++ b/Example/Podfile @@ -1,11 +1,12 @@ platform :ios, '11.0' +use_frameworks! target :DBGHTMLEntitiesExample do pod "DBGHTMLEntities", :path => "../DBGHTMLEntities.podspec" - pod 'ORStackView' end target :DBGHTMLEntitiesExampleTests do + pod "DBGHTMLEntities", :path => "../DBGHTMLEntities.podspec" pod 'Specta', '~> 1.0' pod 'Expecta', '~> 1.0' end diff --git a/Example/Podfile.lock b/Example/Podfile.lock index f7b4cc0..e51b988 100644 --- a/Example/Podfile.lock +++ b/Example/Podfile.lock @@ -1,22 +1,16 @@ PODS: - DBGHTMLEntities (1.1.0) - Expecta (1.0.6) - - FLKAutoLayout (0.2.1) - - ORStackView (3.0.1): - - FLKAutoLayout (~> 0.2) - Specta (1.0.7) DEPENDENCIES: - DBGHTMLEntities (from `../DBGHTMLEntities.podspec`) - Expecta (~> 1.0) - - ORStackView - Specta (~> 1.0) SPEC REPOS: https://github.com/cocoapods/specs.git: - Expecta - - FLKAutoLayout - - ORStackView - Specta EXTERNAL SOURCES: @@ -26,10 +20,8 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: DBGHTMLEntities: 5b601f2bcb5d67bccca753456516260b7324aadf Expecta: 3b6bd90a64b9a1dcb0b70aa0e10a7f8f631667d5 - FLKAutoLayout: 9db6b30c2008d230da608e62c607b11c23b942e6 - ORStackView: a1bb52748cd0ae29891c140baf22ff8972fb363c Specta: 3e1bd89c3517421982dc4d1c992503e48bd5fe66 -PODFILE CHECKSUM: 5eae54b8384f6881d54ff208d7a80d9c42b40843 +PODFILE CHECKSUM: c6f227608486edaaa393b8408b22cbe878ab6b8e COCOAPODS: 1.5.3 diff --git a/Gemfile.lock b/Gemfile.lock index 6ad2021..49b2e78 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -2,19 +2,19 @@ GEM remote: https://rubygems.org/ specs: CFPropertyList (3.0.0) - activesupport (4.2.10) + activesupport (4.2.11) i18n (~> 0.7) minitest (~> 5.1) thread_safe (~> 0.3, >= 0.3.4) tzinfo (~> 1.1) - atomos (0.1.2) + atomos (0.1.3) claide (1.0.2) - cocoapods (1.4.0) + cocoapods (1.5.3) activesupport (>= 4.0.2, < 5) claide (>= 1.0.2, < 2.0) - cocoapods-core (= 1.4.0) + cocoapods-core (= 1.5.3) cocoapods-deintegrate (>= 1.0.2, < 2.0) - cocoapods-downloader (>= 1.1.3, < 2.0) + cocoapods-downloader (>= 1.2.0, < 2.0) cocoapods-plugins (>= 1.0.0, < 2.0) cocoapods-search (>= 1.0.0, < 2.0) cocoapods-stats (>= 1.0.0, < 2.0) @@ -24,26 +24,26 @@ GEM escape (~> 0.0.4) fourflusher (~> 2.0.1) gh_inspector (~> 1.0) - molinillo (~> 0.6.4) + molinillo (~> 0.6.5) nap (~> 1.0) ruby-macho (~> 1.1) - xcodeproj (>= 1.5.4, < 2.0) - cocoapods-core (1.4.0) + xcodeproj (>= 1.5.7, < 2.0) + cocoapods-core (1.5.3) activesupport (>= 4.0.2, < 6) fuzzy_match (~> 2.0.4) nap (~> 1.0) cocoapods-deintegrate (1.0.2) - cocoapods-downloader (1.1.3) + cocoapods-downloader (1.2.2) cocoapods-plugins (1.0.0) nap cocoapods-search (1.0.0) cocoapods-stats (1.0.0) - cocoapods-trunk (1.3.0) + cocoapods-trunk (1.3.1) nap (>= 0.8, < 2.0) netrc (~> 0.11) cocoapods-try (1.1.0) colored2 (3.1.2) - concurrent-ruby (1.0.5) + concurrent-ruby (1.1.4) escape (0.0.4) fourflusher (2.0.1) fuzzy_match (2.0.4) @@ -51,22 +51,22 @@ GEM i18n (0.9.5) concurrent-ruby (~> 1.0) minitest (5.11.3) - molinillo (0.6.5) - nanaimo (0.2.4) + molinillo (0.6.6) + nanaimo (0.2.6) nap (1.1.0) netrc (0.11.0) rake (12.3.1) rouge (2.0.7) - ruby-macho (1.1.0) + ruby-macho (1.3.1) thread_safe (0.3.6) tzinfo (1.2.5) thread_safe (~> 0.1) - xcodeproj (1.5.7) + xcodeproj (1.7.0) CFPropertyList (>= 2.3.3, < 4.0) - atomos (~> 0.1.2) + atomos (~> 0.1.3) claide (>= 1.0.2, < 2.0) colored2 (~> 3.1) - nanaimo (~> 0.2.4) + nanaimo (~> 0.2.6) xcpretty (0.2.8) rouge (~> 2.0.7) @@ -79,4 +79,4 @@ DEPENDENCIES xcpretty BUNDLED WITH - 1.16.1 + 1.16.2