rails-reverse-proxy 0.10.1 → 0.11.0

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
- SHA1:
3
- metadata.gz: 28f2553cbcd88d2176d2527f164b02e1f6b449fc
4
- data.tar.gz: bd8e18ad3f8dd64bf29906f9c86004f46d15388f
2
+ SHA256:
3
+ metadata.gz: 6456ffe718138ee9846ef5579c7f67e9aa60339e6b208e4c985c3b64caa7cca8
4
+ data.tar.gz: 993aa4fe65082f18776066abc7b013722407b5eeb41f0442a6e0776ba8676b64
5
5
  SHA512:
6
- metadata.gz: a34d6fec04b73d6021ea961468a2715e92db14118fdd689357228329f5a11d62db5a594723d9a08a5686273509f9a7e8eabfc56108aa3294d17cbe144152882f
7
- data.tar.gz: 15e38cd70ab31749f0b170cfeed2ce6b41a98a892507000b4af0b33c4a02855a9bbdae57c1be7939bde2b33b711d29958117e45adb191e83cbbf9b94f758145f
6
+ metadata.gz: 801d5819e6d0538512588927f7dc98bd451dc4ad3bcdaaaa73c65a2b8e58280bb7e2389fa7f682f28c7abeb121da6774d2463c44dbc62b1851d05c3be173a10a
7
+ data.tar.gz: 25777c89c3516b8b306a26a52d6b938d02f70b73b2b0ffd0003a0974afec298c5428f1b7938710d0162b653f17293ddd703540fa45853fbd147a6cef9b55831a
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.4.2
1
+ 2.7.4
data/CHANGELOG.md ADDED
@@ -0,0 +1,9 @@
1
+ ## 0.11.0
2
+
3
+ BUG FIXES:
4
+
5
+ * Update nokogiri gem in development to work with arm64 systems
6
+
7
+ BREAKING CHANGES:
8
+
9
+ * Add option to pass through compression, with new default as disabled [[#27](https://github.com/axsuul/rails-reverse-proxy/pull/27), [kylewlacy](https://github.com/kylewlacy)]
data/Gemfile CHANGED
@@ -1,14 +1,15 @@
1
1
  source "http://rubygems.org"
2
2
 
3
- gem 'actionpack'
4
- gem 'addressable'
3
+ gem "actionpack"
4
+ gem "addressable"
5
5
 
6
6
  # Add dependencies to develop your gem here.
7
7
  # Include everything needed to run rake, tests, features, etc.
8
8
  group :development do
9
- gem "shoulda", ">= 0"
10
- gem "rdoc", "~> 3.12"
11
9
  gem "bundler", "~> 1.0"
12
- gem "jeweler", "~> 2.1.2"
10
+ gem "jeweler", "~> 2.3.9"
11
+ gem "nokogiri", ">= 1.11.3"
12
+ gem "rdoc", "~> 3.12"
13
+ gem "shoulda", ">= 0"
13
14
  gem "simplecov", ">= 0"
14
15
  end
data/Gemfile.lock CHANGED
@@ -1,103 +1,110 @@
1
1
  GEM
2
2
  remote: http://rubygems.org/
3
3
  specs:
4
- actionpack (4.2.1)
5
- actionview (= 4.2.1)
6
- activesupport (= 4.2.1)
7
- rack (~> 1.6)
8
- rack-test (~> 0.6.2)
9
- rails-dom-testing (~> 1.0, >= 1.0.5)
10
- rails-html-sanitizer (~> 1.0, >= 1.0.1)
11
- actionview (4.2.1)
12
- activesupport (= 4.2.1)
4
+ actionpack (7.0.1)
5
+ actionview (= 7.0.1)
6
+ activesupport (= 7.0.1)
7
+ rack (~> 2.0, >= 2.2.0)
8
+ rack-test (>= 0.6.3)
9
+ rails-dom-testing (~> 2.0)
10
+ rails-html-sanitizer (~> 1.0, >= 1.2.0)
11
+ actionview (7.0.1)
12
+ activesupport (= 7.0.1)
13
13
  builder (~> 3.1)
14
- erubis (~> 2.7.0)
15
- rails-dom-testing (~> 1.0, >= 1.0.5)
16
- rails-html-sanitizer (~> 1.0, >= 1.0.1)
17
- activesupport (4.2.1)
18
- i18n (~> 0.7)
19
- json (~> 1.7, >= 1.7.7)
20
- minitest (~> 5.1)
21
- thread_safe (~> 0.3, >= 0.3.4)
22
- tzinfo (~> 1.1)
23
- addressable (2.5.0)
24
- public_suffix (~> 2.0, >= 2.0.2)
25
- builder (3.2.3)
14
+ erubi (~> 1.4)
15
+ rails-dom-testing (~> 2.0)
16
+ rails-html-sanitizer (~> 1.1, >= 1.2.0)
17
+ activesupport (7.0.1)
18
+ concurrent-ruby (~> 1.0, >= 1.0.2)
19
+ i18n (>= 1.6, < 2)
20
+ minitest (>= 5.1)
21
+ tzinfo (~> 2.0)
22
+ addressable (2.4.0)
23
+ builder (3.2.4)
24
+ concurrent-ruby (1.1.9)
25
+ crass (1.0.6)
26
26
  descendants_tracker (0.0.4)
27
27
  thread_safe (~> 0.3, >= 0.3.1)
28
- docile (1.1.5)
29
- erubis (2.7.0)
28
+ docile (1.4.0)
29
+ erubi (1.10.0)
30
30
  faraday (0.9.2)
31
31
  multipart-post (>= 1.2, < 3)
32
- git (1.3.0)
33
- github_api (0.11.3)
34
- addressable (~> 2.3)
35
- descendants_tracker (~> 0.0.1)
32
+ git (1.10.2)
33
+ rchardet (~> 1.8)
34
+ github_api (0.16.0)
35
+ addressable (~> 2.4.0)
36
+ descendants_tracker (~> 0.0.4)
36
37
  faraday (~> 0.8, < 0.10)
37
- hashie (>= 1.2)
38
- multi_json (>= 1.7.5, < 2.0)
39
- nokogiri (~> 1.6.0)
40
- oauth2
41
- hashie (3.5.5)
42
- highline (1.7.8)
43
- i18n (0.7.0)
44
- jeweler (2.1.2)
38
+ hashie (>= 3.4)
39
+ mime-types (>= 1.16, < 3.0)
40
+ oauth2 (~> 1.0)
41
+ hashie (5.0.0)
42
+ highline (2.0.3)
43
+ i18n (1.9.1)
44
+ concurrent-ruby (~> 1.0)
45
+ jeweler (2.3.9)
45
46
  builder
46
- bundler (>= 1.0)
47
+ bundler
47
48
  git (>= 1.2.5)
48
- github_api (~> 0.11.0)
49
+ github_api (~> 0.16.0)
49
50
  highline (>= 1.6.15)
50
51
  nokogiri (>= 1.5.10)
52
+ psych
51
53
  rake
52
54
  rdoc
53
- semver
55
+ semver2
54
56
  json (1.8.6)
55
- jwt (1.5.6)
56
- loofah (2.0.2)
57
+ jwt (2.3.0)
58
+ loofah (2.13.0)
59
+ crass (~> 1.0.2)
57
60
  nokogiri (>= 1.5.9)
58
- mini_portile2 (2.1.0)
59
- minitest (5.7.0)
60
- multi_json (1.12.1)
61
+ mime-types (2.99.3)
62
+ mini_portile2 (2.7.1)
63
+ minitest (5.15.0)
64
+ multi_json (1.15.0)
61
65
  multi_xml (0.6.0)
62
- multipart-post (2.0.0)
63
- nokogiri (1.6.8.1)
64
- mini_portile2 (~> 2.1.0)
65
- oauth2 (1.3.1)
66
- faraday (>= 0.8, < 0.12)
67
- jwt (~> 1.0)
66
+ multipart-post (2.1.1)
67
+ nokogiri (1.13.1)
68
+ mini_portile2 (~> 2.7.0)
69
+ racc (~> 1.4)
70
+ oauth2 (1.4.7)
71
+ faraday (>= 0.8, < 2.0)
72
+ jwt (>= 1.0, < 3.0)
68
73
  multi_json (~> 1.3)
69
74
  multi_xml (~> 0.5)
70
75
  rack (>= 1.2, < 3)
71
- public_suffix (2.0.5)
72
- rack (1.6.5)
73
- rack-test (0.6.3)
74
- rack (>= 1.0)
75
- rails-deprecated_sanitizer (1.0.3)
76
- activesupport (>= 4.2.0.alpha)
77
- rails-dom-testing (1.0.6)
78
- activesupport (>= 4.2.0.beta, < 5.0)
79
- nokogiri (~> 1.6.0)
80
- rails-deprecated_sanitizer (>= 1.0.1)
81
- rails-html-sanitizer (1.0.2)
82
- loofah (~> 2.0)
83
- rake (12.0.0)
76
+ psych (4.0.3)
77
+ stringio
78
+ racc (1.6.0)
79
+ rack (2.2.3)
80
+ rack-test (1.1.0)
81
+ rack (>= 1.0, < 3)
82
+ rails-dom-testing (2.0.3)
83
+ activesupport (>= 4.2.0)
84
+ nokogiri (>= 1.6)
85
+ rails-html-sanitizer (1.4.2)
86
+ loofah (~> 2.3)
87
+ rake (13.0.6)
88
+ rchardet (1.8.0)
84
89
  rdoc (3.12.2)
85
90
  json (~> 1.4)
86
- semver (1.0.1)
87
- shoulda (3.5.0)
88
- shoulda-context (~> 1.0, >= 1.0.1)
89
- shoulda-matchers (>= 1.4.1, < 3.0)
90
- shoulda-context (1.2.1)
91
- shoulda-matchers (2.8.0)
92
- activesupport (>= 3.0.0)
93
- simplecov (0.10.0)
94
- docile (~> 1.1.0)
95
- json (~> 1.8)
96
- simplecov-html (~> 0.10.0)
97
- simplecov-html (0.10.0)
91
+ semver2 (3.4.2)
92
+ shoulda (4.0.0)
93
+ shoulda-context (~> 2.0)
94
+ shoulda-matchers (~> 4.0)
95
+ shoulda-context (2.0.0)
96
+ shoulda-matchers (4.5.1)
97
+ activesupport (>= 4.2.0)
98
+ simplecov (0.21.2)
99
+ docile (~> 1.1)
100
+ simplecov-html (~> 0.11)
101
+ simplecov_json_formatter (~> 0.1)
102
+ simplecov-html (0.12.3)
103
+ simplecov_json_formatter (0.1.3)
104
+ stringio (3.0.1)
98
105
  thread_safe (0.3.6)
99
- tzinfo (1.2.2)
100
- thread_safe (~> 0.1)
106
+ tzinfo (2.0.4)
107
+ concurrent-ruby (~> 1.0)
101
108
 
102
109
  PLATFORMS
103
110
  ruby
@@ -106,10 +113,11 @@ DEPENDENCIES
106
113
  actionpack
107
114
  addressable
108
115
  bundler (~> 1.0)
109
- jeweler (~> 2.1.2)
116
+ jeweler (~> 2.3.9)
117
+ nokogiri (>= 1.11.3)
110
118
  rdoc (~> 3.12)
111
119
  shoulda
112
120
  simplecov
113
121
 
114
122
  BUNDLED WITH
115
- 1.14.5
123
+ 1.17.3
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.10.1
1
+ 0.11.0
@@ -37,12 +37,13 @@ module ReverseProxy
37
37
 
38
38
  def request(env, options = {}, &block)
39
39
  options.reverse_merge!(
40
- headers: {},
41
- http: {},
42
- path: nil,
43
- username: nil,
44
- password: nil,
45
- verify_ssl: true
40
+ headers: {},
41
+ http: {},
42
+ path: nil,
43
+ username: nil,
44
+ password: nil,
45
+ verify_ssl: true,
46
+ reset_accept_encoding: false
46
47
  )
47
48
 
48
49
  source_request = Rack::Request.new(env)
@@ -50,13 +51,11 @@ module ReverseProxy
50
51
  # We can pass in a custom path
51
52
  uri = Addressable::URI.parse("#{url}#{options[:path] || env['ORIGINAL_FULLPATH']}")
52
53
 
53
- # Initialize request
54
- target_request = Net::HTTP.const_get(source_request.request_method.capitalize).new(uri.request_uri)
55
-
56
- # Setup headers
54
+ # Define headers
57
55
  target_request_headers = extract_http_request_headers(source_request.env).merge(options[:headers])
58
56
 
59
- target_request.initialize_http_header(target_request_headers)
57
+ # Initialize request
58
+ target_request = Net::HTTP.const_get(source_request.request_method.capitalize).new(uri.request_uri, target_request_headers)
60
59
 
61
60
  # Basic auth
62
61
  target_request.basic_auth(options[:username], options[:password]) if options[:username] and options[:password]
@@ -74,11 +73,11 @@ module ReverseProxy
74
73
  # Hold the response here
75
74
  target_response = nil
76
75
 
77
- # Don't encode response/support compression which was
78
- # causing content length not match the actual content
79
- # length of the response which ended up causing issues
80
- # within Varnish (503)
81
- target_request['Accept-Encoding'] = nil
76
+ if options[:reset_accept_encoding]
77
+ # Clear the "Accept-Encoding" header (which will
78
+ # disable compression or other server-side encodings)
79
+ target_request['Accept-Encoding'] = nil
80
+ end
82
81
 
83
82
  http_options = {}
84
83
  http_options[:use_ssl] = (uri.scheme == "https")
@@ -2,25 +2,27 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: rails-reverse-proxy 0.10.1 ruby lib
5
+ # stub: rails-reverse-proxy 0.11.0 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "rails-reverse-proxy".freeze
9
- s.version = "0.10.1"
9
+ s.version = "0.11.0"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
12
12
  s.require_paths = ["lib".freeze]
13
13
  s.authors = ["James Hu".freeze]
14
- s.date = "2021-03-24"
14
+ s.date = "2022-02-08"
15
15
  s.description = "Reverse proxy for Ruby on Rails".freeze
16
16
  s.email = "hello@james.hu".freeze
17
17
  s.extra_rdoc_files = [
18
+ "CHANGELOG.md",
18
19
  "LICENSE",
19
20
  "README.md"
20
21
  ]
21
22
  s.files = [
22
23
  ".document",
23
24
  ".ruby-version",
25
+ "CHANGELOG.md",
24
26
  "Gemfile",
25
27
  "Gemfile.lock",
26
28
  "LICENSE",
@@ -36,36 +38,30 @@ Gem::Specification.new do |s|
36
38
  ]
37
39
  s.homepage = "http://github.com/axsuul/rails-reverse-proxy".freeze
38
40
  s.licenses = ["MIT".freeze]
39
- s.rubygems_version = "2.6.13".freeze
41
+ s.rubygems_version = "3.1.6".freeze
40
42
  s.summary = "Reverse proxy for Ruby on Rails".freeze
41
43
 
42
44
  if s.respond_to? :specification_version then
43
45
  s.specification_version = 4
46
+ end
44
47
 
45
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
46
- s.add_runtime_dependency(%q<actionpack>.freeze, [">= 0"])
47
- s.add_runtime_dependency(%q<addressable>.freeze, [">= 0"])
48
- s.add_development_dependency(%q<shoulda>.freeze, [">= 0"])
49
- s.add_development_dependency(%q<rdoc>.freeze, ["~> 3.12"])
50
- s.add_development_dependency(%q<bundler>.freeze, ["~> 1.0"])
51
- s.add_development_dependency(%q<jeweler>.freeze, ["~> 2.1.2"])
52
- s.add_development_dependency(%q<simplecov>.freeze, [">= 0"])
53
- else
54
- s.add_dependency(%q<actionpack>.freeze, [">= 0"])
55
- s.add_dependency(%q<addressable>.freeze, [">= 0"])
56
- s.add_dependency(%q<shoulda>.freeze, [">= 0"])
57
- s.add_dependency(%q<rdoc>.freeze, ["~> 3.12"])
58
- s.add_dependency(%q<bundler>.freeze, ["~> 1.0"])
59
- s.add_dependency(%q<jeweler>.freeze, ["~> 2.1.2"])
60
- s.add_dependency(%q<simplecov>.freeze, [">= 0"])
61
- end
48
+ if s.respond_to? :add_runtime_dependency then
49
+ s.add_runtime_dependency(%q<actionpack>.freeze, [">= 0"])
50
+ s.add_runtime_dependency(%q<addressable>.freeze, [">= 0"])
51
+ s.add_development_dependency(%q<bundler>.freeze, ["~> 1.0"])
52
+ s.add_development_dependency(%q<jeweler>.freeze, ["~> 2.3.9"])
53
+ s.add_development_dependency(%q<nokogiri>.freeze, [">= 1.11.3"])
54
+ s.add_development_dependency(%q<rdoc>.freeze, ["~> 3.12"])
55
+ s.add_development_dependency(%q<shoulda>.freeze, [">= 0"])
56
+ s.add_development_dependency(%q<simplecov>.freeze, [">= 0"])
62
57
  else
63
58
  s.add_dependency(%q<actionpack>.freeze, [">= 0"])
64
59
  s.add_dependency(%q<addressable>.freeze, [">= 0"])
65
- s.add_dependency(%q<shoulda>.freeze, [">= 0"])
66
- s.add_dependency(%q<rdoc>.freeze, ["~> 3.12"])
67
60
  s.add_dependency(%q<bundler>.freeze, ["~> 1.0"])
68
- s.add_dependency(%q<jeweler>.freeze, ["~> 2.1.2"])
61
+ s.add_dependency(%q<jeweler>.freeze, ["~> 2.3.9"])
62
+ s.add_dependency(%q<nokogiri>.freeze, [">= 1.11.3"])
63
+ s.add_dependency(%q<rdoc>.freeze, ["~> 3.12"])
64
+ s.add_dependency(%q<shoulda>.freeze, [">= 0"])
69
65
  s.add_dependency(%q<simplecov>.freeze, [">= 0"])
70
66
  end
71
67
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails-reverse-proxy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.1
4
+ version: 0.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Hu
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-03-24 00:00:00.000000000 Z
11
+ date: 2022-02-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: actionpack
@@ -39,61 +39,75 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: shoulda
42
+ name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ">="
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0'
47
+ version: '1.0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ">="
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0'
54
+ version: '1.0'
55
55
  - !ruby/object:Gem::Dependency
56
- name: rdoc
56
+ name: jeweler
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '3.12'
61
+ version: 2.3.9
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '3.12'
68
+ version: 2.3.9
69
69
  - !ruby/object:Gem::Dependency
70
- name: bundler
70
+ name: nokogiri
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - "~>"
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
- version: '1.0'
75
+ version: 1.11.3
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - "~>"
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
- version: '1.0'
82
+ version: 1.11.3
83
83
  - !ruby/object:Gem::Dependency
84
- name: jeweler
84
+ name: rdoc
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 2.1.2
89
+ version: '3.12'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 2.1.2
96
+ version: '3.12'
97
+ - !ruby/object:Gem::Dependency
98
+ name: shoulda
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
97
111
  - !ruby/object:Gem::Dependency
98
112
  name: simplecov
99
113
  requirement: !ruby/object:Gem::Requirement
@@ -113,11 +127,13 @@ email: hello@james.hu
113
127
  executables: []
114
128
  extensions: []
115
129
  extra_rdoc_files:
130
+ - CHANGELOG.md
116
131
  - LICENSE
117
132
  - README.md
118
133
  files:
119
134
  - ".document"
120
135
  - ".ruby-version"
136
+ - CHANGELOG.md
121
137
  - Gemfile
122
138
  - Gemfile.lock
123
139
  - LICENSE
@@ -134,7 +150,7 @@ homepage: http://github.com/axsuul/rails-reverse-proxy
134
150
  licenses:
135
151
  - MIT
136
152
  metadata: {}
137
- post_install_message:
153
+ post_install_message:
138
154
  rdoc_options: []
139
155
  require_paths:
140
156
  - lib
@@ -149,9 +165,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
149
165
  - !ruby/object:Gem::Version
150
166
  version: '0'
151
167
  requirements: []
152
- rubyforge_project:
153
- rubygems_version: 2.6.13
154
- signing_key:
168
+ rubygems_version: 3.1.6
169
+ signing_key:
155
170
  specification_version: 4
156
171
  summary: Reverse proxy for Ruby on Rails
157
172
  test_files: []