cocoapods-jxedt 0.0.19 → 0.0.21

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 472fb07816c0d1c0e832786027600851e8676949716ce3d4b9d953023c497120
4
- data.tar.gz: a98a8e436579197870178ff57bf820af36bfb029b758f5b646aa62bc275fe61c
3
+ metadata.gz: a6302e970ed73bc5b9e9d1c360b07866274dfef9c17cb525fbf421c18731a0af
4
+ data.tar.gz: bc7af03bb9f4754d6ad79011b9350f05008a311701236f69f5d8f265a85e1bd7
5
5
  SHA512:
6
- metadata.gz: 812df6af0ccbfafcd314c944683da40d8d6aa235fc91e373374eda1089f536c8f0e47e7351facc26d297bbec23fe37304ace96db3b893634244617cabc22250b
7
- data.tar.gz: 28461e27c2869c1688bdcd38dec279ce333732fe14a85ce46b8ccf98339801026e412be60c9b5867d5d66d50dd3361b3d656e0c91a572761e98635d302574d4c
6
+ metadata.gz: 4792210d5b87ea5ed46be38635a2c6851a355c97cc964b59cfb8c35031bb5da0b18f36ac496ce59f031e9108cd469821ea3eb887bb22ecb6cf0b0744ecaaff4f
7
+ data.tar.gz: ae695a6d13a154a1b5d3f9fb060c1e8aabf346c719a8d5e3c2f76f07d4eb81260550796ef7721730b616090be5d0aaecd6ee726b85e6fbdd13ea51c7fd1aa4ec
@@ -18,8 +18,8 @@ module Pod
18
18
  class PodSourceInstaller
19
19
 
20
20
  def install_for_prebuild!(standard_sanbox)
21
- check_sandbox = Jxedt::Sandbox.from_sandbox(standard_sanbox)
22
- target_names = check_sandbox.existed_target_names(self.name)
21
+ binary_sandbox = Jxedt::BinarySandbox.from_sandbox(standard_sanbox)
22
+ target_names = binary_sandbox.existed_target_names(self.name)
23
23
 
24
24
  def walk(path, &action)
25
25
  return unless path.exist?
@@ -53,7 +53,7 @@ module Pod
53
53
  target_names.each do |name|
54
54
 
55
55
  # symbol link copy all substructure
56
- real_file_folder = check_sandbox.framework_folder_path_for_target_name(name)
56
+ real_file_folder = binary_sandbox.framework_folder_path_for_target_name(name)
57
57
 
58
58
  # If have only one platform, just place int the root folder of this pod.
59
59
  # If have multiple paths, we use a sperated folder to store different
@@ -132,8 +132,11 @@ module Pod
132
132
  end
133
133
  end
134
134
  end
135
+
136
+ # 设置使用二进制的targets标识
137
+ prebuilt_pod_targets.each { |target| target.use_binary = true }
135
138
 
136
- check_sandbox = Jxedt::Sandbox.from_sandbox(self.sandbox)
139
+ binary_sandbox = Jxedt::BinarySandbox.from_sandbox(self.sandbox)
137
140
 
138
141
  specs = self.analysis_result.specifications
139
142
  prebuilt_specs = (specs.select do |spec|
@@ -175,7 +178,7 @@ module Pod
175
178
  resources = [resources] if resources.kind_of?(String)
176
179
  spec.attributes_hash["resources"] = resources
177
180
  # spec.attributes_hash["resources"] += bundle_names.map{|n| n+".bundle"}
178
- prebuild_bundles = check_sandbox.prebuild_bundles(spec.root.name).each.map { |bundle_path| "_Prebuild/" + bundle_path }
181
+ prebuild_bundles = binary_sandbox.prebuild_bundles(spec.root.name).each.map { |bundle_path| "_Prebuild/" + bundle_path }
179
182
  prebuild_bundles = [] if checked_specs[spec.root.name].size > 1 # spec.root.name相同的只添加一次bundle文件
180
183
  spec.attributes_hash["resources"] += prebuild_bundles
181
184
  end
@@ -186,7 +189,7 @@ module Pod
186
189
  targets.each do |target|
187
190
  # the framework_file_path rule is decided when `install_for_prebuild`,
188
191
  # as to compitable with older version and be less wordy.
189
- check_sandbox.prebuild_vendored_frameworks(spec.root.name).each do |frame_file_path|
192
+ binary_sandbox.prebuild_vendored_frameworks(spec.root.name).each do |frame_file_path|
190
193
  framework_file_path = "_Prebuild/" + frame_file_path
191
194
  framework_file_path = nil if checked_specs[spec.root.name].size > 1 # spec.root.name相同的只添加一次framework文件
192
195
  add_vendered_framework(spec, target.platform.name.to_s, framework_file_path)
@@ -18,6 +18,7 @@ module Jxedt
18
18
  :xcconfig_configuration_alias => "xcconfig文件中配置多configuration的别名(一定要唯一),用于搜索替换,我们用来支持多configuration的二进制。一般不需要设置,默认值为'cocoapods-jxedt-binary'",
19
19
  :framework_header_search_enabled => "开启binary的组件是否配置HEADER_SEARCH_PATH头文件搜索,兼容头文件引用的问题。默认为false",
20
20
  :silent_build => "静默编译,即不输出编译命令。默认true",
21
+ :fix_swiftinterface_pods => "修复swiftinterface的bug,即:组件中包含和module name同名的class,使用不同swift编译器编译时报错;需要填写需要修复的组件名称",
21
22
  :configurations => "支持的configuration配置,可以写字符串'Debug'或'Release',也可以写多个'['Debug', 'Release']'。默认为'Release'",
22
23
  :xcframework => "编译结果是否为xcframework。默认false",
23
24
  :clean_build => "编译的时候是否clean build。默认true",
@@ -119,6 +120,11 @@ module Jxedt
119
120
  @dsl_config[:silent_build] || @dsl_config[:silent_build].nil?
120
121
  end
121
122
 
123
+ def should_fix_swiftinterface_bug?(target_name)
124
+ @fix_swiftinterface_pods = @dsl_config[:fix_swiftinterface_pods] || []
125
+ @fix_swiftinterface_pods.include?(target_name)
126
+ end
127
+
122
128
  def xcframework?
123
129
  @dsl_config[:xcframework] || false
124
130
  end
@@ -201,7 +207,12 @@ module Jxedt
201
207
  end
202
208
 
203
209
  def git_remote_repo
204
- @remote ||= cache_repo[:remote]
210
+ @remote ||= begin
211
+ remote = cache_repo[:remote]
212
+ remote.chomp!('/') if remote.is_a?(String) # 去除最后的'/'
213
+ remote.strip! if remote.is_a?(String) # 去除左右空格、转义字符
214
+ remote
215
+ end
205
216
  end
206
217
 
207
218
  def cache_repo_enabled?
@@ -52,8 +52,8 @@ module Pod
52
52
  }.uniq
53
53
 
54
54
  available_pod_names = []
55
- check_sandbox = Jxedt::Sandbox.from_sandbox(self.sandbox)
56
- available_pod_names = check_sandbox.target_paths.map {|path| path.basename.to_s }
55
+ binary_sandbox = Jxedt::BinarySandbox.from_sandbox(self.sandbox)
56
+ available_pod_names = binary_sandbox.target_paths.map {|path| path.basename.to_s }
57
57
  if Jxedt.config.all_binary_enabled?
58
58
  explicit_prebuild_pod_names = available_pod_names
59
59
  else
@@ -20,6 +20,7 @@ module Pod
20
20
  def handle_pods_project_configurations!(installer)
21
21
  installer.pods_project.targets.each do |target|
22
22
  target.build_configurations.each do |config|
23
+ config.build_settings["BUILD_LIBRARY_FOR_DISTRIBUTION"] = "YES"
23
24
  config.build_settings["CODE_SIGN_IDENTITY"] = "" if target.respond_to?(:product_type) and target.product_type == "com.apple.product-type.bundle"
24
25
  end
25
26
  end
@@ -34,6 +34,18 @@ module Pod
34
34
  # 恢复sandbox标识
35
35
  sandbox.index_project_create_stage = false
36
36
  end
37
+
38
+ def resolve_dependencies
39
+ analyzer = super
40
+ self.analysis_result.specifications.each do |spec|
41
+ # keep all file in pods
42
+ preserve_paths = spec.attributes_hash["preserve_paths"] || []
43
+ preserve_paths = [preserve_paths] if preserve_paths.kind_of?(String)
44
+ preserve_paths += ['_Prebuild']
45
+ spec.attributes_hash["preserve_paths"] = preserve_paths
46
+ end
47
+ analyzer
48
+ end
37
49
  end
38
50
  end
39
51
 
@@ -10,21 +10,16 @@ module Pod
10
10
  if options.is_a?(Hash) && options.include?(:binary)
11
11
  @explicit_prebuild_pod_names << Specification.root_name(name) if options[:binary]
12
12
  @reject_prebuild_pod_names << Specification.root_name(name) unless options[:binary]
13
- else
14
- settings = Jxedt.config.binary_settings
15
- symbol_name = Specification.root_name(name).to_sym
16
- if settings.include?(symbol_name) && [true, false].include?(settings[symbol_name])
17
- @explicit_prebuild_pod_names << Specification.root_name(name) if settings[symbol_name]
18
- @reject_prebuild_pod_names << Specification.root_name(name) unless settings[symbol_name]
19
- end
20
13
  end
21
14
 
22
15
 
23
16
  # header search path
24
17
  @explicit_header_search_pod_names ||= []
25
18
  @reject_header_search_pod_names ||= []
26
- @explicit_header_search_pod_names << Specification.root_name(name) if options.is_a?(Hash) && options[:framework_header_search]
27
- @reject_header_search_pod_names << Specification.root_name(name) if options.is_a?(Hash) && options.include?(:framework_header_search) && !options[:framework_header_search]
19
+ if options.is_a?(Hash) && options.include?(:framework_header_search)
20
+ @explicit_header_search_pod_names << Specification.root_name(name) if options[:framework_header_search]
21
+ @reject_header_search_pod_names << Specification.root_name(name) unless options[:framework_header_search]
22
+ end
28
23
 
29
24
  options.delete(:binary) if options.is_a?(Hash)
30
25
  options.delete(:framework_header_search) if options.is_a?(Hash)
@@ -37,6 +32,17 @@ module Pod
37
32
  original_parse_inhibit_warnings = instance_method(:parse_inhibit_warnings)
38
33
  define_method(:parse_inhibit_warnings) do |name, requirements|
39
34
  detect_prebuilt_pod(name, requirements)
35
+
36
+ # merge binary settings
37
+ Jxedt.config.binary_settings.each { |name, val|
38
+ next if @explicit_prebuild_pod_names.include?(name) # 配置:binary的组件优先级高
39
+ next if @reject_prebuild_pod_names.include?(name)
40
+ next unless [true, false].include?(val)
41
+
42
+ @explicit_prebuild_pod_names << name.to_s if val
43
+ @reject_prebuild_pod_names << name.to_s unless val
44
+ }
45
+
40
46
  original_parse_inhibit_warnings.bind(self).call(name, requirements)
41
47
  end
42
48
  end
@@ -35,6 +35,16 @@ module Jxedt
35
35
  else
36
36
  collect_output(target, Dir[target_products_dir_of(target, sdks[0]) + "/*"])
37
37
  end
38
+
39
+ # fix swiftinterface bug
40
+ if target.defines_module? && Jxedt.config.should_fix_swiftinterface_bug?(target.label)
41
+ # https://developer.apple.com/forums/thread/123253
42
+ cmd = "find #{output_path(target)} -name '*.swiftinterface' -exec sed -i -e 's/#{target.product_module_name}\\.//g' {} \\;"
43
+ `#{cmd}`
44
+
45
+ Pod::UI.puts "- Fix Swiftinterface Bug: #{target}".magenta unless Jxedt.config.silent_build?
46
+ Pod::UI.puts_indented "$ #{cmd}" unless Jxedt.config.silent_build?
47
+ end
38
48
  end
39
49
  end
40
50
 
@@ -1,6 +1,6 @@
1
1
  module Jxedt
2
- class Sandbox
3
- attr_accessor :sandbox
2
+ class BinarySandbox
3
+ attr_accessor :standard_sandbox
4
4
 
5
5
  def initialize(path=nil)
6
6
  @sandbox_path = path
@@ -9,9 +9,9 @@ module Jxedt
9
9
  def self.from_sandbox(sandbox)
10
10
  search_path = Jxedt.config.binary_dir
11
11
  binary_dir = search_path.empty? ? nil : sandbox.standard_sandbox_root + search_path
12
- check_sandbox = Sandbox.new(binary_dir)
13
- check_sandbox.sandbox = sandbox
14
- check_sandbox
12
+ binary_sandbox = BinarySandbox.new(binary_dir)
13
+ binary_sandbox.standard_sandbox = sandbox
14
+ binary_sandbox
15
15
  end
16
16
 
17
17
  def binary_dir
@@ -21,11 +21,11 @@ module Jxedt
21
21
  def target_paths
22
22
  return [] if @sandbox_path.nil?
23
23
  return [] unless binary_dir.exist?
24
- return [] if @sandbox.source_lockfile.nil?
24
+ return [] if @standard_sandbox.source_lockfile.nil?
25
25
  @targets ||= begin
26
26
  prebuild_targets = binary_dir.children().map do |target_path|
27
27
  if target_path.directory? && (not target_path.children.empty?)
28
- hash_key = @sandbox.source_lockfile.spec_checksums_hash_key(target_path.basename.to_s)
28
+ hash_key = @standard_sandbox.source_lockfile.spec_checksums_hash_key(target_path.basename.to_s)
29
29
  next if hash_key.nil?
30
30
 
31
31
  checksum_files = target_path.children().select { |path| path.extname == '.checksum' }
@@ -126,8 +126,8 @@ module Jxedt
126
126
  end
127
127
 
128
128
  def build
129
- check_sandbox = Jxedt::Sandbox.from_sandbox(@source_installer.sandbox)
130
- existed_target_names = check_sandbox.target_paths.map { |pair| pair.basename.to_s }
129
+ binary_sandbox = Jxedt::BinarySandbox.from_sandbox(@source_installer.sandbox)
130
+ existed_target_names = binary_sandbox.target_paths.map { |pair| pair.basename.to_s }
131
131
  targets = targets_to_prebuild.reject { |target| existed_target_names.include?(target.name.to_s) }
132
132
 
133
133
  Pod::UI.puts "Prebuild total count: #{targets.size}"
@@ -54,8 +54,6 @@ module Pod
54
54
  class BuildSettings
55
55
  # missing framework header search paths
56
56
  def missing_framework_header_search_path(pt)
57
- return [] unless pt.frame_header_search_paths_enable?
58
-
59
57
  paths = []
60
58
  pt.file_accessors.each do |file_accessor|
61
59
  # xcframeworks
@@ -123,7 +121,11 @@ module Pod
123
121
  alias_method :old_raw_header_search_paths, :_raw_header_search_paths
124
122
  def _raw_header_search_paths
125
123
  header_search_paths = old_raw_header_search_paths
126
- header_search_paths.concat pod_targets.flat_map { |pt| missing_framework_header_search_path(pt) }
124
+ header_search_paths.concat pod_targets.flat_map { |pt|
125
+ search_paths = []
126
+ search_paths.concat missing_framework_header_search_path(pt) if pt.frame_header_search_paths_enable?
127
+ search_paths
128
+ }
127
129
  header_search_paths.uniq
128
130
  end
129
131
  end
@@ -134,7 +136,8 @@ module Pod
134
136
  alias_method :old_raw_header_search_paths, :_raw_header_search_paths
135
137
  def _raw_header_search_paths
136
138
  header_search_paths = old_raw_header_search_paths
137
- header_search_paths.concat dependent_targets.flat_map { |pt| missing_framework_header_search_path(pt) } if target.should_build?
139
+ # 两个条件都满足时添加header_search_paths
140
+ header_search_paths.concat dependent_targets.flat_map { |pt| missing_framework_header_search_path(pt) } if target.should_build? && target.frame_header_search_paths_enable?
138
141
  header_search_paths.uniq
139
142
  end
140
143
 
@@ -12,11 +12,13 @@ module Pod
12
12
  ]
13
13
  def self.options
14
14
  [
15
- ['--force-push', '强制推送组件二进制到远程,远程有相同的校验和会被本地覆盖']
15
+ ['--force-push', '强制推送组件二进制到远程,远程有相同的校验和会被本地覆盖'],
16
+ ['--name', '需要推送到远程的组件名称,不填则推送全部的二进制组件到远程']
16
17
  ]
17
18
  end
18
19
  def initialize(argv)
19
20
  @force_push = argv.flag?('force-push', false)
21
+ @name = argv.option('name')
20
22
  super
21
23
  end
22
24
 
@@ -32,7 +34,10 @@ module Pod
32
34
  require 'cocoapods-jxedt/git_helper/cache_pucher'
33
35
 
34
36
  output_dir = Pod::Config.instance.sandbox.root + Jxedt.config.binary_dir
35
- Jxedt::CachePucher.push(output_dir, nil, @force_push)
37
+
38
+ targets = []
39
+ targets += @name.split(',') if @name && @name.length > 0
40
+ Jxedt::CachePucher.push(output_dir, targets, @force_push)
36
41
  end
37
42
  end
38
43
  end
@@ -44,6 +44,8 @@ module Pod
44
44
  source_installer = Pod::JxedtPrebuildInstaller.new(prebuild_sandbox, podfile, lockfile)
45
45
  # 执行install
46
46
  source_installer.install!
47
+ # 生成index工程
48
+ source_installer.generate_pods_index_project!
47
49
  end
48
50
  end
49
51
  end
@@ -75,7 +75,8 @@ module Pod
75
75
  lines = File.readlines(file_path)
76
76
  # 获取命中的行
77
77
  File.foreach(file_path).with_index {|line, num|
78
- matched = line =~ /^\s*#import\s*"#{header_name_regulation}"\s*\n$/ || line =~ /^\s*#import\s*<#{header_name_regulation}>\s*\n$/
78
+ matched_regex = "(^\s*#import\s*\"#{header_name_regulation}\")|(^\s*#import\s*<#{header_name_regulation}>)"
79
+ matched = line =~ /#{matched_regex}/
79
80
  next unless matched
80
81
 
81
82
  header_name = line.match(/(?<=")#{header_name_regulation}(?=")/) || line.match(/(?<=<)#{header_name_regulation}(?=>)/)
@@ -83,7 +84,7 @@ module Pod
83
84
 
84
85
  changed = true # 文件需要修改
85
86
  project_module_name = public_header_mapping["#{header_name}"]
86
- replace_line = "#import " << "<#{project_module_name}/#{header_name}>\n"
87
+ replace_line = line.gsub(/#{matched_regex}/, "#import <#{project_module_name}/#{header_name}>")
87
88
  lines[num] = replace_line
88
89
  record << "#{file_path} 第#{num}行,#{line} => #{replace_line}"
89
90
  }
@@ -107,7 +108,8 @@ module Pod
107
108
  文件修改详情:
108
109
  #{JSON.pretty_generate(record)}
109
110
  LOGS
110
- logs.gsub!('\\"', '"').gsub!('\\n', '') # 去除转义字符
111
+ logs.gsub!('\\"', '"')# 去除转义字符
112
+ logs.gsub!('\\n', '') # 去除转义字符
111
113
  puts logs if @verbose_flag
112
114
  File.open(log_file_path, 'w') { |file| file.write("#{logs}") } unless log_file_path.nil?
113
115
  end
@@ -2,6 +2,7 @@ require_relative 'options/options'
2
2
  require_relative 'header/header'
3
3
  require_relative 'binary/binary'
4
4
  require_relative 'user/user'
5
+ require_relative 'modify/modify'
5
6
 
6
7
  module Pod
7
8
  class Command
@@ -0,0 +1,63 @@
1
+ module Pod
2
+ class Command
3
+ class JxedtCommand < Command
4
+ class ModifyDir < JxedtCommand
5
+ self.summary = '修改文件目录的真实路径,并在原位置创建一个目录的软链接,为二进制调试提供便利。'
6
+ self.description = <<-DESC
7
+ 可以把很多台机器上的工程目录统一放置到一个相同目录,这样可以确保所有的机器的工程目录都是相同的。\n
8
+ 编译打包的文件路径也是相同的,然后就可以使用二进制调试的功能了。\n
9
+ 这个统一的目录是`/Users/cocoapods-jxedt/`
10
+ DESC
11
+ self.command = 'modifydir'
12
+ self.arguments = [
13
+ CLAide::Argument.new('DIRECTORY_PATH', true)
14
+ ]
15
+ def self.options
16
+ [
17
+ ['--name', '统一路径下的工程目录名称']
18
+ ]
19
+ end
20
+ def initialize(argv)
21
+ @dir_path = argv.shift_argument
22
+ @name = argv.option('name')
23
+ super
24
+ end
25
+
26
+ def validate!
27
+ super
28
+ help! '没有传入操作目录!!!' if @dir_path.nil?
29
+ # 获取完整路径
30
+ @dir_path = File.expand_path(@dir_path)
31
+ help! '操作目录不存在!!!' unless File.exist?(@dir_path)
32
+ help! '传入的地址不是一个目录!!!' unless File.directory?(@dir_path)
33
+ help! '操作目录已经是一个软链接!!!' if File.ftype(@dir_path) == 'link'
34
+ help! '操作目录已经在指定目录下!!!' if @dir_path =~ /^#{user_path}/
35
+ help! '当前目录不允许操作,操作路径最少要3层目录!!!' unless @dir_path.split('/').reject { |path| path.empty? }.count > 2
36
+ end
37
+
38
+ def run
39
+ op_dir_path = Pathname.new(@dir_path)
40
+ # 获取target name
41
+ @name = op_dir_path.basename if @name.nil? || @name.empty?
42
+
43
+ # create user directory
44
+ `sudo mkdir #{user_path} && sudo chmod -R 777 #{user_path}` unless user_path.exist?
45
+
46
+ # 路径是否存在
47
+ target_path = user_path + @name
48
+ # target_path.rmtree if target_path.exist?
49
+ help! '目录已存在!!!' if target_path.exist?
50
+
51
+ # 移动目录
52
+ FileUtils.mv(@dir_path, target_path)
53
+ # 创建软链接
54
+ FileUtils.ln_s(target_path, op_dir_path)
55
+ end
56
+
57
+ def user_path
58
+ @user_path ||= Pathname.new('/Users/cocoapods-jxedt/')
59
+ end
60
+ end
61
+ end
62
+ end
63
+ end
@@ -40,6 +40,30 @@ module Pod
40
40
  log_section "🌹 GIT_CACHE_CONFIG"
41
41
  git_config = Jxedt::Config::GIT_CACHE_CONFIG
42
42
  Pod::UI.puts JSON.pretty_generate(git_config)
43
+
44
+ log_section "🌹 DSL支持的方法"
45
+ Pod::UI.puts dsl_support_method
46
+
47
+ log_section "🌹 组件支持的DSL配置"
48
+ Pod::UI.puts arguments_support
49
+ end
50
+
51
+ def dsl_support_method
52
+ dsl_method = <<DSL_METHOD
53
+ all_binary! 组件全部使用二进制
54
+ binary_dir('../_Prebuild') 配置二进制的放置路径
55
+ binary_switch(true) 二进制开关
56
+ framework_header_search_enabled! 开启配置依赖的framework头文件配置
57
+ use_binary_settings(Hash) 使用二进制的组件配置
58
+ cocoapods_jxedt_config(Hash) 配置插件
59
+ DSL_METHOD
60
+ end
61
+
62
+ def arguments_support
63
+ config = <<CONFIG
64
+ :binary => true 组件是否使用二进制
65
+ :framework_header_search => true 组件是否需要配置依赖的framework的头文件
66
+ CONFIG
43
67
  end
44
68
 
45
69
  def print_base_options_config
@@ -1,3 +1,3 @@
1
1
  module CocoapodsJxedt
2
- VERSION = "0.0.19"
2
+ VERSION = "0.0.21"
3
3
  end
@@ -16,7 +16,7 @@ module Jxedt
16
16
  output_dir.children.each do |child|
17
17
  next unless child.directory?
18
18
  pod_name = child.basename.to_s
19
- next if targets && targets.is_a?(Array) && !(targets.include?(pod_name))
19
+ next if targets && targets.is_a?(Array) && targets.size > 0 && !(targets.include?(pod_name))
20
20
 
21
21
  pod_checksum = child.children.select { |ch| ch.extname == '.checksum' }.first
22
22
  pod_checksum = pod_checksum.basename.sub_ext('').to_s unless pod_checksum.nil?
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cocoapods-jxedt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.19
4
+ version: 0.0.21
5
5
  platform: ruby
6
6
  authors:
7
7
  - guojiashuang
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-08-24 00:00:00.000000000 Z
11
+ date: 2023-09-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cocoapods
@@ -100,6 +100,7 @@ files:
100
100
  - lib/cocoapods-jxedt/command/binary/command/statistics.rb
101
101
  - lib/cocoapods-jxedt/command/header/header.rb
102
102
  - lib/cocoapods-jxedt/command/jxedt.rb
103
+ - lib/cocoapods-jxedt/command/modify/modify.rb
103
104
  - lib/cocoapods-jxedt/command/options/options.rb
104
105
  - lib/cocoapods-jxedt/command/user/user.rb
105
106
  - lib/cocoapods-jxedt/gem_version.rb