pulse-downloader 0.1.7 → 0.1.12

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: 5ae10b909855b29f8c3f0cd5b4c2bd38ee83fc69761ae7e109411b85add11957
4
- data.tar.gz: 7eedaf2bc8852e66a7db83a1830f2d369683092293ae16255b3c26746d69a32f
3
+ metadata.gz: 17c6b467560188e6ccbf9549fe0be00188726daf87352d295788ccbbb986ead3
4
+ data.tar.gz: a88019ce7c0708767b8c76bb5796ec34950f1ddf02cd7f2e8b83cb09126bcbb8
5
5
  SHA512:
6
- metadata.gz: f02637f88ecb337014b6141c4855540cf72a6c52c5123f528999590ec5f0c88a21da7a1e01c3c968c7d823b7da7240f63c433610da4fec947a4331d78a8c5f0f
7
- data.tar.gz: a4d222d168bcec0388c535749fd44f30616458fdb798a44a4229004c56bf6298ee6a4ba388e01afbc4fbccad1390f0cbaad0d618a441e134f6e870e39a77feb0
6
+ metadata.gz: b96d3ec2c08d342d4884c8d413d5133d1a71776f12e9dfc8c12829db9f1f0fc02f784f58f07481692f13b8d7a1a2dce66bd7e2c049077d1a337a676876a15c5b
7
+ data.tar.gz: b60ca5f1204ae2efd86c31c946dbcbff3d02c4279d83fd8f36c07d9909e4103db1df98b9009b5305b8271c3ba6c6fe7bda4daf708bb0505f15aab316e08af0a5
data/Gemfile.lock CHANGED
@@ -1,23 +1,24 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- pulse-downloader (0.1.4)
4
+ pulse-downloader (0.1.11)
5
5
  active_attr (~> 0.15)
6
6
  httparty (~> 0.18)
7
7
  nokogiri (~> 1.11)
8
+ progress_bar (~> 1.3.3)
8
9
 
9
10
  GEM
10
11
  remote: https://rubygems.org/
11
12
  specs:
12
- actionpack (6.1.3.1)
13
- actionview (= 6.1.3.1)
14
- activesupport (= 6.1.3.1)
13
+ actionpack (6.1.3.2)
14
+ actionview (= 6.1.3.2)
15
+ activesupport (= 6.1.3.2)
15
16
  rack (~> 2.0, >= 2.0.9)
16
17
  rack-test (>= 0.6.3)
17
18
  rails-dom-testing (~> 2.0)
18
19
  rails-html-sanitizer (~> 1.0, >= 1.2.0)
19
- actionview (6.1.3.1)
20
- activesupport (= 6.1.3.1)
20
+ actionview (6.1.3.2)
21
+ activesupport (= 6.1.3.2)
21
22
  builder (~> 3.1)
22
23
  erubi (~> 1.4)
23
24
  rails-dom-testing (~> 2.0)
@@ -26,9 +27,9 @@ GEM
26
27
  actionpack (>= 3.0.2, < 7.0)
27
28
  activemodel (>= 3.0.2, < 7.0)
28
29
  activesupport (>= 3.0.2, < 7.0)
29
- activemodel (6.1.3.1)
30
- activesupport (= 6.1.3.1)
31
- activesupport (6.1.3.1)
30
+ activemodel (6.1.3.2)
31
+ activesupport (= 6.1.3.2)
32
+ activesupport (6.1.3.2)
32
33
  concurrent-ruby (~> 1.0, >= 1.0.2)
33
34
  i18n (>= 1.6, < 2)
34
35
  minitest (>= 5.1)
@@ -45,6 +46,7 @@ GEM
45
46
  crass (1.0.6)
46
47
  erubi (1.10.0)
47
48
  hashdiff (1.0.1)
49
+ highline (2.0.3)
48
50
  httparty (0.18.1)
49
51
  mime-types (~> 3.0)
50
52
  multi_xml (>= 0.5.2)
@@ -69,6 +71,10 @@ GEM
69
71
  multi_xml (0.6.0)
70
72
  nokogiri (1.11.3-x86_64-linux)
71
73
  racc (~> 1.4)
74
+ options (2.3.2)
75
+ progress_bar (1.3.3)
76
+ highline (>= 1.6, < 3)
77
+ options (~> 2.3.0)
72
78
  pry (0.14.1)
73
79
  coderay (~> 1.1)
74
80
  method_source (~> 1.0)
@@ -25,6 +25,8 @@ module Pulse
25
25
  # TODO: Validation
26
26
  # TODO: Retry
27
27
  # TODO: DNS
28
+ # TODO: Multiple filetypes
29
+ # TODO: lib/pulse/downloader/file_downloader.rb:13: warning: URI.escape is obsolete
28
30
  def initialize(url:,
29
31
  file_type:,
30
32
  save_data: false,
@@ -10,11 +10,11 @@ module Pulse
10
10
  private
11
11
 
12
12
  def compute_save_path(url)
13
- "#{save_path}/#{compute_filename(url)}".gsub('//', '/')
13
+ "#{save_path}/#{compute_filename(url)}".gsub('//', '/').gsub(' ', '')
14
14
  end
15
15
 
16
16
  def compute_filename(file_path)
17
- file_path.scan(/[\/]\S+/).last
17
+ file_path.scan(/[\/]\S+/).last.split('/').last
18
18
  end
19
19
 
20
20
  def list_files_in(path)
@@ -1,8 +1,6 @@
1
1
  module Pulse
2
2
  module Downloader
3
3
  module FileDownloader
4
- require 'uri'
5
-
6
4
  # save_path and verify_ssl are defined in client.rb
7
5
  def download(file_path, progress_bar=nil)
8
6
  raise "save_path is undefined" if save_data && save_path == ''
@@ -10,7 +8,7 @@ module Pulse
10
8
 
11
9
  @start_time = get_micro_second_time
12
10
 
13
- file_data = HTTParty.get(compute_file_link(file_path), verify: verify_ssl)
11
+ file_data = HTTParty.get(escape(compute_file_link(file_path)), verify: verify_ssl)
14
12
 
15
13
  @end_time = get_micro_second_time
16
14
 
@@ -68,6 +66,37 @@ module Pulse
68
66
  def section?(file_path)
69
67
  file_path[0] == '#'
70
68
  end
69
+
70
+ def escape(str)
71
+ str.gsub("Space", "%20")
72
+ str.gsub("$", "\%24")
73
+ str.gsub("&", "\%26")
74
+ str.gsub("`", "\%60")
75
+ str.gsub(":", "\%3A")
76
+ str.gsub("<", "\%3C")
77
+ str.gsub(">", "\%3E")
78
+ str.gsub("[", "\%5B")
79
+ str.gsub("]", "\%5D")
80
+ str.gsub("{", "\%7B")
81
+ str.gsub("}", "\%7D")
82
+ str.gsub("“", "\%22")
83
+ str.gsub('"', "\%22")
84
+ str.gsub("+", "\%2B")
85
+ str.gsub("#", "\%23")
86
+ str.gsub("\%", "\%25")
87
+ str.gsub("@", "\%40")
88
+ str.gsub("/", "\%2F")
89
+ str.gsub(";", "\%3B")
90
+ str.gsub("=", "\%3D")
91
+ str.gsub("?", "\%3F")
92
+ str.gsub("\\", "\%5C")
93
+ str.gsub("^", "\%5E")
94
+ str.gsub("|", "\%7C")
95
+ str.gsub("~", "\%7E")
96
+ str.gsub("‘", "\%27")
97
+ str.gsub(",", "\%2C")
98
+ str
99
+ end
71
100
  end
72
101
  end
73
102
  end
@@ -1,5 +1,5 @@
1
1
  module Pulse
2
2
  module Downloader
3
- VERSION = "0.1.7"
3
+ VERSION = "0.1.12"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pulse-downloader
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - trex22
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-04-22 00:00:00.000000000 Z
11
+ date: 2021-05-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty