Compare commits

..

No commits in common. "master" and "readmeUpdate" have entirely different histories.

16 changed files with 295 additions and 394 deletions

View File

@ -1,42 +0,0 @@
name: Carthage Artifact Upload
on:
push:
tags:
- '*'
jobs:
build:
name: Upload Release Asset
runs-on: macos-latest
env:
DEVELOPER_DIR: /Applications/Xcode_11.7.app/Contents/Developer
FRAMEWORK_NAME: DateToolsObjC
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Build & archive framework with Carthage
run: carthage build --no-skip-current && carthage archive
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
draft: false
prerelease: false
- name: Upload Release Asset
id: upload-release-asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps
asset_path: ./${{env.FRAMEWORK_NAME}}.framework.zip
asset_name: ${{env.FRAMEWORK_NAME}}.framework.zip
asset_content_type: application/zip

View File

@ -1,67 +0,0 @@
name: CI
on:
pull_request:
paths:
- ".github/workflows/CI.yml"
- "Sources/*"
- "Tests/*"
jobs:
SPM-Build:
runs-on: macos-latest
env:
DEVELOPER_DIR: /Applications/Xcode_12_beta.app/Contents/Developer
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Verify that DateToolsObjC can be build by SPM
run: xcrun swift build
iOS-Xcode:
name: Test iOS
runs-on: macOS-latest
env:
DEVELOPER_DIR: /Applications/Xcode_11.6.app/Contents/Developer
strategy:
matrix:
destination: ["OS=13.6,name=iPhone 11 Pro"] #, "OS=12.4,name=iPhone XS", "OS=11.4,name=iPhone X", "OS=10.3.1,name=iPhone SE"]
steps:
- uses: actions/checkout@v2
- name: iOS - ${{ matrix.destination }}
run: xcodebuild -project "DateToolsObjC.xcodeproj" -scheme "DateToolsObjC" -destination "${{ matrix.destination }}" clean test | xcpretty
iOS14-Xcode:
name: Test iOS 14
runs-on: macOS-latest
env:
DEVELOPER_DIR: /Applications/Xcode_12_beta.app/Contents/Developer
strategy:
matrix:
destination: ["OS=14.0,name=iPhone 11 Pro"] #, "OS=12.4,name=iPhone XS", "OS=11.4,name=iPhone X", "OS=10.3.1,name=iPhone SE"]
steps:
- uses: actions/checkout@v2
- name: iOS - ${{ matrix.destination }}
run: xcodebuild -project "DateToolsObjC.xcodeproj" -scheme "DateToolsObjC" -destination "${{ matrix.destination }}" clean test | xcpretty
tvOS-Xcode:
name: Test tvOS
runs-on: macOS-latest
env:
DEVELOPER_DIR: /Applications/Xcode_11.6.app/Contents/Developer
strategy:
matrix:
destination: ["OS=13.4,name=Apple TV 4K"] #, "OS=11.4,name=Apple TV 4K", "OS=10.2,name=Apple TV 1080p"]
steps:
- uses: actions/checkout@v2
- name: tvOS - ${{ matrix.destination }}
run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild -project "DateToolsObjC.xcodeproj" -scheme "DateToolsObjC" -destination "${{ matrix.destination }}" clean test | xcpretty
watchOS-Xcode:
name: Build watchOS
runs-on: macOS-latest
env:
DEVELOPER_DIR: /Applications/Xcode_11.6.app/Contents/Developer
strategy:
matrix:
destination: ["OS=6.2.1,name=Apple Watch Series 5 - 44mm"] #, "OS=4.2,name=Apple Watch Series 3 - 42mm", "OS=3.2,name=Apple Watch Series 2 - 42mm"]
steps:
- uses: actions/checkout@v2
- name: watchOS - ${{ matrix.destination }}
run: xcodebuild -project "DateToolsObjC.xcodeproj" -scheme "DateToolsObjC" -destination "${{ matrix.destination }}" clean build | xcpretty

25
.travis.yml Normal file
View File

@ -0,0 +1,25 @@
language: objective-c
osx_image: xcode10.3
xcode_project: DateToolsObjC.xcodeproj
xcode_scheme: DateToolsObjC
env:
global: FRAMEWORK_NAME=DateToolsObjC
before_script:
- brew update
- brew outdated carthage || brew upgrade carthage
- gem install xcpretty
- gem install xcpretty-travis-formatter
script:
- xcodebuild -project DateToolsObjC.xcodeproj -scheme DateToolsObjC -configuration Release test | xcpretty
before_deploy:
- carthage build --no-skip-current
- carthage archive $FRAMEWORK_NAME
deploy:
provider: releases
api_key:
secure: SiSM4AMUPQGETdnkgxpQ4HHsBcQcD5Fd9PK+ShmsV2rsKjoBAkH3NIY2XS5C3zTwuDq7rtqDY2+y7qnCgi+2iExoQX0VlzC8nUtsTMz//W4KbcuChmmWR501chsvQxHGqmcS9XkHuuVz7ocrtDCNP1y+k8r1N2CEGd9+uVOSsgGyZC+qC2pMm22Gte7ToJrHhnRqYBLAZM+d73ZWdqlSKUJDKKgf6ROyhpY0+gCilCdAh5yN3+prfI428rwCBIGtqmjHGlANS6U/rwfpOQv4W82Aw5RQnmFjz3wEPzzr1xXdCb/pcZUhf8fhHuajR2Y3IoDtzkQ663ydNc/hKkg1onrrmd0vO3LQ59UjePaPD0nH3nNn9Npq8gDKuYIBnvchIaCY7U25AkL4s4FjHpLrekteS9R8uNI4U9k3iBLfkWDJnabgiAWiv0H+4xEO+xbEGIwqqedAuSjQWcyMgMgCKzW4G0dQJNkU3fummVVWH42n35TxzqZXJNISc8MGYGKRNqJmeFW8p75NSLrJXcmL98N+8Irin2lC0EzZCMbTbWN6hbuiUf+F6KsGGpv+FfuNtOIbfhMQkIptbtXacnE+vIMNiTQ0lpAUNzY7NTqOdv7rQYm2X16IqHAbIwXoNWgRqRuDL0IOQZ423LuI986yn0phhH9yFNtgxEeST47C7o4=
file: "$FRAMEWORK_NAME.framework.zip"
skip_cleanup: true
on:
repo: 3a4oT/DateToolsObjC
tags: true

View File

@ -1,26 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundlePackageType</key>
<string>BNDL</string>
<key>CFBundleShortVersionString</key>
<string>1.0.5</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1.0.0</string>
<key>NSPrincipalClass</key>
<string></string>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundlePackageType</key>
<string>BNDL</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>$(CURRENT_PROJECT_VERSION)</string>
<key>NSPrincipalClass</key>
<string></string>
</dict>
</plist>

View File

@ -15,11 +15,11 @@
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>1.0.6</string>
<string>1.0.4</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1.0.0</string>
<string>$(CURRENT_PROJECT_VERSION)</string>
<key>NSPrincipalClass</key>
<string></string>
</dict>

View File

@ -9,11 +9,11 @@
/* Begin PBXAggregateTarget section */
"DateToolsObjC::DateToolsObjCPackageTests::ProductTarget" /* DateToolsObjCPackageTests */ = {
isa = PBXAggregateTarget;
buildConfigurationList = OBJ_62 /* Build configuration list for PBXAggregateTarget "DateToolsObjCPackageTests" */;
buildConfigurationList = OBJ_61 /* Build configuration list for PBXAggregateTarget "DateToolsObjCPackageTests" */;
buildPhases = (
);
dependencies = (
OBJ_65 /* PBXTargetDependency */,
OBJ_64 /* PBXTargetDependency */,
);
name = DateToolsObjCPackageTests;
productName = DateToolsObjCPackageTests;
@ -21,42 +21,42 @@
/* End PBXAggregateTarget section */
/* Begin PBXBuildFile section */
FB4A802C250A1C1600BF0D78 /* DateTools.bundle in Resources */ = {isa = PBXBuildFile; fileRef = FB4A802A250A1C0400BF0D78 /* DateTools.bundle */; };
FB4A802E250A1C2400BF0D78 /* DateTools.bundle in Resources */ = {isa = PBXBuildFile; fileRef = FB4A802A250A1C0400BF0D78 /* DateTools.bundle */; };
FB4A8037250A571F00BF0D78 /* DTError.h in Headers */ = {isa = PBXBuildFile; fileRef = OBJ_17 /* DTError.h */; settings = {ATTRIBUTES = (Public, ); }; };
FB4A8038250A572100BF0D78 /* DTConstants.h in Headers */ = {isa = PBXBuildFile; fileRef = OBJ_18 /* DTConstants.h */; settings = {ATTRIBUTES = (Public, ); }; };
FB4A8039250A572400BF0D78 /* DTTimePeriodChain.h in Headers */ = {isa = PBXBuildFile; fileRef = OBJ_19 /* DTTimePeriodChain.h */; settings = {ATTRIBUTES = (Public, ); }; };
FB4A803A250A572600BF0D78 /* DTTimePeriodCollection.h in Headers */ = {isa = PBXBuildFile; fileRef = OBJ_20 /* DTTimePeriodCollection.h */; settings = {ATTRIBUTES = (Public, ); }; };
FB4A803B250A572B00BF0D78 /* DateTools.h in Headers */ = {isa = PBXBuildFile; fileRef = OBJ_21 /* DateTools.h */; settings = {ATTRIBUTES = (Public, ); }; };
FB4A803C250A572D00BF0D78 /* DTTimePeriod.h in Headers */ = {isa = PBXBuildFile; fileRef = OBJ_22 /* DTTimePeriod.h */; settings = {ATTRIBUTES = (Public, ); }; };
FB4A803D250A572F00BF0D78 /* DTTimePeriodGroup.h in Headers */ = {isa = PBXBuildFile; fileRef = OBJ_23 /* DTTimePeriodGroup.h */; settings = {ATTRIBUTES = (Public, ); }; };
FB4A803E250A573100BF0D78 /* NSDate+DateTools.h in Headers */ = {isa = PBXBuildFile; fileRef = OBJ_24 /* NSDate+DateTools.h */; settings = {ATTRIBUTES = (Public, ); }; };
OBJ_47 /* DTConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_9 /* DTConstants.m */; };
OBJ_48 /* DTError.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_10 /* DTError.m */; };
OBJ_49 /* DTTimePeriod.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_11 /* DTTimePeriod.m */; };
OBJ_50 /* DTTimePeriodChain.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_12 /* DTTimePeriodChain.m */; };
OBJ_51 /* DTTimePeriodCollection.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_13 /* DTTimePeriodCollection.m */; };
OBJ_52 /* DTTimePeriodGroup.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_14 /* DTTimePeriodGroup.m */; };
OBJ_53 /* NSDate+DateTools.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_15 /* NSDate+DateTools.m */; };
OBJ_60 /* Package.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_6 /* Package.swift */; };
OBJ_71 /* DTTimeAgoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_29 /* DTTimeAgoTests.m */; };
OBJ_72 /* DTTimePeriodChainTests.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_30 /* DTTimePeriodChainTests.m */; };
OBJ_73 /* DTTimePeriodCollectionTests.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_31 /* DTTimePeriodCollectionTests.m */; };
OBJ_74 /* DTTimePeriodGroupTests.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_32 /* DTTimePeriodGroupTests.m */; };
OBJ_75 /* DTTimePeriodTests.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_33 /* DTTimePeriodTests.m */; };
OBJ_76 /* DateToolsObjCTests.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_34 /* DateToolsObjCTests.m */; };
OBJ_78 /* DateToolsObjC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = "DateToolsObjC::DateToolsObjC::Product" /* DateToolsObjC.framework */; };
0A6F4A5A231961870032E882 /* DateTools.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 0A6F4A582319616E0032E882 /* DateTools.bundle */; };
0A6F4A5E231961A50032E882 /* DTError.h in Headers */ = {isa = PBXBuildFile; fileRef = OBJ_17 /* DTError.h */; settings = {ATTRIBUTES = (Public, ); }; };
0A6F4A5F231961A50032E882 /* DTConstants.h in Headers */ = {isa = PBXBuildFile; fileRef = OBJ_18 /* DTConstants.h */; settings = {ATTRIBUTES = (Public, ); }; };
0A6F4A60231961A50032E882 /* DTTimePeriodChain.h in Headers */ = {isa = PBXBuildFile; fileRef = OBJ_19 /* DTTimePeriodChain.h */; settings = {ATTRIBUTES = (Public, ); }; };
0A6F4A61231961A50032E882 /* DTTimePeriodCollection.h in Headers */ = {isa = PBXBuildFile; fileRef = OBJ_20 /* DTTimePeriodCollection.h */; settings = {ATTRIBUTES = (Public, ); }; };
0A6F4A62231961A50032E882 /* DateTools.h in Headers */ = {isa = PBXBuildFile; fileRef = OBJ_21 /* DateTools.h */; settings = {ATTRIBUTES = (Public, ); }; };
0A6F4A63231961A50032E882 /* DTTimePeriod.h in Headers */ = {isa = PBXBuildFile; fileRef = OBJ_22 /* DTTimePeriod.h */; settings = {ATTRIBUTES = (Public, ); }; };
0A6F4A64231961A50032E882 /* DTTimePeriodGroup.h in Headers */ = {isa = PBXBuildFile; fileRef = OBJ_23 /* DTTimePeriodGroup.h */; settings = {ATTRIBUTES = (Public, ); }; };
0A6F4A65231961A50032E882 /* NSDate+DateTools.h in Headers */ = {isa = PBXBuildFile; fileRef = OBJ_24 /* NSDate+DateTools.h */; settings = {ATTRIBUTES = (Public, ); }; };
0A6F4A68231967330032E882 /* DateTools.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 0A6F4A582319616E0032E882 /* DateTools.bundle */; };
OBJ_46 /* DTConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_9 /* DTConstants.m */; };
OBJ_47 /* DTError.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_10 /* DTError.m */; };
OBJ_48 /* DTTimePeriod.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_11 /* DTTimePeriod.m */; };
OBJ_49 /* DTTimePeriodChain.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_12 /* DTTimePeriodChain.m */; };
OBJ_50 /* DTTimePeriodCollection.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_13 /* DTTimePeriodCollection.m */; };
OBJ_51 /* DTTimePeriodGroup.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_14 /* DTTimePeriodGroup.m */; };
OBJ_52 /* NSDate+DateTools.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_15 /* NSDate+DateTools.m */; };
OBJ_59 /* Package.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_6 /* Package.swift */; };
OBJ_70 /* DTTimeAgoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_29 /* DTTimeAgoTests.m */; };
OBJ_71 /* DTTimePeriodChainTests.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_30 /* DTTimePeriodChainTests.m */; };
OBJ_72 /* DTTimePeriodCollectionTests.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_31 /* DTTimePeriodCollectionTests.m */; };
OBJ_73 /* DTTimePeriodGroupTests.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_32 /* DTTimePeriodGroupTests.m */; };
OBJ_74 /* DTTimePeriodTests.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_33 /* DTTimePeriodTests.m */; };
OBJ_75 /* DateToolsObjCTests.m in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_34 /* DateToolsObjCTests.m */; };
OBJ_77 /* DateToolsObjC.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = "DateToolsObjC::DateToolsObjC::Product" /* DateToolsObjC.framework */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
FB4A8027250A1BC900BF0D78 /* PBXContainerItemProxy */ = {
0A6F4A55231960C40032E882 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = OBJ_1 /* Project object */;
proxyType = 1;
remoteGlobalIDString = "DateToolsObjC::DateToolsObjC";
remoteInfo = DateToolsObjC;
};
FB4A8028250A1BCA00BF0D78 /* PBXContainerItemProxy */ = {
0A6F4A56231960C40032E882 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = OBJ_1 /* Project object */;
proxyType = 1;
@ -66,10 +66,9 @@
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
0A6F4A582319616E0032E882 /* DateTools.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = DateTools.bundle; sourceTree = "<group>"; };
"DateToolsObjC::DateToolsObjC::Product" /* DateToolsObjC.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = DateToolsObjC.framework; sourceTree = BUILT_PRODUCTS_DIR; };
"DateToolsObjC::DateToolsObjCTests::Product" /* DateToolsObjCTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; path = DateToolsObjCTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
FB4A802A250A1C0400BF0D78 /* DateTools.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = DateTools.bundle; sourceTree = "<group>"; };
FB4A8033250A533400BF0D78 /* module.modulemap */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.module-map"; path = module.modulemap; sourceTree = "<group>"; };
OBJ_10 /* DTError.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DTError.m; sourceTree = "<group>"; };
OBJ_11 /* DTTimePeriod.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DTTimePeriod.m; sourceTree = "<group>"; };
OBJ_12 /* DTTimePeriodChain.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DTTimePeriodChain.m; sourceTree = "<group>"; };
@ -84,6 +83,7 @@
OBJ_22 /* DTTimePeriod.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DTTimePeriod.h; sourceTree = "<group>"; };
OBJ_23 /* DTTimePeriodGroup.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DTTimePeriodGroup.h; sourceTree = "<group>"; };
OBJ_24 /* NSDate+DateTools.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "NSDate+DateTools.h"; sourceTree = "<group>"; };
OBJ_25 /* module.modulemap */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.module-map"; name = module.modulemap; path = /Users/provenskyy/xcodeProjects/DateToolsObjC/Sources/DateToolsObjC/include/module.modulemap; sourceTree = "<group>"; };
OBJ_28 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
OBJ_29 /* DTTimeAgoTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DTTimeAgoTests.m; sourceTree = "<group>"; };
OBJ_30 /* DTTimePeriodChainTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DTTimePeriodChainTests.m; sourceTree = "<group>"; };
@ -91,37 +91,36 @@
OBJ_32 /* DTTimePeriodGroupTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DTTimePeriodGroupTests.m; sourceTree = "<group>"; };
OBJ_33 /* DTTimePeriodTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DTTimePeriodTests.m; sourceTree = "<group>"; };
OBJ_34 /* DateToolsObjCTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DateToolsObjCTests.m; sourceTree = "<group>"; };
OBJ_38 /* Carthage */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Carthage; sourceTree = SOURCE_ROOT; };
OBJ_39 /* LICENCE.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = LICENCE.md; sourceTree = "<group>"; };
OBJ_40 /* CREDITS.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = CREDITS.md; sourceTree = "<group>"; };
OBJ_41 /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = "<group>"; };
OBJ_38 /* LICENCE.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = LICENCE.md; sourceTree = "<group>"; };
OBJ_39 /* CREDITS.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = CREDITS.md; sourceTree = "<group>"; };
OBJ_40 /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = "<group>"; };
OBJ_6 /* Package.swift */ = {isa = PBXFileReference; explicitFileType = sourcecode.swift; path = Package.swift; sourceTree = "<group>"; };
OBJ_9 /* DTConstants.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DTConstants.m; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
OBJ_54 /* Frameworks */ = {
OBJ_53 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 0;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
OBJ_77 /* Frameworks */ = {
OBJ_76 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 0;
files = (
OBJ_78 /* DateToolsObjC.framework in Frameworks */,
OBJ_77 /* DateToolsObjC.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
FB4A8029250A1C0400BF0D78 /* Resources */ = {
0A6F4A572319616E0032E882 /* Resources */ = {
isa = PBXGroup;
children = (
FB4A802A250A1C0400BF0D78 /* DateTools.bundle */,
0A6F4A582319616E0032E882 /* DateTools.bundle */,
);
path = Resources;
sourceTree = "<group>";
@ -129,7 +128,6 @@
OBJ_16 /* include */ = {
isa = PBXGroup;
children = (
FB4A8033250A533400BF0D78 /* module.modulemap */,
OBJ_17 /* DTError.h */,
OBJ_18 /* DTConstants.h */,
OBJ_19 /* DTTimePeriodChain.h */,
@ -138,6 +136,7 @@
OBJ_22 /* DTTimePeriod.h */,
OBJ_23 /* DTTimePeriodGroup.h */,
OBJ_24 /* NSDate+DateTools.h */,
OBJ_25 /* module.modulemap */,
);
path = include;
sourceTree = "<group>";
@ -174,18 +173,18 @@
name = Products;
sourceTree = BUILT_PRODUCTS_DIR;
};
OBJ_5 = {
OBJ_5 /* */ = {
isa = PBXGroup;
children = (
OBJ_6 /* Package.swift */,
OBJ_7 /* Sources */,
OBJ_26 /* Tests */,
OBJ_35 /* Products */,
OBJ_38 /* Carthage */,
OBJ_39 /* LICENCE.md */,
OBJ_40 /* CREDITS.md */,
OBJ_41 /* README.md */,
OBJ_38 /* LICENCE.md */,
OBJ_39 /* CREDITS.md */,
OBJ_40 /* README.md */,
);
name = "";
sourceTree = "<group>";
};
OBJ_7 /* Sources */ = {
@ -199,7 +198,7 @@
OBJ_8 /* DateToolsObjC */ = {
isa = PBXGroup;
children = (
FB4A8029250A1C0400BF0D78 /* Resources */,
0A6F4A572319616E0032E882 /* Resources */,
OBJ_9 /* DTConstants.m */,
OBJ_10 /* DTError.m */,
OBJ_11 /* DTTimePeriod.m */,
@ -216,18 +215,18 @@
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
FB4A8036250A571600BF0D78 /* Headers */ = {
0A6F4A5D231961990032E882 /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
FB4A8037250A571F00BF0D78 /* DTError.h in Headers */,
FB4A8038250A572100BF0D78 /* DTConstants.h in Headers */,
FB4A803A250A572600BF0D78 /* DTTimePeriodCollection.h in Headers */,
FB4A803B250A572B00BF0D78 /* DateTools.h in Headers */,
FB4A803C250A572D00BF0D78 /* DTTimePeriod.h in Headers */,
FB4A803D250A572F00BF0D78 /* DTTimePeriodGroup.h in Headers */,
FB4A803E250A573100BF0D78 /* NSDate+DateTools.h in Headers */,
FB4A8039250A572400BF0D78 /* DTTimePeriodChain.h in Headers */,
0A6F4A5E231961A50032E882 /* DTError.h in Headers */,
0A6F4A5F231961A50032E882 /* DTConstants.h in Headers */,
0A6F4A60231961A50032E882 /* DTTimePeriodChain.h in Headers */,
0A6F4A61231961A50032E882 /* DTTimePeriodCollection.h in Headers */,
0A6F4A62231961A50032E882 /* DateTools.h in Headers */,
0A6F4A63231961A50032E882 /* DTTimePeriod.h in Headers */,
0A6F4A64231961A50032E882 /* DTTimePeriodGroup.h in Headers */,
0A6F4A65231961A50032E882 /* NSDate+DateTools.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -236,12 +235,12 @@
/* Begin PBXNativeTarget section */
"DateToolsObjC::DateToolsObjC" /* DateToolsObjC */ = {
isa = PBXNativeTarget;
buildConfigurationList = OBJ_43 /* Build configuration list for PBXNativeTarget "DateToolsObjC" */;
buildConfigurationList = OBJ_42 /* Build configuration list for PBXNativeTarget "DateToolsObjC" */;
buildPhases = (
FB4A8036250A571600BF0D78 /* Headers */,
OBJ_46 /* Sources */,
OBJ_54 /* Frameworks */,
FB4A802B250A1C1000BF0D78 /* Resources */,
0A6F4A5D231961990032E882 /* Headers */,
OBJ_45 /* Sources */,
OBJ_53 /* Frameworks */,
0A6F4A59231961820032E882 /* Resources */,
);
buildRules = (
);
@ -254,16 +253,16 @@
};
"DateToolsObjC::DateToolsObjCTests" /* DateToolsObjCTests */ = {
isa = PBXNativeTarget;
buildConfigurationList = OBJ_67 /* Build configuration list for PBXNativeTarget "DateToolsObjCTests" */;
buildConfigurationList = OBJ_66 /* Build configuration list for PBXNativeTarget "DateToolsObjCTests" */;
buildPhases = (
OBJ_70 /* Sources */,
OBJ_77 /* Frameworks */,
FB4A802D250A1C2000BF0D78 /* Resources */,
OBJ_69 /* Sources */,
OBJ_76 /* Frameworks */,
0A6F4A5B2319618C0032E882 /* Resources */,
);
buildRules = (
);
dependencies = (
OBJ_79 /* PBXTargetDependency */,
OBJ_78 /* PBXTargetDependency */,
);
name = DateToolsObjCTests;
productName = DateToolsObjCTests;
@ -272,9 +271,9 @@
};
"DateToolsObjC::SwiftPMPackageDescription" /* DateToolsObjCPackageDescription */ = {
isa = PBXNativeTarget;
buildConfigurationList = OBJ_56 /* Build configuration list for PBXNativeTarget "DateToolsObjCPackageDescription" */;
buildConfigurationList = OBJ_55 /* Build configuration list for PBXNativeTarget "DateToolsObjCPackageDescription" */;
buildPhases = (
OBJ_59 /* Sources */,
OBJ_58 /* Sources */,
);
buildRules = (
);
@ -291,17 +290,17 @@
isa = PBXProject;
attributes = {
LastSwiftMigration = 9999;
LastUpgradeCheck = 1200;
LastUpgradeCheck = 9999;
};
buildConfigurationList = OBJ_2 /* Build configuration list for PBXProject "DateToolsObjC" */;
compatibilityVersion = "Xcode 3.2";
developmentRegion = en;
developmentRegion = English;
hasScannedForEncodings = 0;
knownRegions = (
English,
en,
Base,
);
mainGroup = OBJ_5;
mainGroup = OBJ_5 /* */;
productRefGroup = OBJ_35 /* Products */;
projectDirPath = "";
projectRoot = "";
@ -315,72 +314,72 @@
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
FB4A802B250A1C1000BF0D78 /* Resources */ = {
0A6F4A59231961820032E882 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
FB4A802C250A1C1600BF0D78 /* DateTools.bundle in Resources */,
0A6F4A5A231961870032E882 /* DateTools.bundle in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FB4A802D250A1C2000BF0D78 /* Resources */ = {
0A6F4A5B2319618C0032E882 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
FB4A802E250A1C2400BF0D78 /* DateTools.bundle in Resources */,
0A6F4A68231967330032E882 /* DateTools.bundle in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
OBJ_46 /* Sources */ = {
OBJ_45 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 0;
files = (
OBJ_47 /* DTConstants.m in Sources */,
OBJ_48 /* DTError.m in Sources */,
OBJ_49 /* DTTimePeriod.m in Sources */,
OBJ_50 /* DTTimePeriodChain.m in Sources */,
OBJ_51 /* DTTimePeriodCollection.m in Sources */,
OBJ_52 /* DTTimePeriodGroup.m in Sources */,
OBJ_53 /* NSDate+DateTools.m in Sources */,
OBJ_46 /* DTConstants.m in Sources */,
OBJ_47 /* DTError.m in Sources */,
OBJ_48 /* DTTimePeriod.m in Sources */,
OBJ_49 /* DTTimePeriodChain.m in Sources */,
OBJ_50 /* DTTimePeriodCollection.m in Sources */,
OBJ_51 /* DTTimePeriodGroup.m in Sources */,
OBJ_52 /* NSDate+DateTools.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
OBJ_59 /* Sources */ = {
OBJ_58 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 0;
files = (
OBJ_60 /* Package.swift in Sources */,
OBJ_59 /* Package.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
OBJ_70 /* Sources */ = {
OBJ_69 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 0;
files = (
OBJ_71 /* DTTimeAgoTests.m in Sources */,
OBJ_72 /* DTTimePeriodChainTests.m in Sources */,
OBJ_73 /* DTTimePeriodCollectionTests.m in Sources */,
OBJ_74 /* DTTimePeriodGroupTests.m in Sources */,
OBJ_75 /* DTTimePeriodTests.m in Sources */,
OBJ_76 /* DateToolsObjCTests.m in Sources */,
OBJ_70 /* DTTimeAgoTests.m in Sources */,
OBJ_71 /* DTTimePeriodChainTests.m in Sources */,
OBJ_72 /* DTTimePeriodCollectionTests.m in Sources */,
OBJ_73 /* DTTimePeriodGroupTests.m in Sources */,
OBJ_74 /* DTTimePeriodTests.m in Sources */,
OBJ_75 /* DateToolsObjCTests.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
OBJ_65 /* PBXTargetDependency */ = {
OBJ_64 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = "DateToolsObjC::DateToolsObjCTests" /* DateToolsObjCTests */;
targetProxy = FB4A8028250A1BCA00BF0D78 /* PBXContainerItemProxy */;
targetProxy = 0A6F4A56231960C40032E882 /* PBXContainerItemProxy */;
};
OBJ_79 /* PBXTargetDependency */ = {
OBJ_78 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = "DateToolsObjC::DateToolsObjC" /* DateToolsObjC */;
targetProxy = FB4A8027250A1BC900BF0D78 /* PBXContainerItemProxy */;
targetProxy = 0A6F4A55231960C40032E882 /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
@ -389,48 +388,20 @@
isa = XCBuildConfiguration;
buildSettings = {
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_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_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;
COMBINE_HIDPI_IMAGES = YES;
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = dwarf;
DYLIB_INSTALL_NAME_BASE = "@rpath";
ENABLE_NS_ASSERTIONS = YES;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
"SWIFT_PACKAGE=1",
"DEBUG=1",
"BUILD_FOR_COCOA_FRAMEWORK=1",
);
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;
MACOSX_DEPLOYMENT_TARGET = 10.10;
ONLY_ACTIVE_ARCH = YES;
OTHER_SWIFT_FLAGS = "$(inherited) -DXcode";
OTHER_SWIFT_FLAGS = "-DXcode";
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
SUPPORTED_PLATFORMS = "macosx iphoneos iphonesimulator appletvos appletvsimulator watchos watchsimulator";
@ -444,44 +415,17 @@
isa = XCBuildConfiguration;
buildSettings = {
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_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_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;
COMBINE_HIDPI_IMAGES = YES;
COPY_PHASE_STRIP = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DYLIB_INSTALL_NAME_BASE = "@rpath";
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = s;
GCC_PREPROCESSOR_DEFINITIONS = (
"$(inherited)",
"SWIFT_PACKAGE=1",
"BUILD_FOR_COCOA_FRAMEWORK=1",
);
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;
MACOSX_DEPLOYMENT_TARGET = 10.10;
OTHER_SWIFT_FLAGS = "$(inherited) -DXcode";
OTHER_SWIFT_FLAGS = "-DXcode";
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
SUPPORTED_PLATFORMS = "macosx iphoneos iphonesimulator appletvos appletvsimulator watchos watchsimulator";
@ -491,25 +435,53 @@
};
name = Release;
};
OBJ_44 /* Debug */ = {
OBJ_43 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
APPLICATION_EXTENSION_API_ONLY = YES;
CLANG_WARN_ASSIGN_ENUM = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES_ERROR;
CLANG_WARN_COMMA = YES_ERROR;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_IMPLICIT_SIGN_CONVERSION = NO;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES_ERROR;
CLANG_WARN_SEMICOLON_BEFORE_METHOD_BODY = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES_ERROR;
CLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = YES_ERROR;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES_AGGRESSIVE;
DEFINES_MODULE = YES;
ENABLE_TESTABILITY = YES;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(PLATFORM_DIR)/Developer/Library/Frameworks",
);
GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = YES;
GCC_TREAT_INCOMPATIBLE_POINTER_TYPE_WARNINGS_AS_ERRORS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES;
GCC_WARN_ABOUT_MISSING_NEWLINE = YES;
GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_FOUR_CHARACTER_CONSTANTS = YES;
GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES;
GCC_WARN_SHADOW = YES;
GCC_WARN_SIGN_COMPARE = NO;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNKNOWN_PRAGMAS = YES;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_LABEL = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
HEADER_SEARCH_PATHS = (
"$(inherited)",
"$(SRCROOT)/Sources/DateToolsObjC/include",
);
INFOPLIST_FILE = DateToolsObjC.xcodeproj/DateToolsObjC_Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx";
MACOSX_DEPLOYMENT_TARGET = 10.13;
MODULEMAP_FILE = "";
MACOSX_DEPLOYMENT_TARGET = 10.10;
MODULEMAP_FILE = "$(SRCROOT)/Sources/DateToolsObjC/include/module.modulemap";
OTHER_CFLAGS = "$(inherited)";
OTHER_LDFLAGS = "$(inherited)";
OTHER_SWIFT_FLAGS = "$(inherited)";
@ -519,30 +491,58 @@
SKIP_INSTALL = YES;
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)";
TARGET_NAME = DateToolsObjC;
TVOS_DEPLOYMENT_TARGET = 12.0;
WATCHOS_DEPLOYMENT_TARGET = 3.0;
TVOS_DEPLOYMENT_TARGET = 9.0;
WATCHOS_DEPLOYMENT_TARGET = 2.0;
};
name = Debug;
};
OBJ_45 /* Release */ = {
OBJ_44 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
APPLICATION_EXTENSION_API_ONLY = YES;
CLANG_WARN_ASSIGN_ENUM = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES_ERROR;
CLANG_WARN_COMMA = YES_ERROR;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_IMPLICIT_SIGN_CONVERSION = NO;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES_ERROR;
CLANG_WARN_SEMICOLON_BEFORE_METHOD_BODY = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES_ERROR;
CLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = YES_ERROR;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES_AGGRESSIVE;
DEFINES_MODULE = YES;
ENABLE_TESTABILITY = YES;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(PLATFORM_DIR)/Developer/Library/Frameworks",
);
GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = YES;
GCC_TREAT_INCOMPATIBLE_POINTER_TYPE_WARNINGS_AS_ERRORS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES;
GCC_WARN_ABOUT_MISSING_NEWLINE = YES;
GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_FOUR_CHARACTER_CONSTANTS = YES;
GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES;
GCC_WARN_SHADOW = YES;
GCC_WARN_SIGN_COMPARE = NO;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNKNOWN_PRAGMAS = YES;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_LABEL = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
HEADER_SEARCH_PATHS = (
"$(inherited)",
"$(SRCROOT)/Sources/DateToolsObjC/include",
);
INFOPLIST_FILE = DateToolsObjC.xcodeproj/DateToolsObjC_Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) $(TOOLCHAIN_DIR)/usr/lib/swift/macosx";
MACOSX_DEPLOYMENT_TARGET = 10.13;
MODULEMAP_FILE = "";
MACOSX_DEPLOYMENT_TARGET = 10.10;
MODULEMAP_FILE = "$(SRCROOT)/Sources/DateToolsObjC/include/module.modulemap";
OTHER_CFLAGS = "$(inherited)";
OTHER_LDFLAGS = "$(inherited)";
OTHER_SWIFT_FLAGS = "$(inherited)";
@ -552,46 +552,46 @@
SKIP_INSTALL = YES;
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)";
TARGET_NAME = DateToolsObjC;
TVOS_DEPLOYMENT_TARGET = 12.0;
WATCHOS_DEPLOYMENT_TARGET = 3.0;
TVOS_DEPLOYMENT_TARGET = 9.0;
WATCHOS_DEPLOYMENT_TARGET = 2.0;
};
name = Release;
};
OBJ_57 /* Debug */ = {
OBJ_56 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
LD = /usr/bin/true;
OTHER_SWIFT_FLAGS = "-swift-version 5 -I $(TOOLCHAIN_DIR)/usr/lib/swift/pm/4_2 -sdk /Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.sdk -package-description-version 5.3.0";
OTHER_SWIFT_FLAGS = "-swift-version 5 -I $(TOOLCHAIN_DIR)/usr/lib/swift/pm/4_2 -target x86_64-apple-macosx10.10 -sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk";
SWIFT_VERSION = 5.0;
};
name = Debug;
};
OBJ_58 /* Release */ = {
OBJ_57 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
LD = /usr/bin/true;
OTHER_SWIFT_FLAGS = "-swift-version 5 -I $(TOOLCHAIN_DIR)/usr/lib/swift/pm/4_2 -sdk /Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.sdk -package-description-version 5.3.0";
OTHER_SWIFT_FLAGS = "-swift-version 5 -I $(TOOLCHAIN_DIR)/usr/lib/swift/pm/4_2 -target x86_64-apple-macosx10.10 -sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk";
SWIFT_VERSION = 5.0;
};
name = Release;
};
OBJ_63 /* Debug */ = {
OBJ_62 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = Debug;
};
OBJ_64 /* Release */ = {
OBJ_63 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = Release;
};
OBJ_68 /* Debug */ = {
OBJ_67 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
CLANG_ENABLE_MODULES = YES;
EMBEDDED_CONTENT_CONTAINS_SWIFT = YES;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(PLATFORM_DIR)/Developer/Library/Frameworks",
@ -601,25 +601,25 @@
"$(SRCROOT)/Tests/DateToolsObjCTests/include",
"$(SRCROOT)/Sources/DateToolsObjC/include",
);
INFOPLIST_FILE = DateToolsObjC.xcodeproj/DateToolsObjCTests_Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
INFOPLIST_FILE = "$(SRCROOT)/Tests/DateToolsObjCTests/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks";
MACOSX_DEPLOYMENT_TARGET = 10.15;
MACOSX_DEPLOYMENT_TARGET = 10.10;
OTHER_CFLAGS = "$(inherited)";
OTHER_LDFLAGS = "$(inherited)";
OTHER_SWIFT_FLAGS = "$(inherited)";
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)";
TARGET_NAME = DateToolsObjCTests;
TVOS_DEPLOYMENT_TARGET = 12.0;
WATCHOS_DEPLOYMENT_TARGET = 3.0;
TVOS_DEPLOYMENT_TARGET = 9.0;
WATCHOS_DEPLOYMENT_TARGET = 2.0;
};
name = Debug;
};
OBJ_69 /* Release */ = {
OBJ_68 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
CLANG_ENABLE_MODULES = YES;
EMBEDDED_CONTENT_CONTAINS_SWIFT = YES;
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(PLATFORM_DIR)/Developer/Library/Frameworks",
@ -629,17 +629,17 @@
"$(SRCROOT)/Tests/DateToolsObjCTests/include",
"$(SRCROOT)/Sources/DateToolsObjC/include",
);
INFOPLIST_FILE = DateToolsObjC.xcodeproj/DateToolsObjCTests_Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
INFOPLIST_FILE = "$(SRCROOT)/Tests/DateToolsObjCTests/Info.plist";
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @loader_path/../Frameworks @loader_path/Frameworks";
MACOSX_DEPLOYMENT_TARGET = 10.15;
MACOSX_DEPLOYMENT_TARGET = 10.10;
OTHER_CFLAGS = "$(inherited)";
OTHER_LDFLAGS = "$(inherited)";
OTHER_SWIFT_FLAGS = "$(inherited)";
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)";
TARGET_NAME = DateToolsObjCTests;
TVOS_DEPLOYMENT_TARGET = 12.0;
WATCHOS_DEPLOYMENT_TARGET = 3.0;
TVOS_DEPLOYMENT_TARGET = 9.0;
WATCHOS_DEPLOYMENT_TARGET = 2.0;
};
name = Release;
};
@ -655,38 +655,38 @@
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
OBJ_43 /* Build configuration list for PBXNativeTarget "DateToolsObjC" */ = {
OBJ_42 /* Build configuration list for PBXNativeTarget "DateToolsObjC" */ = {
isa = XCConfigurationList;
buildConfigurations = (
OBJ_44 /* Debug */,
OBJ_45 /* Release */,
OBJ_43 /* Debug */,
OBJ_44 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
OBJ_56 /* Build configuration list for PBXNativeTarget "DateToolsObjCPackageDescription" */ = {
OBJ_55 /* Build configuration list for PBXNativeTarget "DateToolsObjCPackageDescription" */ = {
isa = XCConfigurationList;
buildConfigurations = (
OBJ_57 /* Debug */,
OBJ_58 /* Release */,
OBJ_56 /* Debug */,
OBJ_57 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
OBJ_62 /* Build configuration list for PBXAggregateTarget "DateToolsObjCPackageTests" */ = {
OBJ_61 /* Build configuration list for PBXAggregateTarget "DateToolsObjCPackageTests" */ = {
isa = XCConfigurationList;
buildConfigurations = (
OBJ_63 /* Debug */,
OBJ_64 /* Release */,
OBJ_62 /* Debug */,
OBJ_63 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
OBJ_67 /* Build configuration list for PBXNativeTarget "DateToolsObjCTests" */ = {
OBJ_66 /* Build configuration list for PBXNativeTarget "DateToolsObjCTests" */ = {
isa = XCConfigurationList;
buildConfigurations = (
OBJ_68 /* Debug */,
OBJ_69 /* Release */,
OBJ_67 /* Debug */,
OBJ_68 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1200"
LastUpgradeVersion = "9999"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
@ -39,6 +39,8 @@
</BuildableReference>
</TestableReference>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
<LaunchAction
buildConfiguration = "Debug"
@ -50,6 +52,17 @@
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "DateToolsObjC::DateToolsObjC"
BuildableName = "DateToolsObjC.framework"
BlueprintName = "DateToolsObjC"
ReferencedContainer = "container:DateToolsObjC.xcodeproj">
</BuildableReference>
</MacroExpansion>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1200"
LastUpgradeVersion = "1030"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
@ -39,6 +39,17 @@
</BuildableReference>
</TestableReference>
</Testables>
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "DateToolsObjC::DateToolsObjC"
BuildableName = "DateToolsObjC.framework"
BlueprintName = "DateToolsObjC"
ReferencedContainer = "container:DateToolsObjC.xcodeproj">
</BuildableReference>
</MacroExpansion>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
<LaunchAction
buildConfiguration = "Debug"
@ -59,6 +70,8 @@
ReferencedContainer = "container:DateToolsObjC.xcodeproj">
</BuildableReference>
</MacroExpansion>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"

View File

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1200"
LastUpgradeVersion = "1030"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
@ -23,6 +23,8 @@
</BuildableReference>
</TestableReference>
</Testables>
<AdditionalOptions>
</AdditionalOptions>
</TestAction>
<LaunchAction
buildConfiguration = "Debug"
@ -34,6 +36,8 @@
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"

View File

@ -1,4 +1,4 @@
// swift-tools-version:5.3
// swift-tools-version:5.0
// The swift-tools-version declares the minimum version of Swift required to build this package.
import PackageDescription
@ -6,10 +6,10 @@ import PackageDescription
let package = Package(
name: "DateToolsObjC",
platforms: [
.macOS(.v10_13),
.iOS(.v9),
.watchOS(.v3),
.tvOS(.v10)
.macOS(.v10_10),
.iOS(.v8),
.watchOS(.v2),
.tvOS(.v9)
],
products: [
// Products define the executables and libraries produced by a package, and make them visible to other packages.
@ -26,11 +26,9 @@ let package = Package(
// Targets can depend on other targets in this package, and on products in packages which this package depends on.
.target(
name: "DateToolsObjC",
dependencies: [],
resources: [.process("Resources")]),
dependencies: []),
.testTarget(
name: "DateToolsObjCTests",
dependencies: ["DateToolsObjC"],
exclude: ["Info.plist"]),
dependencies: ["DateToolsObjC"]),
]
)

View File

@ -19,11 +19,11 @@ if ([periodA overlapsWith:periodB]) {
}
```
## Use with Swift Package Manager
## Use with Swift Package Manger
```swift
.package(url: "https://github.com/3a4oT/DateToolsObjC", .upToNextMajor(from: "1.0.5"))
.package(url: "https://github.com/3a4oT/DateToolsObjC", .upToNextMajor(from: "1.0.4"))
```

View File

@ -22,15 +22,6 @@
#import "include/NSDate+DateTools.h"
#ifndef BUILD_FOR_COCOA_FRAMEWORK
@implementation NSBundle (ObjcModule)
+ (nullable NSBundle*)locBundle {
return [NSBundle bundleWithURL:[SWIFTPM_MODULE_BUNDLE URLForResource:@"DateTools"
withExtension:@"bundle"]];
}
@end
#endif
typedef NS_ENUM(NSUInteger, DTDateComponent){
DTDateComponentEra,
DTDateComponentYear,

View File

@ -20,28 +20,14 @@
// 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.
#ifdef BUILD_FOR_COCOA_FRAMEWORK
#ifndef DateToolsLocalizedStrings
#define DateToolsLocalizedStrings(key) \
NSLocalizedStringFromTableInBundle(key, @"DateTools", [NSBundle bundleWithPath:[[[NSBundle bundleForClass:[DTError class]] resourcePath] stringByAppendingPathComponent:@"DateTools.bundle"]], nil)
#endif
#else
#ifndef DateToolsLocalizedStrings
#define DateToolsLocalizedStrings(key) \
NSLocalizedStringFromTableInBundle(key, @"DateTools", [NSBundle locBundle], nil)
#endif
#ifndef DateToolsLocalizedStrings
#define DateToolsLocalizedStrings(key) \
NSLocalizedStringFromTableInBundle(key, @"DateTools", [NSBundle bundleWithPath:[[[NSBundle bundleForClass:[DTError class]] resourcePath] stringByAppendingPathComponent:@"DateTools.bundle"]], nil)
#endif
#import <Foundation/Foundation.h>
#import "DTConstants.h"
#ifndef BUILD_FOR_COCOA_FRAMEWORK
@interface NSBundle (ObjcModule)
+ (nullable NSBundle*)locBundle;
@end
#endif
@interface NSDate (DateTools)
#pragma mark - Time Ago

View File

@ -0,0 +1,3 @@
module DateToolsObjC {
umbrella header "Headers/DateTools.h" requires objc export *
}

View File

@ -164,21 +164,12 @@
{
NSString *en_local = @"Yesterday";
NSString *ja_local = @"昨日";
NSString *key = en_local;
NSBundle *mainBundle = [NSBundle bundleForClass:self.class];
#ifdef BUILD_FOR_COCOA_FRAMEWORK
NSBundle *dateToolsBundle = [NSBundle bundleWithPath:[mainBundle pathForResource:@"DateTools"
ofType:@"bundle"]];
#else
NSBundle* modBundle = [NSBundle bundleWithPath:[mainBundle pathForResource:@"DateToolsObjC_DateToolsObjC"
ofType:@"bundle"]];
NSBundle *dateToolsBundle = [NSBundle bundleWithPath:[modBundle pathForResource:@"DateTools"
ofType:@"bundle"]];
#endif
NSBundle *jaBundle = [NSBundle bundleWithPath:[dateToolsBundle pathForResource:@"ja"
ofType:@"lproj"]];

View File

@ -37,19 +37,6 @@
#pragma mark - Date Components
#ifdef BUILD_FOR_COCOA_FRAMEWORK
- (void)testBundleVersion {
NSBundle *appBundle = [NSBundle bundleWithIdentifier:@"DateToolsObjC"];
XCTAssertNotNil(appBundle);
NSString *bundleVersion = [appBundle.infoDictionary valueForKey:@"CFBundleVersion"];
XCTAssertEqualObjects(bundleVersion, @"1.0.0");
// Bump before release and update test
// agvtool new-marketing-version x.x.x
NSString *marketingVersion = [appBundle.infoDictionary valueForKey:@"CFBundleShortVersionString"];
XCTAssertEqualObjects(marketingVersion, @"1.0.5");
}
#endif
- (void)testEra {
XCTAssertEqual(1, [[NSDate date] era], @"%s Failed", __PRETTY_FUNCTION__);
}