fastlane-plugin-wpmreleasetoolkit 1.0.0 → 1.3.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (99) hide show
  1. checksums.yaml +4 -4
  2. data/bin/drawText +1 -0
  3. data/ext/drawText/drawText Tests/DigitParsingTests.swift +21 -0
  4. data/ext/drawText/drawText Tests/ExtensionsTests.swift +5 -0
  5. data/ext/drawText/drawText Tests/Info.plist +22 -0
  6. data/ext/drawText/drawText Tests/StylesheetTests.swift +31 -0
  7. data/ext/drawText/drawText Tests/Test Cases/default-stylesheet.txt +10 -0
  8. data/ext/drawText/drawText Tests/Test Cases/external-styles-sample.css +3 -0
  9. data/ext/drawText/drawText Tests/Test Cases/external-styles-test.txt +13 -0
  10. data/ext/drawText/drawText Tests/Test Cases/large-text-block.txt +1 -0
  11. data/ext/drawText/drawText Tests/Test Cases/regular-text-block.txt +2 -0
  12. data/ext/drawText/drawText Tests/Test Cases/rtl-text-block.txt +2 -0
  13. data/ext/drawText/drawText Tests/Test Cases/text-size-adjustment-test.txt +10 -0
  14. data/ext/drawText/drawText Tests/TextImageTests.swift +99 -0
  15. data/ext/drawText/drawText Tests/drawText_Tests.swift +14 -0
  16. data/ext/drawText/drawText.xcodeproj/project.pbxproj +508 -0
  17. data/ext/drawText/drawText.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  18. data/ext/drawText/drawText.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  19. data/ext/drawText/drawText.xcodeproj/xcshareddata/xcschemes/drawText Tests.xcscheme +57 -0
  20. data/ext/drawText/drawText.xcodeproj/xcshareddata/xcschemes/drawText.xcscheme +109 -0
  21. data/ext/drawText/drawText/Assets/style.css +1 -0
  22. data/ext/drawText/drawText/CoreTextStack.swift +113 -0
  23. data/ext/drawText/drawText/Helpers/CommandLineHelpers.swift +36 -0
  24. data/ext/drawText/drawText/Helpers/Extensions.swift +27 -0
  25. data/ext/drawText/drawText/Helpers/FileSystemHelper.swift +24 -0
  26. data/ext/drawText/drawText/Stylesheet.swift +48 -0
  27. data/ext/drawText/drawText/TextImage.swift +100 -0
  28. data/ext/drawText/drawText/main.swift +61 -0
  29. data/ext/drawText/extconf.rb +1 -1
  30. data/ext/drawText/makefile.example +8 -0
  31. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/an_update_metadata_source_action.rb +3 -3
  32. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_betabuild_prechecks.rb +22 -16
  33. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_build_prechecks.rb +15 -9
  34. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_bump_version_beta.rb +26 -26
  35. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_bump_version_final_release.rb +27 -24
  36. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_bump_version_hotfix.rb +21 -23
  37. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_bump_version_release.rb +31 -40
  38. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_codefreeze_prechecks.rb +16 -9
  39. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_completecodefreeze_prechecks.rb +10 -4
  40. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_create_xml_release_notes.rb +2 -2
  41. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_current_branch_is_hotfix.rb +10 -2
  42. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_download_file_by_version.rb +1 -1
  43. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_download_translations_action.rb +2 -2
  44. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_finalize_prechecks.rb +11 -7
  45. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_get_alpha_version.rb +8 -2
  46. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_get_app_version.rb +8 -2
  47. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_get_release_version.rb +8 -2
  48. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_hotifx_prechecks.rb +5 -5
  49. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_merge_translators_strings.rb +1 -1
  50. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_tag_build.rb +11 -5
  51. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_update_metadata.rb +1 -1
  52. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_update_release_notes.rb +3 -3
  53. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/common/check_for_toolkit_updates_action.rb +99 -0
  54. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/common/check_translation_progress.rb +147 -0
  55. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/common/circleci_trigger_job_action.rb +1 -1
  56. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/common/gp_downloadmetadata_action.rb +1 -1
  57. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/common/gp_update_metadata_source.rb +6 -5
  58. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/common/promo_screenshots_action.rb +2 -2
  59. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/common/removebranchprotection_action.rb +3 -3
  60. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/common/setbranchprotection_action.rb +3 -3
  61. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/common/setfrozentag_action.rb +1 -1
  62. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_betabuild_prechecks.rb +5 -5
  63. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_build_prechecks.rb +4 -4
  64. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_bump_version_beta.rb +2 -2
  65. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_bump_version_hotfix.rb +1 -1
  66. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_bump_version_release.rb +5 -5
  67. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_check_beta_deps.rb +2 -2
  68. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_clear_intermediate_tags.rb +1 -1
  69. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_codefreeze_prechecks.rb +4 -4
  70. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_completecodefreeze_prechecks.rb +5 -5
  71. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_current_branch_is_hotfix.rb +1 -1
  72. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_final_tag.rb +2 -2
  73. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_finalize_prechecks.rb +5 -5
  74. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_get_app_version.rb +1 -1
  75. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_get_build_version.rb +1 -1
  76. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_get_store_app_sizes.rb +1 -1
  77. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_hotifx_prechecks.rb +5 -5
  78. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_lint_localizations.rb +1 -1
  79. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_localize_project.rb +1 -1
  80. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_merge_translators_strings.rb +4 -4
  81. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_tag_build.rb +2 -2
  82. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_update_metadata.rb +1 -1
  83. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_update_release_notes.rb +3 -3
  84. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_validate_ci_build.rb +2 -2
  85. data/lib/fastlane/plugin/wpmreleasetoolkit/helper/an_metadata_update_helper.rb +3 -3
  86. data/lib/fastlane/plugin/wpmreleasetoolkit/helper/android/android_git_helper.rb +14 -5
  87. data/lib/fastlane/plugin/wpmreleasetoolkit/helper/android/android_localize_helper.rb +11 -2
  88. data/lib/fastlane/plugin/wpmreleasetoolkit/helper/android/android_version_helper.rb +133 -55
  89. data/lib/fastlane/plugin/wpmreleasetoolkit/helper/ci_helper.rb +1 -1
  90. data/lib/fastlane/plugin/wpmreleasetoolkit/helper/configure_helper.rb +2 -2
  91. data/lib/fastlane/plugin/wpmreleasetoolkit/helper/encryption_helper.rb +1 -1
  92. data/lib/fastlane/plugin/wpmreleasetoolkit/helper/github_helper.rb +4 -6
  93. data/lib/fastlane/plugin/wpmreleasetoolkit/helper/glotpress_helper.rb +79 -0
  94. data/lib/fastlane/plugin/wpmreleasetoolkit/helper/ios/ios_adc_app_sizes_helper.rb +3 -3
  95. data/lib/fastlane/plugin/wpmreleasetoolkit/helper/ios/ios_l10n_helper.rb +3 -4
  96. data/lib/fastlane/plugin/wpmreleasetoolkit/helper/metadata_update_helper.rb +1 -1
  97. data/lib/fastlane/plugin/wpmreleasetoolkit/models/configuration.rb +2 -2
  98. data/lib/fastlane/plugin/wpmreleasetoolkit/version.rb +1 -1
  99. metadata +45 -15
@@ -80,7 +80,7 @@ module Fastlane
80
80
 
81
81
  Net::HTTP.start(command_uri.host, command_uri.port, use_ssl: true) do |http|
82
82
  request = Net::HTTP::Post.new(command_uri.request_uri, headers)
83
- body = { "branch": branch, "parameters": parameters }
83
+ body = { branch: branch, parameters: parameters }
84
84
  request.body = body.to_json
85
85
  response = http.request(request)
86
86
  return response
@@ -187,7 +187,7 @@ module Fastlane
187
187
 
188
188
  if File.directory?(abs_path)
189
189
  Dir.glob("#{abs_path}**/*").map do |sub_path|
190
- sub_path.gsub(repository_path + '/', '')
190
+ sub_path.gsub("#{repository_path}/", '')
191
191
  end
192
192
  else
193
193
  return path
@@ -230,7 +230,7 @@ module Fastlane
230
230
  end
231
231
 
232
232
  new_config = self.configuration
233
- new_config.add_file_to_copy(params[:source], params[:destination], params[:encrypt])
233
+ new_config.add_file_to_copy(params[:source], params[:destination], encrypt: params[:encrypt])
234
234
  update_configuration(new_config)
235
235
  end
236
236
 
@@ -9,7 +9,7 @@ module Fastlane
9
9
  end
10
10
 
11
11
  def self.cipher(op_type)
12
- cipher = OpenSSL::Cipher::AES256.new :CBC
12
+ cipher = OpenSSL::Cipher.new('aes-256-cbc')
13
13
 
14
14
  cipher.encrypt if op_type == OperationType::ENCRYPT
15
15
  cipher.decrypt if op_type == OperationType::DECRYPT
@@ -50,15 +50,13 @@ module Fastlane
50
50
 
51
51
  last_stone = nil
52
52
  milestones.each do |mile|
53
+ mile_vcomps = mile[:title].split[0].split('.')
53
54
  if last_stone.nil?
54
- last_stone = mile unless mile[:title].split(' ')[0].split('.').length < 2
55
+ last_stone = mile unless mile_vcomps.length < 2
55
56
  else
56
57
  begin
57
- if mile[:title].split(' ')[0].split('.')[0] > last_stone[:title].split(' ')[0].split('.')[0]
58
- last_stone = mile
59
- elsif mile[:title].split(' ')[0].split('.')[1] > last_stone[:title].split(' ')[0].split('.')[1]
60
- last_stone = mile
61
- end
58
+ last_vcomps = last_stone[:title].split[0].split('.')
59
+ last_stone = mile if mile_vcomps[0] > last_vcomps[0] || mile_vcomps[1] > last_vcomps[1]
62
60
  rescue StandardError
63
61
  puts 'Found invalid milestone'
64
62
  end
@@ -0,0 +1,79 @@
1
+ require 'net/http'
2
+ require 'uri'
3
+
4
+ module Fastlane
5
+ module Helper
6
+ class GlotPressHelper
7
+ # Gets the data about status of the translation.
8
+ #
9
+ # @param [String] URL to the GlotPress project.
10
+ #
11
+ # @return [Array] Data from GlotPress project overview page.
12
+ #
13
+ def self.get_translation_status_data(glotpress_url:)
14
+ uri = URI.parse(glotpress_url)
15
+ response = Net::HTTP.get_response(uri)
16
+ response = Net::HTTP.get_response(URI.parse(response.header['location'])) if response.code == '301'
17
+
18
+ response.body.split("\n")
19
+ end
20
+
21
+ # Gets the status of the translation for a given language.
22
+ #
23
+ # @param [Array] Data from GlotPress project overview page.
24
+ # @param [String] The code of the language to get information about (GlotPress format).
25
+ #
26
+ # @return [Integer] The percentage of the translated strings.
27
+ #
28
+ def self.get_translation_status(data:, language_code:)
29
+ # The status is parsed from the GlotPress project page.
30
+ # The row can be identified by the language code and the progress is in the column identified by the class "stats percent".
31
+ # When the progress is above 90%, a special badge is added.
32
+ # Because of the way the HTML is organized, this regex matches content spawned on three or four lines
33
+ # Regex:
34
+ # ^ : start of a line
35
+ # \s* : any space
36
+ # <strong><a href=".*\/#{language_code}\/default\/"> : This link contains the language code of that line in the HTML table, so it's a reliable match
37
+ # .* : any character. The language name should be here, but it can be less reliable than the language code as a match
38
+ # <\/strong> : tag closure
39
+ # \n : new line
40
+ # (?: : match the following. This starts the "morethan90" special badge, which we expect to exist zero or one times (see the closure of this part of the regex).
41
+ # \s* : any space
42
+ # <span class="bubble morethan90"> : Start of the special badge
43
+ # \d\d\d?% : 2 or 3 digits and the percentage char
44
+ # <\/span>\n : Special badge closure and new line
45
+ # )? : end of the "morethan90" special badge section. Expect this zero or one times.
46
+ # \s*<\/td>\n : column closure tag. Any space before of it are ok. Expect new line after it.
47
+ # \s* : any space
48
+ # <td class="stats percent"> : This is the tag which can be used to extract the progress
49
+ # ([0-9]+) : progress is the first group
50
+ # %<\/td> : tag closure
51
+ regex = "^\\s*<strong><a href=\".*\\/#{language_code}\\/default\\/\">.*<\\/strong>\\n"
52
+ regex += '(?:\s*<span class="bubble morethan90">\d\d\d?%<\/span>\n)?\s*<\/td>\n\s*<td class="stats percent">([0-9]+)%<\/td>$'
53
+
54
+ # 1. Merge the array into a single string.
55
+ # 2. Match the info and extract the value in group 1.
56
+ # 3. Convert to integer.
57
+ data.join("\n").match(/#{regex}/)[1].to_i
58
+ end
59
+
60
+ # Extract the number of strings which are in the given status.
61
+ #
62
+ # @param [Array] Data from GlotPress project overview page.
63
+ # @param [String] The code of the language to get information about (GlotPress format).
64
+ # @param [String] The status which data should be extracted for.
65
+ #
66
+ # @return [Integer] The percentage of the translated strings.
67
+ #
68
+ def self.extract_value_from_translation_info_data(data:, language_code:, status:)
69
+ regex = "\/#{language_code}\/.*#{status}.*>([0-9,]+)"
70
+
71
+ # 1. Grep the line with contains the required info.
72
+ # 2. Match the info and extract the value in group 1.
73
+ # 3. Values use comma as thousands separator, so remove it.
74
+ # 4. Convert to integer.
75
+ data.grep(/#{regex}/)[0].match(/#{regex}/)[1].gsub(/,/, '').to_i
76
+ end
77
+ end
78
+ end
79
+ end
@@ -30,7 +30,7 @@ module Fastlane
30
30
  print "Fetching info for: #{v.version_string.rjust(8)} (#{v.build.version.rjust(11)}) [#{idx.to_s.rjust(3)}/#{versions.count}]\r"
31
31
  Spaceship::Tunes.client.build_details(app_id: app.id, train: v.version_string, build_number: v.build.version, platform: 'ios') rescue nil
32
32
  end.compact.reverse
33
- print(' ' * 55 + "\n")
33
+ print("#{' ' * 55}\n")
34
34
 
35
35
  builds_details
36
36
  end
@@ -40,12 +40,12 @@ module Fastlane
40
40
  end
41
41
 
42
42
  def self.sz_mb(bytes)
43
- sz(bytes).to_s.rjust(5) + ' MB'
43
+ "#{sz(bytes).to_s.rjust(5)} MB"
44
44
  end
45
45
 
46
46
  def self.format_csv(app_sizes, devices: nil)
47
47
  devices = DEFAULT_DEVICES if devices.nil? || devices.empty?
48
- csv = "Version\t" + devices.join("\t") + "\n"
48
+ csv = "Version\t#{devices.join("\t")}\n"
49
49
  app_sizes.each do |details|
50
50
  build_number = details['cfBundleVersion']
51
51
  sizes = details['sizesInBytes'].select { |name, _| devices.include?(name) }
@@ -9,8 +9,7 @@ module Fastlane
9
9
  DEFAULT_BASE_LANG = 'en'
10
10
  CONFIG_FILE_NAME = 'swiftgen-stringtypes.yml'
11
11
 
12
- attr_reader :install_path
13
- attr_reader :version
12
+ attr_reader :install_path, :version
14
13
 
15
14
  # @param [String] install_path The path to install SwiftGen to. Usually something like "$PROJECT_DIR/vendor/swiftgen/#{SWIFTGEN_VERSION}".
16
15
  # It's recommended to provide an absolute path here rather than a relative one, to ensure it's not dependant on where the action is run from.
@@ -175,7 +174,7 @@ module Fastlane
175
174
  # Run diffs
176
175
  base_file = sort_file_lines!(tmpdir, base_lang)
177
176
  langs.delete(base_lang)
178
- return Hash[langs.map do |lang|
177
+ return langs.map do |lang|
179
178
  file = sort_file_lines!(tmpdir, lang)
180
179
  # If the lang ends up not having any translation at all (e.g. a `.lproj` without any `.strings` file in it but maybe just a storyboard or assets catalog), ignore it
181
180
  next nil if file.nil? || only_empty_lines?(file)
@@ -189,7 +188,7 @@ module Fastlane
189
188
  # file instead, but they can still give an indication at the index in the list of keys at which this difference is located.
190
189
  diff.gsub!(/^(---|\+\+\+).*\n/, '')
191
190
  diff.empty? ? nil : [lang, diff]
192
- end.compact]
191
+ end.compact.to_h
193
192
  end
194
193
  end
195
194
 
@@ -127,7 +127,7 @@ module Fastlane
127
127
  end
128
128
 
129
129
  def extract_key(line)
130
- line.split(' ')[1].tr('\"', '')
130
+ line.split[1].tr('\"', '')
131
131
  end
132
132
  end
133
133
 
@@ -1,5 +1,5 @@
1
1
  require 'json'
2
- require_relative 'file_reference.rb'
2
+ require_relative 'file_reference'
3
3
 
4
4
  module Fastlane
5
5
  class Configuration
@@ -22,7 +22,7 @@ module Fastlane
22
22
  File.write(path, JSON.pretty_generate(to_hash))
23
23
  end
24
24
 
25
- def add_file_to_copy(source, destination, encrypt = false)
25
+ def add_file_to_copy(source, destination, encrypt: false)
26
26
  file = FileReference.new(file: source, destination: destination, encrypt: encrypt)
27
27
  self.files_to_copy << file
28
28
  end
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
2
  module Wpmreleasetoolkit
3
- VERSION = '1.0.0'
3
+ VERSION = '1.3.1'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastlane-plugin-wpmreleasetoolkit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lorenzo Mattei
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-05-19 00:00:00.000000000 Z
11
+ date: 2021-07-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: diffy
@@ -196,16 +196,16 @@ dependencies:
196
196
  name: bundler
197
197
  requirement: !ruby/object:Gem::Requirement
198
198
  requirements:
199
- - - ">="
199
+ - - "~>"
200
200
  - !ruby/object:Gem::Version
201
- version: '1.17'
201
+ version: '2.0'
202
202
  type: :development
203
203
  prerelease: false
204
204
  version_requirements: !ruby/object:Gem::Requirement
205
205
  requirements:
206
- - - ">="
206
+ - - "~>"
207
207
  - !ruby/object:Gem::Version
208
- version: '1.17'
208
+ version: '2.0'
209
209
  - !ruby/object:Gem::Dependency
210
210
  name: rspec
211
211
  requirement: !ruby/object:Gem::Requirement
@@ -238,30 +238,30 @@ dependencies:
238
238
  name: rubocop
239
239
  requirement: !ruby/object:Gem::Requirement
240
240
  requirements:
241
- - - '='
241
+ - - "~>"
242
242
  - !ruby/object:Gem::Version
243
- version: '0.75'
243
+ version: '1.0'
244
244
  type: :development
245
245
  prerelease: false
246
246
  version_requirements: !ruby/object:Gem::Requirement
247
247
  requirements:
248
- - - '='
248
+ - - "~>"
249
249
  - !ruby/object:Gem::Version
250
- version: '0.75'
250
+ version: '1.0'
251
251
  - !ruby/object:Gem::Dependency
252
252
  name: rubocop-rspec
253
253
  requirement: !ruby/object:Gem::Requirement
254
254
  requirements:
255
- - - ">="
255
+ - - '='
256
256
  - !ruby/object:Gem::Version
257
- version: '0'
257
+ version: 2.3.0
258
258
  type: :development
259
259
  prerelease: false
260
260
  version_requirements: !ruby/object:Gem::Requirement
261
261
  requirements:
262
- - - ">="
262
+ - - '='
263
263
  - !ruby/object:Gem::Version
264
- version: '0'
264
+ version: 2.3.0
265
265
  - !ruby/object:Gem::Dependency
266
266
  name: rubocop-require_tools
267
267
  requirement: !ruby/object:Gem::Requirement
@@ -329,7 +329,34 @@ files:
329
329
  - LICENSE
330
330
  - README.md
331
331
  - bin/drawText
332
+ - ext/drawText/drawText Tests/DigitParsingTests.swift
333
+ - ext/drawText/drawText Tests/ExtensionsTests.swift
334
+ - ext/drawText/drawText Tests/Info.plist
335
+ - ext/drawText/drawText Tests/StylesheetTests.swift
336
+ - ext/drawText/drawText Tests/Test Cases/default-stylesheet.txt
337
+ - ext/drawText/drawText Tests/Test Cases/external-styles-sample.css
338
+ - ext/drawText/drawText Tests/Test Cases/external-styles-test.txt
339
+ - ext/drawText/drawText Tests/Test Cases/large-text-block.txt
340
+ - ext/drawText/drawText Tests/Test Cases/regular-text-block.txt
341
+ - ext/drawText/drawText Tests/Test Cases/rtl-text-block.txt
342
+ - ext/drawText/drawText Tests/Test Cases/text-size-adjustment-test.txt
343
+ - ext/drawText/drawText Tests/TextImageTests.swift
344
+ - ext/drawText/drawText Tests/drawText_Tests.swift
345
+ - ext/drawText/drawText.xcodeproj/project.pbxproj
346
+ - ext/drawText/drawText.xcodeproj/project.xcworkspace/contents.xcworkspacedata
347
+ - ext/drawText/drawText.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
348
+ - ext/drawText/drawText.xcodeproj/xcshareddata/xcschemes/drawText Tests.xcscheme
349
+ - ext/drawText/drawText.xcodeproj/xcshareddata/xcschemes/drawText.xcscheme
350
+ - ext/drawText/drawText/Assets/style.css
351
+ - ext/drawText/drawText/CoreTextStack.swift
352
+ - ext/drawText/drawText/Helpers/CommandLineHelpers.swift
353
+ - ext/drawText/drawText/Helpers/Extensions.swift
354
+ - ext/drawText/drawText/Helpers/FileSystemHelper.swift
355
+ - ext/drawText/drawText/Stylesheet.swift
356
+ - ext/drawText/drawText/TextImage.swift
357
+ - ext/drawText/drawText/main.swift
332
358
  - ext/drawText/extconf.rb
359
+ - ext/drawText/makefile.example
333
360
  - lib/fastlane/plugin/wpmreleasetoolkit.rb
334
361
  - lib/fastlane/plugin/wpmreleasetoolkit/actions/README.md
335
362
  - lib/fastlane/plugin/wpmreleasetoolkit/actions/android/an_localize_libs_action.rb
@@ -357,6 +384,8 @@ files:
357
384
  - lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_tag_build.rb
358
385
  - lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_update_metadata.rb
359
386
  - lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_update_release_notes.rb
387
+ - lib/fastlane/plugin/wpmreleasetoolkit/actions/common/check_for_toolkit_updates_action.rb
388
+ - lib/fastlane/plugin/wpmreleasetoolkit/actions/common/check_translation_progress.rb
360
389
  - lib/fastlane/plugin/wpmreleasetoolkit/actions/common/circleci_trigger_job_action.rb
361
390
  - lib/fastlane/plugin/wpmreleasetoolkit/actions/common/close_milestone_action.rb
362
391
  - lib/fastlane/plugin/wpmreleasetoolkit/actions/common/create_new_milestone_action.rb
@@ -412,6 +441,7 @@ files:
412
441
  - lib/fastlane/plugin/wpmreleasetoolkit/helper/filesystem_helper.rb
413
442
  - lib/fastlane/plugin/wpmreleasetoolkit/helper/git_helper.rb
414
443
  - lib/fastlane/plugin/wpmreleasetoolkit/helper/github_helper.rb
444
+ - lib/fastlane/plugin/wpmreleasetoolkit/helper/glotpress_helper.rb
415
445
  - lib/fastlane/plugin/wpmreleasetoolkit/helper/ios/ios_adc_app_sizes_helper.rb
416
446
  - lib/fastlane/plugin/wpmreleasetoolkit/helper/ios/ios_git_helper.rb
417
447
  - lib/fastlane/plugin/wpmreleasetoolkit/helper/ios/ios_l10n_helper.rb
@@ -435,7 +465,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
435
465
  requirements:
436
466
  - - ">="
437
467
  - !ruby/object:Gem::Version
438
- version: '0'
468
+ version: '2.6'
439
469
  required_rubygems_version: !ruby/object:Gem::Requirement
440
470
  requirements:
441
471
  - - ">="