fastlane 2.176.0 → 2.180.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/LICENSE +1 -1
- data/README.md +97 -84
- data/cert/lib/cert/options.rb +1 -0
- data/cert/lib/cert/runner.rb +5 -1
- data/deliver/lib/deliver/app_screenshot.rb +6 -2
- data/deliver/lib/deliver/download_screenshots.rb +1 -2
- data/deliver/lib/deliver/options.rb +1 -0
- data/deliver/lib/deliver/runner.rb +11 -3
- data/deliver/lib/deliver/setup.rb +0 -1
- data/deliver/lib/deliver/upload_metadata.rb +5 -4
- data/deliver/lib/deliver/upload_screenshots.rb +10 -10
- data/fastlane/lib/fastlane/.fastlane_require.rb.swp +0 -0
- data/fastlane/lib/fastlane/actions/.cocoapods.rb.swp +0 -0
- data/fastlane/lib/fastlane/actions/app_store_build_number.rb +6 -1
- data/fastlane/lib/fastlane/actions/app_store_connect_api_key.rb +8 -5
- data/fastlane/lib/fastlane/actions/appaloosa.rb +7 -2
- data/fastlane/lib/fastlane/actions/backup_file.rb +1 -1
- data/fastlane/lib/fastlane/actions/build_app.rb +4 -0
- data/fastlane/lib/fastlane/actions/check_app_store_metadata.rb +4 -0
- data/fastlane/lib/fastlane/actions/commit_github_file.rb +11 -1
- data/fastlane/lib/fastlane/actions/create_xcframework.rb +5 -0
- data/fastlane/lib/fastlane/actions/docs/upload_to_play_store.md +2 -1
- data/fastlane/lib/fastlane/actions/get_github_release.rb +11 -1
- data/fastlane/lib/fastlane/actions/get_provisioning_profile.rb +4 -0
- data/fastlane/lib/fastlane/actions/get_version_number.rb +17 -10
- data/fastlane/lib/fastlane/actions/git_branch.rb +4 -10
- data/fastlane/lib/fastlane/actions/git_tag_exists.rb +4 -0
- data/fastlane/lib/fastlane/actions/github_api.rb +2 -1
- data/fastlane/lib/fastlane/actions/increment_build_number.rb +8 -1
- data/fastlane/lib/fastlane/actions/install_provisioning_profile.rb +4 -0
- data/fastlane/lib/fastlane/actions/jira.rb +61 -14
- data/fastlane/lib/fastlane/actions/latest_testflight_build_number.rb +1 -0
- data/fastlane/lib/fastlane/actions/match_nuke.rb +59 -0
- data/fastlane/lib/fastlane/actions/notarize.rb +98 -51
- data/fastlane/lib/fastlane/actions/push_to_git_remote.rb +0 -1
- data/fastlane/lib/fastlane/actions/register_device.rb +1 -1
- data/fastlane/lib/fastlane/actions/register_devices.rb +1 -1
- data/fastlane/lib/fastlane/actions/restore_file.rb +1 -1
- data/fastlane/lib/fastlane/actions/set_changelog.rb +1 -1
- data/fastlane/lib/fastlane/actions/sourcedocs.rb +164 -0
- data/fastlane/lib/fastlane/actions/spaceship_logs.rb +1 -1
- data/fastlane/lib/fastlane/actions/update_project_provisioning.rb +1 -2
- data/fastlane/lib/fastlane/actions/upload_symbols_to_crashlytics.rb +4 -5
- data/fastlane/lib/fastlane/erb_template_helper.rb +7 -1
- data/fastlane/lib/fastlane/fast_file.rb +9 -5
- data/fastlane/lib/fastlane/fastlane_require.rb +7 -1
- data/fastlane/lib/fastlane/helper/git_helper.rb +11 -7
- data/fastlane/lib/fastlane/plugins/plugin_fetcher.rb +1 -2
- data/fastlane/lib/fastlane/plugins/plugin_info_collector.rb +1 -2
- data/fastlane/lib/fastlane/plugins/plugin_manager.rb +1 -2
- data/fastlane/lib/fastlane/setup/setup.rb +23 -10
- data/fastlane/lib/fastlane/swift_fastlane_function.rb +4 -0
- data/fastlane/lib/fastlane/swift_runner_upgrader.rb +2 -0
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane/swift/Deliverfile.swift +1 -1
- data/fastlane/swift/DeliverfileProtocol.swift +3 -3
- data/fastlane/swift/Fastlane.swift +557 -326
- data/fastlane/swift/Gymfile.swift +1 -1
- data/fastlane/swift/GymfileProtocol.swift +1 -1
- data/fastlane/swift/LaneFileProtocol.swift +9 -3
- data/fastlane/swift/Matchfile.swift +1 -1
- data/fastlane/swift/MatchfileProtocol.swift +1 -1
- data/fastlane/swift/Precheckfile.swift +1 -1
- data/fastlane/swift/PrecheckfileProtocol.swift +3 -3
- data/fastlane/swift/RubyCommand.swift +1 -1
- data/fastlane/swift/Scanfile.swift +1 -1
- data/fastlane/swift/ScanfileProtocol.swift +9 -1
- data/fastlane/swift/Screengrabfile.swift +1 -1
- data/fastlane/swift/ScreengrabfileProtocol.swift +1 -1
- data/fastlane/swift/Snapshotfile.swift +1 -1
- data/fastlane/swift/SnapshotfileProtocol.swift +1 -1
- data/fastlane/swift/SocketClient.swift +2 -1
- data/fastlane/swift/SocketResponse.swift +4 -2
- data/fastlane/swift/formatting/Brewfile.lock.json +13 -13
- data/fastlane_core/lib/fastlane_core.rb +1 -0
- data/fastlane_core/lib/fastlane_core/configuration/configuration.rb +5 -3
- data/fastlane_core/lib/fastlane_core/helper.rb +24 -1
- data/fastlane_core/lib/fastlane_core/ipa_upload_package_builder.rb +3 -2
- data/fastlane_core/lib/fastlane_core/itunes_transporter.rb +14 -8
- data/fastlane_core/lib/fastlane_core/pkg_upload_package_builder.rb +3 -2
- data/fastlane_core/lib/fastlane_core/project.rb +3 -14
- data/{deliver/lib/deliver → fastlane_core/lib/fastlane_core}/queue_worker.rb +4 -4
- data/fastlane_core/lib/fastlane_core/ui/implementations/shell.rb +12 -1
- data/fastlane_core/lib/fastlane_core/ui/interface.rb +1 -1
- data/gym/lib/gym/generators/.package_command_generator_xcode7.rb.swp +0 -0
- data/gym/lib/gym/generators/package_command_generator.rb +4 -0
- data/gym/lib/gym/generators/package_command_generator_xcode7.rb +13 -8
- data/gym/lib/gym/runner.rb +11 -4
- data/match/lib/match/change_password.rb +3 -3
- data/match/lib/match/encryption/interface.rb +1 -1
- data/match/lib/match/encryption/openssl.rb +2 -2
- data/match/lib/match/importer.rb +1 -1
- data/match/lib/match/migrate.rb +1 -1
- data/match/lib/match/module.rb +1 -0
- data/match/lib/match/nuke.rb +1 -1
- data/match/lib/match/runner.rb +1 -1
- data/match/lib/match/storage/google_cloud_storage.rb +1 -1
- data/match/lib/match/storage/s3_storage.rb +1 -1
- data/pilot/lib/pilot/build_manager.rb +18 -6
- data/pilot/lib/pilot/manager.rb +5 -1
- data/pilot/lib/pilot/options.rb +3 -2
- data/precheck/lib/precheck/options.rb +1 -0
- data/precheck/lib/precheck/runner.rb +5 -1
- data/scan/lib/scan/detect_values.rb +4 -1
- data/scan/lib/scan/options.rb +15 -5
- data/scan/lib/scan/runner.rb +52 -1
- data/scan/lib/scan/test_command_generator.rb +8 -8
- data/screengrab/lib/screengrab/android_environment.rb +6 -4
- data/screengrab/lib/screengrab/runner.rb +1 -1
- data/sigh/lib/sigh/download_all.rb +1 -1
- data/sigh/lib/sigh/options.rb +1 -0
- data/sigh/lib/sigh/runner.rb +5 -1
- data/snapshot/lib/assets/SnapshotHelper.swift +1 -1
- data/snapshot/lib/snapshot/simulator_launchers/simulator_launcher_base.rb +2 -1
- data/spaceship/lib/spaceship/client.rb +18 -17
- data/spaceship/lib/spaceship/connect_api/api_client.rb +24 -6
- data/spaceship/lib/spaceship/connect_api/models/app.rb +1 -1
- data/spaceship/lib/spaceship/connect_api/models/app_preview_set.rb +5 -0
- data/spaceship/lib/spaceship/connect_api/models/app_screenshot.rb +1 -1
- data/spaceship/lib/spaceship/connect_api/models/app_screenshot_set.rb +5 -0
- data/spaceship/lib/spaceship/connect_api/models/app_store_version_localization.rb +6 -0
- data/spaceship/lib/spaceship/connect_api/models/beta_group.rb +5 -0
- data/spaceship/lib/spaceship/connect_api/models/build.rb +5 -0
- data/spaceship/lib/spaceship/connect_api/models/build_beta_detail.rb +4 -0
- data/spaceship/lib/spaceship/connect_api/models/user_invitation.rb +13 -0
- data/spaceship/lib/spaceship/connect_api/testflight/testflight.rb +13 -0
- data/spaceship/lib/spaceship/connect_api/token.rb +8 -2
- data/spaceship/lib/spaceship/connect_api/tunes/tunes.rb +15 -0
- metadata +28 -22
- data/pilot/lib/pilot/.build_manager.rb.swp +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 163349126d102ca91b188c06ebf4f0cdca8e412a5e90323f30b1e173906a15d2
|
|
4
|
+
data.tar.gz: 9df2a6ee820366f89c531fa8ffc8a9aaddba6aae5f5c7374b719d5209db4c45a
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9f29ea5cbe8e9df6d6eb0f6cd2e59fb2053ae7298bffa924b8db9fbf1fbd3618ba776431b17a1727858f5c3e8b6700e7eea0e1cc315b825933d7c64379503d99
|
|
7
|
+
data.tar.gz: 3acea8ce3adf71c5d22a9a52e5e26d2a7c3a76d5901da8306104ae26396eccd70c4f9da4573082eaf7cc1c1236ef6e52c5c0ef26f25d860888664f76ebc56599
|
data/LICENSE
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
The MIT License (MIT)
|
|
2
2
|
|
|
3
|
-
Copyright (c) 2015-
|
|
3
|
+
Copyright (c) 2015-2021 The Fastlane Authors
|
|
4
4
|
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
data/README.md
CHANGED
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
[](https://twitter.com/FastlaneTools)
|
|
8
8
|
[](https://github.com/fastlane/fastlane/blob/master/LICENSE)
|
|
9
9
|
[](https://rubygems.org/gems/fastlane)
|
|
10
|
+
[](https://formulae.brew.sh/formula/fastlane)
|
|
10
11
|
[](https://circleci.com/gh/fastlane/fastlane)
|
|
11
12
|
[](https://github.com/fastlane/fastlane/blob/master/CONTRIBUTING.md)
|
|
12
13
|
|
|
@@ -34,55 +35,43 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
|
34
35
|
<!-- This table is regenerated and resorted on each release -->
|
|
35
36
|
<table id='team'>
|
|
36
37
|
<tr>
|
|
37
|
-
<td id='
|
|
38
|
-
<a href='https://github.com/
|
|
39
|
-
<img src='https://github.com/
|
|
38
|
+
<td id='jérôme-lacoste'>
|
|
39
|
+
<a href='https://github.com/lacostej'>
|
|
40
|
+
<img src='https://github.com/lacostej.png?size=140'>
|
|
40
41
|
</a>
|
|
41
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
42
|
+
<h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
|
|
42
43
|
</td>
|
|
43
|
-
<td id='
|
|
44
|
-
<a href='https://github.com/
|
|
45
|
-
<img src='https://github.com/
|
|
44
|
+
<td id='max-ott'>
|
|
45
|
+
<a href='https://github.com/max-ott'>
|
|
46
|
+
<img src='https://github.com/max-ott.png?size=140'>
|
|
46
47
|
</a>
|
|
47
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
48
|
+
<h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
|
|
48
49
|
</td>
|
|
49
|
-
<td id='
|
|
50
|
-
<a href='https://github.com/
|
|
51
|
-
<img src='https://github.com/
|
|
50
|
+
<td id='kohki-miki'>
|
|
51
|
+
<a href='https://github.com/giginet'>
|
|
52
|
+
<img src='https://github.com/giginet.png?size=140'>
|
|
52
53
|
</a>
|
|
53
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
54
|
+
<h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
|
|
54
55
|
</td>
|
|
55
|
-
<td id='
|
|
56
|
-
<a href='https://github.com/
|
|
57
|
-
<img src='https://github.com/
|
|
56
|
+
<td id='josh-holtz'>
|
|
57
|
+
<a href='https://github.com/joshdholtz'>
|
|
58
|
+
<img src='https://github.com/joshdholtz.png?size=140'>
|
|
58
59
|
</a>
|
|
59
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
60
|
+
<h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
|
|
60
61
|
</td>
|
|
61
|
-
<td id='
|
|
62
|
-
<a href='https://github.com/
|
|
63
|
-
<img src='https://github.com/
|
|
62
|
+
<td id='maksym-grebenets'>
|
|
63
|
+
<a href='https://github.com/mgrebenets'>
|
|
64
|
+
<img src='https://github.com/mgrebenets.png?size=140'>
|
|
64
65
|
</a>
|
|
65
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
66
|
+
<h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
|
|
66
67
|
</td>
|
|
67
68
|
</tr>
|
|
68
69
|
<tr>
|
|
69
|
-
<td id='
|
|
70
|
-
<a href='https://github.com/
|
|
71
|
-
<img src='https://github.com/
|
|
72
|
-
</a>
|
|
73
|
-
<h4 align='center'>Jimmy Dee</h4>
|
|
74
|
-
</td>
|
|
75
|
-
<td id='kohki-miki'>
|
|
76
|
-
<a href='https://github.com/giginet'>
|
|
77
|
-
<img src='https://github.com/giginet.png?size=140'>
|
|
78
|
-
</a>
|
|
79
|
-
<h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
|
|
80
|
-
</td>
|
|
81
|
-
<td id='stefan-natchev'>
|
|
82
|
-
<a href='https://github.com/snatchev'>
|
|
83
|
-
<img src='https://github.com/snatchev.png?size=140'>
|
|
70
|
+
<td id='fumiya-nakamura'>
|
|
71
|
+
<a href='https://github.com/nafu'>
|
|
72
|
+
<img src='https://github.com/nafu.png?size=140'>
|
|
84
73
|
</a>
|
|
85
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
74
|
+
<h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
|
|
86
75
|
</td>
|
|
87
76
|
<td id='joshua-liebowitz'>
|
|
88
77
|
<a href='https://github.com/taquitos'>
|
|
@@ -90,19 +79,31 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
|
90
79
|
</a>
|
|
91
80
|
<h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
|
|
92
81
|
</td>
|
|
93
|
-
<td id='
|
|
94
|
-
<a href='https://github.com/
|
|
95
|
-
<img src='https://github.com/
|
|
82
|
+
<td id='luka-mirosevic'>
|
|
83
|
+
<a href='https://github.com/lmirosevic'>
|
|
84
|
+
<img src='https://github.com/lmirosevic.png?size=140'>
|
|
96
85
|
</a>
|
|
97
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
86
|
+
<h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
|
|
87
|
+
</td>
|
|
88
|
+
<td id='aaron-brager'>
|
|
89
|
+
<a href='https://github.com/getaaron'>
|
|
90
|
+
<img src='https://github.com/getaaron.png?size=140'>
|
|
91
|
+
</a>
|
|
92
|
+
<h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
|
|
93
|
+
</td>
|
|
94
|
+
<td id='satoshi-namai'>
|
|
95
|
+
<a href='https://github.com/ainame'>
|
|
96
|
+
<img src='https://github.com/ainame.png?size=140'>
|
|
97
|
+
</a>
|
|
98
|
+
<h4 align='center'><a href='https://twitter.com/ainame'>Satoshi Namai</a></h4>
|
|
98
99
|
</td>
|
|
99
100
|
</tr>
|
|
100
101
|
<tr>
|
|
101
|
-
<td id='
|
|
102
|
-
<a href='https://github.com/
|
|
103
|
-
<img src='https://github.com/
|
|
102
|
+
<td id='daniel-jankowski'>
|
|
103
|
+
<a href='https://github.com/mollyIV'>
|
|
104
|
+
<img src='https://github.com/mollyIV.png?size=140'>
|
|
104
105
|
</a>
|
|
105
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
106
|
+
<h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
|
|
106
107
|
</td>
|
|
107
108
|
<td id='olivier-halligon'>
|
|
108
109
|
<a href='https://github.com/AliSoftware'>
|
|
@@ -110,49 +111,37 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
|
110
111
|
</a>
|
|
111
112
|
<h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
|
|
112
113
|
</td>
|
|
113
|
-
<td id='
|
|
114
|
-
<a href='https://github.com/
|
|
115
|
-
<img src='https://github.com/
|
|
114
|
+
<td id='roger-oba'>
|
|
115
|
+
<a href='https://github.com/rogerluan'>
|
|
116
|
+
<img src='https://github.com/rogerluan.png?size=140'>
|
|
116
117
|
</a>
|
|
117
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
118
|
+
<h4 align='center'><a href='https://twitter.com/rogerluan_'>Roger Oba</a></h4>
|
|
118
119
|
</td>
|
|
119
|
-
<td id='
|
|
120
|
-
<a href='https://github.com/
|
|
121
|
-
<img src='https://github.com/
|
|
120
|
+
<td id='manu-wallner'>
|
|
121
|
+
<a href='https://github.com/milch'>
|
|
122
|
+
<img src='https://github.com/milch.png?size=140'>
|
|
122
123
|
</a>
|
|
123
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
124
|
+
<h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
|
|
124
125
|
</td>
|
|
125
|
-
<td id='
|
|
126
|
-
<a href='https://github.com/
|
|
127
|
-
<img src='https://github.com/
|
|
126
|
+
<td id='jorge-revuelta-h'>
|
|
127
|
+
<a href='https://github.com/minuscorp'>
|
|
128
|
+
<img src='https://github.com/minuscorp.png?size=140'>
|
|
128
129
|
</a>
|
|
129
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
130
|
+
<h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
|
|
130
131
|
</td>
|
|
131
132
|
</tr>
|
|
132
133
|
<tr>
|
|
133
|
-
<td id='luka-mirosevic'>
|
|
134
|
-
<a href='https://github.com/lmirosevic'>
|
|
135
|
-
<img src='https://github.com/lmirosevic.png?size=140'>
|
|
136
|
-
</a>
|
|
137
|
-
<h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
|
|
138
|
-
</td>
|
|
139
134
|
<td id='helmut-januschka'>
|
|
140
135
|
<a href='https://github.com/hjanuschka'>
|
|
141
136
|
<img src='https://github.com/hjanuschka.png?size=140'>
|
|
142
137
|
</a>
|
|
143
138
|
<h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
|
|
144
139
|
</td>
|
|
145
|
-
<td id='
|
|
146
|
-
<a href='https://github.com/
|
|
147
|
-
<img src='https://github.com/
|
|
148
|
-
</a>
|
|
149
|
-
<h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
|
|
150
|
-
</td>
|
|
151
|
-
<td id='josh-holtz'>
|
|
152
|
-
<a href='https://github.com/joshdholtz'>
|
|
153
|
-
<img src='https://github.com/joshdholtz.png?size=140'>
|
|
140
|
+
<td id='jimmy-dee'>
|
|
141
|
+
<a href='https://github.com/jdee'>
|
|
142
|
+
<img src='https://github.com/jdee.png?size=140'>
|
|
154
143
|
</a>
|
|
155
|
-
<h4 align='center'
|
|
144
|
+
<h4 align='center'>Jimmy Dee</h4>
|
|
156
145
|
</td>
|
|
157
146
|
<td id='iulian-onofrei'>
|
|
158
147
|
<a href='https://github.com/revolter'>
|
|
@@ -160,19 +149,43 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
|
160
149
|
</a>
|
|
161
150
|
<h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
|
|
162
151
|
</td>
|
|
152
|
+
<td id='felix-krause'>
|
|
153
|
+
<a href='https://github.com/KrauseFx'>
|
|
154
|
+
<img src='https://github.com/KrauseFx.png?size=140'>
|
|
155
|
+
</a>
|
|
156
|
+
<h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
|
|
157
|
+
</td>
|
|
158
|
+
<td id='stefan-natchev'>
|
|
159
|
+
<a href='https://github.com/snatchev'>
|
|
160
|
+
<img src='https://github.com/snatchev.png?size=140'>
|
|
161
|
+
</a>
|
|
162
|
+
<h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
|
|
163
|
+
</td>
|
|
163
164
|
</tr>
|
|
164
165
|
<tr>
|
|
165
|
-
<td id='
|
|
166
|
-
<a href='https://github.com/
|
|
167
|
-
<img src='https://github.com/
|
|
166
|
+
<td id='danielle-tomlinson'>
|
|
167
|
+
<a href='https://github.com/endocrimes'>
|
|
168
|
+
<img src='https://github.com/endocrimes.png?size=140'>
|
|
168
169
|
</a>
|
|
169
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
170
|
+
<h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
|
|
170
171
|
</td>
|
|
171
|
-
<td id='
|
|
172
|
-
<a href='https://github.com/
|
|
173
|
-
<img src='https://github.com/
|
|
172
|
+
<td id='jan-piotrowski'>
|
|
173
|
+
<a href='https://github.com/janpio'>
|
|
174
|
+
<img src='https://github.com/janpio.png?size=140'>
|
|
174
175
|
</a>
|
|
175
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
176
|
+
<h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
|
|
177
|
+
</td>
|
|
178
|
+
<td id='matthew-ellis'>
|
|
179
|
+
<a href='https://github.com/matthewellis'>
|
|
180
|
+
<img src='https://github.com/matthewellis.png?size=140'>
|
|
181
|
+
</a>
|
|
182
|
+
<h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
|
|
183
|
+
</td>
|
|
184
|
+
<td id='andrew-mcburney'>
|
|
185
|
+
<a href='https://github.com/armcburney'>
|
|
186
|
+
<img src='https://github.com/armcburney.png?size=140'>
|
|
187
|
+
</a>
|
|
188
|
+
<h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
|
|
176
189
|
</td>
|
|
177
190
|
</table>
|
|
178
191
|
|
|
@@ -187,12 +200,12 @@ Check out [CONTRIBUTING.md](CONTRIBUTING.md) for more information on how to help
|
|
|
187
200
|
Help us keep _fastlane_ open and inclusive. Please read and follow our [Code of Conduct](https://github.com/fastlane/fastlane/blob/master/CODE_OF_CONDUCT.md).
|
|
188
201
|
|
|
189
202
|
## Metrics
|
|
190
|
-
|
|
191
|
-
_fastlane_ tracks a few key metrics to understand how developers are using the tool and to help us know what areas need improvement. No personal/sensitive information is ever collected. Metrics that are collected include:
|
|
192
|
-
|
|
203
|
+
|
|
204
|
+
_fastlane_ tracks a few key metrics to understand how developers are using the tool and to help us know what areas need improvement. No personal/sensitive information is ever collected. Metrics that are collected include:
|
|
205
|
+
|
|
193
206
|
* The number of _fastlane_ runs
|
|
194
207
|
* A salted hash of the app identifier or package name, which helps us anonymously identify unique usage of _fastlane_
|
|
195
|
-
|
|
208
|
+
|
|
196
209
|
You can easily opt-out of metrics collection by adding `opt_out_usage` at the top of your `Fastfile` or by setting the environment variable `FASTLANE_OPT_OUT_USAGE`. [Check out the metrics code on GitHub](https://github.com/fastlane/fastlane/tree/master/fastlane_core/lib/fastlane_core/analytics)
|
|
197
210
|
|
|
198
211
|
## License
|
data/cert/lib/cert/options.rb
CHANGED
data/cert/lib/cert/runner.rb
CHANGED
|
@@ -24,6 +24,10 @@ module Cert
|
|
|
24
24
|
UI.message("Creating authorization token for App Store Connect API")
|
|
25
25
|
Spaceship::ConnectAPI.token = api_token
|
|
26
26
|
else
|
|
27
|
+
# Username is now optional since addition of App Store Connect API Key
|
|
28
|
+
# Force asking for username to prompt user if not already set
|
|
29
|
+
Cert.config.fetch(:username, force_ask: true)
|
|
30
|
+
|
|
27
31
|
UI.message("Starting login with user '#{Cert.config[:username]}'")
|
|
28
32
|
Spaceship::ConnectAPI.login(Cert.config[:username], nil, use_portal: true, use_tunes: false)
|
|
29
33
|
UI.message("Successfully logged in")
|
|
@@ -31,7 +35,7 @@ module Cert
|
|
|
31
35
|
end
|
|
32
36
|
|
|
33
37
|
def api_token
|
|
34
|
-
@api_token ||= Spaceship::ConnectAPI::Token.create(Cert.config[:api_key]) if Cert.config[:api_key]
|
|
38
|
+
@api_token ||= Spaceship::ConnectAPI::Token.create(**Cert.config[:api_key]) if Cert.config[:api_key]
|
|
35
39
|
@api_token ||= Spaceship::ConnectAPI::Token.from_json_file(Cert.config[:api_key_path]) if Cert.config[:api_key_path]
|
|
36
40
|
return @api_token
|
|
37
41
|
end
|
|
@@ -195,7 +195,9 @@ module Deliver
|
|
|
195
195
|
],
|
|
196
196
|
ScreenSize::IOS_58_MESSAGES => [
|
|
197
197
|
[1125, 2436],
|
|
198
|
-
[2436, 1125]
|
|
198
|
+
[2436, 1125],
|
|
199
|
+
[1170, 2532],
|
|
200
|
+
[2532, 1170]
|
|
199
201
|
],
|
|
200
202
|
ScreenSize::IOS_55_MESSAGES => [
|
|
201
203
|
[1242, 2208],
|
|
@@ -253,7 +255,9 @@ module Deliver
|
|
|
253
255
|
],
|
|
254
256
|
ScreenSize::IOS_58 => [
|
|
255
257
|
[1125, 2436],
|
|
256
|
-
[2436, 1125]
|
|
258
|
+
[2436, 1125],
|
|
259
|
+
[1170, 2532],
|
|
260
|
+
[2532, 1170]
|
|
257
261
|
],
|
|
258
262
|
ScreenSize::IOS_55 => [
|
|
259
263
|
[1242, 2208],
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
require_relative 'module'
|
|
2
2
|
require 'spaceship'
|
|
3
|
-
require 'open-uri'
|
|
4
3
|
|
|
5
4
|
module Deliver
|
|
6
5
|
class DownloadScreenshots
|
|
@@ -68,7 +67,7 @@ module Deliver
|
|
|
68
67
|
end
|
|
69
68
|
|
|
70
69
|
path = File.join(containing_folder, file_name)
|
|
71
|
-
File.binwrite(path,
|
|
70
|
+
File.binwrite(path, FastlaneCore::Helper.open_uri(url).read)
|
|
72
71
|
end
|
|
73
72
|
end
|
|
74
73
|
end
|
|
@@ -30,6 +30,10 @@ module Deliver
|
|
|
30
30
|
UI.message("Creating authorization token for App Store Connect API")
|
|
31
31
|
Spaceship::ConnectAPI.token = api_token
|
|
32
32
|
else
|
|
33
|
+
# Username is now optional since addition of App Store Connect API Key
|
|
34
|
+
# Force asking for username to prompt user if not already set
|
|
35
|
+
options.fetch(:username, force_ask: true)
|
|
36
|
+
|
|
33
37
|
# Team selection passed though FASTLANE_TEAM_ID and FASTLANE_TEAM_NAME environment variables
|
|
34
38
|
# Prompts select team if multiple teams and none specified
|
|
35
39
|
UI.message("Login to App Store Connect (#{options[:username]})")
|
|
@@ -39,7 +43,7 @@ module Deliver
|
|
|
39
43
|
end
|
|
40
44
|
|
|
41
45
|
def api_token
|
|
42
|
-
@api_token ||= Spaceship::ConnectAPI::Token.create(options[:api_key]) if options[:api_key]
|
|
46
|
+
@api_token ||= Spaceship::ConnectAPI::Token.create(**options[:api_key]) if options[:api_key]
|
|
43
47
|
@api_token ||= Spaceship::ConnectAPI::Token.from_json_file(options[:api_key_path]) if options[:api_key_path]
|
|
44
48
|
return @api_token
|
|
45
49
|
end
|
|
@@ -178,8 +182,12 @@ module Deliver
|
|
|
178
182
|
end
|
|
179
183
|
|
|
180
184
|
transporter = transporter_for_selected_team
|
|
181
|
-
result = transporter.upload(
|
|
182
|
-
|
|
185
|
+
result = transporter.upload(package_path: package_path)
|
|
186
|
+
|
|
187
|
+
unless result
|
|
188
|
+
transporter_errors = transporter.displayable_errors
|
|
189
|
+
UI.user_error!("Error uploading ipa file: \n #{transporter_errors}")
|
|
190
|
+
end
|
|
183
191
|
end
|
|
184
192
|
|
|
185
193
|
def reject_version_if_possible
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
require 'fastlane_core'
|
|
1
2
|
require 'spaceship'
|
|
2
3
|
|
|
3
4
|
require_relative 'module'
|
|
4
|
-
require_relative 'queue_worker'
|
|
5
5
|
|
|
6
6
|
module Deliver
|
|
7
7
|
# upload description, rating, etc.
|
|
@@ -200,7 +200,7 @@ module Deliver
|
|
|
200
200
|
sleep(1)
|
|
201
201
|
|
|
202
202
|
# Update app store version localizations
|
|
203
|
-
store_version_worker =
|
|
203
|
+
store_version_worker = FastlaneCore::QueueWorker.new do |app_store_version_localization|
|
|
204
204
|
attributes = localized_version_attributes_by_locale[app_store_version_localization.locale]
|
|
205
205
|
if attributes
|
|
206
206
|
UI.message("Uploading metadata to App Store Connect for localized version '#{app_store_version_localization.locale}'")
|
|
@@ -211,7 +211,7 @@ module Deliver
|
|
|
211
211
|
store_version_worker.start
|
|
212
212
|
|
|
213
213
|
# Update app info localizations
|
|
214
|
-
app_info_worker =
|
|
214
|
+
app_info_worker = FastlaneCore::QueueWorker.new do |app_info_localization|
|
|
215
215
|
attributes = localized_info_attributes_by_locale[app_info_localization.locale]
|
|
216
216
|
if attributes
|
|
217
217
|
UI.message("Uploading metadata to App Store Connect for localized info '#{app_info_localization.locale}'")
|
|
@@ -592,8 +592,9 @@ module Deliver
|
|
|
592
592
|
end
|
|
593
593
|
|
|
594
594
|
def set_review_information(version, options)
|
|
595
|
-
return unless options[:app_review_information]
|
|
596
595
|
info = options[:app_review_information]
|
|
596
|
+
return if info.nil? || info.empty?
|
|
597
|
+
|
|
597
598
|
info = info.collect { |k, v| [k.to_sym, v] }.to_h
|
|
598
599
|
UI.user_error!("`app_review_information` must be a hash", show_github_issues: true) unless info.kind_of?(Hash)
|
|
599
600
|
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
+
require 'fastlane_core'
|
|
1
2
|
require 'spaceship/tunes/tunes'
|
|
2
3
|
require 'digest/md5'
|
|
3
4
|
|
|
4
5
|
require_relative 'app_screenshot'
|
|
5
6
|
require_relative 'module'
|
|
6
7
|
require_relative 'loader'
|
|
7
|
-
require_relative 'queue_worker'
|
|
8
8
|
require_relative 'app_screenshot_iterator'
|
|
9
9
|
|
|
10
10
|
module Deliver
|
|
11
11
|
# upload screenshots to App Store Connect
|
|
12
12
|
class UploadScreenshots
|
|
13
|
-
|
|
13
|
+
DeleteScreenshotSetJob = Struct.new(:app_screenshot_set, :localization)
|
|
14
14
|
UploadScreenshotJob = Struct.new(:app_screenshot_set, :path)
|
|
15
15
|
|
|
16
16
|
def upload(options, screenshots)
|
|
@@ -67,12 +67,12 @@ module Deliver
|
|
|
67
67
|
def delete_screenshots(localizations, screenshots_per_language, tries: 5)
|
|
68
68
|
tries -= 1
|
|
69
69
|
|
|
70
|
-
worker = QueueWorker.new do |job|
|
|
70
|
+
worker = FastlaneCore::QueueWorker.new do |job|
|
|
71
71
|
start_time = Time.now
|
|
72
|
-
target = "#{job.localization.locale} #{job.app_screenshot_set.screenshot_display_type}
|
|
72
|
+
target = "#{job.localization.locale} #{job.app_screenshot_set.screenshot_display_type}"
|
|
73
73
|
begin
|
|
74
74
|
UI.verbose("Deleting '#{target}'")
|
|
75
|
-
job.
|
|
75
|
+
job.app_screenshot_set.delete!
|
|
76
76
|
UI.message("Deleted '#{target}' - (#{Time.now - start_time} secs)")
|
|
77
77
|
rescue => error
|
|
78
78
|
UI.error("Failed to delete screenshot #{target} - (#{Time.now - start_time} secs)")
|
|
@@ -81,12 +81,12 @@ module Deliver
|
|
|
81
81
|
end
|
|
82
82
|
|
|
83
83
|
iterator = AppScreenshotIterator.new(localizations)
|
|
84
|
-
iterator.
|
|
84
|
+
iterator.each_app_screenshot_set do |localization, app_screenshot_set|
|
|
85
85
|
# Only delete screenshots if trying to upload
|
|
86
86
|
next unless screenshots_per_language.keys.include?(localization.locale)
|
|
87
87
|
|
|
88
|
-
UI.verbose("Queued delete sceeenshot job for #{localization.locale} #{app_screenshot_set.screenshot_display_type}
|
|
89
|
-
worker.enqueue(
|
|
88
|
+
UI.verbose("Queued delete sceeenshot set job for #{localization.locale} #{app_screenshot_set.screenshot_display_type}")
|
|
89
|
+
worker.enqueue(DeleteScreenshotSetJob.new(app_screenshot_set, localization))
|
|
90
90
|
end
|
|
91
91
|
|
|
92
92
|
worker.start
|
|
@@ -113,7 +113,7 @@ module Deliver
|
|
|
113
113
|
tries -= 1
|
|
114
114
|
|
|
115
115
|
# Upload screenshots
|
|
116
|
-
worker = QueueWorker.new do |job|
|
|
116
|
+
worker = FastlaneCore::QueueWorker.new do |job|
|
|
117
117
|
begin
|
|
118
118
|
UI.verbose("Uploading '#{job.path}'...")
|
|
119
119
|
start_time = Time.now
|
|
@@ -235,7 +235,7 @@ module Deliver
|
|
|
235
235
|
iterator = AppScreenshotIterator.new(localizations)
|
|
236
236
|
|
|
237
237
|
# Re-order screenshots within app_screenshot_set
|
|
238
|
-
worker = QueueWorker.new do |app_screenshot_set|
|
|
238
|
+
worker = FastlaneCore::QueueWorker.new do |app_screenshot_set|
|
|
239
239
|
original_ids = app_screenshot_set.app_screenshots.map(&:id)
|
|
240
240
|
sorted_ids = Naturally.sort(app_screenshot_set.app_screenshots, by: :file_name).map(&:id)
|
|
241
241
|
if original_ids != sorted_ids
|