cocoapods-freezer 1.0.7 → 1.1.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/README.md +3 -1
- data/README_CH.md +2 -2
- data/lib/cocoapods-freezer/command/install.rb +7 -3
- data/lib/cocoapods-freezer/command/options/frozen.rb +55 -0
- data/lib/cocoapods-freezer/freezer.rb +5 -6
- data/lib/cocoapods-freezer/gem_version.rb +1 -1
- data/lib/cocoapods-freezer/installer.rb +2 -2
- metadata +3 -3
- data/lib/cocoapods-freezer/command/options/use_freezer.rb +0 -35
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8cfadd5e3f4f9fce7737d211f283cae1ba71c63f
|
4
|
+
data.tar.gz: a1969e7ce0a8d1147d1476315a1dd4680e390d63
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bf4e0ad503edbf1a3d1fe6b7f80a22a455809cfd29772dc0b1ea51b6017f323a9257d88102f9e4f143d2175c732c0f3fb8fe6d1843bdd2f53fde0850cb085183
|
7
|
+
data.tar.gz: d8b4ab048e6cf7e6d9aedfa8e05b174474f54868b1bf3588b3af6d798408c9a8d0e13b6f419be64789c2bba0c3e43f7734e44c6754f359d792c67e65c2309bb8
|
data/README.md
CHANGED
data/README_CH.md
CHANGED
@@ -11,7 +11,7 @@ $ gem install cocoapods-freezer
|
|
11
11
|
## 使用
|
12
12
|
|
13
13
|
``` shell
|
14
|
-
$ pod install --
|
14
|
+
$ pod install --frozen
|
15
15
|
|
16
16
|
```
|
17
17
|
|
@@ -27,6 +27,7 @@ $ pod install --user-freezer
|
|
27
27
|
[x] 目前仅支持单iOS平台
|
28
28
|
[x] 支持增量打包
|
29
29
|
[x] 支持缓存复用
|
30
|
+
[x] 缓存路径定制
|
30
31
|
|
31
32
|
## 计划
|
32
33
|
|
@@ -35,7 +36,6 @@ $ pod install --user-freezer
|
|
35
36
|
- [] 支持Framework(Dynamic\Static)方式构建
|
36
37
|
- [] 支持local类型
|
37
38
|
- [] 支持swift类型
|
38
|
-
- [] 缓存路径定制
|
39
39
|
- [] 打包脚本定制?
|
40
40
|
- [] Configuration定制?
|
41
41
|
- [] 多Target使用相同Pod但不同subspec相应缓存
|
@@ -1,13 +1,17 @@
|
|
1
1
|
module Pod
|
2
2
|
class Command
|
3
3
|
class Install < Command
|
4
|
-
require 'cocoapods-freezer/command/options/
|
5
|
-
include
|
4
|
+
require 'cocoapods-freezer/command/options/frozen'
|
5
|
+
include Frozen
|
6
6
|
|
7
7
|
define_method(:run) do
|
8
8
|
verify_podfile_exists!
|
9
9
|
|
10
|
-
if
|
10
|
+
if frozen?
|
11
|
+
unless frozen_root.nil?
|
12
|
+
Freezer::shared.root = frozen_root
|
13
|
+
end
|
14
|
+
|
11
15
|
Freezer::shared.freeze!
|
12
16
|
elsif Config.instance.sandbox.manifest && Config.instance.sandbox.manifest.freered?
|
13
17
|
Config.instance.sandbox.clear!
|
@@ -0,0 +1,55 @@
|
|
1
|
+
module Pod
|
2
|
+
class Command
|
3
|
+
module Options
|
4
|
+
# Provides support for commands to skip updating the spec repositories.
|
5
|
+
#
|
6
|
+
module Frozen
|
7
|
+
|
8
|
+
module Options
|
9
|
+
def options
|
10
|
+
[
|
11
|
+
['--frozen', 'running cocoapods-freezer before install'],
|
12
|
+
['--frozen=~/Workspace', 'running cocoapods-freezer before install'],
|
13
|
+
].concat(super)
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
def self.included(base)
|
18
|
+
base.extend(Options)
|
19
|
+
end
|
20
|
+
|
21
|
+
def frozen?(default: false)
|
22
|
+
if @frozen.nil?
|
23
|
+
default
|
24
|
+
else
|
25
|
+
@frozen
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
def frozen_root
|
30
|
+
@frozen_root
|
31
|
+
end
|
32
|
+
|
33
|
+
def initialize(argv)
|
34
|
+
argv_frozen = argv.option('frozen')
|
35
|
+
if argv_frozen.nil?
|
36
|
+
@frozen = argv.flag?('frozen')
|
37
|
+
else
|
38
|
+
@frozen = true
|
39
|
+
root = Pathname.new(argv_frozen)
|
40
|
+
if root.directory?
|
41
|
+
@frozen_root = root
|
42
|
+
else
|
43
|
+
root.mkdir
|
44
|
+
if root.directory?
|
45
|
+
@frozen_root = root
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
super
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
@@ -6,11 +6,14 @@ module Pod
|
|
6
6
|
@shared ||= (Config.instance.podfile ? new(Config.instance.podfile) : nil)
|
7
7
|
end
|
8
8
|
|
9
|
+
attr_accessor :root
|
10
|
+
|
9
11
|
def initialize(podfile)
|
10
12
|
raise unless podfile
|
11
13
|
@podfile = podfile
|
12
14
|
@frozen_pods = []
|
13
15
|
@enable = false
|
16
|
+
@root = Pathname.new(@podfile.defined_in_file.dirname) + 'FrozenPods'
|
14
17
|
end
|
15
18
|
|
16
19
|
def enable?
|
@@ -29,7 +32,7 @@ module Pod
|
|
29
32
|
# todo(ca1md0wn): if Dir of FrozenPods destoryed, should fix by itself!
|
30
33
|
def freeze!
|
31
34
|
@enable = true
|
32
|
-
|
35
|
+
Pod::UI.puts "Frozen Root: #{root}".green
|
33
36
|
Pod::UI.puts "Freezing Pods".green
|
34
37
|
|
35
38
|
unchange_spec_names = []
|
@@ -167,7 +170,7 @@ module Pod
|
|
167
170
|
pod_names || []
|
168
171
|
end
|
169
172
|
|
170
|
-
def
|
173
|
+
def frozen_pod?(pod_name)
|
171
174
|
@frozen_pods.each do |frozen_pod|
|
172
175
|
if frozen_pod.pod_name == pod_name
|
173
176
|
return true
|
@@ -205,10 +208,6 @@ module Pod
|
|
205
208
|
# [Array<FrozenPod>]
|
206
209
|
@frozen_pods
|
207
210
|
|
208
|
-
def root
|
209
|
-
Pathname.new(@podfile.defined_in_file.dirname) + 'FrozenPods'
|
210
|
-
end
|
211
|
-
|
212
211
|
def manifest_path
|
213
212
|
root + 'Manifest.lock'
|
214
213
|
end
|
@@ -21,7 +21,7 @@ module Pod
|
|
21
21
|
|
22
22
|
def resolve_dependencies_about_freezed
|
23
23
|
major_specs.each do |major_spec|
|
24
|
-
next unless Pod::Freezer.shared.
|
24
|
+
next unless Pod::Freezer.shared.frozen_pod?(major_spec.name)
|
25
25
|
|
26
26
|
targets = pod_targets.select do |target|
|
27
27
|
target.pod_name == major_spec.name
|
@@ -46,7 +46,7 @@ module Pod
|
|
46
46
|
end
|
47
47
|
|
48
48
|
def install_source_of_pod_about_freezed(pod_name)
|
49
|
-
if Pod::Freezer.shared.
|
49
|
+
if Pod::Freezer.shared.frozen_pod?(pod_name)
|
50
50
|
Pod::Freezer.shared.export!(pod_name, self.sandbox.pod_dir(pod_name))
|
51
51
|
end
|
52
52
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cocoapods-freezer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ca1md0wn
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-01-
|
11
|
+
date: 2019-01-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: cocoapods
|
@@ -70,7 +70,7 @@ files:
|
|
70
70
|
- lib/cocoapods-freezer/command.rb
|
71
71
|
- lib/cocoapods-freezer/command/freeze.rb
|
72
72
|
- lib/cocoapods-freezer/command/install.rb
|
73
|
-
- lib/cocoapods-freezer/command/options/
|
73
|
+
- lib/cocoapods-freezer/command/options/frozen.rb
|
74
74
|
- lib/cocoapods-freezer/config.rb
|
75
75
|
- lib/cocoapods-freezer/dir.rb
|
76
76
|
- lib/cocoapods-freezer/freezer.rb
|
@@ -1,35 +0,0 @@
|
|
1
|
-
module Pod
|
2
|
-
class Command
|
3
|
-
module Options
|
4
|
-
# Provides support for commands to skip updating the spec repositories.
|
5
|
-
#
|
6
|
-
module UseFreezer
|
7
|
-
|
8
|
-
module Options
|
9
|
-
def options
|
10
|
-
[
|
11
|
-
['--use-freezer', 'running cocoapods-freeze before install'],
|
12
|
-
].concat(super)
|
13
|
-
end
|
14
|
-
end
|
15
|
-
|
16
|
-
def self.included(base)
|
17
|
-
base.extend(Options)
|
18
|
-
end
|
19
|
-
|
20
|
-
def use_freezer?(default: false)
|
21
|
-
if @use_freezer.nil?
|
22
|
-
default
|
23
|
-
else
|
24
|
-
@use_freezer
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
def initialize(argv)
|
29
|
-
@use_freezer = argv.flag?('use-freezer')
|
30
|
-
super
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end
|
35
|
-
end
|