wovnrb 2.2.2 → 2.2.3

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: 2fae998ad3e5e2d777c98b7f2f71f998767059156e3d0970ad55c93784290d64
4
- data.tar.gz: 5b3f2401d6b2a85db7aae3c6bfe4d566db2e71598b9b66b1fd394dfde6314c15
3
+ metadata.gz: b7142c7b987c9c606c3e49258ed9e0aff9948da0fb72b20f0cc830e3c0c65de1
4
+ data.tar.gz: 70868e06450c6e67a01c277403993c75432793f2a985bfdd76dac92731cc6e4a
5
5
  SHA512:
6
- metadata.gz: 6ebf7e6b5eec39b9782be78556272d88074d2ed59d07e0340f23eb818420a20a8f2db8e652c965206ccfb3f6a5b70289b57ec94dabcb68b17a5ee68c66a88081
7
- data.tar.gz: aa4777b08b7cc6f0b0e02cd8105a72af742b0f288e2aa3af39aecd2f2347ae43b591d6bdd061c9fdf85bbda145dfdfc2dc7cfead9cc8859ac97649ab6c39159d
6
+ metadata.gz: 7b3667f117278b2646b38b80488aa74f18af0bec771d3ba09bd3232a83d6175fbed349ab2ff6912f2e3201000be11590a4a83a9cb015c8cebbc2a388f66cbac3
7
+ data.tar.gz: c162e510d61ab75be43cb0e1ee8fa1e6ffd3b986b200d90b65cb1744128e87f6bc433fa4a231c69ef825a07de500c58ed3ce2c20d962fb3c2a84ae4b8157f9c6
@@ -29,7 +29,7 @@ Layout/ExtraSpacing:
29
29
  # Cop supports --auto-correct.
30
30
  # Configuration parameters: EnforcedStyle, IndentationWidth.
31
31
  # SupportedStyles: special_inside_parentheses, consistent, align_braces
32
- Layout/IndentFirstHashElement:
32
+ Layout/FirstHashElementIndentation:
33
33
  Exclude:
34
34
  - 'lib/wovnrb/text_caches/cache_base.rb'
35
35
 
@@ -37,7 +37,7 @@ Layout/IndentFirstHashElement:
37
37
  # Cop supports --auto-correct.
38
38
  # Configuration parameters: EnforcedStyle.
39
39
  # SupportedStyles: auto_detection, squiggly, active_support, powerpack, unindent
40
- Layout/IndentHeredoc:
40
+ Layout/HeredocIndentation:
41
41
  Exclude:
42
42
  - 'test/lib/lang_test.rb'
43
43
  - 'test/lib/wovnrb_test.rb'
@@ -30,7 +30,7 @@ module Wovnrb
30
30
  end
31
31
  # REQUEST_URI is expected to not contain the server name
32
32
  # heroku contains http://...
33
- @env['REQUEST_URI'] = @env['REQUEST_URI'].sub(/^.*:\/\/[^\/]+/, '') if @env['REQUEST_URI'] =~ /:\/\//
33
+ @env['REQUEST_URI'] = @env['REQUEST_URI'].sub(/^https?:\/\/[^\/]+/, '') if @env['REQUEST_URI'] =~ /^https?:\/\//
34
34
  @unmasked_pathname = @env['REQUEST_URI'].split('?')[0]
35
35
  @unmasked_pathname += '/' unless @unmasked_pathname =~ /\/$/ || @unmasked_pathname =~ /\/[^\/.]+\.[^\/.]+$/
36
36
  @unmasked_url = "#{@protocol}://#{@unmasked_host}#{@unmasked_pathname}"
@@ -193,13 +193,13 @@ module Wovnrb
193
193
  case @settings['url_pattern']
194
194
  when 'query'
195
195
  lang_param_name = @settings['lang_param_name']
196
- return uri.sub(/(^|\?|&)#{lang_param_name}=#{lang_code}(&|$)/, '\1').gsub(/(\?|&)$/, '')
196
+ uri.sub(/(^|\?|&)#{lang_param_name}=#{lang_code}(&|$)/, '\1').gsub(/(\?|&)$/, '')
197
197
  when 'subdomain'
198
198
  rp = Regexp.new('(^|(//))' + lang_code + '\.', 'i')
199
- return uri.sub(rp, '\1')
199
+ uri.sub(rp, '\1')
200
200
  # when 'path'
201
201
  else
202
- return uri.sub(/\/#{lang_code}(\/|$)/, '/')
202
+ uri.sub(/\/#{lang_code}(\/|$)/, '/')
203
203
  end
204
204
  end
205
205
 
@@ -1,3 +1,3 @@
1
1
  module Wovnrb
2
- VERSION = '2.2.2'.freeze
2
+ VERSION = '2.2.3'.freeze
3
3
  end
@@ -139,6 +139,28 @@ module Wovnrb
139
139
  assert_equal('/test/', headers.pathname_with_trailing_slash_if_present)
140
140
  end
141
141
 
142
+ def test_pathname_for_unencoded_url
143
+ h = Wovnrb::Headers.new(
144
+ Wovnrb.get_env('REQUEST_URI' => '/v0/download_html?url=https://wovn.io/'),
145
+ Store.instance.settings
146
+ )
147
+
148
+ assert_equal('/v0/download_html', h.pathname)
149
+ assert_equal('/v0/download_html', h.pathname_with_trailing_slash_if_present)
150
+ assert_equal('wovn.io/v0/download_html?url=https://wovn.io/', h.url)
151
+ end
152
+
153
+ def test_pathname_for_unencoded_url_with_http_scheme
154
+ h = Wovnrb::Headers.new(
155
+ Wovnrb.get_env('REQUEST_URI' => 'https://wovn.io/v0/download_html?url=https://wovn.io/'),
156
+ Store.instance.settings
157
+ )
158
+
159
+ assert_equal('/v0/download_html', h.pathname)
160
+ assert_equal('/v0/download_html', h.pathname_with_trailing_slash_if_present)
161
+ assert_equal('wovn.io/v0/download_html?url=https://wovn.io/', h.url)
162
+ end
163
+
142
164
  #########################
143
165
  # REDIRECT_LOCATION
144
166
  #########################
@@ -22,7 +22,7 @@ Gem::Specification.new do |spec|
22
22
  spec.add_dependency 'activesupport'
23
23
  spec.add_dependency 'addressable'
24
24
  spec.add_dependency 'lz4-ruby'
25
- spec.add_dependency 'nokogiri', '~> 1.8.1'
25
+ spec.add_dependency 'nokogiri', '>= 1.8.1'
26
26
  spec.add_dependency 'nokogumbo', '>= 1.4.0', '< 2.0.0'
27
27
  spec.add_dependency 'rack'
28
28
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wovnrb
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.2
4
+ version: 2.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeff Sandford
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2019-11-07 00:00:00.000000000 Z
12
+ date: 2020-02-25 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
@@ -57,14 +57,14 @@ dependencies:
57
57
  name: nokogiri
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
- - - "~>"
60
+ - - ">="
61
61
  - !ruby/object:Gem::Version
62
62
  version: 1.8.1
63
63
  type: :runtime
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
- - - "~>"
67
+ - - ">="
68
68
  - !ruby/object:Gem::Version
69
69
  version: 1.8.1
70
70
  - !ruby/object:Gem::Dependency
@@ -461,7 +461,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
461
461
  - !ruby/object:Gem::Version
462
462
  version: '0'
463
463
  requirements: []
464
- rubygems_version: 3.0.6
464
+ rubyforge_project:
465
+ rubygems_version: 2.7.6.2
465
466
  signing_key:
466
467
  specification_version: 4
467
468
  summary: Gem for WOVN.io