http2 0.0.21 → 0.0.22

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. data/VERSION +1 -1
  2. data/http2.gemspec +2 -2
  3. data/lib/http2.rb +10 -8
  4. metadata +16 -16
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.21
1
+ 0.0.22
data/http2.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "http2"
8
- s.version = "0.0.21"
8
+ s.version = "0.0.22"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Kasper Johansen"]
12
- s.date = "2013-06-28"
12
+ s.date = "2013-06-30"
13
13
  s.description = "A lightweight framework for doing http-connections in Ruby. Supports cookies, keep-alive, compressing and much more."
14
14
  s.email = "k@spernj.org"
15
15
  s.extra_rdoc_files = [
data/lib/http2.rb CHANGED
@@ -24,7 +24,7 @@ class Http2
24
24
  end
25
25
  end
26
26
 
27
- attr_reader :cookies, :args
27
+ attr_reader :cookies, :args, :resp
28
28
 
29
29
  VALID_ARGUMENTS_INITIALIZE = [:host, :port, :ssl, :nl, :user_agent, :raise_errors, :follow_redirects, :debug, :encoding_gzip, :autostate, :basic_auth, :extra_headers, :proxy]
30
30
  def initialize(args = {})
@@ -63,7 +63,7 @@ class Http2
63
63
  @uagent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
64
64
  end
65
65
 
66
- if !@args.key?(:raise_errors) or @args[:raise_errors]
66
+ if !@args.key?(:raise_errors) || @args[:raise_errors]
67
67
  @raise_errors = true
68
68
  else
69
69
  @raise_errors = false
@@ -646,11 +646,11 @@ class Http2
646
646
  http = Http2.new(args)
647
647
  return http.get(url)
648
648
  end
649
- elsif @raise_errors and resp.args[:code].to_i == 500
649
+ elsif @raise_errors && resp.args[:code].to_i == 500
650
650
  err = Http2::Errors::Internalserver.new(resp.body)
651
651
  err.response = resp
652
652
  raise err
653
- elsif @raise_errors and resp.args[:code].to_i == 403
653
+ elsif @raise_errors && resp.args[:code].to_i == 403
654
654
  err = Http2::Errors::Noaccess.new(resp.body)
655
655
  err.response = resp
656
656
  raise err
@@ -706,16 +706,18 @@ class Http2
706
706
  @transfer_encoding = match[2].to_s.downcase.strip
707
707
  end
708
708
 
709
- if key != "transfer-encoding" and key != "content-length" and key != "connection" and key != "keep-alive"
710
- self.on_content_call(args, line)
711
- end
712
-
713
709
  puts "Http2: Parsed header: #{match[1]}: #{match[2]}" if @debug
714
710
  @resp.headers[key] = [] unless @resp.headers.key?(key)
715
711
  @resp.headers[key] << match[2]
712
+
713
+ if key != "transfer-encoding" and key != "content-length" and key != "connection" and key != "keep-alive"
714
+ self.on_content_call(args, line)
715
+ end
716
716
  elsif match = line.match(/^HTTP\/([\d\.]+)\s+(\d+)\s+(.+)$/)
717
717
  @resp.args[:code] = match[2]
718
718
  @resp.args[:http_version] = match[1]
719
+
720
+ self.on_content_call(args, line)
719
721
  else
720
722
  raise "Could not understand header string: '#{line}'.\n\n#{@sock.read(409600)}"
721
723
  end
metadata CHANGED
@@ -1,75 +1,75 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: http2
3
3
  version: !ruby/object:Gem::Version
4
+ version: 0.0.22
4
5
  prerelease:
5
- version: 0.0.21
6
6
  platform: ruby
7
7
  authors:
8
8
  - Kasper Johansen
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-06-28 00:00:00.000000000 Z
12
+ date: 2013-06-30 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- version_requirements: !ruby/object:Gem::Requirement
15
+ name: rspec
16
+ requirement: !ruby/object:Gem::Requirement
16
17
  none: false
17
18
  requirements:
18
19
  - - ~>
19
20
  - !ruby/object:Gem::Version
20
21
  version: 2.8.0
21
- name: rspec
22
22
  type: :development
23
23
  prerelease: false
24
- requirement: !ruby/object:Gem::Requirement
24
+ version_requirements: !ruby/object:Gem::Requirement
25
25
  none: false
26
26
  requirements:
27
27
  - - ~>
28
28
  - !ruby/object:Gem::Version
29
29
  version: 2.8.0
30
30
  - !ruby/object:Gem::Dependency
31
- version_requirements: !ruby/object:Gem::Requirement
31
+ name: rdoc
32
+ requirement: !ruby/object:Gem::Requirement
32
33
  none: false
33
34
  requirements:
34
35
  - - ~>
35
36
  - !ruby/object:Gem::Version
36
37
  version: '3.12'
37
- name: rdoc
38
38
  type: :development
39
39
  prerelease: false
40
- requirement: !ruby/object:Gem::Requirement
40
+ version_requirements: !ruby/object:Gem::Requirement
41
41
  none: false
42
42
  requirements:
43
43
  - - ~>
44
44
  - !ruby/object:Gem::Version
45
45
  version: '3.12'
46
46
  - !ruby/object:Gem::Dependency
47
- version_requirements: !ruby/object:Gem::Requirement
47
+ name: bundler
48
+ requirement: !ruby/object:Gem::Requirement
48
49
  none: false
49
50
  requirements:
50
51
  - - ! '>='
51
52
  - !ruby/object:Gem::Version
52
53
  version: 1.0.0
53
- name: bundler
54
54
  type: :development
55
55
  prerelease: false
56
- requirement: !ruby/object:Gem::Requirement
56
+ version_requirements: !ruby/object:Gem::Requirement
57
57
  none: false
58
58
  requirements:
59
59
  - - ! '>='
60
60
  - !ruby/object:Gem::Version
61
61
  version: 1.0.0
62
62
  - !ruby/object:Gem::Dependency
63
- version_requirements: !ruby/object:Gem::Requirement
63
+ name: jeweler
64
+ requirement: !ruby/object:Gem::Requirement
64
65
  none: false
65
66
  requirements:
66
67
  - - ~>
67
68
  - !ruby/object:Gem::Version
68
69
  version: 1.8.4
69
- name: jeweler
70
70
  type: :development
71
71
  prerelease: false
72
- requirement: !ruby/object:Gem::Requirement
72
+ version_requirements: !ruby/object:Gem::Requirement
73
73
  none: false
74
74
  requirements:
75
75
  - - ~>
@@ -111,10 +111,10 @@ required_ruby_version: !ruby/object:Gem::Requirement
111
111
  requirements:
112
112
  - - ! '>='
113
113
  - !ruby/object:Gem::Version
114
+ version: '0'
114
115
  segments:
115
116
  - 0
116
- hash: 387441842409376074
117
- version: '0'
117
+ hash: -1664380654006357926
118
118
  required_rubygems_version: !ruby/object:Gem::Requirement
119
119
  none: false
120
120
  requirements: