rb1drv-tools 0.1.2 → 0.1.3

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: 4b5730565dedb316b6795f926cef5d43d1cbe6ce957a0419702d24b70ccc4eb7
4
- data.tar.gz: a6387ed4120ec3d0ae05584ebf8331543437c5f9443bbcd3dd806680024c3ee2
3
+ metadata.gz: b0454b028a0ffe2577582d0e82927cf4fbebd751d2ee52bf461a11d700b2741b
4
+ data.tar.gz: e8cf26928ac6b28074e20dde1117e87e133ad103ed0c3c1d8f0e08397ff6ed45
5
5
  SHA512:
6
- metadata.gz: fddcd5a873a93f21cb579a42a5119bfada3aae518c095e6c30efaaf37917e411b0e5ecb3a6aa49369c9bc0d1b0ba02f8eff5a6d5004df7eefc2467c0428db725
7
- data.tar.gz: 5a5c9b4227f40c09f25213df4001c8a446c848c872ab0fdf45a7a622018e0b4b6977afb3dff9f783e5d4b528b47e760ee738a9a93b91bb942d977188b4a3b138
6
+ metadata.gz: 2eb4930cf747cfebc965de983422539885819fe266a6a68849f0f2b9d249f2fb819e81874ca9ca6ced7b17cdc12bdf2fe1fdadaf3d6ad584ef47c20c93f52ee0
7
+ data.tar.gz: f76989fc740f5c651377b1a417f00b9582751df1c36d5a70931e6ce4e035e947457b8c298f4ca32863bc5f026dbe8333d1951a28b61cddeff599edbdd30b2d5e
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- rb1drv-tools (0.1.2)
4
+ rb1drv-tools (0.1.3)
5
5
  rb1drv (~> 0.1)
6
6
  tty-progressbar (~> 0)
7
7
  tty-prompt (~> 0)
@@ -72,7 +72,7 @@ module Rb1drvTools
72
72
  end
73
73
  Dir[item].each do |match|
74
74
  if File.directory?(match)
75
- traverse_dir(match, target_obj.mkdir(match))
75
+ traverse_dir(match, target_obj.mkdir(File.basename(match)))
76
76
  else
77
77
  upload(match, target_obj, File.basename(match), overwrite_policy: overwrite_policy)
78
78
  end
@@ -82,7 +82,8 @@ module Rb1drvTools
82
82
  end
83
83
 
84
84
  def self.traverse_dir(source_directory, target_directory)
85
- Dir.children(source_directory).sort.each do |child|
85
+ Dir.entries(source_directory).sort.each do |child|
86
+ next if child == '.' || child == '..'
86
87
  new_path = File.join(source_directory, child)
87
88
  if File.directory?(new_path)
88
89
  new_dir = target_directory.get_child(child)
@@ -104,15 +105,23 @@ module Rb1drvTools
104
105
  return puts 'Remote file is up to date, skipped' if target_obj.mtime >= File.mtime(source_file) - 2
105
106
  end
106
107
  screen_width = TTY::Screen.width
108
+ file_size = File.size(source_file)
107
109
  if STDOUT.tty? && screen_width >= 50
108
110
  multibar = TTY::ProgressBar::Multi.new
109
- bar = multibar.register("%s :current_byte / :total_byte :byte_rate/s [:bar] :eta :percent" % source_file[0..29], total: File.size(source_file), frequency: 2, head: '>')
111
+ bar = multibar.register("%s :current_byte / :total_byte :byte_rate/s [:bar] :eta :percent" % source_file[0..29], total: file_size, frequency: 2, head: '>')
110
112
  bar.start
111
113
  end
112
114
  subbar = nil
113
- # trap(:WINCH) { bar.resize if bar }
114
115
 
115
- target_directory.upload(source_file, target_name: target_name, overwrite: true) do |ev, st|
116
+ if file_size >= 524_288_000 # 500MiB
117
+ fragment_size = 209_715_200 # 200MiB
118
+ elsif file_size >= 209_715_200 # 200MiB
119
+ fragment_size = 83_886_080 # 80MiB
120
+ else
121
+ fragment_size = 20_971_520 # 20MiB
122
+ end
123
+
124
+ target_directory.upload(source_file, target_name: target_name, overwrite: true, fragment_size: fragment_size) do |ev, st|
116
125
  case ev
117
126
  when :new_segment
118
127
  subbar = multibar.register("%4d-%-4d :current_byte / :total_byte [:bar]" % [st[:from] / 1048576, st[:to] / 1048576], total: st[:to] - st[:from] + 1, frequency: 2, head: '>')
@@ -1,3 +1,3 @@
1
1
  module Rb1drvTools
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.3"
3
3
  end
data/rb1drv-tools.gemspec CHANGED
@@ -19,7 +19,7 @@ Gem::Specification.new do |spec|
19
19
  spec.bindir = "exe"
20
20
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
21
21
  spec.require_paths = ["lib"]
22
- spec.required_ruby_version = '>= 2.5'
22
+ spec.required_ruby_version = '>= 2.3'
23
23
 
24
24
  spec.add_dependency "rb1drv", "~> 0.1"
25
25
  spec.add_dependency "tty-progressbar", "~> 0"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rb1drv-tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Xinyue Lu
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-05-21 00:00:00.000000000 Z
11
+ date: 2018-05-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rb1drv
@@ -136,7 +136,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
136
136
  requirements:
137
137
  - - ">="
138
138
  - !ruby/object:Gem::Version
139
- version: '2.5'
139
+ version: '2.3'
140
140
  required_rubygems_version: !ruby/object:Gem::Requirement
141
141
  requirements:
142
142
  - - ">="