pindo 4.7.8 → 4.8.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9a9d88e4cefb78e407a08819025c3e4e04ddca1b33dfdbaa2910643ca0314f9a
4
- data.tar.gz: c4870fd7e8b90626cf398b48bfb55b432ce4e867bd2737ae1b8793056353bb0e
3
+ metadata.gz: 26a76bb1d95b970919b4b386f52841ddc4cb21ac22a7b5d433c7fcc88b6030da
4
+ data.tar.gz: e0f0eb7ec08a2fca3489b0d469fe23eaa0f34ea9d88bcb209b50df822f42e406
5
5
  SHA512:
6
- metadata.gz: 9f30678026ced27fe6c692449d26cd2518d5ac8f83e410ef5c7382c475b62140e2c6e9939e24388d32235d10554aca61bf48a113f7df82b94193d2bff8f72a29
7
- data.tar.gz: 314c346c4393769e9b2e98b65fbee1d28f8ff373215422adb5c27f327dbd610faa9b917e8a684dcc0bb37c72fcd45161cab32e9a6f9e7f1e08a2288c49ecb01c
6
+ metadata.gz: 9d95421e56c75ed51b5d75b7e84aa2e7dba6c566379d6cc23e3966aa616dc15f0c433552b5963c04ae36f488891dc80b1f2ac8b79f0069d166daaaf59c942bd0
7
+ data.tar.gz: a3c6c60f5398b336f17a79bff657a4eb0b28882328828fc05507bbe38a03e4785f455492dffd0800df788d686351ecc3376a88e8e69bd3e2268337417571f2f6
@@ -94,14 +94,12 @@ module Pindo
94
94
 
95
95
  upload_path_key = upload_path + file_uuid + extension
96
96
 
97
- task_num = 5
97
+ task_num = 10
98
98
 
99
99
  puts "文件路径: #{@upload_binary_file}"
100
100
  puts "文件大小: #{total_m}M"
101
101
  puts "上传路径: #{upload_path_key}"
102
102
  puts "切片大小: 5 MB"
103
- puts "最大线程数: #{task_num}"
104
- puts
105
103
 
106
104
  upload_result = nil
107
105
 
@@ -110,7 +108,17 @@ module Pindo
110
108
 
111
109
  upload_id= result_data["data"]["uploadId"]
112
110
  @upload_params_list = result_data["data"]["uploadParamsList"]
111
+ task_num = @upload_params_list.length
112
+ if task_num < 2
113
+ task_num = 2
114
+ end
113
115
 
116
+ if task_num > 100
117
+ task_num = 100
118
+ end
119
+
120
+ puts "最大线程数: #{task_num}"
121
+ puts
114
122
 
115
123
  Funlog.instance.fancyinfo_start("开始上传...")
116
124
  @upload_eTags = []
@@ -121,6 +129,7 @@ module Pindo
121
129
  multi_task_upload_data_req(task_num:task_num)
122
130
 
123
131
  result_data = post_upload_finish_req(upload_path_key:upload_path_key, upload_id:upload_id, eTags:@upload_eTags)
132
+
124
133
  if result_data["code"] == 200
125
134
  upload_result = upload_path_key
126
135
  Funlog.instance.fancyinfo_success("文件#{@upload_binary_file} 上传成功! 😎😎😎")
@@ -136,7 +145,6 @@ module Pindo
136
145
 
137
146
  def multi_task_upload_data_req(task_num:1)
138
147
 
139
- # puts "add task_num :#{task_num}"
140
148
 
141
149
  for i in 0..@upload_params_list.length-1 do
142
150
  @upload_params_list[i]["retryCount"] = 3
@@ -145,10 +153,9 @@ module Pindo
145
153
  while @upload_params_list.size > 0
146
154
  upload_params_list_temp = []
147
155
  #每次最大5个线程上传
148
- for i in 0..task_num do
156
+ for i in 1..task_num do
149
157
  upload_params_list_temp << @upload_params_list.shift
150
158
  end
151
-
152
159
  hydra = Typhoeus::Hydra.new
153
160
  while upload_params_list_temp.size > 0
154
161
  upload_params_item = upload_params_list_temp.shift
@@ -172,11 +179,6 @@ module Pindo
172
179
  single_task_upload_part_data_req(upload_params_item:upload_params_item)
173
180
  end
174
181
 
175
- # if !@upload_params_list.nil? && @upload_params_list.length > 0
176
- # for i in 0..@upload_params_list.length-1 do
177
- # eTag_item = single_task_upload_part_data_req(upload_params_item:@upload_params_list[i])
178
- # end
179
- # end
180
182
 
181
183
  return @eTags
182
184
  end
@@ -200,13 +202,8 @@ module Pindo
200
202
 
201
203
  request = create_req(upload_url:upload_url, body_data:put_data, read_length:read_length)
202
204
 
203
- # @upload_num = start_position
204
-
205
205
  request.on_progress do |dltotal, dlnow, ultotal, ulnow|
206
- # puts "dltotal (#{dltotal}), dlnow (#{dlnow}), ultotal (#{ultotal}), ulnow (#{ulnow})"
207
206
  if ulnow
208
- # @upload_num = start_position + ulnow
209
- # set_progress(@upload_num, @file_size)
210
207
  @progress_bar.update_upload_index(upload_part:part_no, upload_size:ulnow)
211
208
  @progress_bar.update_upload_progress()
212
209
  end
@@ -214,17 +211,6 @@ module Pindo
214
211
 
215
212
  eTag_item = nil
216
213
 
217
- request.on_failure do |response|
218
- @progress_bar.delete_upload_index(upload_part:part_no)
219
- upload_params_item["retryCount"] = upload_params_item["retryCount"] - 1
220
- if upload_params_item["retryCount"] > 0
221
- @upload_params_list.push(upload_params_item)
222
- else
223
- Funlog.instance.fancyinfo_error("文件#{@upload_binary_file} 上传失败! 😭😭😭")
224
- raise Informative "上传文件失败"
225
- end
226
- end
227
-
228
214
  request.on_complete do |response|
229
215
  if response.success?
230
216
  @progress_bar.complete_upload_index(upload_part:part_no, complete_size:read_length)
@@ -238,7 +224,7 @@ module Pindo
238
224
  @upload_params_list.push(upload_params_item)
239
225
  else
240
226
  Funlog.instance.fancyinfo_error("文件#{@upload_binary_file} 上传失败! 😭😭😭")
241
- raise Informative "上传文件失败"
227
+ raise Informative, "上传文件失败"
242
228
  end
243
229
  end
244
230
  end
@@ -256,7 +242,6 @@ module Pindo
256
242
  def create_req(upload_url:nil, body_data:nil, read_length:nil)
257
243
 
258
244
  request = nil
259
-
260
245
  proxy_options = {
261
246
  proxy: ENV['http_proxy'] || ENV['https_proxy'],
262
247
  proxyuserpwd: "#{ENV['HTTP_PROXY_USER']}:#{ENV['HTTP_PROXY_PASSWORD']}"
data/lib/pindo/version.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  module Pindo
2
2
 
3
- VERSION = "4.7.8"
3
+ VERSION = "4.8.0"
4
4
 
5
5
  class VersionCheck
6
6
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pindo
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.7.8
4
+ version: 4.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - wade
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-05-23 00:00:00.000000000 Z
11
+ date: 2024-05-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: claide