rack-contrib 1.4.0 → 1.5.0
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.
Potentially problematic release.
This version of rack-contrib might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/README.md +1 -0
- data/lib/rack/contrib.rb +7 -1
- data/lib/rack/contrib/locale.rb +7 -1
- data/lib/rack/contrib/not_found.rb +19 -6
- data/lib/rack/contrib/sendfile.rb +0 -4
- metadata +38 -12
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6e6fdc1793443b60b19d951c29f4454178c07e5e
|
4
|
+
data.tar.gz: d3ef6b5dfd00f8c79c80fd24e7db42b9a90d8e88
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ce6c4cd334d41918b2004dfb034ced650ce6b9c9d5d50472776e3239fd1f1483266efa62afa28a3383b180f5a7fbd00a5fff9b7c8a36b57b5b71557d7552bc8e
|
7
|
+
data.tar.gz: cefd817385ec17640810a98b4c46580ec4fe370f16c40a2464715dbe582dae52572e56d7b2bf5577affb2cf2792c5da703fb2b579a773b07b2f699a4d927587e
|
data/README.md
CHANGED
@@ -6,6 +6,7 @@ interface:
|
|
6
6
|
* `Rack::AcceptFormat` - Adds a format extension at the end of the URI when there is none, corresponding to the mime-type given in the Accept HTTP header.
|
7
7
|
* `Rack::Access` - Limits access based on IP address
|
8
8
|
* `Rack::Backstage` - Returns content of specified file if it exists, which makes it convenient for putting up maintenance pages.
|
9
|
+
* `Rack::BounceFavicon` - Returns a 404 for requests to `/favicon.ico`
|
9
10
|
* `Rack::CSSHTTPRequest` - Adds CSSHTTPRequest support by encoding responses as CSS for cross-site AJAX-style data loading
|
10
11
|
* `Rack::Callbacks` - Implements DSL for pure before/after filter like Middlewares.
|
11
12
|
* `Rack::Config` - Shared configuration for cooperative middleware.
|
data/lib/rack/contrib.rb
CHANGED
@@ -1,10 +1,16 @@
|
|
1
1
|
require 'rack'
|
2
|
-
require 'git-version-bump'
|
3
2
|
|
4
3
|
module Rack
|
5
4
|
module Contrib
|
6
5
|
def self.release
|
6
|
+
require "git-version-bump"
|
7
7
|
GVB.version
|
8
|
+
rescue LoadError
|
9
|
+
begin
|
10
|
+
Gem::Specification.find_by_name("rack-contrib").version.to_s
|
11
|
+
rescue Gem::LoadError
|
12
|
+
"0.0.0.1.ENOGEM"
|
13
|
+
end
|
8
14
|
end
|
9
15
|
end
|
10
16
|
|
data/lib/rack/contrib/locale.rb
CHANGED
@@ -34,7 +34,13 @@ module Rack
|
|
34
34
|
|
35
35
|
lang = languages_and_qvalues.sort_by { |(locale, qvalue)|
|
36
36
|
qvalue.to_f
|
37
|
-
}.
|
37
|
+
}.reverse.detect { |(locale, qvalue)|
|
38
|
+
if I18n.enforce_available_locales
|
39
|
+
locale == '*' || I18n.available_locales.include?(locale.to_sym)
|
40
|
+
else
|
41
|
+
true
|
42
|
+
end
|
43
|
+
}.first
|
38
44
|
|
39
45
|
lang == '*' ? nil : lang
|
40
46
|
end
|
@@ -1,18 +1,31 @@
|
|
1
1
|
module Rack
|
2
|
-
# Rack::NotFound is a default endpoint.
|
3
|
-
#
|
2
|
+
# Rack::NotFound is a default endpoint. Optionally initialize with the
|
3
|
+
# path to a custom 404 page, to override the standard response body.
|
4
|
+
#
|
5
|
+
# Examples:
|
6
|
+
#
|
7
|
+
# Serve default 404 response:
|
8
|
+
# run Rack::NotFound.new
|
9
|
+
#
|
10
|
+
# Serve a custom 404 page:
|
11
|
+
# run Rack::NotFound.new('path/to/your/404.html')
|
4
12
|
|
5
13
|
class NotFound
|
6
14
|
F = ::File
|
7
15
|
|
8
|
-
def initialize(path)
|
9
|
-
|
10
|
-
|
16
|
+
def initialize(path = nil, content_type = 'text/html')
|
17
|
+
if path.nil?
|
18
|
+
@content = "Not found\n"
|
19
|
+
else
|
20
|
+
@content = F.read(path)
|
21
|
+
end
|
11
22
|
@length = @content.size.to_s
|
23
|
+
|
24
|
+
@content_type = content_type
|
12
25
|
end
|
13
26
|
|
14
27
|
def call(env)
|
15
|
-
[404, {'Content-Type' =>
|
28
|
+
[404, {'Content-Type' => @content_type, 'Content-Length' => @length}, [@content]]
|
16
29
|
end
|
17
30
|
end
|
18
31
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rack-contrib
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- rack-devel
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-07-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rack
|
@@ -25,33 +25,33 @@ dependencies:
|
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '1.4'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '0
|
34
|
-
type: :
|
33
|
+
version: '1.0'
|
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: '0
|
40
|
+
version: '1.0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: git-version-bump
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '
|
47
|
+
version: '0.15'
|
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: '0.15'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: github-release
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -72,14 +72,20 @@ dependencies:
|
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: '0.
|
75
|
+
version: '0.5'
|
76
|
+
- - ">="
|
77
|
+
- !ruby/object:Gem::Version
|
78
|
+
version: 0.5.2
|
76
79
|
type: :development
|
77
80
|
prerelease: false
|
78
81
|
version_requirements: !ruby/object:Gem::Requirement
|
79
82
|
requirements:
|
80
83
|
- - "~>"
|
81
84
|
- !ruby/object:Gem::Version
|
82
|
-
version: '0.
|
85
|
+
version: '0.5'
|
86
|
+
- - ">="
|
87
|
+
- !ruby/object:Gem::Version
|
88
|
+
version: 0.5.2
|
83
89
|
- !ruby/object:Gem::Dependency
|
84
90
|
name: json
|
85
91
|
requirement: !ruby/object:Gem::Requirement
|
@@ -87,6 +93,9 @@ dependencies:
|
|
87
93
|
- - "~>"
|
88
94
|
- !ruby/object:Gem::Version
|
89
95
|
version: '1.8'
|
96
|
+
- - ">="
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: 1.8.5
|
90
99
|
type: :development
|
91
100
|
prerelease: false
|
92
101
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -94,6 +103,23 @@ dependencies:
|
|
94
103
|
- - "~>"
|
95
104
|
- !ruby/object:Gem::Version
|
96
105
|
version: '1.8'
|
106
|
+
- - ">="
|
107
|
+
- !ruby/object:Gem::Version
|
108
|
+
version: 1.8.5
|
109
|
+
- !ruby/object:Gem::Dependency
|
110
|
+
name: mime-types
|
111
|
+
requirement: !ruby/object:Gem::Requirement
|
112
|
+
requirements:
|
113
|
+
- - "<"
|
114
|
+
- !ruby/object:Gem::Version
|
115
|
+
version: '3'
|
116
|
+
type: :development
|
117
|
+
prerelease: false
|
118
|
+
version_requirements: !ruby/object:Gem::Requirement
|
119
|
+
requirements:
|
120
|
+
- - "<"
|
121
|
+
- !ruby/object:Gem::Version
|
122
|
+
version: '3'
|
97
123
|
- !ruby/object:Gem::Dependency
|
98
124
|
name: minitest
|
99
125
|
requirement: !ruby/object:Gem::Requirement
|
@@ -273,7 +299,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
273
299
|
version: '0'
|
274
300
|
requirements: []
|
275
301
|
rubyforge_project:
|
276
|
-
rubygems_version: 2.
|
302
|
+
rubygems_version: 2.5.2
|
277
303
|
signing_key:
|
278
304
|
specification_version: 2
|
279
305
|
summary: Contributed Rack Middleware and Utilities
|