Skip to content

Commit 3627633

Browse files
committed
Release Authenticator 2.0.1
2 parents 40525fa + 76d4871 commit 3627633

File tree

45 files changed

+232
-145
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+232
-145
lines changed

.travis.yml

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,28 +5,25 @@ language: objective-c
55
xcode_workspace: Authenticator.xcworkspace
66
xcode_scheme: Authenticator
77

8-
osx_image: xcode8.3
8+
osx_image: xcode9
99

1010
env:
1111
- RUNTIME="iOS 9.0" DEVICE="iPhone 4s"
12-
- RUNTIME="iOS 9.1" DEVICE="iPhone 5"
13-
- RUNTIME="iOS 9.2" DEVICE="iPhone 5s"
1412
- RUNTIME="iOS 9.3" DEVICE="iPhone 6s"
15-
- RUNTIME="iOS 10.0" DEVICE="iPhone 6s Plus"
16-
- RUNTIME="iOS 10.1" DEVICE="iPhone SE"
17-
- RUNTIME="iOS 10.2" DEVICE="iPhone 7"
13+
- RUNTIME="iOS 10.0" DEVICE="iPhone SE"
1814
- RUNTIME="iOS 10.3" DEVICE="iPhone 7 Plus"
15+
- RUNTIME="iOS 11.0" DEVICE="iPhone X"
1916

2017
install:
2118
- git submodule update --init --recursive
2219

2320
before_script:
24-
- DEVICE_ID=com.apple.CoreSimulator.SimDeviceType.$(echo $DEVICE | sed -E -e "s/[ \-]+/ /g" -e "s/[^[:alnum:]]/-/g")
25-
- RUNTIME_ID=com.apple.CoreSimulator.SimRuntime.$(echo $RUNTIME | sed -E -e "s/[ \-]+/ /g" -e "s/[^[:alnum:]]/-/g")
26-
- DESTINATION_ID=$(xcrun simctl create Travis $DEVICE_ID $RUNTIME_ID)
27-
- xcrun simctl boot $DESTINATION_ID
21+
- DEVICE_ID=com.apple.CoreSimulator.SimDeviceType.$(echo $DEVICE | sed -E -e "s/[ \-]+/ /g" -e "s/[^[:alnum:]]/-/g")
22+
- RUNTIME_ID=com.apple.CoreSimulator.SimRuntime.$(echo $RUNTIME | sed -E -e "s/[ \-]+/ /g" -e "s/[^[:alnum:]]/-/g")
23+
- DESTINATION_ID=$(xcrun simctl create Travis $DEVICE_ID $RUNTIME_ID)
24+
- xcrun simctl boot $DESTINATION_ID
2825

29-
script: set -o pipefail && xcodebuild -workspace "$TRAVIS_XCODE_WORKSPACE" -scheme "$TRAVIS_XCODE_SCHEME" -destination "id=$DESTINATION_ID" build test | xcpretty -c
26+
script: set -o pipefail && xcodebuild -workspace "$TRAVIS_XCODE_WORKSPACE" -scheme "$TRAVIS_XCODE_SCHEME" -destination "id=$DESTINATION_ID" build-for-testing test-without-building | xcpretty -c
3027

3128
after_success:
3229
- bash <(curl -s https://codecov.io/bash)

Authenticator.xcodeproj/project.pbxproj

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -740,11 +740,13 @@
740740
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
741741
BUNDLE_DISPLAY_NAME = "${PRODUCT_NAME} ∆";
742742
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
743+
CURRENT_PROJECT_VERSION = 0;
743744
DEVELOPMENT_TEAM = WD7ETSN9J9;
744745
INFOPLIST_FILE = Authenticator/Resources/Info.plist;
745746
PRODUCT_BUNDLE_IDENTIFIER = me.mattrubin.authenticator.dev;
746747
PRODUCT_NAME = Authenticator;
747748
TARGETED_DEVICE_FAMILY = 1;
749+
VERSIONING_SYSTEM = "apple-generic";
748750
};
749751
name = Debug;
750752
};
@@ -755,11 +757,13 @@
755757
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
756758
BUNDLE_DISPLAY_NAME = "${PRODUCT_NAME}";
757759
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
760+
CURRENT_PROJECT_VERSION = 0;
758761
DEVELOPMENT_TEAM = WD7ETSN9J9;
759762
INFOPLIST_FILE = Authenticator/Resources/Info.plist;
760763
PRODUCT_BUNDLE_IDENTIFIER = me.mattrubin.authenticator;
761764
PRODUCT_NAME = Authenticator;
762765
TARGETED_DEVICE_FAMILY = 1;
766+
VERSIONING_SYSTEM = "apple-generic";
763767
};
764768
name = Release;
765769
};

Authenticator/Resources/GenerateIcons.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ inkscape -z -e "${ICONSET}/Icon-120.png" -w 120 $ICON_SVG;
2727
inkscape -z -e "${ICONSET}/Icon-152.png" -w 152 $ICON_SVG;
2828
inkscape -z -e "${ICONSET}/Icon-167.png" -w 167 $ICON_SVG;
2929
inkscape -z -e "${ICONSET}/Icon-180.png" -w 180 $ICON_SVG;
30+
inkscape -z -e "${ICONSET}/Icon-1024.png" -w 1024 $ICON_SVG;
3031

3132
for ICON in $ICONSET/Icon-*.png; do
3233
pngcrush -rem alla -ow -res 144 $ICON;

Authenticator/Resources/Images.xcassets/AppIcon.appiconset/Contents.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,12 @@
101101
"idiom" : "ipad",
102102
"filename" : "Icon-167.png",
103103
"scale" : "2x"
104+
},
105+
{
106+
"size" : "1024x1024",
107+
"idiom" : "ios-marketing",
108+
"filename" : "Icon-1024.png",
109+
"scale" : "1x"
104110
}
105111
],
106112
"info" : {
Loading

Authenticator/Resources/Info.plist

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
<key>CFBundlePackageType</key>
1818
<string>APPL</string>
1919
<key>CFBundleShortVersionString</key>
20-
<string>2.0.0</string>
20+
<string>2.0.1</string>
2121
<key>CFBundleSignature</key>
2222
<string>????</string>
2323
<key>CFBundleURLTypes</key>

Authenticator/Source/ButtonHeaderView.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ class ButtonHeaderView<Action>: UIButton {
5757

5858
private func configureSubviews() {
5959
titleLabel?.textAlignment = .center
60-
titleLabel?.textColor = UIColor.otpForegroundColor
60+
setTitleColor(.otpForegroundColor, for: UIControlState.normal)
6161
titleLabel?.font = UIFont.systemFont(ofSize: 16, weight: UIFontWeightLight)
6262

6363
addTarget(self, action: #selector(ButtonHeaderView.buttonWasPressed), for: .touchUpInside)

Authenticator/Source/OTPAppDelegate.swift

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,17 @@ class OTPAppDelegate: UIResponder, UIApplicationDelegate {
3434
let app = AppController()
3535

3636
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
37-
let barButtonAttributes = [NSFontAttributeName: UIFont.systemFont(ofSize: 17, weight: UIFontWeightLight)]
38-
UIBarButtonItem.appearance().setTitleTextAttributes(barButtonAttributes, for: .normal)
37+
let barButtonItemFont = UIFont.systemFont(ofSize: 17, weight: UIFontWeightLight)
38+
let fontAttributes = [NSFontAttributeName: barButtonItemFont]
39+
UIBarButtonItem.appearance().setTitleTextAttributes(fontAttributes, for: .normal)
40+
UIBarButtonItem.appearance().setTitleTextAttributes(fontAttributes, for: .highlighted)
41+
UIBarButtonItem.appearance().setTitleTextAttributes(fontAttributes, for: .selected)
42+
43+
let disabledAttributes = [
44+
NSFontAttributeName: barButtonItemFont,
45+
NSForegroundColorAttributeName: UIColor.otpBarForegroundColor.withAlphaComponent(0.3),
46+
]
47+
UIBarButtonItem.appearance().setTitleTextAttributes(disabledAttributes, for: .disabled)
3948

4049
// Restore white-on-black style
4150
SVProgressHUD.setForegroundColor(.otpLightColor)

Authenticator/Source/TokenListViewController.swift

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -250,6 +250,15 @@ extension TokenListViewController {
250250
override func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
251251
return 85
252252
}
253+
254+
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
255+
let rowModel = viewModel.rowModels[indexPath.row]
256+
if isEditing {
257+
dispatchAction(rowModel.editAction)
258+
} else {
259+
dispatchAction(rowModel.selectAction)
260+
}
261+
}
253262
}
254263

255264
// MARK: TokenListPresenter

Authenticator/Source/TokenRowCell.swift

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -140,18 +140,6 @@ class TokenRowCell: UITableViewCell {
140140

141141
// MARK: - Actions
142142

143-
override func setSelected(_ selected: Bool, animated: Bool) {
144-
super.setSelected(selected, animated: animated)
145-
146-
if selected, let rowModel = rowModel {
147-
if self.isEditing {
148-
dispatchAction?(rowModel.editAction)
149-
} else {
150-
dispatchAction?(rowModel.selectAction)
151-
}
152-
}
153-
}
154-
155143
func generateNextPassword() {
156144
if let action = rowModel?.buttonAction {
157145
dispatchAction?(action)

Cartfile.private

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
# Configuration for Carthage (https://github.com/Carthage/Carthage)
22

33
github "jspahrsummers/xcconfigs" ~> 0.10
4-
github "shinydevelopment/SimulatorStatusMagic" ~> 1.9
4+
github "shinydevelopment/SimulatorStatusMagic" ~> 2.0

Cartfile.resolved

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@ github "SVProgressHUD/SVProgressHUD" "2.1.2"
22
github "jspahrsummers/xcconfigs" "0.10"
33
github "mattrubin/Base32" "1.1.2+carthage"
44
github "mattrubin/OneTimePassword" "3.0"
5-
github "shinydevelopment/SimulatorStatusMagic" "1.9.5"
5+
github "shinydevelopment/SimulatorStatusMagic" "2.0"

Gemfile.lock

Lines changed: 39 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -2,71 +2,72 @@ GEM
22
remote: https://rubygems.org/
33
specs:
44
CFPropertyList (2.3.5)
5-
addressable (2.5.1)
6-
public_suffix (~> 2.0, >= 2.0.2)
5+
addressable (2.5.2)
6+
public_suffix (>= 2.0.2, < 4.0)
77
babosa (1.0.2)
88
claide (1.0.2)
99
colored (1.2)
1010
colored2 (3.1.2)
11-
commander-fastlane (4.4.4)
11+
commander-fastlane (4.4.5)
1212
highline (~> 1.7.2)
13+
declarative (0.0.10)
14+
declarative-option (0.1.0)
1315
domain_name (0.5.20170404)
1416
unf (>= 0.0.5, < 1.0.0)
1517
dotenv (2.2.1)
16-
excon (0.56.0)
17-
faraday (0.12.1)
18+
excon (0.59.0)
19+
faraday (0.13.1)
1820
multipart-post (>= 1.2, < 3)
1921
faraday-cookie_jar (0.0.6)
2022
faraday (>= 0.7.4)
2123
http-cookie (~> 1.0.0)
22-
faraday_middleware (0.11.0.1)
24+
faraday_middleware (0.12.2)
2325
faraday (>= 0.7.4, < 1.0)
2426
fastimage (2.1.0)
25-
fastlane (2.37.0)
27+
fastlane (2.64.0)
2628
CFPropertyList (>= 2.3, < 3.0.0)
2729
addressable (>= 2.3, < 3.0.0)
2830
babosa (>= 1.0.2, < 2.0.0)
2931
bundler (>= 1.12.0, < 2.0.0)
3032
colored
31-
commander-fastlane (>= 4.4.0, < 5.0.0)
33+
commander-fastlane (>= 4.4.5, < 5.0.0)
3234
dotenv (>= 2.1.1, < 3.0.0)
3335
excon (>= 0.45.0, < 1.0.0)
3436
faraday (~> 0.9)
3537
faraday-cookie_jar (~> 0.0.6)
3638
faraday_middleware (~> 0.9)
37-
fastimage (>= 1.6)
39+
fastimage (>= 2.1.0, < 3.0.0)
3840
gh_inspector (>= 1.0.1, < 2.0.0)
39-
google-api-client (~> 0.9.2)
41+
google-api-client (>= 0.13.1, < 0.14.0)
4042
highline (>= 1.7.2, < 2.0.0)
4143
json (< 3.0.0)
4244
mini_magick (~> 4.5.1)
4345
multi_json
4446
multi_xml (~> 0.5)
4547
multipart-post (~> 2.0.0)
4648
plist (>= 3.1.0, < 4.0.0)
49+
public_suffix (~> 2.0.0)
4750
rubyzip (>= 1.1.0, < 2.0.0)
4851
security (= 0.1.3)
4952
slack-notifier (>= 1.3, < 2.0.0)
5053
terminal-notifier (>= 1.6.2, < 2.0.0)
5154
terminal-table (>= 1.4.5, < 2.0.0)
5255
tty-screen (~> 0.5.0)
5356
word_wrap (~> 1.0.0)
54-
xcodeproj (>= 1.4.4, < 2.0.0)
57+
xcodeproj (>= 1.5.0, < 2.0.0)
5558
xcpretty (>= 0.2.4, < 1.0.0)
5659
xcpretty-travis-formatter (>= 0.0.3)
5760
gh_inspector (1.0.3)
58-
google-api-client (0.9.28)
59-
addressable (~> 2.3)
61+
google-api-client (0.13.6)
62+
addressable (~> 2.5, >= 2.5.1)
6063
googleauth (~> 0.5)
61-
httpclient (~> 2.7)
62-
hurley (~> 0.1)
63-
memoist (~> 0.11)
64-
mime-types (>= 1.6)
65-
representable (~> 2.3.0)
66-
retriable (~> 2.0)
67-
googleauth (0.5.1)
68-
faraday (~> 0.9)
69-
jwt (~> 1.4)
64+
httpclient (>= 2.8.1, < 3.0)
65+
mime-types (~> 3.0)
66+
representable (~> 3.0)
67+
retriable (>= 2.0, < 4.0)
68+
googleauth (0.6.1)
69+
faraday (~> 0.12)
70+
jwt (>= 1.4, < 3.0)
7071
logging (~> 2.0)
7172
memoist (~> 0.12)
7273
multi_json (~> 1.11)
@@ -76,55 +77,56 @@ GEM
7677
http-cookie (1.0.3)
7778
domain_name (~> 0.5)
7879
httpclient (2.8.3)
79-
hurley (0.2)
8080
json (2.1.0)
81-
jwt (1.5.6)
81+
jwt (2.1.0)
8282
little-plugger (1.1.4)
8383
logging (2.2.2)
8484
little-plugger (~> 1.1)
8585
multi_json (~> 1.10)
86-
memoist (0.15.0)
86+
memoist (0.16.0)
8787
mime-types (3.1)
8888
mime-types-data (~> 3.2015)
8989
mime-types-data (3.2016.0521)
9090
mini_magick (4.5.1)
91-
multi_json (1.12.1)
91+
multi_json (1.12.2)
9292
multi_xml (0.6.0)
9393
multipart-post (2.0.0)
9494
nanaimo (0.2.3)
9595
os (0.9.6)
9696
plist (3.3.0)
9797
public_suffix (2.0.5)
98-
representable (2.3.0)
99-
uber (~> 0.0.7)
100-
retriable (2.1.0)
98+
representable (3.0.4)
99+
declarative (< 0.1.0)
100+
declarative-option (< 0.2.0)
101+
uber (< 0.2.0)
102+
retriable (3.1.1)
101103
rouge (2.0.7)
102104
rubyzip (1.2.1)
103105
security (0.1.3)
104-
signet (0.7.3)
106+
signet (0.8.1)
105107
addressable (~> 2.3)
106108
faraday (~> 0.9)
107-
jwt (~> 1.5)
109+
jwt (>= 1.5, < 3.0)
108110
multi_json (~> 1.10)
109111
slack-notifier (1.5.1)
110112
terminal-notifier (1.8.0)
111113
terminal-table (1.8.0)
112114
unicode-display_width (~> 1.1, >= 1.1.1)
113-
tty-screen (0.5.0)
114-
uber (0.0.15)
115+
tty-screen (0.5.1)
116+
uber (0.1.0)
115117
unf (0.1.4)
116118
unf_ext
117119
unf_ext (0.0.7.4)
118-
unicode-display_width (1.2.1)
120+
unicode-display_width (1.3.0)
119121
word_wrap (1.0.0)
120-
xcodeproj (1.5.0)
122+
xcodeproj (1.5.3)
121123
CFPropertyList (~> 2.3.3)
122124
claide (>= 1.0.2, < 2.0)
123125
colored2 (~> 3.1)
124126
nanaimo (~> 0.2.3)
125127
xcpretty (0.2.8)
126128
rouge (~> 2.0.7)
127-
xcpretty-travis-formatter (0.0.4)
129+
xcpretty-travis-formatter (1.0.0)
128130
xcpretty (~> 0.2, >= 0.0.7)
129131

130132
PLATFORMS
@@ -134,4 +136,4 @@ DEPENDENCIES
134136
fastlane (~> 2.37)
135137

136138
BUNDLED WITH
137-
1.15.1
139+
1.16.0

fastlane/Fastfile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@ platform :ios do
3434
lane :screenshots do
3535
# Generate updated screenshots.
3636
snapshot
37+
# Compress the screenshots with pngcrush
38+
sh "for IMG in screenshots/**/*.png; do pngcrush -rem alla -ow \"$IMG\"; done"
3739
end
3840

3941
desc "Build the app for release"

fastlane/Gymfile

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,8 @@
11
scheme "Authenticator"
22
clean true
3+
export_options(
4+
method: "app-store",
5+
provisioningProfiles: {
6+
"me.mattrubin.authenticator": "Authenticator Distribution"
7+
},
8+
)

fastlane/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ xcode-select --install
1212

1313
<table width="100%" >
1414
<tr>
15-
<th width="33%"><a href="http://brew.sh">Homebrew</a></td>
16-
<th width="33%">Installer Script</td>
17-
<th width="33%">Rubygems</td>
15+
<th width="33%"><a href="http://brew.sh">Homebrew</a></th>
16+
<th width="33%">Installer Script</th>
17+
<th width="33%">RubyGems</th>
1818
</tr>
1919
<tr>
2020
<td width="33%" align="center">macOS</td>

fastlane/Snapfile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ workspace "Authenticator.xcworkspace"
44
scheme "Authenticator Demo"
55

66
devices([
7-
"iPhone 4s",
87
"iPhone SE",
9-
"iPhone 7",
10-
"iPhone 7 Plus",
8+
"iPhone 8",
9+
"iPhone 8 Plus",
10+
"iPhone X",
1111
])
1212

1313
languages([

0 commit comments

Comments
 (0)