flappy-cli 0.3.0
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 +7 -0
- data/.gitignore +10 -0
- data/CODE_OF_CONDUCT.md +74 -0
- data/Gemfile +12 -0
- data/LICENSE.txt +21 -0
- data/README.md +41 -0
- data/Rakefile +2 -0
- data/bin/console +14 -0
- data/bin/flappy +14 -0
- data/bin/setup +8 -0
- data/flappy-cli.gemspec +50 -0
- data/lib/flappy/api.yml +7 -0
- data/lib/flappy/cli.rb +145 -0
- data/lib/flappy/patches/blank.rb +131 -0
- data/lib/flappy/patches/concern.rb +146 -0
- data/lib/flappy/patches/default_headers.rb +9 -0
- data/lib/flappy/patches/hash.rb +79 -0
- data/lib/flappy/patches/instance_variables.rb +30 -0
- data/lib/flappy/patches/native_patch.rb +28 -0
- data/lib/flappy/patches/os_patch.rb +28 -0
- data/lib/flappy/patches/try.rb +102 -0
- data/lib/flappy/patches.rb +12 -0
- data/lib/flappy/util/archive_ipa.rb +55 -0
- data/lib/flappy/util/build_apk.rb +104 -0
- data/lib/flappy/util/build_common.rb +90 -0
- data/lib/flappy/util/build_ipa.rb +331 -0
- data/lib/flappy/util/config.rb +41 -0
- data/lib/flappy/util/http.rb +30 -0
- data/lib/flappy/util/iOS_check.rb +29 -0
- data/lib/flappy/util/iOS_env_config.rb +54 -0
- data/lib/flappy/util/iOS_logger.rb +113 -0
- data/lib/flappy/util/info.rb +39 -0
- data/lib/flappy/util/ipa_info.rb +198 -0
- data/lib/flappy/util/mapping.rb +84 -0
- data/lib/flappy/util/multi_io.rb +27 -0
- data/lib/flappy/util/parser/apk.rb +42 -0
- data/lib/flappy/util/parser/bin/pngcrush +0 -0
- data/lib/flappy/util/parser/common.rb +24 -0
- data/lib/flappy/util/parser/pngcrush.rb +23 -0
- data/lib/flappy/util/publish.rb +185 -0
- data/lib/flappy/util/update_pod.rb +264 -0
- data/lib/flappy/util.rb +105 -0
- data/lib/flappy/version.rb +3 -0
- data/lib/flappy-cli.rb +3 -0
- data/lib/flappy.rb +28 -0
- data/output/Flappy-Archives/iOS/WorkspaceForPackageTest/20170103000308/20170103000308_WorkspaceForPackageTest.json +1 -0
- data/output/Flappy-Archives/iOS/WorkspaceForPackageTest/20170103000308/20170103000308_WorkspaceForPackageTest_Podfile +16 -0
- data/output/Flappy-Archives/iOS/WorkspaceForPackageTest/20170103000308/20170103000308_WorkspaceForPackageTest_Podfile_lock +40 -0
- data/output/Flappy-Archives/iOS/WorkspaceForPackageTest/20170103000314/20170103000314_WorkspaceForPackageTest.json +1 -0
- data/output/Flappy-Archives/iOS/WorkspaceForPackageTest/20170103000314/20170103000314_WorkspaceForPackageTest_Podfile +16 -0
- data/output/Flappy-Archives/iOS/WorkspaceForPackageTest/20170103000314/20170103000314_WorkspaceForPackageTest_Podfile_lock +40 -0
- metadata +223 -0
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
module Flappy
|
|
5
|
+
module UpdatePod
|
|
6
|
+
def update_pod_if_needed(args, options)
|
|
7
|
+
@podfile_path = check_and_find_podfile
|
|
8
|
+
spec_hash_podfile = read_podfile
|
|
9
|
+
|
|
10
|
+
pod_cmd = initialize_pod_cmd(args, options)
|
|
11
|
+
unless pod_cmd.blank?
|
|
12
|
+
log_iOS('>>>>>>>>>>>>>>>>>>>>>>>>>>>> Updating pods......')
|
|
13
|
+
log_iOS("pod cmd: #{pod_cmd}")
|
|
14
|
+
|
|
15
|
+
log_iOS_pod(pod_cmd)
|
|
16
|
+
if $?.to_i != 0
|
|
17
|
+
log_iOS('>>>>>>>>>>>>>>>>>>>>>>>>>>>> Pod update failed')
|
|
18
|
+
exit 1
|
|
19
|
+
else
|
|
20
|
+
log_iOS('>>>>>>>>>>>>>>>>>>>>>>>>>>>> Pod update succeed')
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
@podfile_lock_path = check_and_find_podfile_lock
|
|
25
|
+
spec_hash_podfile_lock = read_podfile_lock
|
|
26
|
+
|
|
27
|
+
merge_spec_hash(spec_hash_podfile, spec_hash_podfile_lock)
|
|
28
|
+
save_spec_hash_to_file
|
|
29
|
+
save_pod_file_and_lock
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def save_spec_hash_to_file
|
|
33
|
+
@spec_hash_file_path = File.join(@app_output_archive_info_path, "#{@start_time}_#{@app_dir_name}_Pod_json")
|
|
34
|
+
File.write(@spec_hash_file_path, @spec_hash) unless @spec_hash.blank?
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def save_pod_file_and_lock
|
|
38
|
+
@dest_pod_file_path = File.join(@app_output_archive_info_path, "#{@start_time}_#{@app_dir_name}_Podfile")
|
|
39
|
+
FileUtils.cp_r(@podfile_path, @dest_pod_file_path) if File.exists?(@podfile_path)
|
|
40
|
+
|
|
41
|
+
@dest_pod_file_lock_path = File.join(@app_output_archive_info_path, "#{@start_time}_#{@app_dir_name}_Podfile_lock")
|
|
42
|
+
FileUtils.cp_r(@podfile_lock_path, @dest_pod_file_lock_path) if File.exists?(@podfile_lock_path)
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
def merge_spec_hash(spec_hash_podfile, spec_hash_podfile_lock)
|
|
47
|
+
if spec_hash_podfile.blank? || spec_hash_podfile_lock.blank?
|
|
48
|
+
return
|
|
49
|
+
end
|
|
50
|
+
spec_hash_podfile.each do |key_podfile, value_podfile|
|
|
51
|
+
spec_hash_podfile_lock.each do |key_podfile_lock, value_podfile_lock|
|
|
52
|
+
if key_podfile == key_podfile_lock
|
|
53
|
+
spec_hash_merged = value_podfile.merge(value_podfile_lock)
|
|
54
|
+
spec_hash_podfile.store(key_podfile, spec_hash_merged)
|
|
55
|
+
break
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
log_iOS("spec_hash: \n#{spec_hash_podfile}")
|
|
61
|
+
@spec_hash = spec_hash_podfile
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
def initialize_pod_cmd(args, options)
|
|
65
|
+
pod_cmd = ''
|
|
66
|
+
|
|
67
|
+
unless @podfile_path.blank?
|
|
68
|
+
pod_work_dir = File.dirname(@podfile_path)
|
|
69
|
+
|
|
70
|
+
if options[:'update-pod'] || options[:'only-update-souche-pod']
|
|
71
|
+
pod_cmd = "cd #{pod_work_dir}; "
|
|
72
|
+
|
|
73
|
+
if options[:'only-update-souche-pod']
|
|
74
|
+
repo_cmd = update_pod_repos(args, options)
|
|
75
|
+
pod_cmd += repo_cmd unless repo_cmd.blank?
|
|
76
|
+
|
|
77
|
+
# pod repo update之后pod update之前
|
|
78
|
+
if options[:'pod-env-test']
|
|
79
|
+
pod_cmd += "pod_env_test=1 "
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
pod_cmd += "pod update --no-repo-update --verbose"
|
|
83
|
+
else
|
|
84
|
+
# pod repo update之后pod update之前
|
|
85
|
+
if options[:'pod-env-test']
|
|
86
|
+
pod_cmd += "pod_env_test=1 "
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
if options[:'no-repo-update']
|
|
90
|
+
pod_cmd += "pod update --no-repo-update --verbose"
|
|
91
|
+
else
|
|
92
|
+
pod_cmd += "pod update --verbose"
|
|
93
|
+
end
|
|
94
|
+
end
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
else
|
|
99
|
+
log_iOS('podfile path is empty')
|
|
100
|
+
end
|
|
101
|
+
|
|
102
|
+
pod_cmd
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
################### read
|
|
106
|
+
def read_podfile
|
|
107
|
+
if @podfile_path.blank?
|
|
108
|
+
return
|
|
109
|
+
end
|
|
110
|
+
|
|
111
|
+
spec_hash = {}
|
|
112
|
+
File.foreach(@podfile_path).with_index do |line, line_num|
|
|
113
|
+
# 突出显示打印匹配的部分
|
|
114
|
+
# puts line.gsub(/^pod .*'$/) { |str| "<<#{str}>>" }
|
|
115
|
+
# 打印匹配的部分
|
|
116
|
+
# line.gsub(/^pod .*'$/) { |str| puts "#{str}" }
|
|
117
|
+
# puts line.scan(/^pod .*'$/)
|
|
118
|
+
|
|
119
|
+
line_trim = line.gsub(/\s+/, "") unless line.blank?
|
|
120
|
+
# matched_string = line_trim.scan(/^pod.*'$/)[0] unless line_trim.blank?
|
|
121
|
+
|
|
122
|
+
matched_list = line_trim.scan(/^pod.*'$/) unless line_trim.blank?
|
|
123
|
+
unless matched_list.nil?
|
|
124
|
+
matched_string = matched_list[0] if matched_list.count > 0
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
unless matched_string.blank?
|
|
128
|
+
name_version = matched_string.split(/'(.*?)'/)
|
|
129
|
+
spec_name = name_version[1]
|
|
130
|
+
podfile_spec_version = name_version[3]
|
|
131
|
+
|
|
132
|
+
unless spec_name.blank?
|
|
133
|
+
version_hash = {}
|
|
134
|
+
unless podfile_spec_version.blank?
|
|
135
|
+
version_hash.store('Podfile', podfile_spec_version)
|
|
136
|
+
else
|
|
137
|
+
version_hash.store('Podfile', '')
|
|
138
|
+
end
|
|
139
|
+
spec_hash.store(spec_name, version_hash)
|
|
140
|
+
end
|
|
141
|
+
end
|
|
142
|
+
end
|
|
143
|
+
|
|
144
|
+
spec_hash
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
def read_podfile_lock
|
|
148
|
+
if @podfile_lock_path.blank?
|
|
149
|
+
return
|
|
150
|
+
end
|
|
151
|
+
|
|
152
|
+
textfile = "#{Dir.tmpdir}/podfile_lock_#{Time.now.strftime('%Y%m%d%H%M%S')}.txt"
|
|
153
|
+
podfile_lock = File.read(@podfile_lock_path)
|
|
154
|
+
File.open(textfile, "w") do |f|
|
|
155
|
+
in_header = true
|
|
156
|
+
podfile_lock.each_line do |line|
|
|
157
|
+
if in_header && /PODS:/ !~ line
|
|
158
|
+
next
|
|
159
|
+
else
|
|
160
|
+
in_header = false
|
|
161
|
+
end
|
|
162
|
+
|
|
163
|
+
break if /DEPENDENCIES:/ =~ line
|
|
164
|
+
|
|
165
|
+
f.write line
|
|
166
|
+
end
|
|
167
|
+
end
|
|
168
|
+
|
|
169
|
+
spec_hash = {}
|
|
170
|
+
if File.exists?(textfile)
|
|
171
|
+
File.foreach(textfile).with_index do |line|
|
|
172
|
+
unless line.blank?
|
|
173
|
+
matched_list = line.scan(/^ - .*$/) unless line.blank?
|
|
174
|
+
unless matched_list.nil?
|
|
175
|
+
matched_string = matched_list[0] if matched_list.count > 0
|
|
176
|
+
|
|
177
|
+
unless matched_string.blank?
|
|
178
|
+
spec_name = matched_string.split(/ - (.*?) \(/)[1]
|
|
179
|
+
podfile_lock_spec_version = matched_string.split(/ \((.*?)\)/)[1]
|
|
180
|
+
|
|
181
|
+
unless spec_name.blank?
|
|
182
|
+
version_hash = {}
|
|
183
|
+
unless podfile_lock_spec_version.blank?
|
|
184
|
+
version_hash.store('Podfile.lock', podfile_lock_spec_version)
|
|
185
|
+
else
|
|
186
|
+
version_hash.store('Podfile.lock', '')
|
|
187
|
+
end
|
|
188
|
+
spec_hash.store(spec_name, version_hash)
|
|
189
|
+
end
|
|
190
|
+
end
|
|
191
|
+
end
|
|
192
|
+
end
|
|
193
|
+
end
|
|
194
|
+
end
|
|
195
|
+
|
|
196
|
+
FileUtils.rm_rf(textfile)
|
|
197
|
+
|
|
198
|
+
spec_hash
|
|
199
|
+
end
|
|
200
|
+
|
|
201
|
+
################### check
|
|
202
|
+
def check_and_find_podfile
|
|
203
|
+
podfile_path = ''
|
|
204
|
+
|
|
205
|
+
Dir.glob("#{@work_dir}/**/[Pp]odfile").each do |name|
|
|
206
|
+
unless File.directory?(name)
|
|
207
|
+
podfile_path = name
|
|
208
|
+
end
|
|
209
|
+
end
|
|
210
|
+
|
|
211
|
+
if podfile_path.blank?
|
|
212
|
+
log_iOS('No Podfile Found')
|
|
213
|
+
else
|
|
214
|
+
log_iOS("Found Podfile: #{podfile_path}")
|
|
215
|
+
end
|
|
216
|
+
|
|
217
|
+
podfile_path
|
|
218
|
+
end
|
|
219
|
+
|
|
220
|
+
def check_and_find_podfile_lock
|
|
221
|
+
podfile_lock_path = ''
|
|
222
|
+
|
|
223
|
+
Dir.glob("#{@work_dir}/**/[Pp]odfile.lock").each do |name|
|
|
224
|
+
unless File.directory?(name)
|
|
225
|
+
podfile_lock_path = name
|
|
226
|
+
end
|
|
227
|
+
end
|
|
228
|
+
|
|
229
|
+
if podfile_lock_path.blank?
|
|
230
|
+
log_iOS('No Podfile.lock Found')
|
|
231
|
+
else
|
|
232
|
+
log_iOS("Found Podfile.lock: #{podfile_lock_path}")
|
|
233
|
+
end
|
|
234
|
+
|
|
235
|
+
podfile_lock_path
|
|
236
|
+
end
|
|
237
|
+
|
|
238
|
+
|
|
239
|
+
def update_pod_repos(args, options)
|
|
240
|
+
if options[:'only-update-souche-pod']
|
|
241
|
+
repos_to_update = []
|
|
242
|
+
repo_path = File.expand_path("~/.cocoapods/repos")
|
|
243
|
+
Dir.glob(repo_path + "/*").each do |name| # 一层
|
|
244
|
+
if File.directory?(name)
|
|
245
|
+
basename = File.basename(name)
|
|
246
|
+
if basename != "master" && basename != ".DS_Store"
|
|
247
|
+
repos_to_update << basename
|
|
248
|
+
end
|
|
249
|
+
end
|
|
250
|
+
end
|
|
251
|
+
log_iOS("repos_to_update: #{repos_to_update}")
|
|
252
|
+
|
|
253
|
+
repo_cmd = ''
|
|
254
|
+
repos_to_update.each { |repo|
|
|
255
|
+
repo_cmd += "pod repo update --verbose #{repo}; " # 只更新souche repo
|
|
256
|
+
}
|
|
257
|
+
else
|
|
258
|
+
repo_cmd = "pod repo update --verbose"
|
|
259
|
+
end
|
|
260
|
+
|
|
261
|
+
repo_cmd
|
|
262
|
+
end
|
|
263
|
+
end
|
|
264
|
+
end
|
data/lib/flappy/util.rb
ADDED
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
|
|
3
|
+
require_relative './util/http'
|
|
4
|
+
require_relative './util/config'
|
|
5
|
+
require_relative './util/parser/apk'
|
|
6
|
+
# require_relative './util/parser/ipa'
|
|
7
|
+
require_relative './util/parser/pngcrush'
|
|
8
|
+
# require_relative './util/login'
|
|
9
|
+
# require_relative './util/me'
|
|
10
|
+
require_relative './util/info'
|
|
11
|
+
require_relative './util/build_common'
|
|
12
|
+
require_relative './util/build_apk'
|
|
13
|
+
require_relative './util/publish'
|
|
14
|
+
require_relative './util/mapping'
|
|
15
|
+
|
|
16
|
+
require_relative './util/build_ipa'
|
|
17
|
+
require_relative './util/update_pod'
|
|
18
|
+
require_relative './util/archive_ipa'
|
|
19
|
+
require_relative './util/ipa_info'
|
|
20
|
+
require_relative './util/iOS_env_config'
|
|
21
|
+
require_relative './util/iOS_check'
|
|
22
|
+
require_relative './util/iOS_logger'
|
|
23
|
+
require_relative './util/multi_io'
|
|
24
|
+
|
|
25
|
+
module Flappy
|
|
26
|
+
module Util
|
|
27
|
+
extend ActiveSupport::Concern
|
|
28
|
+
|
|
29
|
+
module ClassMethods
|
|
30
|
+
include Flappy::Http
|
|
31
|
+
include Flappy::Config
|
|
32
|
+
# include FIR::Login
|
|
33
|
+
# include FIR::Me
|
|
34
|
+
include Flappy::Info
|
|
35
|
+
include Flappy::BuildCommon
|
|
36
|
+
# include FIR::BuildIpa
|
|
37
|
+
include Flappy::BuildApk
|
|
38
|
+
include Flappy::Publish
|
|
39
|
+
include Flappy::Mapping
|
|
40
|
+
|
|
41
|
+
include Flappy::BuildIpa
|
|
42
|
+
include Flappy::UpdatePod
|
|
43
|
+
include Flappy::ArchiveIpa
|
|
44
|
+
include Flappy::IpaInfo
|
|
45
|
+
include Flappy::IOSEnvConfig
|
|
46
|
+
include Flappy::IOSChecking
|
|
47
|
+
include Flappy::MultiIO
|
|
48
|
+
include Flappy::IOSLogger
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
attr_accessor :logger
|
|
52
|
+
|
|
53
|
+
def fetch_user_info(token)
|
|
54
|
+
get fir_api[:user_url], api_token: token
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
# def fetch_user_uuid(token)
|
|
58
|
+
# user_info = fetch_user_info(token)
|
|
59
|
+
# user_info[:uuid]
|
|
60
|
+
# end
|
|
61
|
+
|
|
62
|
+
def check_file_exist(path)
|
|
63
|
+
return if File.file?(path)
|
|
64
|
+
|
|
65
|
+
logger.error 'File does not exist'
|
|
66
|
+
exit 1
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
def check_supported_file(path)
|
|
70
|
+
return if APP_FILE_TYPE.include?(File.extname(path))
|
|
71
|
+
|
|
72
|
+
logger.error 'Unsupported file type'
|
|
73
|
+
exit 1
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
def check_token_cannot_be_blank(token)
|
|
77
|
+
return unless token.blank?
|
|
78
|
+
|
|
79
|
+
logger.error 'Token can not be blank'
|
|
80
|
+
exit 1
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
def check_logined
|
|
84
|
+
return unless current_token.blank?
|
|
85
|
+
|
|
86
|
+
logger.error 'Please use `fir login` first'
|
|
87
|
+
exit 1
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
def logger_info_blank_line
|
|
91
|
+
logger.info 'flappy completed!'
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
def logger_info_dividing_line
|
|
95
|
+
logger.info '✈ -------------------------------------------- ✈'
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
def generate_rqrcode(string, png_file_path)
|
|
99
|
+
qrcode = ::RQRCode::QRCode.new(string.to_s)
|
|
100
|
+
qrcode.as_png(size: 500, border_modules: 2, file: png_file_path)
|
|
101
|
+
png_file_path
|
|
102
|
+
end
|
|
103
|
+
end
|
|
104
|
+
end
|
|
105
|
+
end
|
data/lib/flappy-cli.rb
ADDED
data/lib/flappy.rb
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
|
|
3
|
+
require 'thor'
|
|
4
|
+
require 'logger'
|
|
5
|
+
require 'yaml'
|
|
6
|
+
require 'rest-client'
|
|
7
|
+
require 'json'
|
|
8
|
+
require 'securerandom'
|
|
9
|
+
require 'fileutils'
|
|
10
|
+
require 'cfpropertylist'
|
|
11
|
+
require 'tempfile'
|
|
12
|
+
require 'rqrcode'
|
|
13
|
+
|
|
14
|
+
# TODO: remove rescue when https://github.com/tajchert/ruby_apk/pull/4 merged
|
|
15
|
+
begin
|
|
16
|
+
require 'ruby_android'
|
|
17
|
+
rescue LoadError
|
|
18
|
+
require 'ruby_apk'
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
require 'flappy/patches'
|
|
22
|
+
require 'flappy/util'
|
|
23
|
+
require 'flappy/version'
|
|
24
|
+
require 'flappy/cli'
|
|
25
|
+
|
|
26
|
+
module Flappy
|
|
27
|
+
include Util
|
|
28
|
+
end
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"AFNetworking"=>{"Podfile"=>"~>3.0", "Podfile.lock"=>"3.1.0"}, "Masonry"=>{"Podfile"=>"0.6.4", "Podfile.lock"=>"0.6.4"}, "MJExtension"=>{"Podfile"=>"3.0.11", "Podfile.lock"=>"3.0.11"}, "FMDB"=>{"Podfile"=>"2.6.2", "Podfile.lock"=>"2.6.2"}, "SCCURLConfig"=>{"Podfile"=>"0.4.8.5", "Podfile.lock"=>"0.4.8.5"}}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
source 'https://github.com/CocoaPods/Specs.git'
|
|
2
|
+
source 'http://git.souche.com/geliang/cheniu_pod.git'
|
|
3
|
+
|
|
4
|
+
platform :ios, '8.0'
|
|
5
|
+
|
|
6
|
+
target 'WorkspaceForPackageTest' do
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
pod 'AFNetworking', '~> 3.0'
|
|
10
|
+
pod 'Masonry', '0.6.4'
|
|
11
|
+
pod 'MJExtension', '3.0.11'
|
|
12
|
+
pod 'FMDB', '2.6.2'
|
|
13
|
+
pod 'SCCURLConfig', '0.4.8.5'
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
PODS:
|
|
2
|
+
- AFNetworking (3.1.0):
|
|
3
|
+
- AFNetworking/NSURLSession (= 3.1.0)
|
|
4
|
+
- AFNetworking/Reachability (= 3.1.0)
|
|
5
|
+
- AFNetworking/Security (= 3.1.0)
|
|
6
|
+
- AFNetworking/Serialization (= 3.1.0)
|
|
7
|
+
- AFNetworking/UIKit (= 3.1.0)
|
|
8
|
+
- AFNetworking/NSURLSession (3.1.0):
|
|
9
|
+
- AFNetworking/Reachability
|
|
10
|
+
- AFNetworking/Security
|
|
11
|
+
- AFNetworking/Serialization
|
|
12
|
+
- AFNetworking/Reachability (3.1.0)
|
|
13
|
+
- AFNetworking/Security (3.1.0)
|
|
14
|
+
- AFNetworking/Serialization (3.1.0)
|
|
15
|
+
- AFNetworking/UIKit (3.1.0):
|
|
16
|
+
- AFNetworking/NSURLSession
|
|
17
|
+
- FMDB (2.6.2):
|
|
18
|
+
- FMDB/standard (= 2.6.2)
|
|
19
|
+
- FMDB/standard (2.6.2)
|
|
20
|
+
- Masonry (0.6.4)
|
|
21
|
+
- MJExtension (3.0.11)
|
|
22
|
+
- SCCURLConfig (0.4.8.5)
|
|
23
|
+
|
|
24
|
+
DEPENDENCIES:
|
|
25
|
+
- AFNetworking (~> 3.0)
|
|
26
|
+
- FMDB (= 2.6.2)
|
|
27
|
+
- Masonry (= 0.6.4)
|
|
28
|
+
- MJExtension (= 3.0.11)
|
|
29
|
+
- SCCURLConfig (= 0.4.8.5)
|
|
30
|
+
|
|
31
|
+
SPEC CHECKSUMS:
|
|
32
|
+
AFNetworking: 5e0e199f73d8626b11e79750991f5d173d1f8b67
|
|
33
|
+
FMDB: 854a0341b4726e53276f2a8996f06f1b80f9259a
|
|
34
|
+
Masonry: 281802d04d787ea2973179ee8bcb50500579ede2
|
|
35
|
+
MJExtension: f9ae6ddc0f1c482c3c9af750280ccebd14381958
|
|
36
|
+
SCCURLConfig: 257b8923164231055ac482cbcabe6865a103770b
|
|
37
|
+
|
|
38
|
+
PODFILE CHECKSUM: 66906aca3cbb847c6bfefb70f7dff1a6d7552c31
|
|
39
|
+
|
|
40
|
+
COCOAPODS: 1.1.1
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"AFNetworking"=>{"Podfile"=>"~>3.0", "Podfile.lock"=>"3.1.0"}, "Masonry"=>{"Podfile"=>"0.6.4", "Podfile.lock"=>"0.6.4"}, "MJExtension"=>{"Podfile"=>"3.0.11", "Podfile.lock"=>"3.0.11"}, "FMDB"=>{"Podfile"=>"2.6.2", "Podfile.lock"=>"2.6.2"}, "SCCURLConfig"=>{"Podfile"=>"0.4.8.5", "Podfile.lock"=>"0.4.8.5"}}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
source 'https://github.com/CocoaPods/Specs.git'
|
|
2
|
+
source 'http://git.souche.com/geliang/cheniu_pod.git'
|
|
3
|
+
|
|
4
|
+
platform :ios, '8.0'
|
|
5
|
+
|
|
6
|
+
target 'WorkspaceForPackageTest' do
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
pod 'AFNetworking', '~> 3.0'
|
|
10
|
+
pod 'Masonry', '0.6.4'
|
|
11
|
+
pod 'MJExtension', '3.0.11'
|
|
12
|
+
pod 'FMDB', '2.6.2'
|
|
13
|
+
pod 'SCCURLConfig', '0.4.8.5'
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
PODS:
|
|
2
|
+
- AFNetworking (3.1.0):
|
|
3
|
+
- AFNetworking/NSURLSession (= 3.1.0)
|
|
4
|
+
- AFNetworking/Reachability (= 3.1.0)
|
|
5
|
+
- AFNetworking/Security (= 3.1.0)
|
|
6
|
+
- AFNetworking/Serialization (= 3.1.0)
|
|
7
|
+
- AFNetworking/UIKit (= 3.1.0)
|
|
8
|
+
- AFNetworking/NSURLSession (3.1.0):
|
|
9
|
+
- AFNetworking/Reachability
|
|
10
|
+
- AFNetworking/Security
|
|
11
|
+
- AFNetworking/Serialization
|
|
12
|
+
- AFNetworking/Reachability (3.1.0)
|
|
13
|
+
- AFNetworking/Security (3.1.0)
|
|
14
|
+
- AFNetworking/Serialization (3.1.0)
|
|
15
|
+
- AFNetworking/UIKit (3.1.0):
|
|
16
|
+
- AFNetworking/NSURLSession
|
|
17
|
+
- FMDB (2.6.2):
|
|
18
|
+
- FMDB/standard (= 2.6.2)
|
|
19
|
+
- FMDB/standard (2.6.2)
|
|
20
|
+
- Masonry (0.6.4)
|
|
21
|
+
- MJExtension (3.0.11)
|
|
22
|
+
- SCCURLConfig (0.4.8.5)
|
|
23
|
+
|
|
24
|
+
DEPENDENCIES:
|
|
25
|
+
- AFNetworking (~> 3.0)
|
|
26
|
+
- FMDB (= 2.6.2)
|
|
27
|
+
- Masonry (= 0.6.4)
|
|
28
|
+
- MJExtension (= 3.0.11)
|
|
29
|
+
- SCCURLConfig (= 0.4.8.5)
|
|
30
|
+
|
|
31
|
+
SPEC CHECKSUMS:
|
|
32
|
+
AFNetworking: 5e0e199f73d8626b11e79750991f5d173d1f8b67
|
|
33
|
+
FMDB: 854a0341b4726e53276f2a8996f06f1b80f9259a
|
|
34
|
+
Masonry: 281802d04d787ea2973179ee8bcb50500579ede2
|
|
35
|
+
MJExtension: f9ae6ddc0f1c482c3c9af750280ccebd14381958
|
|
36
|
+
SCCURLConfig: 257b8923164231055ac482cbcabe6865a103770b
|
|
37
|
+
|
|
38
|
+
PODFILE CHECKSUM: 66906aca3cbb847c6bfefb70f7dff1a6d7552c31
|
|
39
|
+
|
|
40
|
+
COCOAPODS: 1.1.1
|