faraday-gzip 1.0.0-java → 2.0.1-java

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: 02db240267d5516b8d1f24367dd7117ec77fcaa65b5a1009c1be347cdf129aa4
4
- data.tar.gz: fa8c0dc6ee7de09af3bcdadcb12da10f6dcda31f0fb16e0468517cb3198bbe0c
3
+ metadata.gz: 2aaac620885cefeae3cf12f7e5746ae7f9583e8607886e701e7ade1d4011af02
4
+ data.tar.gz: f6c6da4a5242f46149c251055bf2ecbc0655d00cfb9ccb2da2c237b8f3a75cfd
5
5
  SHA512:
6
- metadata.gz: 8aa173f7e4836a945c8dea7fecfd94b6b0ff694a3d49005ee946ac30e29cad09c18f39838f1822981987e8ee1c2e6b157b60e1e4e4854ebf232d4f7588214dca
7
- data.tar.gz: 6130653202bfe8f6cdd38d76a4c93c6f8b0fe829920080bfaf277f152739dfb0b8e1b80f6ed1e4d68b796eb9d8e7b4d2939675224a134b236f9b351396e49409
6
+ metadata.gz: 65d173baf4d2ad9ba4023e6307fbf54a148457f577e1df2b269912f3417b279784d206fd75a17c4978febbd41c235e543122da429137a5bfd55f59aaf2d91914
7
+ data.tar.gz: cd24a5ca69e8ea37c8326f1837ec75ec70b61e4126c908a7e0cc06e2cca965c4b94213528b89154981b25a76357fc64bb4c6366732a199df9c0c9ebb427a6eeb
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.0.1 (02-Jan-2024)
4
+
5
+ * Handle cases when body is `nil` (thanks, @bendangelo)
6
+
7
+ ## 2.0.0 (21-Jul-2023)
8
+
9
+ * Use zlib version 3
10
+
3
11
  ## 1.0.0 (27-Dec-2022)
4
12
 
5
13
  * Added support for JRuby (thanks, @ashkulz)
data/README.md CHANGED
@@ -3,7 +3,11 @@
3
3
  ![CI](https://github.com/bodrovis/faraday-gzip/actions/workflows/ci.yaml/badge.svg)
4
4
  [![Gem](https://img.shields.io/gem/v/faraday-gzip.svg?style=flat-square)](https://rubygems.org/gems/faraday-gzip)
5
5
 
6
- The `Gzip` middleware adds the necessary `Accept-Encoding` headers and automatically decompresses the response. If the "Accept-Encoding" header wasn't set in the request, this sets it to "gzip,deflate" and appropriately handles the compressed response from the server. This resembles what Ruby does internally in Net::HTTP#get. If [Brotli](https://github.com/miyucy/brotli) is added to the Gemfile, it will also add "br" to the header.
6
+ The `Gzip` middleware for Faraday 1 and 2 adds the necessary `Accept-Encoding` headers and automatically decompresses the response. If the "Accept-Encoding" header wasn't set in the request, this sets it to "gzip,deflate" and appropriately handles the compressed response from the server. This resembles what Ruby does internally in Net::HTTP#get. If [Brotli](https://github.com/miyucy/brotli) is added to the Gemfile, it will also add "br" to the header.
7
+
8
+ ## Prerequisites
9
+
10
+ This gem is tested with Ruby 2.6+ and JRuby 9.3+. Faraday 1 and 2 is supported.
7
11
 
8
12
  ## Installation
9
13
 
@@ -28,10 +32,10 @@ gem install faraday-gzip
28
32
  ## Usage
29
33
 
30
34
  ```ruby
31
- require 'faraday/gzip'
35
+ require 'faraday/gzip' # <=== add this line
32
36
 
33
37
  conn = Faraday.new(...) do |f|
34
- f.request :gzip
38
+ f.request :gzip # <=== add this line
35
39
  #...
36
40
  end
37
41
  ```
@@ -34,7 +34,7 @@ module Faraday
34
34
  def call(env)
35
35
  env[:request_headers][ACCEPT_ENCODING] ||= SUPPORTED_ENCODINGS
36
36
  @app.call(env).on_complete do |response_env|
37
- if response_env[:body].empty?
37
+ if empty_body?(response_env)
38
38
  reset_body(response_env) { |body| raw_body(body) }
39
39
  else
40
40
  case response_env[:response_headers][CONTENT_ENCODING]
@@ -52,7 +52,8 @@ module Faraday
52
52
  def reset_body(env)
53
53
  env[:body] = yield(env[:body])
54
54
  env[:response_headers].delete(CONTENT_ENCODING)
55
- env[:response_headers][CONTENT_LENGTH] = env[:body].length
55
+
56
+ env[:response_headers][CONTENT_LENGTH] = env[:body].nil? ? 0 : env[:body].length
56
57
  end
57
58
 
58
59
  def uncompress_gzip(body)
@@ -82,6 +83,12 @@ module Faraday
82
83
  def raw_body(body)
83
84
  body
84
85
  end
86
+
87
+ private
88
+
89
+ def empty_body?(response_env)
90
+ response_env[:body].nil? || response_env[:body].empty?
91
+ end
85
92
  end
86
93
  end
87
94
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Faraday
4
4
  module Gzip
5
- VERSION = '1.0.0'
5
+ VERSION = '2.0.1'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: faraday-gzip
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 2.0.1
5
5
  platform: java
6
6
  authors:
7
7
  - Ilya Krukowski
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-12-27 00:00:00.000000000 Z
11
+ date: 2024-01-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement
@@ -17,8 +17,8 @@ dependencies:
17
17
  - !ruby/object:Gem::Version
18
18
  version: '1.0'
19
19
  name: faraday
20
- prerelease: false
21
20
  type: :runtime
21
+ prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
@@ -31,8 +31,8 @@ dependencies:
31
31
  - !ruby/object:Gem::Version
32
32
  version: '2.0'
33
33
  name: bundler
34
- prerelease: false
35
34
  type: :development
35
+ prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
@@ -45,8 +45,8 @@ dependencies:
45
45
  - !ruby/object:Gem::Version
46
46
  version: '13.0'
47
47
  name: rake
48
- prerelease: false
49
48
  type: :development
49
+ prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
@@ -59,8 +59,8 @@ dependencies:
59
59
  - !ruby/object:Gem::Version
60
60
  version: '3.0'
61
61
  name: rspec
62
- prerelease: false
63
62
  type: :development
63
+ prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
@@ -73,8 +73,8 @@ dependencies:
73
73
  - !ruby/object:Gem::Version
74
74
  version: '0.22'
75
75
  name: simplecov
76
- prerelease: false
77
76
  type: :development
77
+ prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
@@ -87,8 +87,8 @@ dependencies:
87
87
  - !ruby/object:Gem::Version
88
88
  version: '1.32'
89
89
  name: rubocop
90
- prerelease: false
91
90
  type: :development
91
+ prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
@@ -101,8 +101,8 @@ dependencies:
101
101
  - !ruby/object:Gem::Version
102
102
  version: 0.5.0
103
103
  name: rubocop-packaging
104
- prerelease: false
105
104
  type: :development
105
+ prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
@@ -115,8 +115,8 @@ dependencies:
115
115
  - !ruby/object:Gem::Version
116
116
  version: '1.0'
117
117
  name: rubocop-performance
118
- prerelease: false
119
118
  type: :development
119
+ prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - "~>"
@@ -129,8 +129,8 @@ dependencies:
129
129
  - !ruby/object:Gem::Version
130
130
  version: '2.11'
131
131
  name: rubocop-rspec
132
- prerelease: false
133
132
  type: :development
133
+ prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
136
  - - "~>"
@@ -158,7 +158,7 @@ licenses:
158
158
  metadata:
159
159
  bug_tracker_uri: https://github.com/bodrovis/faraday-gzip/issues
160
160
  changelog_uri: https://github.com/bodrovis/faraday-gzip/blob/master/CHANGELOG.md
161
- documentation_uri: http://www.rubydoc.info/gems/faraday-gzip/1.0.0
161
+ documentation_uri: http://www.rubydoc.info/gems/faraday-gzip/2.0.1
162
162
  homepage_uri: https://github.com/bodrovis/faraday-gzip
163
163
  source_code_uri: https://github.com/bodrovis/faraday-gzip
164
164
  rubygems_mfa_required: 'true'
@@ -180,7 +180,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
180
180
  - !ruby/object:Gem::Version
181
181
  version: '0'
182
182
  requirements: []
183
- rubygems_version: 3.4.1
183
+ rubygems_version: 3.3.26
184
184
  signing_key:
185
185
  specification_version: 4
186
186
  summary: Automatically sets compression headers and decompresses the response