diff --git a/.gitignore b/.gitignore index b96d03e..c1bce7f 100644 --- a/.gitignore +++ b/.gitignore @@ -166,4 +166,6 @@ playground.xcworkspace GoogleService-Info.plist GitHub-Info.plist +*.p8 + # End of https://www.gitignore.io/api/xcode,swift,carthage,fastlane,cocoapods,objective-c \ No newline at end of file diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/Contents.json b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/Contents.json index 28d9cc7..9fd11d5 100644 --- a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -1,153 +1,9 @@ { "images" : [ - { - "filename" : "notification-icon@2x.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "20x20" - }, - { - "filename" : "notification-icon@3x.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "20x20" - }, - { - "filename" : "icon-small.png", - "idiom" : "iphone", - "scale" : "1x", - "size" : "29x29" - }, - { - "filename" : "icon-small@2x.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "29x29" - }, - { - "filename" : "icon-small@3x.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "29x29" - }, - { - "filename" : "icon-40@2x.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "40x40" - }, - { - "filename" : "icon-40@3x.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "40x40" - }, - { - "filename" : "icon.png", - "idiom" : "iphone", - "scale" : "1x", - "size" : "57x57" - }, - { - "filename" : "icon@2x.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "57x57" - }, - { - "filename" : "icon-60@2x.png", - "idiom" : "iphone", - "scale" : "2x", - "size" : "60x60" - }, - { - "filename" : "icon-60@3x.png", - "idiom" : "iphone", - "scale" : "3x", - "size" : "60x60" - }, - { - "filename" : "notification-icon~ipad.png", - "idiom" : "ipad", - "scale" : "1x", - "size" : "20x20" - }, - { - "filename" : "notification-icon~ipad@2x.png", - "idiom" : "ipad", - "scale" : "2x", - "size" : "20x20" - }, - { - "filename" : "icon-small.png", - "idiom" : "ipad", - "scale" : "1x", - "size" : "29x29" - }, - { - "filename" : "icon-small@2x.png", - "idiom" : "ipad", - "scale" : "2x", - "size" : "29x29" - }, - { - "filename" : "icon-40.png", - "idiom" : "ipad", - "scale" : "1x", - "size" : "40x40" - }, - { - "filename" : "icon-40@2x.png", - "idiom" : "ipad", - "scale" : "2x", - "size" : "40x40" - }, - { - "filename" : "icon-small-50.png", - "idiom" : "ipad", - "scale" : "1x", - "size" : "50x50" - }, - { - "filename" : "icon-small-50@2x.png", - "idiom" : "ipad", - "scale" : "2x", - "size" : "50x50" - }, - { - "filename" : "icon-72.png", - "idiom" : "ipad", - "scale" : "1x", - "size" : "72x72" - }, - { - "filename" : "icon-72@2x.png", - "idiom" : "ipad", - "scale" : "2x", - "size" : "72x72" - }, - { - "filename" : "icon-76.png", - "idiom" : "ipad", - "scale" : "1x", - "size" : "76x76" - }, - { - "filename" : "icon-76@2x.png", - "idiom" : "ipad", - "scale" : "2x", - "size" : "76x76" - }, - { - "filename" : "icon-83.5@2x.png", - "idiom" : "ipad", - "scale" : "2x", - "size" : "83.5x83.5" - }, { "filename" : "ios-marketing.png", - "idiom" : "ios-marketing", - "scale" : "1x", + "idiom" : "universal", + "platform" : "ios", "size" : "1024x1024" } ], diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-40.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-40.png deleted file mode 100644 index b094d7f..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-40.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png deleted file mode 100644 index 6ad5f86..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png deleted file mode 100644 index af36b8f..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png deleted file mode 100644 index af36b8f..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png deleted file mode 100644 index 235b715..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-72.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-72.png deleted file mode 100644 index 010c29e..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-72.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-72@2x.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-72@2x.png deleted file mode 100644 index e125434..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-72@2x.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-76.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-76.png deleted file mode 100644 index 9f258fd..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-76.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-76@2x.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-76@2x.png deleted file mode 100644 index 046d01a..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-76@2x.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-83.5@2x.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-83.5@2x.png deleted file mode 100644 index 7252eeb..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-83.5@2x.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-small-50.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-small-50.png deleted file mode 100644 index fe5043b..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-small-50.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-small-50@2x.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-small-50@2x.png deleted file mode 100644 index 1bc8d17..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-small-50@2x.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-small.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-small.png deleted file mode 100644 index 284f69a..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-small.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-small@2x.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-small@2x.png deleted file mode 100644 index 9ba6939..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-small@2x.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-small@3x.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-small@3x.png deleted file mode 100644 index 8e354e3..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon-small@3x.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon.png deleted file mode 100644 index 1bf59de..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon@2x.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon@2x.png deleted file mode 100644 index 97acec5..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/icon@2x.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/notification-icon@2x.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/notification-icon@2x.png deleted file mode 100644 index b094d7f..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/notification-icon@2x.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/notification-icon@3x.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/notification-icon@3x.png deleted file mode 100644 index 34ab3b5..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/notification-icon@3x.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/notification-icon~ipad.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/notification-icon~ipad.png deleted file mode 100644 index 10f5900..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/notification-icon~ipad.png and /dev/null differ diff --git a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/notification-icon~ipad@2x.png b/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/notification-icon~ipad@2x.png deleted file mode 100644 index b094d7f..0000000 Binary files a/GitTime/Resources/Assets.xcassets/AppIcon.appiconset/notification-icon~ipad@2x.png and /dev/null differ diff --git a/GitTime/Sources/ViewControllers/Trend/TrendViewReactor.swift b/GitTime/Sources/ViewControllers/Trend/TrendViewReactor.swift index 3990c2c..c3cc30b 100644 --- a/GitTime/Sources/ViewControllers/Trend/TrendViewReactor.swift +++ b/GitTime/Sources/ViewControllers/Trend/TrendViewReactor.swift @@ -295,7 +295,7 @@ final class TrendViewReactor: Reactor { contributors: []) // Repository Info - let repositoryInfo = item.xpath(".//h1[@class='h3 lh-condensed']/a") + let repositoryInfo = item.xpath(".//h2[@class='h3 lh-condensed']/a") let description = item.xpath(".//p[@class='col-9 color-fg-muted my-1 pr-4']") let languageColor = item.xpath(".//span[@class='d-inline-block ml-0 mr-3']/span[1]") let language = item.xpath(".//span[@class='d-inline-block ml-0 mr-3']/span[2]") diff --git a/GitTime/Supporting Files/Info.plist b/GitTime/Supporting Files/Info.plist index a7bd7ae..cfe30e7 100644 --- a/GitTime/Supporting Files/Info.plist +++ b/GitTime/Supporting Files/Info.plist @@ -85,7 +85,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 2.1.5 + 2.1.6 CFBundleURLTypes @@ -100,7 +100,7 @@ CFBundleVersion - 4 + 6 ITSAppUsesNonExemptEncryption LSApplicationQueriesSchemes diff --git a/Makefile b/Makefile index a1d0c15..06d277b 100644 --- a/Makefile +++ b/Makefile @@ -10,4 +10,7 @@ dev-upload: fastlane ios develop firebase_upload:true groups:iOS slack_notify:true appstore: - fastlane ios release \ No newline at end of file + fastlane ios release + +certificates: + fastlane ios certificates \ No newline at end of file diff --git a/Podfile b/Podfile index 1f8787f..37fc152 100644 --- a/Podfile +++ b/Podfile @@ -79,6 +79,7 @@ post_install do |installer| installer.pods_project.targets.each do |target| target.build_configurations.each do |config| config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '13.0' + config.build_settings['CODE_SIGNING_ALLOWED'] = 'NO' end end end diff --git a/Podfile.lock b/Podfile.lock index eb73838..fb89efa 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -330,6 +330,6 @@ SPEC CHECKSUMS: URLNavigator: 2593c0e2d293732ec5c44503cf54dceba1a68085 WeakMapTable: 05c694ce8439a7a9ebabb56187287a63c57673d6 -PODFILE CHECKSUM: 889e35fd688c78c4e6f036a683a2aed3bbd554c6 +PODFILE CHECKSUM: 6c50a4fed57d9b71f57165f5b813b2a632ecc271 COCOAPODS: 1.11.3 diff --git a/fastlane/Fastfile b/fastlane/Fastfile index 792c613..418c062 100644 --- a/fastlane/Fastfile +++ b/fastlane/Fastfile @@ -178,7 +178,31 @@ platform :ios do lane :release do sync_code_signing(type: "appstore") build_app(scheme: "GitTime") - upload_to_app_store(force: true) + + api_key = app_store_connect_api_key( + key_id: ENV['CONNECT_API_KEY_ID'], + issuer_id: ENV['CONNECT_API_ISSUER_ID'], + key_filepath: ENV['CONNECT_API_KEY_FILE_PATH'], + duration: 1200, # optional (maximum 1200) + in_house: false # optional but may be required if using match/sigh + ) + + upload_to_app_store( + force: true, + api_key: api_key, + precheck_include_in_app_purchases: false + ) + end + + lane :certificates do + match( + type: "development", + app_identifier: ENV['APPLE_APP_IDENTIFIER'] + ) + match( + type: "appstore", + app_identifier: ENV['APPLE_APP_IDENTIFIER'] + ) end diff --git a/fastlane/README.md b/fastlane/README.md index 7406433..a9748bd 100644 --- a/fastlane/README.md +++ b/fastlane/README.md @@ -1,49 +1,72 @@ fastlane documentation -================ +---- + # Installation Make sure you have the latest version of the Xcode command line tools installed: -``` +```sh xcode-select --install ``` -Install _fastlane_ using -``` -[sudo] gem install fastlane -NV -``` -or alternatively using `brew install fastlane` +For _fastlane_ installation instructions, see [Installing _fastlane_](https://docs.fastlane.tools/#installing-fastlane) # Available Actions + ## iOS + ### ios develop + +```sh +[bundle exec] fastlane ios develop ``` -fastlane ios develop -``` + Beta Deployment to TestFlight + ### ios firebase_upload + +```sh +[bundle exec] fastlane ios firebase_upload ``` -fastlane ios firebase_upload -``` + + ### ios message_to_slack + +```sh +[bundle exec] fastlane ios message_to_slack ``` -fastlane ios message_to_slack -``` + + ### ios new_member + +```sh +[bundle exec] fastlane ios new_member ``` -fastlane ios new_member -``` + + ### ios release + +```sh +[bundle exec] fastlane ios release ``` -fastlane ios release + + + +### ios certificates + +```sh +[bundle exec] fastlane ios certificates ``` + ---- This README.md is auto-generated and will be re-generated every time [_fastlane_](https://fastlane.tools) is run. -More information about fastlane can be found on [fastlane.tools](https://fastlane.tools). -The documentation of fastlane can be found on [docs.fastlane.tools](https://docs.fastlane.tools). + +More information about _fastlane_ can be found on [fastlane.tools](https://fastlane.tools). + +The documentation of _fastlane_ can be found on [docs.fastlane.tools](https://docs.fastlane.tools).