pindo 5.13.7 → 5.13.10

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.
Files changed (74) hide show
  1. checksums.yaml +4 -4
  2. data/lib/pindo/base/git_handler.rb +247 -42
  3. data/lib/pindo/command/android/autobuild.rb +104 -31
  4. data/lib/pindo/command/android/autoresign.rb +23 -322
  5. data/lib/pindo/command/android/keystore.rb +7 -130
  6. data/lib/pindo/command/appstore/adhocbuild.rb +52 -15
  7. data/lib/pindo/command/appstore/autobuild.rb +104 -8
  8. data/lib/pindo/command/appstore/autoresign.rb +3 -5
  9. data/lib/pindo/command/ios/autobuild.rb +96 -32
  10. data/lib/pindo/command/ios/build.rb +8 -186
  11. data/lib/pindo/command/jps/media.rb +146 -0
  12. data/lib/pindo/command/jps/upload.rb +49 -21
  13. data/lib/pindo/command/jps.rb +1 -0
  14. data/lib/pindo/command/unity/autobuild.rb +141 -32
  15. data/lib/pindo/command/unity/packpush.rb +5 -8
  16. data/lib/pindo/command/utils/repoinit.rb +0 -2
  17. data/lib/pindo/command/utils/tag.rb +58 -26
  18. data/lib/pindo/command/utils.rb +0 -1
  19. data/lib/pindo/command/web/autobuild.rb +98 -34
  20. data/lib/pindo/command.rb +0 -56
  21. data/lib/pindo/config/build_info_manager.rb +7 -8
  22. data/lib/pindo/module/android/android_config_helper.rb +2 -11
  23. data/lib/pindo/module/appselect.rb +15 -41
  24. data/lib/pindo/module/appstore/itcapp_helper.rb +3 -6
  25. data/lib/pindo/module/build/build_helper.rb +28 -18
  26. data/lib/pindo/module/build/git_repo_helper.rb +284 -405
  27. data/lib/pindo/module/cert/pem_helper.rb +3 -6
  28. data/lib/pindo/module/pgyer/pgyerhelper.rb +193 -25
  29. data/lib/pindo/module/task/model/appstore/appstore_task.rb +5 -0
  30. data/lib/pindo/module/task/model/build/android_build_adhoc_task.rb +13 -187
  31. data/lib/pindo/module/task/model/build/android_build_dev_task.rb +36 -34
  32. data/lib/pindo/module/task/model/build/android_build_gplay_task.rb +13 -187
  33. data/lib/pindo/module/task/model/build/ios_build_adhoc_task.rb +9 -6
  34. data/lib/pindo/module/task/model/build/ios_build_appstore_task.rb +9 -6
  35. data/lib/pindo/module/task/model/build/ios_build_dev_task.rb +37 -32
  36. data/lib/pindo/module/task/model/build/web_build_dev_task.rb +7 -5
  37. data/lib/pindo/module/task/model/build_task.rb +8 -11
  38. data/lib/pindo/module/task/model/git/git_commit_task.rb +118 -0
  39. data/lib/pindo/module/task/model/git/git_tag_task.rb +125 -0
  40. data/lib/pindo/module/task/model/git_task.rb +75 -0
  41. data/lib/pindo/module/task/model/jps/jps_message_task.rb +178 -0
  42. data/lib/pindo/module/task/model/{jps_resign_task.rb → jps/jps_resign_task.rb} +14 -23
  43. data/lib/pindo/module/task/model/jps/jps_upload_media_task.rb +248 -0
  44. data/lib/pindo/module/task/model/{jps_upload_task.rb → jps/jps_upload_task.rb} +39 -94
  45. data/lib/pindo/module/task/model/jps_task.rb +43 -0
  46. data/lib/pindo/module/task/model/{ipa_local_resign_task.rb → resign/ipa_local_resign_task.rb} +7 -2
  47. data/lib/pindo/module/task/model/unity/unity_config_task.rb +103 -0
  48. data/lib/pindo/module/task/model/{unity_export_task.rb → unity/unity_export_task.rb} +76 -78
  49. data/lib/pindo/module/task/model/unity/unity_update_task.rb +95 -0
  50. data/lib/pindo/module/task/model/unity/unity_yoo_asset_task.rb +156 -0
  51. data/lib/pindo/module/task/model/unity_task.rb +118 -0
  52. data/lib/pindo/module/task/pindo_task.rb +101 -1
  53. data/lib/pindo/module/task/task_manager.rb +29 -24
  54. data/lib/pindo/module/unity/nuget_helper.rb +7 -7
  55. data/lib/pindo/module/unity/unity_command_helper.rb +188 -0
  56. data/lib/pindo/module/unity/unity_env_helper.rb +208 -0
  57. data/lib/pindo/module/unity/unity_helper.rb +189 -746
  58. data/lib/pindo/module/unity/unity_proc_helper.rb +390 -0
  59. data/lib/pindo/options/core/global_options_state.rb +96 -26
  60. data/lib/pindo/options/core/option_configuration.rb +3 -0
  61. data/lib/pindo/options/core/option_item.rb +36 -0
  62. data/lib/pindo/options/groups/build_options.rb +23 -6
  63. data/lib/pindo/options/groups/git_options.rb +115 -0
  64. data/lib/pindo/options/groups/jps_options.rb +7 -0
  65. data/lib/pindo/options/groups/option_group.rb +15 -0
  66. data/lib/pindo/options/groups/unity_options.rb +49 -0
  67. data/lib/pindo/options/options.rb +2 -0
  68. data/lib/pindo/version.rb +2 -2
  69. metadata +25 -14
  70. data/lib/pindo/base/githelper.rb +0 -686
  71. data/lib/pindo/base/pindocontext.rb +0 -602
  72. data/lib/pindo/command/utils/feishu.rb +0 -134
  73. data/lib/pindo/module/build/version_helper.rb +0 -146
  74. data/lib/pindo/module/task/model/git_tag_task.rb +0 -80
@@ -11,26 +11,42 @@ module Pindo
11
11
  def self.all_options
12
12
 
13
13
  @all_options ||= {
14
-
14
+
15
15
  bundleid: OptionItem.new(
16
16
  key: :bundleid,
17
- description: '指定打包的 Bundle ID',
17
+ name: 'Bundle ID',
18
+ description: '指定 iOS Bundle ID',
18
19
  type: String,
19
20
  env_name: 'PINDO_BUNDLE_ID',
20
- aliases: [:bundle_id, :package_name, :bundle_name],
21
21
  optional: true,
22
+ cacheable: true, # 存入文件缓存
22
23
  verify_block: proc do |value|
23
- # 支持 iOS 格式 (com.example.app) 和 Android 格式 (com.example.app)
24
- # iOS 可以包含大写字母、连字符和通配符(*)
25
24
  unless value =~ /^[a-zA-Z0-9\-\.\*]+$/
26
- raise "Bundle ID/Package Name 格式错误: #{value},应该类似 com.example.app 或 com.example.*"
25
+ raise "Bundle ID 格式错误: #{value},应该类似 com.example.app"
27
26
  end
28
27
  end,
29
28
  example: 'pindo ios autobuild --bundleid=com.example.app'
30
29
  ),
31
30
 
31
+ bundle_name: OptionItem.new(
32
+ key: :bundle_name,
33
+ name: 'Package Name',
34
+ description: '指定 Android Package Name',
35
+ type: String,
36
+ env_name: 'PINDO_BUNDLE_NAME',
37
+ optional: true,
38
+ cacheable: true, # 存入文件缓存
39
+ verify_block: proc do |value|
40
+ unless value =~ /^[a-z][a-z0-9_]*(\.[a-z][a-z0-9_]*)+$/i
41
+ raise "Package Name 格式错误: #{value},应该类似 com.example.app"
42
+ end
43
+ end,
44
+ example: 'pindo android autobuild --bundle_name=com.example.app'
45
+ ),
46
+
32
47
  build_type: OptionItem.new(
33
48
  key: :build_type,
49
+ name: '构建类型',
34
50
  description: '指定构建类型(dev/adhoc/release)',
35
51
  type: String,
36
52
  env_name: 'PINDO_BUILD_TYPE',
@@ -47,6 +63,7 @@ module Pindo
47
63
 
48
64
  scheme: OptionItem.new(
49
65
  key: :scheme,
66
+ name: 'Scheme',
50
67
  description: '指定构建 Scheme',
51
68
  type: String,
52
69
  env_name: 'PINDO_SCHEME',
@@ -0,0 +1,115 @@
1
+ require 'pindo/options/core/option_item'
2
+ require 'pindo/options/groups/option_group'
3
+
4
+ module Pindo
5
+ module Options
6
+ # Git 版本管理参数组
7
+ # 定义 Git tag 和版本控制相关的参数
8
+ module GitOptions
9
+ extend OptionGroup
10
+
11
+ # 版本增加类型的有效值
12
+ VERSION_INCREASE_TYPES = %w[main mini patch].freeze
13
+
14
+ # 创建 Tag 类型的有效值
15
+ CREATE_TAG_TYPES = %w[new recreate none].freeze
16
+
17
+ def self.all_options
18
+ @all_options ||= {
19
+ ver_inc: OptionItem.new(
20
+ key: :ver_inc,
21
+ name: '版本增加方式',
22
+ description: '版本号增加方式: main(大版本), mini(小版本), patch(补丁版本)',
23
+ type: String,
24
+ env_name: 'PINDO_VERSION_INCREASE',
25
+ default_value: 'mini',
26
+ aliases: [:version_increase],
27
+ optional: true,
28
+ cacheable: true, # 存入文件缓存
29
+ verify_block: proc do |value|
30
+ unless VERSION_INCREASE_TYPES.include?(value.to_s.downcase)
31
+ raise "版本增加类型错误: #{value},必须是 main、mini 或 patch 之一"
32
+ end
33
+ end,
34
+ example: 'pindo ios autobuild --ver_inc=mini'
35
+ ),
36
+
37
+ tag_type: OptionItem.new(
38
+ key: :tag_type,
39
+ name: 'Tag创建方式',
40
+ description: '创建Tag方式: new(新建tag), recreate(重新创建当前tag), none(不创建tag)',
41
+ type: String,
42
+ env_name: 'PINDO_CREATE_TAG',
43
+ default_value: 'new',
44
+ aliases: [:create_tag],
45
+ optional: true,
46
+ cacheable: true, # 存入文件缓存
47
+ verify_block: proc do |value|
48
+ unless CREATE_TAG_TYPES.include?(value.to_s.downcase)
49
+ raise "创建Tag类型错误: #{value},必须是 new、recreate 或 none 之一"
50
+ end
51
+ end,
52
+ example: 'pindo ios autobuild --tag_type=new'
53
+ ),
54
+
55
+ tag_pre: OptionItem.new(
56
+ key: :tag_pre,
57
+ name: 'Tag前缀',
58
+ description: 'Git tag 前缀',
59
+ type: String,
60
+ env_name: 'PINDO_TAG_PREFIX',
61
+ default_value: 'v',
62
+ aliases: [:tag_prefix],
63
+ optional: true,
64
+ cacheable: true, # 存入文件缓存
65
+ example: 'pindo ios autobuild --tag_pre=v'
66
+ ),
67
+
68
+ release_branch: OptionItem.new(
69
+ key: :release_branch,
70
+ name: 'Release分支',
71
+ description: 'Release 分支名称',
72
+ type: String,
73
+ env_name: 'PINDO_RELEASE_BRANCH',
74
+ default_value: 'master',
75
+ optional: true,
76
+ cacheable: true, # 存入文件缓存
77
+ example: 'pindo ios autobuild --release_branch=main'
78
+ )
79
+ }
80
+ end
81
+
82
+ # 将命令行参数值转换为 VersionIncreaseType 常量
83
+ # @param value [String] 命令行参数值 (main/mini/patch)
84
+ # @return [Symbol] VersionIncreaseType 常量值
85
+ def self.parse_version_increase_type(value)
86
+ case value.to_s.downcase
87
+ when 'main', 'major'
88
+ Pindo::VersionIncreaseType::MAIN
89
+ when 'mini', 'minor'
90
+ Pindo::VersionIncreaseType::MINI
91
+ when 'patch'
92
+ Pindo::VersionIncreaseType::PATCH
93
+ else
94
+ Pindo::VersionIncreaseType::MINI
95
+ end
96
+ end
97
+
98
+ # 将命令行参数值转换为 CreateTagType 常量
99
+ # @param value [String] 命令行参数值 (new/recreate/none)
100
+ # @return [Symbol] CreateTagType 常量值
101
+ def self.parse_create_tag_type(value)
102
+ case value.to_s.downcase
103
+ when 'new', 'create'
104
+ Pindo::CreateTagType::NEW
105
+ when 'recreate', 'retag'
106
+ Pindo::CreateTagType::RECREATE
107
+ when 'none', 'skip', 'dont'
108
+ Pindo::CreateTagType::NONE
109
+ else
110
+ Pindo::CreateTagType::NEW
111
+ end
112
+ end
113
+ end
114
+ end
115
+ end
@@ -12,15 +12,18 @@ module Pindo
12
12
  @all_options ||= {
13
13
  proj: OptionItem.new(
14
14
  key: :proj,
15
+ name: '项目名称',
15
16
  description: '指定上传到测试平台的项目名称',
16
17
  type: String,
17
18
  env_name: 'PINDO_PROJECT_NAME',
18
19
  optional: true,
20
+ cacheable: true, # 存入文件缓存
19
21
  example: 'pindo ios autobuild --proj="My App"'
20
22
  ),
21
23
 
22
24
  upload: OptionItem.new(
23
25
  key: :upload,
26
+ name: '上传JPS',
24
27
  description: '编译后上传到测试平台(上传成功后自动发送给自己)',
25
28
  type: OptionItem::Boolean,
26
29
  env_name: 'PINDO_UPLOAD',
@@ -30,6 +33,7 @@ module Pindo
30
33
 
31
34
  send: OptionItem.new(
32
35
  key: :send,
36
+ name: '发送通知',
33
37
  description: '发送通知到测试群组(同时也会发送给自己)',
34
38
  type: OptionItem::Boolean,
35
39
  env_name: 'PINDO_SEND',
@@ -38,6 +42,7 @@ module Pindo
38
42
  ),
39
43
  desc: OptionItem.new(
40
44
  key: :desc,
45
+ name: '备注信息',
41
46
  description: '指定上传的备注信息',
42
47
  type: String,
43
48
  env_name: 'PINDO_UPLOAD_DESC',
@@ -48,6 +53,7 @@ module Pindo
48
53
 
49
54
  resign: OptionItem.new(
50
55
  key: :resign,
56
+ name: 'JPS重签名',
51
57
  description: '上传后是否重签名',
52
58
  type: OptionItem::Boolean,
53
59
  env_name: 'PINDO_RESIGN',
@@ -57,6 +63,7 @@ module Pindo
57
63
 
58
64
  certid: OptionItem.new(
59
65
  key: :certid,
66
+ name: '重签名Bundle ID',
60
67
  description: '设置重签名的Bundle ID',
61
68
  type: String,
62
69
  env_name: 'PINDO_CERT_ID',
@@ -37,6 +37,21 @@ module Pindo
37
37
  all_options_hash.reject { |k, v| keys.include?(k) }.values
38
38
  end
39
39
 
40
+ # 选择指定的参数并覆盖默认值
41
+ # @param defaults [Hash{Symbol => Any}] key => default_value 的映射
42
+ # @return [Array<OptionItem>] 修改后的参数列表
43
+ # @example
44
+ # UnityOptions.select_with_defaults(skipconfig: true, skiplib: true)
45
+ def select_with_defaults(**defaults)
46
+ defaults.map do |key, default_value|
47
+ option = all_options[key]
48
+ if option.nil?
49
+ raise ArgumentError, "参数组 #{self.name} 中不存在参数: #{key}"
50
+ end
51
+ option.with(default_value: default_value)
52
+ end
53
+ end
54
+
40
55
  # 获取所有参数(返回数组)
41
56
  # @return [Array<OptionItem>] 所有参数列表
42
57
  def all
@@ -0,0 +1,49 @@
1
+ require 'pindo/options/core/option_item'
2
+ require 'pindo/options/groups/option_group'
3
+
4
+ module Pindo
5
+ module Options
6
+ # Unity 构建参数组
7
+ # 定义 Unity 项目特有的构建参数
8
+ module UnityOptions
9
+ extend OptionGroup
10
+
11
+ def self.all_options
12
+ @all_options ||= {
13
+ skipconfig: OptionItem.new(
14
+ key: :skipconfig,
15
+ name: '跳过宏设置',
16
+ description: '跳过Unity编译宏设置(加快构建速度)',
17
+ type: OptionItem::Boolean,
18
+ env_name: 'PINDO_SKIP_CONFIG',
19
+ default_value: false,
20
+ optional: true,
21
+ example: 'pindo appstore autobuild --skipconfig'
22
+ ),
23
+
24
+ skiplib: OptionItem.new(
25
+ key: :skiplib,
26
+ name: '跳过库更新',
27
+ description: '跳过Unity必备库更新(加快构建速度)',
28
+ type: OptionItem::Boolean,
29
+ env_name: 'PINDO_SKIP_LIB',
30
+ default_value: false,
31
+ optional: true,
32
+ example: 'pindo unity autobuild --skiplib'
33
+ ),
34
+
35
+ skipyoo: OptionItem.new(
36
+ key: :skipyoo,
37
+ name: '跳过YooAsset',
38
+ description: '跳过YooAsset资源打包(加快构建速度)',
39
+ type: OptionItem::Boolean,
40
+ env_name: 'PINDO_SKIP_YOO',
41
+ default_value: false,
42
+ optional: true,
43
+ example: 'pindo unity autobuild --skipyoo'
44
+ )
45
+ }
46
+ end
47
+ end
48
+ end
49
+ end
@@ -12,3 +12,5 @@ require 'pindo/options/core/global_options_state'
12
12
  require 'pindo/options/groups/option_group'
13
13
  require 'pindo/options/groups/build_options'
14
14
  require 'pindo/options/groups/jps_options'
15
+ require 'pindo/options/groups/unity_options'
16
+ require 'pindo/options/groups/git_options'
data/lib/pindo/version.rb CHANGED
@@ -6,13 +6,13 @@ require 'time'
6
6
 
7
7
  module Pindo
8
8
 
9
- VERSION = "5.13.7"
9
+ VERSION = "5.13.10"
10
10
 
11
11
  class VersionCheck
12
12
  RUBYGEMS_API = 'https://rubygems.org/api/v1/gems/pindo.json'
13
13
  VERSION_INFO_FILE = File.expand_path('~/.pindo/version_info.yml')
14
14
  CHECK_INTERVAL = 5 * 60 * 60 # 5小时检查一次
15
- CONFIG_MIN_VERSION = '1.0.0' # 硬编码的配置版本要求
15
+ CONFIG_MIN_VERSION = '1.1.0' # 硬编码的配置版本要求
16
16
 
17
17
  class << self
18
18
  # 主版本检查方法(保持向后兼容)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pindo
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.13.7
4
+ version: 5.13.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - wade
@@ -115,20 +115,20 @@ dependencies:
115
115
  requirements:
116
116
  - - "~>"
117
117
  - !ruby/object:Gem::Version
118
- version: '1.5'
118
+ version: '1.7'
119
119
  - - ">="
120
120
  - !ruby/object:Gem::Version
121
- version: 1.5.0
121
+ version: 1.7.0
122
122
  type: :runtime
123
123
  prerelease: false
124
124
  version_requirements: !ruby/object:Gem::Requirement
125
125
  requirements:
126
126
  - - "~>"
127
127
  - !ruby/object:Gem::Version
128
- version: '1.5'
128
+ version: '1.7'
129
129
  - - ">="
130
130
  - !ruby/object:Gem::Version
131
- version: 1.5.0
131
+ version: 1.7.0
132
132
  - !ruby/object:Gem::Dependency
133
133
  name: rqrcode
134
134
  requirement: !ruby/object:Gem::Requirement
@@ -298,9 +298,7 @@ files:
298
298
  - lib/pindo/base/executable.rb
299
299
  - lib/pindo/base/funlog.rb
300
300
  - lib/pindo/base/git_handler.rb
301
- - lib/pindo/base/githelper.rb
302
301
  - lib/pindo/base/hashhelper.rb
303
- - lib/pindo/base/pindocontext.rb
304
302
  - lib/pindo/base/plaininformative.rb
305
303
  - lib/pindo/base/plistbuddyexecutable.rb
306
304
  - lib/pindo/base/standarderror.rb
@@ -365,6 +363,7 @@ files:
365
363
  - lib/pindo/command/jps/comment.rb
366
364
  - lib/pindo/command/jps/download.rb
367
365
  - lib/pindo/command/jps/login.rb
366
+ - lib/pindo/command/jps/media.rb
368
367
  - lib/pindo/command/jps/resign.rb
369
368
  - lib/pindo/command/jps/upload.rb
370
369
  - lib/pindo/command/repo.rb
@@ -383,7 +382,6 @@ files:
383
382
  - lib/pindo/command/utils/clearcert.rb
384
383
  - lib/pindo/command/utils/device.rb
385
384
  - lib/pindo/command/utils/fabric.rb
386
- - lib/pindo/command/utils/feishu.rb
387
385
  - lib/pindo/command/utils/icon.rb
388
386
  - lib/pindo/command/utils/renewcert.rb
389
387
  - lib/pindo/command/utils/renewproj.rb
@@ -420,7 +418,6 @@ files:
420
418
  - lib/pindo/module/build/git_repo_helper.rb
421
419
  - lib/pindo/module/build/icon_downloader.rb
422
420
  - lib/pindo/module/build/swark_helper.rb
423
- - lib/pindo/module/build/version_helper.rb
424
421
  - lib/pindo/module/cert/cert_helper.rb
425
422
  - lib/pindo/module/cert/keychain_helper.rb
426
423
  - lib/pindo/module/cert/pem_helper.rb
@@ -441,16 +438,28 @@ files:
441
438
  - lib/pindo/module/task/model/build/ios_build_task.rb
442
439
  - lib/pindo/module/task/model/build/web_build_dev_task.rb
443
440
  - lib/pindo/module/task/model/build_task.rb
444
- - lib/pindo/module/task/model/git_tag_task.rb
445
- - lib/pindo/module/task/model/ipa_local_resign_task.rb
446
- - lib/pindo/module/task/model/jps_resign_task.rb
447
- - lib/pindo/module/task/model/jps_upload_task.rb
448
- - lib/pindo/module/task/model/unity_export_task.rb
441
+ - lib/pindo/module/task/model/git/git_commit_task.rb
442
+ - lib/pindo/module/task/model/git/git_tag_task.rb
443
+ - lib/pindo/module/task/model/git_task.rb
444
+ - lib/pindo/module/task/model/jps/jps_message_task.rb
445
+ - lib/pindo/module/task/model/jps/jps_resign_task.rb
446
+ - lib/pindo/module/task/model/jps/jps_upload_media_task.rb
447
+ - lib/pindo/module/task/model/jps/jps_upload_task.rb
448
+ - lib/pindo/module/task/model/jps_task.rb
449
+ - lib/pindo/module/task/model/resign/ipa_local_resign_task.rb
450
+ - lib/pindo/module/task/model/unity/unity_config_task.rb
451
+ - lib/pindo/module/task/model/unity/unity_export_task.rb
452
+ - lib/pindo/module/task/model/unity/unity_update_task.rb
453
+ - lib/pindo/module/task/model/unity/unity_yoo_asset_task.rb
454
+ - lib/pindo/module/task/model/unity_task.rb
449
455
  - lib/pindo/module/task/pindo_task.rb
450
456
  - lib/pindo/module/task/task_config.rb
451
457
  - lib/pindo/module/task/task_manager.rb
452
458
  - lib/pindo/module/unity/nuget_helper.rb
459
+ - lib/pindo/module/unity/unity_command_helper.rb
460
+ - lib/pindo/module/unity/unity_env_helper.rb
453
461
  - lib/pindo/module/unity/unity_helper.rb
462
+ - lib/pindo/module/unity/unity_proc_helper.rb
454
463
  - lib/pindo/module/webserver/brotli_file_handler.rb
455
464
  - lib/pindo/module/webserver/preview/preview.css
456
465
  - lib/pindo/module/webserver/preview/preview.html
@@ -475,8 +484,10 @@ files:
475
484
  - lib/pindo/options/core/option_item.rb
476
485
  - lib/pindo/options/core/option_value_parser.rb
477
486
  - lib/pindo/options/groups/build_options.rb
487
+ - lib/pindo/options/groups/git_options.rb
478
488
  - lib/pindo/options/groups/jps_options.rb
479
489
  - lib/pindo/options/groups/option_group.rb
490
+ - lib/pindo/options/groups/unity_options.rb
480
491
  - lib/pindo/options/helpers/bundleid_selector.rb
481
492
  - lib/pindo/options/options.rb
482
493
  - lib/pindo/version.rb