net-http2 0.17.0 → 0.18.4
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 +5 -5
- data/.tool-versions +1 -0
- data/.travis.yml +5 -2
- data/README.md +4 -4
- data/lib/net-http2/client.rb +6 -2
- data/lib/net-http2/request.rb +2 -1
- data/lib/net-http2/version.rb +1 -1
- data/net-http2.gemspec +3 -3
- metadata +20 -22
- data/.ruby-gemset +0 -1
- data/.ruby-version +0 -1
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 | 
            -
             | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 2 | 
            +
            SHA256:
         | 
| 3 | 
            +
              metadata.gz: 627981bb62f56403dfeb74a01539f93e9d78c6a7549688abc6fe53fbfa284ad8
         | 
| 4 | 
            +
              data.tar.gz: b850cd6575fdb514d55fd7ca96dc540a51eadb01849712183cd07de0f454414f
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 03d0a0b04405e07f665e48ff7a2421caecbb1ec394fdedf3ae504b111074766bb993a970f873a87742fd48d79c53ee2de9ae3c9da2123f0c03cf1e8e05bf4fdf
         | 
| 7 | 
            +
              data.tar.gz: 3ab3f36984edb76bd2106ef2f0ee515ac3b853659fb92dc9039462755af146a9626ad37d6dd09b44e2404f5544e11a2622ab208d928b25338846177f5312e8b1
         | 
    
        data/.tool-versions
    ADDED
    
    | @@ -0,0 +1 @@ | |
| 1 | 
            +
            ruby 2.7.1
         | 
    
        data/.travis.yml
    CHANGED
    
    
    
        data/README.md
    CHANGED
    
    | @@ -59,7 +59,7 @@ request.on(:close) { puts "request completed!" } | |
| 59 59 | 
             
            client.call_async(request)
         | 
| 60 60 |  | 
| 61 61 | 
             
            # Wait for all outgoing stream to be closed
         | 
| 62 | 
            -
            client.join
         | 
| 62 | 
            +
            client.join(timeout: 5)
         | 
| 63 63 |  | 
| 64 64 | 
             
            # close the connection
         | 
| 65 65 | 
             
            client.close
         | 
| @@ -103,7 +103,7 @@ Allows to set a callback for the client. The only available event is `:error`, w | |
| 103 103 | 
             
            client.on(:error) { |exception| puts "Exception has been raised: #{exception}" }
         | 
| 104 104 | 
             
            ```
         | 
| 105 105 |  | 
| 106 | 
            -
            > It is RECOMMENDED to set the `:error` callback: if none is defined, the underlying socket thread may raise an error in the main thread at unexpected execution times. | 
| 106 | 
            +
            > It is RECOMMENDED to set the `:error` callback: if none is defined, the underlying socket thread may raise an error in the main thread at unexpected execution times.
         | 
| 107 107 |  | 
| 108 108 | 
             
             * **uri** → **`URI`**
         | 
| 109 109 |  | 
| @@ -140,9 +140,9 @@ The real benefit of HTTP/2 is being able to receive body and header streams. Ins | |
| 140 140 |  | 
| 141 141 | 
             
             Calls the server with the async request.
         | 
| 142 142 |  | 
| 143 | 
            -
             * **join**
         | 
| 143 | 
            +
             * **join(timeout:)**
         | 
| 144 144 |  | 
| 145 | 
            -
             Wait for all outstanding requests to be completed.
         | 
| 145 | 
            +
             Wait for all outstanding requests to be completed, optionally with a timeout for this condition to be met. Raises NetHttp2::AsyncRequestTimeout if the timeout is reached.
         | 
| 146 146 |  | 
| 147 147 |  | 
| 148 148 | 
             
            ### `NetHttp2::Request`
         | 
    
        data/lib/net-http2/client.rb
    CHANGED
    
    | @@ -8,6 +8,8 @@ module NetHttp2 | |
| 8 8 | 
             
              DRAFT               = 'h2'
         | 
| 9 9 | 
             
              PROXY_SETTINGS_KEYS = [:proxy_addr, :proxy_port, :proxy_user, :proxy_pass]
         | 
| 10 10 |  | 
| 11 | 
            +
              AsyncRequestTimeout = Class.new(StandardError)
         | 
| 12 | 
            +
             | 
| 11 13 | 
             
              class Client
         | 
| 12 14 |  | 
| 13 15 | 
             
                include Callbacks
         | 
| @@ -54,8 +56,10 @@ module NetHttp2 | |
| 54 56 | 
             
                  init_vars
         | 
| 55 57 | 
             
                end
         | 
| 56 58 |  | 
| 57 | 
            -
                def join
         | 
| 59 | 
            +
                def join(timeout: nil)
         | 
| 60 | 
            +
                  starting_time = Process.clock_gettime(Process::CLOCK_MONOTONIC)
         | 
| 58 61 | 
             
                  while !@streams.empty? do
         | 
| 62 | 
            +
                    raise AsyncRequestTimeout if timeout && Process.clock_gettime(Process::CLOCK_MONOTONIC) - starting_time > timeout
         | 
| 59 63 | 
             
                    sleep 0.05
         | 
| 60 64 | 
             
                  end
         | 
| 61 65 | 
             
                end
         | 
| @@ -83,7 +87,7 @@ module NetHttp2 | |
| 83 87 | 
             
                end
         | 
| 84 88 |  | 
| 85 89 | 
             
                def new_stream
         | 
| 86 | 
            -
                  NetHttp2::Stream.new(h2_stream: h2.new_stream)
         | 
| 90 | 
            +
                  @mutex.synchronize { NetHttp2::Stream.new(h2_stream: h2.new_stream) }
         | 
| 87 91 | 
             
                rescue StandardError => e
         | 
| 88 92 | 
             
                  close
         | 
| 89 93 | 
             
                  raise e
         | 
    
        data/lib/net-http2/request.rb
    CHANGED
    
    
    
        data/lib/net-http2/version.rb
    CHANGED
    
    
    
        data/net-http2.gemspec
    CHANGED
    
    | @@ -19,9 +19,9 @@ Gem::Specification.new do |spec| | |
| 19 19 | 
             
              spec.executables   = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
         | 
| 20 20 | 
             
              spec.require_paths = ["lib"]
         | 
| 21 21 |  | 
| 22 | 
            -
              spec.add_dependency "http-2", "0. | 
| 22 | 
            +
              spec.add_dependency "http-2", "~> 0.11"
         | 
| 23 23 |  | 
| 24 | 
            -
              spec.add_development_dependency "bundler" | 
| 25 | 
            -
              spec.add_development_dependency "rake", " | 
| 24 | 
            +
              spec.add_development_dependency "bundler"
         | 
| 25 | 
            +
              spec.add_development_dependency "rake", ">= 12.3.3"
         | 
| 26 26 | 
             
              spec.add_development_dependency "rspec", "~> 3.0"
         | 
| 27 27 | 
             
            end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,57 +1,57 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: net-http2
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0. | 
| 4 | 
            +
              version: 0.18.4
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Roberto Ostinelli
         | 
| 8 | 
            -
            autorequire: | 
| 8 | 
            +
            autorequire:
         | 
| 9 9 | 
             
            bindir: exe
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date:  | 
| 11 | 
            +
            date: 2021-01-07 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: http-2
         | 
| 15 15 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 16 16 | 
             
                requirements:
         | 
| 17 | 
            -
                - -  | 
| 17 | 
            +
                - - "~>"
         | 
| 18 18 | 
             
                  - !ruby/object:Gem::Version
         | 
| 19 | 
            -
                    version: 0. | 
| 19 | 
            +
                    version: '0.11'
         | 
| 20 20 | 
             
              type: :runtime
         | 
| 21 21 | 
             
              prerelease: false
         | 
| 22 22 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 23 23 | 
             
                requirements:
         | 
| 24 | 
            -
                - -  | 
| 24 | 
            +
                - - "~>"
         | 
| 25 25 | 
             
                  - !ruby/object:Gem::Version
         | 
| 26 | 
            -
                    version: 0. | 
| 26 | 
            +
                    version: '0.11'
         | 
| 27 27 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 28 28 | 
             
              name: bundler
         | 
| 29 29 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 30 30 | 
             
                requirements:
         | 
| 31 | 
            -
                - - " | 
| 31 | 
            +
                - - ">="
         | 
| 32 32 | 
             
                  - !ruby/object:Gem::Version
         | 
| 33 | 
            -
                    version: ' | 
| 33 | 
            +
                    version: '0'
         | 
| 34 34 | 
             
              type: :development
         | 
| 35 35 | 
             
              prerelease: false
         | 
| 36 36 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 37 37 | 
             
                requirements:
         | 
| 38 | 
            -
                - - " | 
| 38 | 
            +
                - - ">="
         | 
| 39 39 | 
             
                  - !ruby/object:Gem::Version
         | 
| 40 | 
            -
                    version: ' | 
| 40 | 
            +
                    version: '0'
         | 
| 41 41 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 42 42 | 
             
              name: rake
         | 
| 43 43 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 44 44 | 
             
                requirements:
         | 
| 45 | 
            -
                - - " | 
| 45 | 
            +
                - - ">="
         | 
| 46 46 | 
             
                  - !ruby/object:Gem::Version
         | 
| 47 | 
            -
                    version:  | 
| 47 | 
            +
                    version: 12.3.3
         | 
| 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:  | 
| 54 | 
            +
                    version: 12.3.3
         | 
| 55 55 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 56 56 | 
             
              name: rspec
         | 
| 57 57 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -66,7 +66,7 @@ dependencies: | |
| 66 66 | 
             
                - - "~>"
         | 
| 67 67 | 
             
                  - !ruby/object:Gem::Version
         | 
| 68 68 | 
             
                    version: '3.0'
         | 
| 69 | 
            -
            description: | 
| 69 | 
            +
            description:
         | 
| 70 70 | 
             
            email:
         | 
| 71 71 | 
             
            - roberto@ostinelli.net
         | 
| 72 72 | 
             
            executables: []
         | 
| @@ -75,8 +75,7 @@ extra_rdoc_files: [] | |
| 75 75 | 
             
            files:
         | 
| 76 76 | 
             
            - ".gitignore"
         | 
| 77 77 | 
             
            - ".rspec"
         | 
| 78 | 
            -
            - ". | 
| 79 | 
            -
            - ".ruby-version"
         | 
| 78 | 
            +
            - ".tool-versions"
         | 
| 80 79 | 
             
            - ".travis.yml"
         | 
| 81 80 | 
             
            - Gemfile
         | 
| 82 81 | 
             
            - LICENSE.md
         | 
| @@ -97,7 +96,7 @@ homepage: http://github.com/ostinelli/net-http2 | |
| 97 96 | 
             
            licenses:
         | 
| 98 97 | 
             
            - MIT
         | 
| 99 98 | 
             
            metadata: {}
         | 
| 100 | 
            -
            post_install_message: | 
| 99 | 
            +
            post_install_message:
         | 
| 101 100 | 
             
            rdoc_options: []
         | 
| 102 101 | 
             
            require_paths:
         | 
| 103 102 | 
             
            - lib
         | 
| @@ -112,9 +111,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 112 111 | 
             
                - !ruby/object:Gem::Version
         | 
| 113 112 | 
             
                  version: '0'
         | 
| 114 113 | 
             
            requirements: []
         | 
| 115 | 
            -
             | 
| 116 | 
            -
             | 
| 117 | 
            -
            signing_key: 
         | 
| 114 | 
            +
            rubygems_version: 3.1.2
         | 
| 115 | 
            +
            signing_key:
         | 
| 118 116 | 
             
            specification_version: 4
         | 
| 119 117 | 
             
            summary: NetHttp2 is an HTTP2 client for Ruby.
         | 
| 120 118 | 
             
            test_files: []
         | 
    
        data/.ruby-gemset
    DELETED
    
    | @@ -1 +0,0 @@ | |
| 1 | 
            -
            net-http2
         | 
    
        data/.ruby-version
    DELETED
    
    | @@ -1 +0,0 @@ | |
| 1 | 
            -
            ruby-2.3.1
         |