mlserver 1.0.2 → 1.0.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 +4 -4
- data/bin/mlserver +5 -1
- data/lib/MLserver/server.rb +12 -1
- data/lib/MLserver/settings.rb +5 -2
- data/lib/MLserver.rb +1 -1
- metadata +5 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fa32313f873d777ffa2e6dac3728f18534a2d6e14781cfb59e72a4bf57b11d26
|
4
|
+
data.tar.gz: b8990d0a7a317ce820a069d39069a4e6892a3b7b87fa76acf95b447a485bde79
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 925961276ec536d2f2715a31a317f9c2d2cd04c346cfd09e50a4880a05c5d9dd4d238f3aa597a50eccad49495353210b1909f39394826beaadc737f819a7e4e3
|
7
|
+
data.tar.gz: 01c73e8bc98be2609c59da4086bc8759f259c279172528b4fa059ba46beb480ae7a3d0be20060dd9493b78880b6164ac3d38a89cc475d4cd137000175fc4eeac
|
data/bin/mlserver
CHANGED
data/lib/MLserver/server.rb
CHANGED
@@ -11,6 +11,7 @@ module MLserver
|
|
11
11
|
ssl_port = settings.ssl_port
|
12
12
|
handler = settings.handler
|
13
13
|
logger = settings.logger
|
14
|
+
@@use_http_versions = @@valid_http_versions - (@@valid_http_versions - settings.use_http_versions)
|
14
15
|
|
15
16
|
logger.log "MLserver #{MLserver.version}"
|
16
17
|
|
@@ -44,6 +45,10 @@ module MLserver
|
|
44
45
|
logger.log "SSL error occured: #{e}", :error
|
45
46
|
client.close if client
|
46
47
|
next
|
48
|
+
rescue Errno::ECONNRESET => e
|
49
|
+
logger.log "SSL Connection reset: #{e}", :error
|
50
|
+
client.close if client
|
51
|
+
next
|
47
52
|
end
|
48
53
|
|
49
54
|
Thread.start(client) do |client|
|
@@ -79,7 +84,7 @@ module MLserver
|
|
79
84
|
|
80
85
|
logger.log_traffic client.peeraddr[2], :incoming, "#{r.method} #{r.path} #{r.httpver}"
|
81
86
|
|
82
|
-
if !@@
|
87
|
+
if !@@use_http_versions.include?(r.httpver)
|
83
88
|
client_ip = client.peeraddr[2]
|
84
89
|
|
85
90
|
resp = MLserver::ErrorResponse.new(505)
|
@@ -103,6 +108,12 @@ module MLserver
|
|
103
108
|
end
|
104
109
|
end
|
105
110
|
|
111
|
+
if MLserver.settings.trim_urls && r.path != "/" && r.path[-1] == "/"
|
112
|
+
r.respond RedirectResponse.new(r.path[0..-2], type: 301, httpver: "HTTP/1.0").response
|
113
|
+
client.close
|
114
|
+
Thread.exit
|
115
|
+
end
|
116
|
+
|
106
117
|
begin
|
107
118
|
handler.run(r, client)
|
108
119
|
rescue => e
|
data/lib/MLserver/settings.rb
CHANGED
@@ -2,7 +2,7 @@ module MLserver
|
|
2
2
|
@@settings = nil
|
3
3
|
|
4
4
|
class Settings
|
5
|
-
def initialize(host: "0.0.0.0", port: "
|
5
|
+
def initialize(host: "0.0.0.0", port: "8080")
|
6
6
|
@host = host
|
7
7
|
@port = port.to_i
|
8
8
|
@handler = nil
|
@@ -14,9 +14,12 @@ module MLserver
|
|
14
14
|
@ssl_additional_certs = []
|
15
15
|
@ssl_host = nil
|
16
16
|
@ssl_port = nil
|
17
|
+
@trim_urls = false
|
18
|
+
@use_http_versions = ["HTTP/1.0", "HTTP/1.1"]
|
17
19
|
end
|
18
20
|
|
19
|
-
attr_accessor :host, :port, :handler, :logger, :force_host, :ssl, :ssl_key, :ssl_cert, :ssl_additional_certs, :ssl_host, :ssl_port
|
21
|
+
attr_accessor :host, :port, :handler, :logger, :force_host, :ssl, :ssl_key, :ssl_cert, :ssl_additional_certs, :ssl_host, :ssl_port,
|
22
|
+
:trim_urls, :use_http_versions
|
20
23
|
end
|
21
24
|
|
22
25
|
def self.settings
|
data/lib/MLserver.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mlserver
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matthias Lee
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-01-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: argparse
|
@@ -30,14 +30,14 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0.3.
|
33
|
+
version: 0.3.4
|
34
34
|
type: :runtime
|
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.3.
|
40
|
+
version: 0.3.4
|
41
41
|
description: A simple web server
|
42
42
|
email: matthias@matthiasclee.com
|
43
43
|
executables:
|
@@ -76,7 +76,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
76
76
|
- !ruby/object:Gem::Version
|
77
77
|
version: '0'
|
78
78
|
requirements: []
|
79
|
-
rubygems_version: 3.
|
79
|
+
rubygems_version: 3.2.3
|
80
80
|
signing_key:
|
81
81
|
specification_version: 4
|
82
82
|
summary: A simple web server
|