vfastdev 0.1.8 → 0.1.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 (3) hide show
  1. checksums.yaml +4 -4
  2. data/bin/vfastdev +80 -14
  3. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: aec54b3d19de0c5df31ea509bf1c01d54a08e691
4
- data.tar.gz: b9950f0d64e91f9ea16a84b0381ae8727e31f649
3
+ metadata.gz: 2f7ecdf7b933adeddd9e52b8dc64888beb9b6b77
4
+ data.tar.gz: d9927eebb60b0b50421de554b8ecf3e3d76ee9f9
5
5
  SHA512:
6
- metadata.gz: c82df81552723c9594639ab64591d04b78fc847545425f04a2e15fedefb8a2a2f27c020914cc8b590ec2eb718eecc05de65ccf319a3ff8ebe7841a65409b46ab
7
- data.tar.gz: 615fca763462f7f07682457aaa28ddfe6521cf90f29154e6a914a8e19e005bb59089152db40336e74254a7b30dbe23fd60dece540338901d12da3cbd8cf69467
6
+ metadata.gz: 6026a90d195ee48898c97137ec27f7dc5604444a9d9845a6ac2ba76fea409e9e81db198f3626ac2d54171c4e5432a0c8024aaa9ae7b855c2fa0a0720ed47bea7
7
+ data.tar.gz: da072d107c2e4a38c1c00433c0ca3bc1aa0fc86bcfe810fad5c21b42964749f6cc03bd5530a32a91baf3ca15360099c786e07a239cc180cf9329048de21e055f
data/bin/vfastdev CHANGED
@@ -30,7 +30,7 @@ usage = <<EOF
30
30
 
31
31
  \033[1mEXAMPLE\033[0m
32
32
  vfastdev -k "VSBizUserCenter VSBizCollection"
33
- 保留VSBizUserCenter和VSBizCollection作为工程引入,其它业务模块通过静态库引入。Spec,VSBaseModule,VSPublic,Pods工程会默认保留。
33
+ 保留VSBizUserCenter和VSBizCollection作为工程引入,其它业务模块通过静态库引入。Spec,Pods工程会默认保留。
34
34
 
35
35
  \033[1mISSUES\033[0m
36
36
  1.如果你的代码版本和develop相差太多,可能导致出现“找不到头文件”,“没有这个方法”,“找不到符号”等问题
@@ -43,14 +43,13 @@ usage = <<EOF
43
43
  7.出现___llvm_profile_runtime未找到符号的错误,可在Spec target的OTHER_LDFLAGS增加-fprofile-instr-generate来解决。
44
44
  8.由于大部分模块都变成静态库,那么会导致查找不到其他模块的源码。
45
45
  9.目前服务器架设在我的iMac上面,如果公司路由器重启会导致ip改变,会导致静态库下载失败。
46
- 10.更多细节参考文档
46
+ 10.VSBaseModule和VSPublic作为静态库引入的方法是拷贝静态库到TARGET_BUILD_DIR目录下面,所以celan工程之后需要再次运行命令
47
+ 11.更多细节参考文档
47
48
  EOF
48
49
 
49
-
50
-
51
50
  class VFastDev
52
51
  def initialize(options)
53
- @version = '0.1.8'
52
+ @version = '0.1.10'
54
53
  @vs_project_names = parse_vs_project_names
55
54
  @vs_framework_dir = 'VSFrameworks'
56
55
  @fastdev_dir = 'FastDev'
@@ -78,8 +77,8 @@ class VFastDev
78
77
  exit 0
79
78
  end
80
79
  end
81
- @project_kept_names << "VSBaseModule"
82
- @project_kept_names << "VSPublic"
80
+ # @project_kept_names << "VSBaseModule"
81
+ # @project_kept_names << "VSPublic"
83
82
  if @sync_main_project
84
83
  puts "还没实现"
85
84
  else
@@ -90,6 +89,7 @@ class VFastDev
90
89
  download_libs
91
90
  unzip_libs
92
91
  end
92
+ copy_framework_to_products
93
93
  del_sepc_app
94
94
  say_after_done
95
95
  end
@@ -132,10 +132,14 @@ class VFastDev
132
132
  end
133
133
 
134
134
  def ajust_project
135
+ @project_kept_names << "VSPublic"
136
+ @project_kept_names << "VSBaseModule"
135
137
  exclude_framework_names = [] #排除在外的静态库
136
138
  @project_kept_names.each do |name|
137
- exclude_framework_names << name + ".framework"
139
+ exclude_framework_names << name + ".framework"
138
140
  end
141
+ exclude_framework_names << "VSPublic" + ".framework"
142
+ exclude_framework_names << "VSBaseModule" + ".framework"
139
143
 
140
144
  vs_framework_paths = [] #所有静态库路径
141
145
  @vs_project_names.each do |name|
@@ -195,7 +199,6 @@ class VFastDev
195
199
  file_ref.set_path(@vs_framework_dir + "/" + file_ref.path)
196
200
  end
197
201
  end
198
-
199
202
  puts '修改Copy Modular * 脚本'
200
203
  project.targets.each do |target|
201
204
  target.shell_script_build_phases.each do |phase|
@@ -239,9 +242,9 @@ XML
239
242
  # 输出静态库版本信息
240
243
  def print_version_info
241
244
  begin
242
- url = 'http://192.168.33.79:8000/lib/latest_framework_info?app_id=Spec'
245
+ url = 'http://10.199.214.86:8000/lib/latest_framework_info?app_id=Spec'
243
246
  unless @commit_hash.nil?
244
- url = "http://192.168.33.79:8000/lib/framework_info?app_id=Spec&git_commit_hash=#{@commit_hash}"
247
+ url = "http://10.199.214.86:8000/lib/latest_framework_info?app_id=Spec&git_commit_hash=#{@commit_hash}"
245
248
  end
246
249
  open(url) do |f|
247
250
  puts "静态库版本信息: " + f.read
@@ -254,7 +257,7 @@ XML
254
257
  # 输出静态库列表
255
258
  def print_lib_list
256
259
  begin
257
- open('http://192.168.33.79:8000/lib/framework_info_list?app_id=Spec') do |f|
260
+ open('http://10.199.214.86:8000/lib/framework_info_list?app_id=Spec') do |f|
258
261
  puts '静态库版本列表'
259
262
  puts f.read
260
263
  end
@@ -284,7 +287,7 @@ XML
284
287
  puts '下载:' + name
285
288
  File.open("#{@vs_framework_dir}/#{name}.framework.zip", 'wb') do |f|
286
289
  framework_name = "#{name}.framework"
287
- url = "http://192.168.33.79:8000/lib/dowload_framework_file?app_id=Spec&name=#{framework_name}"
290
+ url = "http://10.199.214.86:8000/lib/dowload_framework_file?app_id=Spec&name=#{framework_name}"
288
291
  unless @commit_hash.nil?
289
292
  url = url + "&git_commit_hash=#{@commit_hash}"
290
293
  end
@@ -323,7 +326,12 @@ done
323
326
  end
324
327
 
325
328
  def say_after_done
326
- puts 'FastDev完成。关闭旧的Spec.xcworkspace,打开FastDev/Spec.xcworkspace文件开始开发。'
329
+ say = <<EOF
330
+ FastDev完成。关闭旧的Spec.xcworkspace,打开FastDev/Spec.xcworkspace文件开始开发。
331
+ EOF
332
+ # \033[33mVSBaseModule和VSPublic作为静态库引入的方法是拷贝静态库到TARGET_BUILD_DIR目录下面,所以celan工程之后需要再次运行命令!!!\033[0m
333
+ puts say
334
+
327
335
  end
328
336
  def del_sepc_app
329
337
  system `
@@ -337,8 +345,66 @@ fi
337
345
 
338
346
  `
339
347
  end
348
+ def copy_framework_to_products
349
+ if not @project_kept_names.include?("VSPublic")
350
+
351
+ `
352
+ sdk_version=$(xcodebuild -showsdks | grep -oE 'iphonesimulator[0-9\.]+' | grep -oE '[0-9\.]+')
353
+ # 输出目录下面的文件
354
+ TARGET_BUILD_DIR=$(xcodebuild -workspace Spec.xcworkspace -scheme Spec -showBuildSettings -sdk iphonesimulator${sdk_version} | grep 'TARGET_BUILD_DIR' | cut -d '=' -f2)
355
+ FRAMEWORK_PATH="${TARGET_BUILD_DIR}/VSPublic.framework"
356
+
357
+ if [ -d $FRAMEWORK_PATH ];then
358
+ rm -r $FRAMEWORK_PATH
359
+ else
360
+ mkdir -p $FRAMEWORK_PATH
361
+ fi
362
+ echo $FRAMEWORK_PATH
363
+ cp -R VSFrameworks/VSPublic.framework/ $FRAMEWORK_PATH
364
+ `
365
+ else
366
+ `
367
+ sdk_version=$(xcodebuild -showsdks | grep -oE 'iphonesimulator[0-9\.]+' | grep -oE '[0-9\.]+')
368
+ # 输出目录下面的文件
369
+ TARGET_BUILD_DIR=$(xcodebuild -workspace Spec.xcworkspace -scheme Spec -showBuildSettings -sdk iphonesimulator${sdk_version} | grep 'TARGET_BUILD_DIR' | cut -d '=' -f2)
370
+ FRAMEWORK_PATH="${TARGET_BUILD_DIR}/VSPublic.framework"
371
+
372
+ if [ -d $FRAMEWORK_PATH ];then
373
+ rm -r $FRAMEWORK_PATH
374
+ fi
375
+ `
376
+ end
377
+ if not @project_kept_names.include?("VSBaseModule")
378
+ `
379
+ sdk_version=$(xcodebuild -showsdks | grep -oE 'iphonesimulator[0-9\.]+' | grep -oE '[0-9\.]+')
380
+ # 输出目录下面的文件
381
+ TARGET_BUILD_DIR=$(xcodebuild -workspace Spec.xcworkspace -scheme Spec -showBuildSettings -sdk iphonesimulator${sdk_version} | grep 'TARGET_BUILD_DIR' | cut -d '=' -f2)
382
+ FRAMEWORK_PATH="${TARGET_BUILD_DIR}/VSBaseModule.framework"
383
+
384
+ if [ -d $FRAMEWORK_PATH ];then
385
+ rm -r $FRAMEWORK_PATH
386
+ else
387
+ mkdir -p $FRAMEWORK_PATH
388
+ fi
389
+ cp -R VSFrameworks/VSBaseModule.framework/ $FRAMEWORK_PATH
390
+ `
391
+ else
392
+ `
393
+ sdk_version=$(xcodebuild -showsdks | grep -oE 'iphonesimulator[0-9\.]+' | grep -oE '[0-9\.]+')
394
+ # 输出目录下面的文件
395
+ TARGET_BUILD_DIR=$(xcodebuild -workspace Spec.xcworkspace -scheme Spec -showBuildSettings -sdk iphonesimulator${sdk_version} | grep 'TARGET_BUILD_DIR' | cut -d '=' -f2)
396
+ FRAMEWORK_PATH="${TARGET_BUILD_DIR}/VSBaseModule.framework"
397
+
398
+ if [ -d $FRAMEWORK_PATH ];then
399
+ rm -r $FRAMEWORK_PATH
400
+ fi
401
+ `
402
+ end
403
+ end
340
404
  end
341
405
 
406
+
407
+
342
408
  dev_opts = {
343
409
  keep:[],
344
410
  no_download_lib:false ,
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vfastdev
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.1.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sen.Mao