reaver 0.17.0 → 0.18.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: 149dbd0eae5bd1597a5e66059cc765c25f9f63d05d9bfdf2d7ec6484564b7bbb
4
- data.tar.gz: 30e91e2d44090b1f0be9383eba41b25f854c453622de4173a910da6c12fbecf0
3
+ metadata.gz: 2901f962d15278580c6d7ea62b1d1c97fe5b06781c200fde2c481a44aa21f403
4
+ data.tar.gz: d004841568733e55a6f649a2fc729caa734e77dc593ee9e1738f2d5bed476377
5
5
  SHA512:
6
- metadata.gz: 34db056ae50024e6358bf14edab543a80466485ffcc5896bc17bd462ba5b33658d50adc366e328c4f43fdb99a463423753e2e49042ca965e77dd38666eec71b1
7
- data.tar.gz: 0c5147410254e9019022093668db7347c3d8c41c02c94d93ddb825ccedd6a6390674aa275c1881986ee0f8f75378af056f0b8d44348aa45fbfad3dbcd2388edf
6
+ metadata.gz: 82a4742b95303867a142d16f2dd55bad1a22aa0b26d5aa862abf87c22ebb1cfd694c0d76827362adfcf7e961684aa6601403b41444f527750d38d632b8d5b5ef
7
+ data.tar.gz: 6b0b51e5e1a6ec72b2e01ce68b4e668b6ef1f984bc1a9378aa31cd164070557ad579981a4e562d8e386f9327eefd867a90e304fe081b1c0526e8c30500981233
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -1,11 +1,13 @@
1
- ## 0.17.0 - Oct. 2025
1
+ ## 0.18.0 - Oct. 2025
2
2
 
3
+ - Adding threads on tasks
3
4
  - Random user-agent on each download
4
5
  - Code improvement with Rubocop
5
6
 
6
7
  ### Fixes
7
8
 
8
9
  - Skip in not things or things[] is nil
10
+ - Error on download with file.path
9
11
 
10
12
  ## 0.16.0, release 01/2025
11
13
 
@@ -17,10 +17,10 @@ module Reaver
17
17
  def load_yaml
18
18
  puts ">> Loading #{@file}..."
19
19
  @tasks = if RUBY_VERSION >= '3.0'
20
- YAML.load_file(@file, permitted_classes: [Time, Symbol])
21
- else
22
- @tasks = YAML.load_file(@file)
23
- end
20
+ YAML.load_file(@file, permitted_classes: [Time, Symbol])
21
+ else
22
+ @tasks = YAML.load_file(@file)
23
+ end
24
24
  rescue StandardError => e
25
25
  raise e, "loading YAML fail for #{@file}: #{e.message}"
26
26
  end
@@ -33,18 +33,24 @@ module Reaver
33
33
  def launch(metadata)
34
34
  return if !@tasks['things'] || @tasks['things'].nil?
35
35
 
36
+ threads = []
36
37
  @tasks['things'].each do |task|
37
- if task['git']
38
- Reaver::Git.new(task['url'], task['dest_dir'])
39
- else
40
- do_thing(task)
41
- end
42
- metadata.info['changed'] = @changed
38
+ threads << Thread.new { git_or_not(task, metadata) }
43
39
  end
40
+ threads.each(&:join)
44
41
  end
45
42
 
46
43
  protected
47
44
 
45
+ def git_or_not(task, metadata)
46
+ if task['git']
47
+ Reaver::Git.new(task['url'], task['dest_dir'])
48
+ else
49
+ do_thing(task)
50
+ end
51
+ metadata.info['changed'] = @changed
52
+ end
53
+
48
54
  def do_thing(task)
49
55
  hash_exist(task['name'])
50
56
  Reaver.download(task['url'], task['name'])
@@ -17,7 +17,7 @@ module Reaver
17
17
  options = {}
18
18
 
19
19
  Whirly.start do
20
- Whirly.status = "downloading #{dest}"
20
+ Whirly.status = "Downloading #{dest}"
21
21
  options['User-Agent'] = agent_list
22
22
  downloaded_file = URI.open(url, options)
23
23
 
@@ -43,7 +43,7 @@ module Reaver
43
43
  if file.is_a?(StringIO)
44
44
  tempfile = Tempfile.new('open-uri', binmode: true)
45
45
  IO.copy_stream(file, tempfile.path)
46
- FileUtils.mv file.path, dest
46
+ FileUtils.mv tempfile.path, dest
47
47
  else
48
48
  IO.copy_stream(file, dest)
49
49
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Reaver
4
- VERSION = '0.17.0'
4
+ VERSION = '0.18.0'
5
5
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: reaver
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.17.0
4
+ version: 0.18.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - szorfein
metadata.gz.sig CHANGED
Binary file