protocol-http 0.20.0 → 0.20.1

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: 155e5d73168b2ff9c429d2677150ae8a30e87ee8fb25a582ac30671f8e015ad2
4
- data.tar.gz: c3ae63c177fc673100717c5f2c81bbde8e8a3192de7d010e903593f82d68f2e4
3
+ metadata.gz: 5f14e6a0192840efd07d2ba8e8e3a8bd9312eb5fa8b976f1e12baaf14ee49696
4
+ data.tar.gz: 2548bc880b20a5e162cad7fdcbbece9a0cdfae429861b8a5f1bbd68cf904cb9b
5
5
  SHA512:
6
- metadata.gz: '08db581bcc0840a176039b99f8a9bb31c9db02fb9476ef318c26db8b37d73626754d929efd3cddc70446c5dbecb1708d8bb0347c873a0328b79fe6a0faf6fcdb'
7
- data.tar.gz: 64a7ff013c2e459c594f9c87dcd19d0056d9492136b9c97121d411ebafd74cfe47feacc76842863af7e40d9c38a877ef143e6d0253cf052a63648091f829f8d0
6
+ metadata.gz: b1e6692c96818aed1ed11c02b976169598ba9df9afc1f73109745168f62d85a75b6bf9abe530cac1daa39a3a40b5a815e06280581d8912b6c32f7e488f35fac0
7
+ data.tar.gz: 747e961c97c027258a46fbbd70f9845eead55d0c3dc6d108dae0083b99693bf5384f3868c9d50e5270d06337341879d265dc362a7907a16d22ecca73149e8223
@@ -3,4 +3,3 @@ root = true
3
3
  [*]
4
4
  indent_style = tab
5
5
  indent_size = 2
6
-
@@ -0,0 +1,44 @@
1
+ name: Development
2
+
3
+ on: [push, pull_request]
4
+
5
+ jobs:
6
+ test:
7
+ runs-on: ${{matrix.os}}-latest
8
+ continue-on-error: ${{matrix.experimental}}
9
+
10
+ strategy:
11
+ matrix:
12
+ os:
13
+ - ubuntu
14
+ - macos
15
+
16
+ ruby:
17
+ - 2.5
18
+ - 2.6
19
+ - 2.7
20
+
21
+ experimental: [false]
22
+ env: [""]
23
+
24
+ include:
25
+ - os: ubuntu
26
+ ruby: truffleruby
27
+ experimental: true
28
+ - os: ubuntu
29
+ ruby: jruby
30
+ experimental: true
31
+ - os: ubuntu
32
+ ruby: head
33
+ experimental: true
34
+
35
+ steps:
36
+ - uses: actions/checkout@v2
37
+ - uses: ioquatix/setup-ruby@master
38
+ with:
39
+ ruby-version: ${{matrix.ruby}}
40
+ bundler-cache: true
41
+
42
+ - name: Run tests
43
+ timeout-minutes: 5
44
+ run: ${{matrix.env}} bundle exec rspec
data/.gitignore CHANGED
@@ -6,8 +6,9 @@
6
6
  /pkg/
7
7
  /spec/reports/
8
8
  /tmp/
9
+ /external/
9
10
 
10
11
  # rspec failure tracking
11
12
  .rspec_status
12
- Gemfile.lock
13
+ /gems.locked
13
14
  .covered.db
data/README.md CHANGED
@@ -2,29 +2,29 @@
2
2
 
3
3
  Provides abstractions for working with the HTTP protocol.
4
4
 
5
- [![Build Status](https://travis-ci.com/socketry/protocol-http.svg?branch=master)](http://travis-ci.com/socketry/protocol-http)
5
+ [![Development Status](https://github.com/socketry/protocol-http/workflows/Development/badge.svg)](https://github.com/socketry/protocol-http/actions?workflow=Development)
6
6
 
7
7
  ## Installation
8
8
 
9
9
  Add this line to your application's Gemfile:
10
10
 
11
- ```ruby
11
+ ``` ruby
12
12
  gem 'protocol-http'
13
13
  ```
14
14
 
15
15
  And then execute:
16
16
 
17
- $ bundle
17
+ $ bundle
18
18
 
19
19
  Or install it yourself as:
20
20
 
21
- $ gem install protocol-http
21
+ $ gem install protocol-http
22
22
 
23
23
  ## Usage
24
24
 
25
25
  ### Headers
26
26
 
27
- ```ruby
27
+ ``` ruby
28
28
  require 'protocol/http/headers'
29
29
 
30
30
  headers = Protocol::HTTP::Headers.new
@@ -37,7 +37,7 @@ headers['content-type']
37
37
 
38
38
  ### Reference
39
39
 
40
- ```ruby
40
+ ``` ruby
41
41
  require 'protocol/http/reference'
42
42
 
43
43
  reference = Protocol::HTTP::Reference.new("/search", q: 'kittens')
@@ -48,7 +48,7 @@ reference.to_s
48
48
 
49
49
  ### URL
50
50
 
51
- ```ruby
51
+ ``` ruby
52
52
  require 'protocol/http/url'
53
53
 
54
54
  reference = Protocol::HTTP::Reference.parse("/search?q=kittens")
@@ -59,17 +59,17 @@ parameters = Protocol::HTTP::URL.decode(reference.query_string)
59
59
 
60
60
  ## Contributing
61
61
 
62
- 1. Fork it
63
- 2. Create your feature branch (`git checkout -b my-new-feature`)
64
- 3. Commit your changes (`git commit -am 'Add some feature'`)
65
- 4. Push to the branch (`git push origin my-new-feature`)
66
- 5. Create new Pull Request
62
+ 1. Fork it
63
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
64
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
65
+ 4. Push to the branch (`git push origin my-new-feature`)
66
+ 5. Create new Pull Request
67
67
 
68
68
  ## License
69
69
 
70
70
  Released under the MIT license.
71
71
 
72
- Copyright, 2019, by [Samuel G. D. Williams](http://www.codeotaku.com/samuel-williams).
72
+ Copyright, 2019, by [Samuel G. D. Williams](http://www.codeotaku.com/samuel-williams).
73
73
 
74
74
  Permission is hereby granted, free of charge, to any person obtaining a copy
75
75
  of this software and associated documentation files (the "Software"), to deal
data/bake.rb ADDED
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ def external
4
+ require 'bundler'
5
+
6
+ Bundler.with_unbundled_env do
7
+ clone_and_test("protocol-http1")
8
+ clone_and_test("protocol-http2")
9
+ clone_and_test("async-websocket")
10
+ clone_and_test("async-http")
11
+ clone_and_test("async-rest")
12
+ clone_and_test("falcon")
13
+ end
14
+ end
15
+
16
+ private
17
+
18
+ def clone_and_test(name)
19
+ path = "external/#{name}"
20
+
21
+ unless File.exist?(path)
22
+ system("git", "clone", "https://git@github.com/socketry/#{name}", path)
23
+ end
24
+
25
+ gemfile = [
26
+ File.join(path, "gems.rb"),
27
+ File.join(path, "Gemfile"),
28
+ ].find{|path| File.exist?(path)}
29
+
30
+ system("git", "checkout", "-f", File.basename(gemfile), chdir: path)
31
+
32
+ File.open(gemfile, "a") do |file|
33
+ file.puts('', 'gem "protocol-http", path: "../../"')
34
+ end
35
+
36
+ system("bundle install && bundle exec rspec", chdir: path)
37
+ end
@@ -5,6 +5,11 @@ source "https://rubygems.org"
5
5
  # Specify your gem's dependencies in protocol-http.gemspec
6
6
  gemspec
7
7
 
8
+ group :maintenance, optional: true do
9
+ gem "bake-modernize"
10
+ gem "bake-bundler"
11
+ end
12
+
8
13
  group :test do
9
14
  gem 'async-io'
10
15
  gem 'async-rspec'
@@ -56,6 +56,7 @@ module Protocol
56
56
  @length = length
57
57
 
58
58
  @index = 0
59
+ @digest = nil
59
60
  end
60
61
 
61
62
  attr :chunks
@@ -22,6 +22,6 @@
22
22
 
23
23
  module Protocol
24
24
  module HTTP
25
- VERSION = "0.20.0"
25
+ VERSION = "0.20.1"
26
26
  end
27
27
  end
@@ -15,12 +15,11 @@ Gem::Specification.new do |spec|
15
15
  f.match(%r{^(test|spec|features)/})
16
16
  end
17
17
 
18
- spec.required_ruby_version = '~> 2.5'
18
+ spec.required_ruby_version = '>= 2.5'
19
19
 
20
20
  spec.require_paths = ["lib"]
21
21
 
22
22
  spec.add_development_dependency "covered"
23
23
  spec.add_development_dependency "bundler"
24
- spec.add_development_dependency "bake-bundler"
25
24
  spec.add_development_dependency "rspec"
26
25
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: protocol-http
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.20.0
4
+ version: 0.20.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Samuel Williams
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-05-08 00:00:00.000000000 Z
11
+ date: 2020-09-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: covered
@@ -38,20 +38,6 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
- - !ruby/object:Gem::Dependency
42
- name: bake-bundler
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - ">="
46
- - !ruby/object:Gem::Version
47
- version: '0'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- version: '0'
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: rspec
57
43
  requirement: !ruby/object:Gem::Requirement
@@ -66,7 +52,7 @@ dependencies:
66
52
  - - ">="
67
53
  - !ruby/object:Gem::Version
68
54
  version: '0'
69
- description:
55
+ description:
70
56
  email:
71
57
  - samuel.williams@oriontransfer.co.nz
72
58
  executables: []
@@ -74,11 +60,12 @@ extensions: []
74
60
  extra_rdoc_files: []
75
61
  files:
76
62
  - ".editorconfig"
63
+ - ".github/workflows/development.yml"
77
64
  - ".gitignore"
78
65
  - ".rspec"
79
- - ".travis.yml"
80
- - Gemfile
81
66
  - README.md
67
+ - bake.rb
68
+ - gems.rb
82
69
  - lib/protocol/http.rb
83
70
  - lib/protocol/http/accept_encoding.rb
84
71
  - lib/protocol/http/body/buffered.rb
@@ -119,13 +106,13 @@ homepage: https://github.com/socketry/protocol-http
119
106
  licenses:
120
107
  - MIT
121
108
  metadata: {}
122
- post_install_message:
109
+ post_install_message:
123
110
  rdoc_options: []
124
111
  require_paths:
125
112
  - lib
126
113
  required_ruby_version: !ruby/object:Gem::Requirement
127
114
  requirements:
128
- - - "~>"
115
+ - - ">="
129
116
  - !ruby/object:Gem::Version
130
117
  version: '2.5'
131
118
  required_rubygems_version: !ruby/object:Gem::Requirement
@@ -134,8 +121,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
134
121
  - !ruby/object:Gem::Version
135
122
  version: '0'
136
123
  requirements: []
137
- rubygems_version: 3.1.2
138
- signing_key:
124
+ rubygems_version: 3.0.3
125
+ signing_key:
139
126
  specification_version: 4
140
127
  summary: Provides abstractions to handle HTTP protocols.
141
128
  test_files: []
@@ -1,22 +0,0 @@
1
- language: ruby
2
- dist: xenial
3
- cache: bundler
4
-
5
- script: bundle exec rspec
6
-
7
- matrix:
8
- include:
9
- - rvm: 2.5
10
- - rvm: 2.6
11
- - rvm: 2.7
12
- - rvm: 2.6
13
- env: COVERAGE=PartialSummary,Coveralls
14
- - rvm: 2.7
15
- - rvm: truffleruby
16
- - rvm: jruby-head
17
- env: JRUBY_OPTS="--debug -X+O"
18
- - rvm: ruby-head
19
- allow_failures:
20
- - rvm: truffleruby
21
- - rvm: ruby-head
22
- - rvm: jruby-head