adelnor 0.0.5 → 0.0.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +10 -10
- data/adelnor.gemspec +3 -1
- data/lib/adelnor/response.rb +4 -12
- data/lib/adelnor/version.rb +1 -1
- metadata +17 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dd3a506fee52615e09d8aed4c85bea4a9dfdc58567a373b40b5960d903dc621f
|
4
|
+
data.tar.gz: b69d40e33b17d24932f6feee996116c785660e9519b9062a95de258bca85d0b7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f2f5ea6b2e64cdb6f9f5447a7590d73fa5bcb1b251b3e438b56bd9bc44a8112a9dc95bbf8492a871f29c61c4dc15b6604673517a3d06035d1234fbcedbfec8e0
|
7
|
+
data.tar.gz: 99c4805e7b08d6948021d03fdee3c5c9dd311485e2d2bfde2c773241cfb900ce548fe8a5297044ecd9fbc43a3abc06faca0862fc626af620278740a16874a8ec
|
data/README.md
CHANGED
@@ -1,18 +1,18 @@
|
|
1
|
-
# adelnor
|
1
|
+
# adelnor
|
2
2
|
|
3
|
-
![rubygems](https://badgen.net/rubygems/n/adelnor)
|
4
|
-
![rubygems](https://badgen.net/rubygems/v/adelnor)
|
5
|
-
![rubygems](https://badgen.net/rubygems/dt/adelnor)
|
3
|
+
![rubygems](https://badgen.net/rubygems/n/adelnor)
|
4
|
+
![rubygems](https://badgen.net/rubygems/v/adelnor/latest)
|
5
|
+
![rubygems](https://badgen.net/rubygems/dt/adelnor)
|
6
6
|
|
7
|
-
![Build](https://github.com/leandronsp/adelnor/actions/workflows/build.yml/badge.svg)
|
8
|
-
[![Ruby Style Guide](https://img.shields.io/badge/code_style-rubocop-brightgreen.svg)](https://github.com/rubocop/rubocop)
|
7
|
+
![Build](https://github.com/leandronsp/adelnor/actions/workflows/build.yml/badge.svg)
|
8
|
+
[![Ruby Style Guide](https://img.shields.io/badge/code_style-rubocop-brightgreen.svg)](https://github.com/rubocop/rubocop)
|
9
9
|
[![Ruby Style Guide](https://img.shields.io/badge/code_style-community-brightgreen.svg)](https://rubystyle.guide)
|
10
|
-
``` .___ .__
|
11
|
-
_____ __| _/____ | | ____ ___________
|
10
|
+
``` .___ .__
|
11
|
+
_____ __| _/____ | | ____ ___________
|
12
12
|
\__ \ / __ |/ __ \| | / \ / _ \_ __ \
|
13
13
|
/ __ \_/ /_/ \ ___/| |_| | ( <_> ) | \/
|
14
|
-
(____ /\____ |\___ >____/___| /\____/|__|
|
15
|
-
\/ \/ \/ \/
|
14
|
+
(____ /\____ |\___ >____/___| /\____/|__|
|
15
|
+
\/ \/ \/ \/
|
16
16
|
```
|
17
17
|
|
18
18
|
[adelnor](https://rubygems.org/gems/adelnor) is a dead simple, yet Rack-compatible, HTTP server written in Ruby.
|
data/adelnor.gemspec
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |spec|
|
4
4
|
spec.name = 'adelnor'
|
5
|
-
spec.version = '0.0.
|
5
|
+
spec.version = '0.0.6'
|
6
6
|
spec.summary = 'Adelnor HTTP server'
|
7
7
|
spec.description = 'A dead simple, yet Rack-compatible, HTTP server written in Ruby'
|
8
8
|
spec.authors = ['Leandro Proença']
|
@@ -11,5 +11,7 @@ Gem::Specification.new do |spec|
|
|
11
11
|
spec.homepage = 'https://github.com/leandronsp/adelnor'
|
12
12
|
spec.license = 'MIT'
|
13
13
|
|
14
|
+
spec.add_runtime_dependency 'rack'
|
15
|
+
|
14
16
|
spec.required_ruby_version = '~> 3.0'
|
15
17
|
end
|
data/lib/adelnor/response.rb
CHANGED
@@ -5,7 +5,7 @@ module Adelnor
|
|
5
5
|
def initialize(status, headers, body)
|
6
6
|
@status = status
|
7
7
|
@headers = headers
|
8
|
-
@body = body
|
8
|
+
@body = body.respond_to?(:first) ? body.first : body
|
9
9
|
end
|
10
10
|
|
11
11
|
def self.build(*args)
|
@@ -13,20 +13,12 @@ module Adelnor
|
|
13
13
|
end
|
14
14
|
|
15
15
|
def build
|
16
|
-
"HTTP/2.0 #{@status}\r\n#{headers_as_string}\r\n#{
|
16
|
+
"HTTP/2.0 #{@status}\r\n#{headers_as_string}\r\n#{@body}"
|
17
17
|
end
|
18
18
|
|
19
19
|
private
|
20
20
|
|
21
|
-
def
|
22
|
-
|
23
|
-
def headers_as_string
|
24
|
-
@headers.reduce('') do |acc, (key, value)|
|
25
|
-
acc += header_as_string(key, value)
|
26
|
-
acc
|
27
|
-
end
|
28
|
-
end
|
29
|
-
|
30
|
-
def header_as_string(key, value) = "#{key}: #{value}\r\n"
|
21
|
+
def headers_as_string = @headers.reduce('', &method(:acc_header_string))
|
22
|
+
def acc_header_string(acc, (key, value)) = acc += "#{key}: #{value}\r\n"
|
31
23
|
end
|
32
24
|
end
|
data/lib/adelnor/version.rb
CHANGED
metadata
CHANGED
@@ -1,15 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: adelnor
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Leandro Proença
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-05-
|
12
|
-
dependencies:
|
11
|
+
date: 2022-05-22 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rack
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
13
27
|
description: A dead simple, yet Rack-compatible, HTTP server written in Ruby
|
14
28
|
email: leandronsp@gmail.com
|
15
29
|
executables: []
|