hanami-router 2.0.0.alpha5 → 2.0.0.alpha6
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 +4 -4
- data/CHANGELOG.md +8 -0
- data/README.md +8 -6
- data/hanami-router.gemspec +4 -3
- data/lib/hanami/middleware/body_parser.rb +1 -1
- data/lib/hanami/router/prefix.rb +2 -2
- data/lib/hanami/router/version.rb +1 -1
- data/lib/hanami/router.rb +8 -1
- metadata +14 -13
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8d4b765c647ddf0aa30e30b516bc8e449a9734d6de8f8466c5e9ae96051b8b2b
|
4
|
+
data.tar.gz: 6b6728d2cb184ac2924fad9b36e0d61396b9dde66c95894a694c831291e113b5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e2553b5cae230e21181467afce6950bd3df79e17e6351bc8f9b92bf4577ccaf4f7b773d11d67d88e3fe9fa789fcefd5211dd721ea1e723c16414e2d2670594d3
|
7
|
+
data.tar.gz: 247718a876404665267bdeb523944a73b55d9f7e846b11888e022f0fcfac39c8514f2dca60b030e8820ac3958bc666f766229793a04f992bca328cbd0c3e2919
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,14 @@
|
|
1
1
|
# Hanami::Router
|
2
2
|
Rack compatible HTTP router for Ruby
|
3
3
|
|
4
|
+
## v2.0.0.alpha6 - 2022-02-10
|
5
|
+
### Added
|
6
|
+
- [Luca Guidi] Official support for MRI 3.1
|
7
|
+
- [Luca Guidi] Parse non-GET request body and make it available in Rack env under the `router.params` key. For JSON requests, please use `Hanami:::Middleware::JsonParser`
|
8
|
+
|
9
|
+
### Changed
|
10
|
+
- [Luca Guidi] Drop support for Ruby: MRI 2.6, and 2.7.
|
11
|
+
|
4
12
|
## v2.0.0.alpha5 - 2021-05-04
|
5
13
|
### Added
|
6
14
|
- [Luca Guidi] Introduced `Hanami::Router#to_inspect` which returns a string blob with all the routes formatted for human readability
|
data/README.md
CHANGED
@@ -2,11 +2,15 @@
|
|
2
2
|
|
3
3
|
Rack compatible, lightweight and fast HTTP Router for Ruby and [Hanami](http://hanamirb.org).
|
4
4
|
|
5
|
+
## Version
|
6
|
+
|
7
|
+
**This branch contains the code for `hanami-router` 2.x.**
|
8
|
+
|
5
9
|
## Status
|
6
10
|
|
7
11
|
[](https://badge.fury.io/rb/hanami-router)
|
8
|
-
[](https://github.com/hanami/router/actions?query=workflow%3Aci+branch%3Amain)
|
13
|
+
[](https://codecov.io/gh/hanami/router)
|
10
14
|
[](https://depfu.com/github/hanami/router?project=Bundler)
|
11
15
|
[](http://inch-ci.org/github/hanami/router)
|
12
16
|
|
@@ -21,7 +25,7 @@ Rack compatible, lightweight and fast HTTP Router for Ruby and [Hanami](http://h
|
|
21
25
|
|
22
26
|
## Rubies
|
23
27
|
|
24
|
-
__Hanami::Router__ supports Ruby (MRI)
|
28
|
+
__Hanami::Router__ supports Ruby (MRI) 3.0+
|
25
29
|
|
26
30
|
|
27
31
|
## Installation
|
@@ -361,6 +365,4 @@ __Hanami::Router__ uses [Semantic Versioning 2.0.0](http://semver.org)
|
|
361
365
|
|
362
366
|
## Copyright
|
363
367
|
|
364
|
-
Copyright © 2014-
|
365
|
-
|
366
|
-
This project was formerly known as Lotus (`lotus-router`).
|
368
|
+
Copyright © 2014-2022 Hanami Team – Released under MIT License
|
data/hanami-router.gemspec
CHANGED
@@ -18,7 +18,8 @@ Gem::Specification.new do |spec|
|
|
18
18
|
spec.executables = []
|
19
19
|
spec.test_files = spec.files.grep(%r{^(test)/})
|
20
20
|
spec.require_paths = ["lib"]
|
21
|
-
spec.
|
21
|
+
spec.metadata["rubygems_mfa_required"] = "true"
|
22
|
+
spec.required_ruby_version = ">= 3.0"
|
22
23
|
|
23
24
|
spec.add_dependency "rack", "~> 2.0"
|
24
25
|
spec.add_dependency "mustermann", "~> 1.0"
|
@@ -29,6 +30,6 @@ Gem::Specification.new do |spec|
|
|
29
30
|
spec.add_development_dependency "rack-test", "~> 1.0"
|
30
31
|
spec.add_development_dependency "rspec", "~> 3.8"
|
31
32
|
|
32
|
-
spec.add_development_dependency "rubocop", "0
|
33
|
-
spec.add_development_dependency "rubocop-performance", "1.
|
33
|
+
spec.add_development_dependency "rubocop", "~> 1.0"
|
34
|
+
spec.add_development_dependency "rubocop-performance", "~> 1.0"
|
34
35
|
end
|
data/lib/hanami/router/prefix.rb
CHANGED
@@ -48,11 +48,11 @@ module Hanami
|
|
48
48
|
|
49
49
|
# @since 2.0.0
|
50
50
|
# @api private
|
51
|
-
DEFAULT_SEPARATOR_REGEXP =
|
51
|
+
DEFAULT_SEPARATOR_REGEXP = /\//
|
52
52
|
|
53
53
|
# @since 2.0.0
|
54
54
|
# @api private
|
55
|
-
DOUBLE_DEFAULT_SEPARATOR_REGEXP = /\/{2,}
|
55
|
+
DOUBLE_DEFAULT_SEPARATOR_REGEXP = /\/{2,}/
|
56
56
|
|
57
57
|
# @since 2.0.0
|
58
58
|
# @api private
|
data/lib/hanami/router.rb
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require "rack"
|
3
4
|
require "rack/utils"
|
4
5
|
|
5
6
|
module Hanami
|
@@ -868,7 +869,13 @@ module Hanami
|
|
868
869
|
def _params(env, params)
|
869
870
|
params ||= {}
|
870
871
|
env[PARAMS] ||= {}
|
871
|
-
|
872
|
+
|
873
|
+
if (input = env[Rack::RACK_INPUT]) and input.rewind
|
874
|
+
env[PARAMS].merge!(Rack::Utils.parse_nested_query(input.read))
|
875
|
+
input.rewind
|
876
|
+
end
|
877
|
+
|
878
|
+
env[PARAMS].merge!(Rack::Utils.parse_nested_query(env[Rack::QUERY_STRING]))
|
872
879
|
env[PARAMS].merge!(params)
|
873
880
|
env[PARAMS] = Params.deep_symbolize(env[PARAMS])
|
874
881
|
env
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hanami-router
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.0.
|
4
|
+
version: 2.0.0.alpha6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Luca Guidi
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-02-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rack
|
@@ -118,30 +118,30 @@ dependencies:
|
|
118
118
|
name: rubocop
|
119
119
|
requirement: !ruby/object:Gem::Requirement
|
120
120
|
requirements:
|
121
|
-
- -
|
121
|
+
- - "~>"
|
122
122
|
- !ruby/object:Gem::Version
|
123
|
-
version: '0
|
123
|
+
version: '1.0'
|
124
124
|
type: :development
|
125
125
|
prerelease: false
|
126
126
|
version_requirements: !ruby/object:Gem::Requirement
|
127
127
|
requirements:
|
128
|
-
- -
|
128
|
+
- - "~>"
|
129
129
|
- !ruby/object:Gem::Version
|
130
|
-
version: '0
|
130
|
+
version: '1.0'
|
131
131
|
- !ruby/object:Gem::Dependency
|
132
132
|
name: rubocop-performance
|
133
133
|
requirement: !ruby/object:Gem::Requirement
|
134
134
|
requirements:
|
135
|
-
- -
|
135
|
+
- - "~>"
|
136
136
|
- !ruby/object:Gem::Version
|
137
|
-
version: 1.
|
137
|
+
version: '1.0'
|
138
138
|
type: :development
|
139
139
|
prerelease: false
|
140
140
|
version_requirements: !ruby/object:Gem::Requirement
|
141
141
|
requirements:
|
142
|
-
- -
|
142
|
+
- - "~>"
|
143
143
|
- !ruby/object:Gem::Version
|
144
|
-
version: 1.
|
144
|
+
version: '1.0'
|
145
145
|
description: Rack compatible HTTP router for Ruby
|
146
146
|
email:
|
147
147
|
- me@lucaguidi.com
|
@@ -176,7 +176,8 @@ files:
|
|
176
176
|
homepage: http://hanamirb.org
|
177
177
|
licenses:
|
178
178
|
- MIT
|
179
|
-
metadata:
|
179
|
+
metadata:
|
180
|
+
rubygems_mfa_required: 'true'
|
180
181
|
post_install_message:
|
181
182
|
rdoc_options: []
|
182
183
|
require_paths:
|
@@ -185,14 +186,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
185
186
|
requirements:
|
186
187
|
- - ">="
|
187
188
|
- !ruby/object:Gem::Version
|
188
|
-
version:
|
189
|
+
version: '3.0'
|
189
190
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
190
191
|
requirements:
|
191
192
|
- - ">"
|
192
193
|
- !ruby/object:Gem::Version
|
193
194
|
version: 1.3.1
|
194
195
|
requirements: []
|
195
|
-
rubygems_version: 3.
|
196
|
+
rubygems_version: 3.3.3
|
196
197
|
signing_key:
|
197
198
|
specification_version: 4
|
198
199
|
summary: Rack compatible HTTP router for Ruby and Hanami
|