diff --git a/.swift-version b/.swift-version new file mode 100644 index 0000000..1b47e8f --- /dev/null +++ b/.swift-version @@ -0,0 +1 @@ +5.1.2 \ No newline at end of file diff --git a/.travis.yml b/.travis.yml index 639bd09..a9273b0 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,12 +1,11 @@ language: objective-c -osx_image: xcode10.1 +osx_image: xcode11.2 podfile: Example/Podfile before_install: - - gem install cocoapods --pre --no-rdoc --no-ri --no-document --quiet - + - gem install cocoapods --pre --no-document --quiet script: - set -o pipefail && xcodebuild test -project Marker/Marker.xcodeproj -scheme Marker-iOS -destination 'name=iPhone 8,OS=12.0' | xcpretty - set -o pipefail && xcodebuild test -project Marker/Marker.xcodeproj -scheme Marker-macOS -destination 'arch=x86_64' | xcpretty - - set -o pipefail && xcodebuild test -project Marker/Marker.xcodeproj -scheme Marker-tvOS -destination 'name=Apple TV 4K,OS=12.0' | xcpretty + - set -o pipefail && xcodebuild test -project Marker/Marker.xcodeproj -scheme Marker-tvOS -destination 'name=Apple TV 4K,OS=12.2' | xcpretty - pod lib lint diff --git a/Example/Marker-Example-iOS/Assets.xcassets/AppIcon.appiconset/Contents.json b/Example/Marker-Example-iOS/Assets.xcassets/AppIcon.appiconset/Contents.json index 1d060ed..d8db8d6 100644 --- a/Example/Marker-Example-iOS/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/Example/Marker-Example-iOS/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -84,6 +84,11 @@ "idiom" : "ipad", "size" : "83.5x83.5", "scale" : "2x" + }, + { + "idiom" : "ios-marketing", + "size" : "1024x1024", + "scale" : "1x" } ], "info" : { diff --git a/Example/Marker-Example.xcodeproj/project.pbxproj b/Example/Marker-Example.xcodeproj/project.pbxproj index 3d8702c..b82ddaa 100644 --- a/Example/Marker-Example.xcodeproj/project.pbxproj +++ b/Example/Marker-Example.xcodeproj/project.pbxproj @@ -218,12 +218,12 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0830; - LastUpgradeCheck = 1000; + LastUpgradeCheck = 1120; TargetAttributes = { 271C85D41ED4E40800F8BBBB = { CreatedOnToolsVersion = 8.3.2; - DevelopmentTeam = 5ZZ7W4SB26; - LastSwiftMigration = 0830; + DevelopmentTeam = 2D42ACMA8R; + LastSwiftMigration = 1120; ProvisioningStyle = Automatic; }; 272D862F1ED62E9C00CE29EB = { @@ -235,7 +235,7 @@ }; buildConfigurationList = 271C85CE1ED4E3F000F8BBBB /* Build configuration list for PBXProject "Marker-Example" */; compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; + developmentRegion = en; hasScannedForEncodings = 0; knownRegions = ( en, @@ -317,7 +317,7 @@ files = ( ); inputPaths = ( - "${SRCROOT}/Pods/Target Support Files/Pods-Marker-Example-macOS/Pods-Marker-Example-macOS-frameworks.sh", + "${PODS_ROOT}/Target Support Files/Pods-Marker-Example-macOS/Pods-Marker-Example-macOS-frameworks.sh", "${BUILT_PRODUCTS_DIR}/Marker-macOS/Marker.framework", ); name = "[CP] Embed Pods Frameworks"; @@ -326,7 +326,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-Marker-Example-macOS/Pods-Marker-Example-macOS-frameworks.sh\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Marker-Example-macOS/Pods-Marker-Example-macOS-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; FAF73D195B963F0D4B5861A5 /* [CP] Embed Pods Frameworks */ = { @@ -335,7 +335,7 @@ files = ( ); inputPaths = ( - "${SRCROOT}/Pods/Target Support Files/Pods-Marker-Example-iOS/Pods-Marker-Example-iOS-frameworks.sh", + "${PODS_ROOT}/Target Support Files/Pods-Marker-Example-iOS/Pods-Marker-Example-iOS-frameworks.sh", "${BUILT_PRODUCTS_DIR}/Marker-iOS/Marker.framework", ); name = "[CP] Embed Pods Frameworks"; @@ -344,7 +344,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-Marker-Example-iOS/Pods-Marker-Example-iOS-frameworks.sh\"\n"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Marker-Example-iOS/Pods-Marker-Example-iOS-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; /* End PBXShellScriptBuildPhase section */ @@ -414,12 +414,64 @@ 271C85CF1ED4E3F000F8BBBB /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + 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_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_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + ONLY_ACTIVE_ARCH = YES; }; name = Debug; }; 271C85D01ED4E3F000F8BBBB /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + 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_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_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; }; name = Release; }; @@ -450,7 +502,7 @@ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; DEBUG_INFORMATION_FORMAT = dwarf; - DEVELOPMENT_TEAM = 5ZZ7W4SB26; + DEVELOPMENT_TEAM = 2D42ACMA8R; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; @@ -477,7 +529,7 @@ SDKROOT = iphoneos; SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.2; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 1; }; name = Debug; @@ -509,7 +561,7 @@ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEVELOPMENT_TEAM = 5ZZ7W4SB26; + DEVELOPMENT_TEAM = 2D42ACMA8R; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = gnu99; @@ -528,7 +580,7 @@ PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = iphoneos; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 4.2; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 1; VALIDATE_PRODUCT = YES; }; diff --git a/Example/Marker-Example.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Example/Marker-Example.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/Example/Marker-Example.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/Example/Marker-Example.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Example/Marker-Example.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/Example/Marker-Example.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/Example/Podfile.lock b/Example/Podfile.lock index 2a59f29..e1c015e 100644 --- a/Example/Podfile.lock +++ b/Example/Podfile.lock @@ -1,5 +1,5 @@ PODS: - - Marker (1.2.0) + - Marker (1.2.2) DEPENDENCIES: - Marker (from `../`) @@ -9,8 +9,8 @@ EXTERNAL SOURCES: :path: "../" SPEC CHECKSUMS: - Marker: 78178ba8e5f702b64227c4371ed5b9533984d0cd + Marker: 16e9f99b49ea60155338df4afaec56f04d35ddb4 PODFILE CHECKSUM: 2d22b0ce73bebf9f2dee7cbf15b441cc137adc5e -COCOAPODS: 1.5.3 +COCOAPODS: 1.8.4 diff --git a/Marker.podspec b/Marker.podspec index 53d4145..8868ec2 100644 --- a/Marker.podspec +++ b/Marker.podspec @@ -8,7 +8,7 @@ Pod::Spec.new do |s| s.name = "Marker" - s.version = "1.2.1" + s.version = "1.2.2" s.summary = "A light wrapper around NSAttributedString." s.description = <<-DESC TODO: Add long description of the pod here. @@ -25,7 +25,7 @@ TODO: Add long description of the pod here. s.tvos.deployment_target = '9.0' s.requires_arc = true - s.swift_version = '4.2' + s.swift_version = '5.1.2' s.source_files = 'Marker/Marker/**/*.{h,swift}' diff --git a/Marker/Marker.xcodeproj/project.pbxproj b/Marker/Marker.xcodeproj/project.pbxproj index 88d3cc4..86c703e 100644 --- a/Marker/Marker.xcodeproj/project.pbxproj +++ b/Marker/Marker.xcodeproj/project.pbxproj @@ -521,19 +521,19 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0830; - LastUpgradeCheck = 1010; + LastUpgradeCheck = 1120; ORGANIZATIONNAME = "Prolific Interactive"; TargetAttributes = { 271C85891ED4E2A000F8BBBB = { CreatedOnToolsVersion = 8.3.2; DevelopmentTeam = 5ZZ7W4SB26; - LastSwiftMigration = 0900; + LastSwiftMigration = 1120; ProvisioningStyle = Automatic; }; 271C85921ED4E2A000F8BBBB = { CreatedOnToolsVersion = 8.3.2; DevelopmentTeam = 5ZZ7W4SB26; - LastSwiftMigration = 0900; + LastSwiftMigration = 1120; ProvisioningStyle = Automatic; }; 27C4E5C61ED5ED2400DDE387 = { @@ -564,10 +564,11 @@ }; buildConfigurationList = 271C85841ED4E2A000F8BBBB /* Build configuration list for PBXProject "Marker" */; compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; + developmentRegion = en; hasScannedForEncodings = 0; knownRegions = ( en, + Base, ); mainGroup = 271C85801ED4E2A000F8BBBB; productRefGroup = 271C858B1ED4E2A000F8BBBB /* Products */; @@ -786,6 +787,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; @@ -832,13 +834,13 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 10.3; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.2; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; @@ -849,6 +851,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; @@ -889,11 +892,11 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 10.3; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 4.2; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; VERSIONING_SYSTEM = "apple-generic"; @@ -921,6 +924,7 @@ PRODUCT_NAME = Marker; SKIP_INSTALL = YES; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; }; name = Debug; }; @@ -943,6 +947,7 @@ PRODUCT_BUNDLE_IDENTIFIER = com.prolificinteractive.Marker; PRODUCT_NAME = Marker; SKIP_INSTALL = YES; + SWIFT_VERSION = 5.0; }; name = Release; }; @@ -958,6 +963,7 @@ PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "MarkerTests/MarkerTests-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; }; name = Debug; }; @@ -972,6 +978,7 @@ PRODUCT_BUNDLE_IDENTIFIER = com.prolificinteractive.MarkerTests; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_OBJC_BRIDGING_HEADER = "MarkerTests/MarkerTests-Bridging-Header.h"; + SWIFT_VERSION = 5.0; }; name = Release; }; diff --git a/Marker/Marker.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Marker/Marker.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/Marker/Marker.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/Marker/Marker.xcodeproj/xcshareddata/xcschemes/Marker-iOS.xcscheme b/Marker/Marker.xcodeproj/xcshareddata/xcschemes/Marker-iOS.xcscheme index c65f4fa..e39de1f 100644 --- a/Marker/Marker.xcodeproj/xcshareddata/xcschemes/Marker-iOS.xcscheme +++ b/Marker/Marker.xcodeproj/xcshareddata/xcschemes/Marker-iOS.xcscheme @@ -1,6 +1,6 @@ + + + + @@ -39,17 +48,6 @@ - - - - - - - - + + + + @@ -39,17 +48,6 @@ - - - - - - - - + + + + @@ -39,17 +48,6 @@ - - - - - - - - TextStyle { + func strikethrough(color: Color? = nil, style: NSUnderlineStyle = .single) -> TextStyle { return self.with( newStrikethroughStyle: style, newStrikethroughColor: color ?? textColor @@ -128,7 +128,7 @@ public extension TextStyle { /// - Parameter color: Underline color. Defaults to textColor. /// - Parameter style: Underline style. Defaults to single line. /// - Returns: New TextStyle with underline. - public func underlined(color: Color? = nil, style: NSUnderlineStyle = .single) -> TextStyle { + func underlined(color: Color? = nil, style: NSUnderlineStyle = .single) -> TextStyle { return self.with( newUnderlineStyle: style, newUnderlineColor: color ?? textColor