diff --git a/Pluralize.swift.podspec b/Pluralize.swift.podspec index d7eec64..202db67 100644 --- a/Pluralize.swift.podspec +++ b/Pluralize.swift.podspec @@ -8,7 +8,7 @@ Pod::Spec.new do |s| s.name = "Pluralize.swift" - s.version = "1.0" + s.version = '1.1' s.summary = "Great Swift String Pluralize Extension" # This description is used to generate tags and improve search results. @@ -18,17 +18,17 @@ Pod::Spec.new do |s| # * Finally, don't worry about the indent, CocoaPods strips it! s.description = "case-insensitive, tons of rules for irregular nouns (plural form), supports uncountable nouns, allows dynamic addition of rules" - s.homepage = "https://github.com/joshualat/Pluralize.swift" + s.homepage = "https://github.com/sammy-SC/Pluralize.swift.git" # s.screenshots = "www.example.com/screenshots_1", "www.example.com/screenshots_2" s.license = 'MIT' s.author = { "Joshua Arvin Lat" => "unknown" } - s.source = { :git => "https://github.com/joshualat/Pluralize.swift.git", :tag => s.version.to_s } + s.source = { :git => "https://github.com/sammy-SC/Pluralize.swift.git", :tag => '1.1'} - s.platform = :ios, '8.0' s.requires_arc = true - - s.source_files = 'Pluralize/*' - s.resource_bundles = { - 'Pluralize.swift' => ['Pod/Assets/*.png'] - } + s.swift_version = '5.0' + s.watchos.deployment_target = '2.0' + s.ios.deployment_target = '8.0' + s.osx.deployment_target = '10.9' + s.tvos.deployment_target = '9.0' + s.source_files = 'Pluralize/*.swift' end diff --git a/Pluralize.xcodeproj/project.pbxproj b/Pluralize.xcodeproj/project.pbxproj index cdf4e1b..37cfdd6 100644 --- a/Pluralize.xcodeproj/project.pbxproj +++ b/Pluralize.xcodeproj/project.pbxproj @@ -25,6 +25,7 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + 4A684448264C9B2C002E3ECE /* Pluralize.swift.podspec */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; path = Pluralize.swift.podspec; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; 93198B021A4FE442009D2787 /* Pluralize.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pluralize.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 93198B061A4FE442009D2787 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 93198B071A4FE442009D2787 /* Pluralize.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Pluralize.h; sourceTree = ""; }; @@ -85,6 +86,7 @@ isa = PBXGroup; children = ( 93198B061A4FE442009D2787 /* Info.plist */, + 4A684448264C9B2C002E3ECE /* Pluralize.swift.podspec */, ); name = "Supporting Files"; sourceTree = ""; @@ -164,26 +166,26 @@ attributes = { LastSwiftMigration = 0700; LastSwiftUpdateCheck = 0700; - LastUpgradeCheck = 0800; + LastUpgradeCheck = 1250; ORGANIZATIONNAME = "Joshua Lat"; TargetAttributes = { 93198B011A4FE442009D2787 = { CreatedOnToolsVersion = 6.1.1; - DevelopmentTeam = V6N86766T9; - LastSwiftMigration = 0800; + LastSwiftMigration = 1250; }; 93198B0C1A4FE442009D2787 = { CreatedOnToolsVersion = 6.1.1; - LastSwiftMigration = 0800; + LastSwiftMigration = 1250; }; }; }; buildConfigurationList = 93198AFC1A4FE442009D2787 /* Build configuration list for PBXProject "Pluralize" */; compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; + developmentRegion = en; hasScannedForEncodings = 0; knownRegions = ( en, + Base, ); mainGroup = 93198AF81A4FE442009D2787; productRefGroup = 93198B031A4FE442009D2787 /* Products */; @@ -246,18 +248,28 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = 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_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_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = 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; @@ -281,12 +293,13 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.1; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; SUPPORTED_PLATFORMS = "macosx iphoneos iphonesimulator"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; VALID_ARCHS = "arm64 armv7 armv7s i386 x86_64"; VERSIONING_SYSTEM = "apple-generic"; @@ -298,18 +311,28 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; CLANG_ENABLE_OBJC_ARC = 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_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_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = 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; @@ -326,11 +349,12 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.1; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SUPPORTED_PLATFORMS = "macosx iphoneos iphonesimulator"; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; VALID_ARCHS = "arm64 armv7 armv7s i386 x86_64"; @@ -345,7 +369,7 @@ CLANG_ENABLE_MODULES = YES; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = V6N86766T9; + DEVELOPMENT_TEAM = ""; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; @@ -357,7 +381,6 @@ SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 3.0; }; name = Debug; }; @@ -367,7 +390,7 @@ CLANG_ENABLE_MODULES = YES; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = V6N86766T9; + DEVELOPMENT_TEAM = ""; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; @@ -378,7 +401,6 @@ PRODUCT_NAME = "$(TARGET_NAME)"; SDKROOT = iphoneos; SKIP_INSTALL = YES; - SWIFT_VERSION = 3.0; }; name = Release; }; @@ -397,7 +419,6 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks @executable_path/../Frameworks @loader_path/../Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "com.joshualat.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 3.0; }; name = Debug; }; @@ -412,7 +433,6 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks @executable_path/../Frameworks @loader_path/../Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "com.joshualat.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 3.0; }; name = Release; }; diff --git a/Pluralize.xcodeproj/xcshareddata/xcschemes/Pluralize-iOS.xcscheme b/Pluralize.xcodeproj/xcshareddata/xcschemes/Pluralize-iOS.xcscheme index 0ec5f3b..51a09d5 100644 --- a/Pluralize.xcodeproj/xcshareddata/xcschemes/Pluralize-iOS.xcscheme +++ b/Pluralize.xcodeproj/xcshareddata/xcschemes/Pluralize-iOS.xcscheme @@ -1,6 +1,6 @@ - - - - + + + + @@ -39,17 +48,6 @@ - - - - - - - - + + + + IDEDidComputeMac32BitWarning + + + diff --git a/Pluralize/Pluralize.swift b/Pluralize/Pluralize.swift index 92d9d3b..c03c3e9 100644 --- a/Pluralize/Pluralize.swift +++ b/Pluralize/Pluralize.swift @@ -134,7 +134,7 @@ public class Pluralize { } public class func apply(word: String) -> String { - guard !(sharedInstance.uncountables.contains(word.lowercased()) || word.characters.count == 0) else { + guard !(sharedInstance.uncountables.contains(word.lowercased()) || word.count == 0) else { return word } @@ -166,7 +166,7 @@ public class Pluralize { private class func regexReplace(input: String, pattern: String, template: String) -> String { let regex = try! NSRegularExpression(pattern: pattern, options: .caseInsensitive) - let range = NSRange(location: 0, length: input.characters.count) + let range = NSRange(location: 0, length: input.count) let output = regex.stringByReplacingMatches(in: input, options: [], range: range, withTemplate: template) return output } @@ -193,6 +193,6 @@ extension String { // Workaround to allow us to use `count` as an argument name in pluralize() above. private var length: Int { - return self.characters.count + return self.count } }