cocoapods-util 0.0.12 → 0.0.14

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7a288d0cd86146de6d734f9a0f292db9bdda764e4e95b21b9b8ed0af38544a93
4
- data.tar.gz: a07465a12f9d5c800d9c6acb25c46394e59916349714d092140ccf874019aadc
3
+ metadata.gz: c64106c89882c33e0febe8aa3623478f1b5c9a3325c7efdb6a10a4a2a998ab91
4
+ data.tar.gz: ec9b2691eecd6fba14b374f0fd8b9a302595b958d314d85c8b065e85896b5f35
5
5
  SHA512:
6
- metadata.gz: ba53816980be856b40546b803f22d5d1bf081efd1d42e587095e6f20402d5bca4c4f9342e8fe8df37fbcd3500afdd1094cbb37e90884eb467ed0fb3ad2d9360e
7
- data.tar.gz: abf3a469e43499b1943ab01caf1620cd4e4067132936f9c5a6db98413d1e8eaf76a467e9df094692f0f6e98f602533509427d5e03d46d9fb70e9d3cc782565db
6
+ metadata.gz: e21f0d9d26c4c4ae210f25f462f706e57a0867536316b4ec81321c9e422ce4469c3df09a3ee2637516f49c27026bbd83f428268efe1999204c83f0d4ec23c8b0
7
+ data.tar.gz: '0818fdf44b6dc9cc552ba5464de71aa95e004190cea4a21b827d049b16641a82fd103feda06421c2d897e59faa0d303b8472205b7d1f08d8a8ea3bf369811730'
data/README.md CHANGED
@@ -1,20 +1,24 @@
1
- # cocoapods-util
1
+ ### **cocoapods-util是一个pod插件集合,集成了一些ios开发过程中提效的一些插件。**
2
2
 
3
- cocoapods-util是一个pod插件集合,支持package、生成xcframework、linksource、repo push等功能。
4
-
5
- ## Installation
3
+ # Installation
6
4
 
5
+ ```
7
6
  $ gem install cocoapods-util
7
+ ```
8
8
 
9
- ## Usage
9
+ # Usage
10
10
 
11
+ ```
11
12
  $ pod util --help
13
+ ```
12
14
 
13
- ## 功能
15
+ ![fde10974894037fe52660a72e4057929.png](./assets/fde10974894037fe52660a72e4057929.png)
14
16
 
15
- ### package
17
+ # 功能
16
18
 
17
- $ pod util package --help
19
+ ## package
20
+
21
+ ### 介绍
18
22
 
19
23
  通过podspec文件生成library、framework、xcframework。
20
24
 
@@ -23,32 +27,145 @@ $ pod util package --help
23
27
  - [x] 支持排除模拟器
24
28
  - [x] 支持多平台(ios、osx、watchos、tvos)
25
29
  - [x] 支持自定义设置工程的build settings(如:排除ios模拟器64位架构、设置支持的架构等)
26
-
27
30
 
28
- ###  xcframework
31
+ ```
32
+ $ pod util package --help
33
+ ```
34
+
35
+ ![74dd1a40ffa3af3744fdf79384fdebdb.png](./assets/74dd1a40ffa3af3744fdf79384fdebdb.png)
36
+
37
+ ### 示例
38
+
39
+ #### 生成xcfrmework/framework/library
40
+
41
+ 生成AFNetworking组件的xcframework 进入AFNetworking源码的根目录下,执行下面的命令
42
+
43
+ ```
44
+ $ pod util package AFNetworking.podspec --force --local --xcframework
45
+
46
+ $ pod util package AFNetworking.podspec --force --local --framework
47
+
48
+ $ pod util package AFNetworking.podspec --force --local --library
49
+ ```
50
+
51
+ ![d5410dda08a99ee977dd6ca8af98ef74.png](./assets/d5410dda08a99ee977dd6ca8af98ef74.png)
52
+
53
+ #### 排除模拟器
54
+
55
+ 如果你不需要编译模拟器架构,可以添加--exclude-sim
56
+
57
+ ```
58
+ $ pod util package AFNetworking.podspec --force --local --xcframework --exclude-sim
59
+ ```
60
+
61
+ #### 平台设置
62
+
63
+ 如果你只需要编译ios架构下的xcframework,可以添加--platforms=ios
64
+
65
+ ```
66
+ $ pod util package AFNetworking.podspec --force --local --xcframework --exclude-sim --platforms=ios
67
+ ```
68
+
69
+ #### build settings配置
70
+
71
+ 如果你想要做一些build settings特殊配置,可以添加 --build-settings,如设置编译选项排除模拟器arm64架构。理论上来讲,可以像直接操作工程一样,灵活的配置build settings
72
+
73
+ - 如设置排除arm64位架构
74
+
75
+ ```
76
+ $ --build-settings='{"EXCLUDED_ARCHS[sdk=iphonesimulator*]":"arm64"}'
77
+ ```
78
+
79
+ - 设置编译swift生成swiftinterface文件
80
+
81
+ ```
82
+ $ -build-settings='{"BUILD_LIBRARY_FOR_DISTRIBUTION":"YES"}'
83
+ ```
29
84
 
30
- $ pod util xcframework --help
85
+ - 或者你想设置多个编译选项
86
+
87
+ ```
88
+ $ -build-settings='{"EXCLUDED_ARCHS[sdk=iphonesimulator*]":"arm64","BUILD_LIBRARY_FOR_DISTRIBUTION":"YES","VALID_ARCHS":"arm64"}'
89
+ ```
90
+
91
+ #### 自定义dependencies
92
+
93
+ 如果你依赖的组件并没有发布到私有仓库,你只是分支依赖! 如果你依赖的组件和官方源有冲突,你改需要指定source源! 这时候你可以通过配置`--dependency-config={}`选项指定仓库分支、tag或指定source源。
94
+
95
+ ```
96
+ $ --dependency-config='{"PodA":{"git":"xxx","branch":"xxx"},"PodB":{"source":"xxx"}}'
97
+ ```
98
+
99
+ ## xcframework
100
+
101
+ ### 介绍
31
102
 
32
103
  可以把现有的framework生成xcframework。
33
104
 
34
105
  - 内部可以判断是某个平台的framework(如ios、osx、watchos),直接在framework同级目录生成xcframework。
35
106
 
36
- ### linksource
107
+ ![132d6cec7bc64488deca731d37438cdd.png](./assets/132d6cec7bc64488deca731d37438cdd.png)
108
+
109
+ ### 示例
110
+
111
+ 生成Alamofire的framework
112
+
113
+ ```
114
+ $ pod util xcframework Alamofire.framework --force
115
+ ```
116
+
117
+ ![e32ea9af2dfae1e3d6b03f0278c33057.png](./assets/e32ea9af2dfae1e3d6b03f0278c33057.png)
118
+
119
+ ![23332974a4941bae97010afb4b4d4c1c.png](./assets/23332974a4941bae97010afb4b4d4c1c.png)
120
+
121
+ ## linksource
37
122
 
123
+ 源码二进制链接功能。
124
+
125
+ ```
38
126
  $ pod util linksource --help
127
+ ```
128
+
129
+ ![b605570c681e5d7877f08458cfd1dbc7.png](./assets/b605570c681e5d7877f08458cfd1dbc7.png)
130
+
131
+ ## repo push
39
132
 
40
- 源码二进制链接功能
133
+ 推送私有pods仓库的命令。
41
134
 
42
- ### repo push
135
+ - 可以通过添加--skip-validate的选项跳过验证步骤。
43
136
 
137
+ ```
44
138
  $ pod util repo push --help
139
+ ```
45
140
 
46
- 推送私有pods仓库的命令
141
+ ![2947331da6ee0c269dbd6ea073d15d4e.png](./assets/2947331da6ee0c269dbd6ea073d15d4e.png)
47
142
 
48
- - 可以通过添加--skip-validate的选项跳过验证步骤。
143
+ 该命令是一个提效命令,在推送自己私有仓库的时候可以通过设置--skip-validate选项跳过验证直接推送到私有仓库。
144
+
145
+ ```
146
+ $ pod util repo push [yourSpecs] [xxx.podspec] --skip-validate
147
+ ```
49
148
 
50
- ### install list
149
+ 当然你也可以不使用--skip-validate,参数设置和`pod repo push`命令一致
51
150
 
151
+ ## install list
152
+
153
+ 列出安装的pod库及相关依赖信息。
154
+
155
+ - 该命令同样为提效命令,可以省去开发者自己去阅读Podfile.lock文件的时间,直接友好的提示开发者
156
+ - 可以清晰的看出引用的组件个数、组件依赖、组件分支tag信息、仓库地址等有效信息
157
+
158
+ ```
52
159
  $ pod util install list --help
160
+ ```
161
+
162
+ ![f839eae390ea7871a5afecec093dd39c.png](./assets/f839eae390ea7871a5afecec093dd39c.png)
163
+
164
+ 可以在Podfile.lock的同级目录下执行或指定Podfile.lock的路径
165
+
166
+ ```
167
+ $ pod util install list --showmore
168
+ $ pod util install list ~/Desktop/xxxx/ProjectA/Podfile.lock --showmore
169
+ ```
53
170
 
54
- 列出安装的pod库
171
+ ![3be13cd62a8450a7c8b2a3fa728984c6.png](./assets/3be13cd62a8450a7c8b2a3fa728984c6.png)
@@ -1,3 +1,4 @@
1
1
  require_relative 'repo'
2
2
  require_relative 'install.rb'
3
+ require_relative 'unique'
3
4
  # require File.expand_path('../install.rb', __FILE__)
@@ -1,5 +1,3 @@
1
- require 'cocoapods/config'
2
-
3
1
  module Pod
4
2
  class Command
5
3
  class Util < Command
@@ -8,7 +6,7 @@ module Pod
8
6
  self.summary = '列出pod install安装的组件信息,Podfile.lock不传则在当前目录查找'
9
7
  self.command = 'list'
10
8
  self.arguments = [
11
- CLAide::Argument.new('Podfile.lock', false)
9
+ CLAide::Argument.new('Podfile.lock', true)
12
10
  ]
13
11
  def self.options
14
12
  [
@@ -105,7 +103,7 @@ module Pod
105
103
  parents.uniq!
106
104
  UI.puts " - SUBSPEC: ".yellow "#{subspecs.join('、')}".green unless subspecs.empty?
107
105
  UI.puts " - DEPENDENCIES: ".yellow "#{dependencies.join('、')}".green unless dependencies.empty?
108
- UI.puts " - PARENTS: ".yellow "#{parents.join('、')}".green unless parents.empty?
106
+ UI.puts " - DEPENDENTS: ".yellow "#{parents.join('、')}".green unless parents.empty?
109
107
  end
110
108
 
111
109
  def pod_tags_info
@@ -7,7 +7,7 @@ module Pod
7
7
  self.description = <<-DESC
8
8
  使用`pod util install list`查看pod安装的组件
9
9
  DESC
10
- self.command == 'install'
10
+ self.command = 'install'
11
11
  self.abstract_command = true
12
12
  end
13
13
  end
@@ -7,7 +7,7 @@ module Pod
7
7
  self.description = <<-DESC
8
8
  操作cocoapods的私有repo。如`pod util repo push`推送到私有仓库(可以设置参数跳过验证)
9
9
  DESC
10
- self.command == 'repo'
10
+ self.command = 'repo'
11
11
  self.abstract_command = true
12
12
  end
13
13
  end
@@ -0,0 +1,58 @@
1
+ module Pod
2
+ class Command
3
+ class Util < Command
4
+ class Unique < Util
5
+ self.summary = '对Xcode的工程文件做去重处理。'
6
+ self.description = <<-DESC
7
+ 日常开发过程中难免会出现一些工程文件的冲突,在解决工程文件的冲突时,如果处理不好容易造成文件在编译选项中重复配置的情况。使用该命令可去除重复的编译文件
8
+ DESC
9
+ self.command = 'uniq'
10
+ self.arguments = [
11
+ CLAide::Argument.new('project.xcodeproj', true)
12
+ ]
13
+ def self.options
14
+ [
15
+ ['--targetname=TargetName,TargetName', '指定需要操作的Target'],
16
+ ['--uniq-compile-sources', '对Build Phase中的Compile Sources中文件去重'],
17
+ ['--uniq-bundle-resources', '对Build Phase中Copy Bundle Resources中资源去重']
18
+ ]
19
+ end
20
+ def initialize(argv)
21
+ @proj_path = argv.shift_argument
22
+ @target_names = argv.option('targetname', '').split(',')
23
+ @uniq_compile_sources = argv.flag?('uniq-compile-sources', true)
24
+ @uniq_bundle_resources = argv.flag?('uniq-bundle-resources', true)
25
+ super
26
+ end
27
+
28
+ def validate!
29
+ super
30
+ help! 'An project.xcodeproj is required.' unless @proj_path
31
+ end
32
+
33
+ def run
34
+ require 'xcodeproj'
35
+
36
+ project = Xcodeproj::Project.open(@proj_path)
37
+
38
+ # uniques array
39
+ uniq_phases = []
40
+ uniq_phases |= ['SourcesBuildPhase'] if @uniq_compile_sources
41
+ uniq_phases |= ['ResourcesBuildPhase'] if @uniq_bundle_resources
42
+
43
+ project.targets.each do |target|
44
+ next if @target_names.count > 0 && !@target_names.include?(target.name)
45
+
46
+ target.build_phases.each do |phase|
47
+ phase.files.uniq! if uniq_phases.include?(phase.to_s)
48
+ end
49
+ end
50
+
51
+ project.save
52
+
53
+ puts 'xcodeproj files unique success'
54
+ end
55
+ end
56
+ end
57
+ end
58
+ end
@@ -8,20 +8,21 @@ module Framework
8
8
  attr_reader :fwk_path
9
9
 
10
10
  def delete_resources
11
- Pathname.new(@resources_path).rmtree
12
- (Pathname.new(@fwk_path) + Pathname.new('Resources')).delete
11
+ Pathname.new(@resources_path).rmtree @contains_resources
12
+ (Pathname.new(@fwk_path) + Pathname.new('Resources')).delete @contains_resources
13
13
  end
14
14
 
15
- def initialize(name, platform)
15
+ def initialize(name, platform, contains_resources=false)
16
16
  @name = name
17
17
  @platform = platform
18
+ @contains_resources = contains_resources
18
19
  end
19
20
 
20
21
  def make
21
22
  make_root
22
23
  make_framework
23
24
  make_headers
24
- make_resources
25
+ make_resources if @contains_resources
25
26
  make_current_version
26
27
  end
27
28
 
@@ -31,7 +32,7 @@ module Framework
31
32
  current_version_path = @versions_path + Pathname.new('../Current')
32
33
  `ln -sf A #{current_version_path}`
33
34
  `ln -sf Versions/Current/Headers #{@fwk_path}/`
34
- `ln -sf Versions/Current/Resources #{@fwk_path}/`
35
+ `ln -sf Versions/Current/Resources #{@fwk_path}/` if @contains_resources
35
36
  `ln -sf Versions/Current/#{@name} #{@fwk_path}/`
36
37
  end
37
38
 
@@ -13,7 +13,7 @@ module Pod
13
13
  if @framework_contains_resources
14
14
  framework_copy_resources(os)
15
15
  else
16
- framework_copy_resources(os) if os = 'build'
16
+ framework_copy_resources(os) if os == 'build'
17
17
  end
18
18
  end
19
19
  frameworks
@@ -40,7 +40,7 @@ module Pod
40
40
  end
41
41
 
42
42
  def create_framework(os_name = '')
43
- @fwk = Framework::Tree.new(@spec.name, "#{@platform.name.to_s}/#{os_name}")
43
+ @fwk = Framework::Tree.new(@spec.name, "#{@platform.name.to_s}/#{os_name}", @framework_contains_resources)
44
44
  @fwk.make
45
45
  @fwk
46
46
  end
@@ -126,9 +126,6 @@ SWIFT_MAP
126
126
  `cp -rp #{resources.join(' ')} #{resources_path}`
127
127
  end
128
128
  end
129
-
130
- # delete framework resources
131
- @fwk.delete_resources if @fwk
132
129
  return
133
130
  end
134
131
 
@@ -29,8 +29,8 @@ module Pod
29
29
  default_build_settings = Hash.new
30
30
  default_build_settings["CLANG_MODULES_AUTOLINK"] = "NO"
31
31
  default_build_settings["GCC_GENERATE_DEBUGGING_SYMBOLS"] = "YES" # 生成Debug编译信息
32
- default_build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64" unless @xcframework # 非xcframework排除ios simulator 64位架构
33
- default_build_settings["EXCLUDED_ARCHS[sdk=appletvsimulator*]"] = "arm64" unless @xcframework # 非xcframework排除tvos simulator 64位架构
32
+ default_build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64" unless @xcframework && self.match_pod_version?('~> 1.11') # 非xcframework排除ios simulator 64位架构
33
+ default_build_settings["EXCLUDED_ARCHS[sdk=appletvsimulator*]"] = "arm64" unless @xcframework && self.match_pod_version?('~> 1.11') # 非xcframework排除tvos simulator 64位架构
34
34
  default_build_settings["BUILD_LIBRARY_FOR_DISTRIBUTION"] = "YES" # 编译swift生成swiftinterface文件
35
35
 
36
36
  # merge user setting
@@ -120,6 +120,10 @@ module Pod
120
120
 
121
121
  Specification.from_file(@path)
122
122
  end
123
+
124
+ def match_pod_version?(*version)
125
+ Gem::Dependency.new('', *version).match?('', Pod::VERSION)
126
+ end
123
127
  end
124
128
  end
125
129
  end
@@ -10,13 +10,26 @@ module Pod
10
10
  self.description = <<-DESC
11
11
  一个CocoaPods常用插件功能的集合,解决日常开发中遇到的一些问题。
12
12
  DESC
13
- self.command == 'util'
13
+ self.command = 'util'
14
14
  self.abstract_command = true
15
+
16
+ def self.options
17
+ [
18
+ ['--version', 'Show cocoapods-util version'],
19
+ ].concat(super)
20
+ end
21
+
15
22
  def initialize(argv)
23
+ @version = argv.flag?('version', false)
16
24
  super
17
25
  end
18
26
 
19
27
  def validate!
28
+ if @version
29
+ require 'cocoapods-util/gem_version.rb'
30
+ puts "#{CocoapodsUtil::VERSION}"
31
+ return
32
+ end
20
33
  super
21
34
  end
22
35
 
@@ -24,4 +37,4 @@ module Pod
24
37
  end
25
38
  end
26
39
  end
27
- end
40
+ end
@@ -1,3 +1,3 @@
1
1
  module CocoapodsUtil
2
- VERSION = "0.0.12"
2
+ VERSION = "0.0.14"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cocoapods-util
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.12
4
+ version: 0.0.14
5
5
  platform: ruby
6
6
  authors:
7
7
  - guojiashuang
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-07-23 00:00:00.000000000 Z
11
+ date: 2022-09-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cocoapods
@@ -65,13 +65,8 @@ executables: []
65
65
  extensions: []
66
66
  extra_rdoc_files: []
67
67
  files:
68
- - ".gitignore"
69
- - Gemfile
70
68
  - LICENSE
71
- - LICENSE.txt
72
69
  - README.md
73
- - Rakefile
74
- - cocoapods-util.gemspec
75
70
  - lib/cocoapods-util.rb
76
71
  - lib/cocoapods-util/CocoapodsUtilHook.rb
77
72
  - lib/cocoapods-util/command.rb
@@ -81,6 +76,7 @@ files:
81
76
  - lib/cocoapods-util/command/cocoapods-extend/repo.rb
82
77
  - lib/cocoapods-util/command/cocoapods-extend/repo/push.rb
83
78
  - lib/cocoapods-util/command/cocoapods-extend/repo/push_helper.rb
79
+ - lib/cocoapods-util/command/cocoapods-extend/unique.rb
84
80
  - lib/cocoapods-util/command/libsource/source.rb
85
81
  - lib/cocoapods-util/command/libsource/source_linker.rb
86
82
  - lib/cocoapods-util/command/package/helper/builder.rb
@@ -96,13 +92,11 @@ files:
96
92
  - lib/cocoapods-util/gem_version.rb
97
93
  - lib/cocoapods-util/hooks/installer.rb
98
94
  - lib/cocoapods_plugin.rb
99
- - spec/command/util_spec.rb
100
- - spec/spec_helper.rb
101
95
  homepage: https://github.com/CaryGo/cocoapods-util
102
96
  licenses:
103
97
  - MIT
104
98
  metadata: {}
105
- post_install_message:
99
+ post_install_message:
106
100
  rdoc_options: []
107
101
  require_paths:
108
102
  - lib
@@ -118,9 +112,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
118
112
  version: '0'
119
113
  requirements: []
120
114
  rubygems_version: 3.1.2
121
- signing_key:
115
+ signing_key:
122
116
  specification_version: 4
123
117
  summary: 一个常用插件功能的集合,致力于解决日常开发中遇到的一些问题。
124
- test_files:
125
- - spec/command/util_spec.rb
126
- - spec/spec_helper.rb
118
+ test_files: []
data/.gitignore DELETED
@@ -1,4 +0,0 @@
1
- .DS_Store
2
- pkg
3
- .idea/
4
- .vscode/
data/Gemfile DELETED
@@ -1,13 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in cocoapods-util.gemspec
4
- gemspec
5
-
6
- group :development do
7
- gem 'cocoapods'
8
-
9
- gem 'mocha'
10
- gem 'bacon'
11
- gem 'mocha-on-bacon'
12
- gem 'prettybacon'
13
- end
data/LICENSE.txt DELETED
@@ -1,22 +0,0 @@
1
- Copyright (c) 2022 guojiashuang <guojiashuang@58.com>
2
-
3
- MIT License
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining
6
- a copy of this software and associated documentation files (the
7
- "Software"), to deal in the Software without restriction, including
8
- without limitation the rights to use, copy, modify, merge, publish,
9
- distribute, sublicense, and/or sell copies of the Software, and to
10
- permit persons to whom the Software is furnished to do so, subject to
11
- the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be
14
- included in all copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/Rakefile DELETED
@@ -1,13 +0,0 @@
1
- require 'bundler/gem_tasks'
2
-
3
- def specs(dir)
4
- FileList["spec/#{dir}/*_spec.rb"].shuffle.join(' ')
5
- end
6
-
7
- desc 'Runs all the specs'
8
- task :specs do
9
- sh "bundle exec bacon #{specs('**')}"
10
- end
11
-
12
- task :default => :specs
13
-
@@ -1,25 +0,0 @@
1
- # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
3
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'cocoapods-util/gem_version.rb'
5
-
6
- Gem::Specification.new do |spec|
7
- spec.name = 'cocoapods-util'
8
- spec.version = CocoapodsUtil::VERSION
9
- spec.authors = ['guojiashuang']
10
- spec.email = ['guojiashuang@live.com']
11
- spec.description = %q{cocoapods-util是一个cocoapods插件,解决日常ios开发中遇到的一些问题。支持打包(编译)静态库、framework生成xcframework、二进制link源码、推送私有库跳过验证等功能。}
12
- spec.summary = %q{一个常用插件功能的集合,致力于解决日常开发中遇到的一些问题。}
13
- spec.homepage = 'https://github.com/CaryGo/cocoapods-util'
14
- spec.license = 'MIT'
15
-
16
- spec.files = `git ls-files`.split($/)
17
- spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
- spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
- spec.require_paths = ['lib']
20
-
21
- spec.add_dependency "cocoapods", ">= 1.5.0", "< 2.0"
22
-
23
- spec.add_development_dependency 'bundler', '~> 1.3'
24
- spec.add_development_dependency 'rake'
25
- end
@@ -1,12 +0,0 @@
1
- require File.expand_path('../../spec_helper', __FILE__)
2
-
3
- module Pod
4
- describe Command::Util do
5
- describe 'CLAide' do
6
- it 'registers it self' do
7
- Command.parse(%w{ util }).should.be.instance_of Command::Util
8
- end
9
- end
10
- end
11
- end
12
-
data/spec/spec_helper.rb DELETED
@@ -1,50 +0,0 @@
1
- require 'pathname'
2
- ROOT = Pathname.new(File.expand_path('../../', __FILE__))
3
- $:.unshift((ROOT + 'lib').to_s)
4
- $:.unshift((ROOT + 'spec').to_s)
5
-
6
- require 'bundler/setup'
7
- require 'bacon'
8
- require 'mocha-on-bacon'
9
- require 'pretty_bacon'
10
- require 'pathname'
11
- require 'cocoapods'
12
-
13
- Mocha::Configuration.prevent(:stubbing_non_existent_method)
14
-
15
- require 'cocoapods_plugin'
16
-
17
- #-----------------------------------------------------------------------------#
18
-
19
- module Pod
20
-
21
- # Disable the wrapping so the output is deterministic in the tests.
22
- #
23
- UI.disable_wrap = true
24
-
25
- # Redirects the messages to an internal store.
26
- #
27
- module UI
28
- @output = ''
29
- @warnings = ''
30
-
31
- class << self
32
- attr_accessor :output
33
- attr_accessor :warnings
34
-
35
- def puts(message = '')
36
- @output << "#{message}\n"
37
- end
38
-
39
- def warn(message = '', actions = [])
40
- @warnings << "#{message}\n"
41
- end
42
-
43
- def print(message)
44
- @output << message
45
- end
46
- end
47
- end
48
- end
49
-
50
- #-----------------------------------------------------------------------------#