nephos-server 0.6.9 → 0.7.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.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/CHANGELOG +5 -19
- data/DOCUMENTATION/DATABASE/SEQUEL.md +1 -1
- data/DOCUMENTATION/GUIDE_CONTROLLER.md +4 -0
- data/DOCUMENTATION/TEMPLATING/SLIM.md +8 -1
- data/app/main.rb +3 -3
- data/bin/nephos-generator +2 -2
- data/bin/nephos-server +17 -11
- data/bin/nephos-status +3 -3
- data/lib/nephos-server.rb +1 -0
- data/lib/nephos-server/bin-helpers.rb +2 -2
- data/lib/nephos-server/controller.rb +1 -1
- data/lib/nephos-server/cookies.rb +52 -0
- data/lib/nephos-server/router/helpers.rb +2 -2
- data/lib/nephos-server/router/main.rb +1 -1
- data/lib/nephos-server/server/responder.rb +2 -1
- data/nephos-server.gemspec +1 -0
- data/routes.rb +2 -0
- data/test/functional/controller.rb +1 -1
- data/test/functional/generator.rb +8 -8
- data/test/functional/global.rb +2 -2
- data/version +1 -1
- metadata +10 -3
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1342d8a4e7a96a441515aa0cd1d051e455004078
|
4
|
+
data.tar.gz: 11d0fafb7cc67d032ac12732d1605998f8065440
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2efc129fbaa523bf5499a43d4ce1172e7733ab23100590ef8ebca08cbbba979414b65b62ce441bf74e3d2474bca6e6c70b3166cbc84ca60f8fa9d8ea2a6f1bc6
|
7
|
+
data.tar.gz: 2e02115d5e1b76a40f36f4509ce42bc28221c76719d5e9ffa9c74e638ead1ebe34129ff51d9668a4aab5f9a7926a25bfd9fb7777bcc89540ba7b6f2e718cb247
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
data/CHANGELOG
CHANGED
@@ -1,17 +1,15 @@
|
|
1
|
-
v0.
|
1
|
+
v0.7.0
|
2
|
+
* Remove depreciated method
|
3
|
+
* Large cookie improvement (can change the path)
|
4
|
+
|
5
|
+
v0.6
|
2
6
|
* Fix unitary tests
|
3
7
|
* Fix binary server to handle daemons better
|
4
8
|
* Add unitary test to test the server globaly
|
5
9
|
* Log can be called from the controller
|
6
|
-
|
7
|
-
v0.6.8
|
8
10
|
* Update urls and links
|
9
11
|
* Important fix for cookies
|
10
|
-
|
11
|
-
v0.6.7
|
12
12
|
* Fix gemspec
|
13
|
-
|
14
|
-
v0.6.6
|
15
13
|
* Improve functional tests (router)
|
16
14
|
* Improve executables (status)
|
17
15
|
* Improve router (disable verbose)
|
@@ -19,34 +17,22 @@ v0.6.6
|
|
19
17
|
* Update "nephos" gem to 1.0.4
|
20
18
|
* Add new feature Controller.url_for
|
21
19
|
* Add new feature log
|
22
|
-
|
23
|
-
v0.6.5
|
24
20
|
* Improve routing helpers (optional url parameter)
|
25
21
|
* Add new functional tests (router)
|
26
22
|
* Add extension for url (.html, ...)
|
27
23
|
* Add improved router helper (simple destination, alias)
|
28
|
-
|
29
|
-
v0.6.4
|
30
24
|
* Fix application generator (replace in the gemfile nephos-server by nephos)
|
31
25
|
* Improve guides (more doc, corrections, update)
|
32
26
|
* Certificate for sign the gem
|
33
|
-
|
34
|
-
v0.6.3
|
35
27
|
* Add customisable default error page
|
36
|
-
|
37
|
-
v0.6.2
|
38
28
|
* Fix generator (bug when --application on current directory)
|
39
29
|
* Improve hooks (add the :only option)
|
40
30
|
* Improve documentation
|
41
31
|
* Improve routing (more tests, better duplicate / handlement)
|
42
|
-
|
43
|
-
v0.6.1
|
44
32
|
* Improve daemons
|
45
33
|
* Improve Rakefile and tests structure
|
46
34
|
* Add few functional (router, server, generator) tests
|
47
35
|
* Add new unitary tests
|
48
|
-
|
49
|
-
v0.6.0
|
50
36
|
* Big change (ea49dfb0b429f03327447477bfee9bef30dda7ad) on the architecture, massive usage of Rack::Request, review the global architecture, update all unitary tests
|
51
37
|
* add hook before_action and after_action
|
52
38
|
* improve params
|
@@ -8,12 +8,12 @@ It handles connection with DB, sql request creation, caching, etc.
|
|
8
8
|
[Sequel documentation](http://sequel.jeremyevans.net/documentation.html)
|
9
9
|
|
10
10
|
## Installation
|
11
|
-
|
12
11
|
```bash
|
13
12
|
gem install sequel
|
14
13
|
```
|
15
14
|
|
16
15
|
## Usage
|
16
|
+
You can add the following code in ``/sequel.rb``:
|
17
17
|
|
18
18
|
```ruby
|
19
19
|
require 'sequel'
|
@@ -9,8 +9,12 @@ Example:
|
|
9
9
|
```ruby
|
10
10
|
cookies["a"] = "b" # add a cookie named "a"
|
11
11
|
cookies.delete("b") # remove a cookie named "b"
|
12
|
+
cookies.set_path("a", "/a")
|
12
13
|
```
|
13
14
|
|
15
|
+
* TODO: Change expiration date, domain, ...
|
16
|
+
* Note: By default, every cookie's path is "/"
|
17
|
+
|
14
18
|
|
15
19
|
### Params
|
16
20
|
You can access to the parameters (defined by http or via the URI, based on your
|
@@ -4,13 +4,20 @@ Slim is a HTML templating langage, simple to implement in the Nephos Server.
|
|
4
4
|
[Slim documentation](http://slim-lang.com)
|
5
5
|
|
6
6
|
## Installation
|
7
|
-
|
8
7
|
```bash
|
9
8
|
gem install slim
|
10
9
|
```
|
11
10
|
|
12
11
|
## Usage in Nephos Server
|
12
|
+
You can add the following code in ``/slim.rb``:
|
13
|
+
|
14
|
+
```ruby
|
15
|
+
def slim(file, locals)
|
16
|
+
Slim::Template.new() { File.read('app/views/' + file) }.render(nil, locals)
|
17
|
+
end
|
18
|
+
```
|
13
19
|
|
20
|
+
### Example
|
14
21
|
```ruby
|
15
22
|
require 'slim'
|
16
23
|
|
data/app/main.rb
CHANGED
@@ -60,7 +60,7 @@ class MainController < Nephos::Controller
|
|
60
60
|
file = File.expand_path(params["image"], dir)
|
61
61
|
if not file[0..(dir.size-1)] == dir or not AUTH_IMG_EXT.include?(File.extname(file))
|
62
62
|
return {status: 500, content: "invalid path #{params['image']}"}
|
63
|
-
elsif not File.
|
63
|
+
elsif not File.exist? file
|
64
64
|
return {status: 404, content: "invalid path #{params['image']}"}
|
65
65
|
else
|
66
66
|
return {type: 'image/jpeg', content: File.read(file)}
|
@@ -76,9 +76,9 @@ class MainController < Nephos::Controller
|
|
76
76
|
{json: cookies.to_h}
|
77
77
|
end
|
78
78
|
|
79
|
-
# require 'pry'
|
80
79
|
def debug
|
81
|
-
#
|
80
|
+
#require 'pry'
|
81
|
+
#binding.pry
|
82
82
|
{}
|
83
83
|
end
|
84
84
|
|
data/bin/nephos-generator
CHANGED
@@ -78,14 +78,14 @@ module Nephos
|
|
78
78
|
file = "app/#{lname}.rb"
|
79
79
|
raise_invalid_appli
|
80
80
|
if $remove
|
81
|
-
if File.
|
81
|
+
if File.exist?(file) and File.read(file).include? "class #{uname} < Nephos::Controller"
|
82
82
|
File.delete(file)
|
83
83
|
puts "Success: ".yellow + "\"#{file}\" removed"
|
84
84
|
else
|
85
85
|
raise BinError, "\"#{file}\" is not a valid Controller file."
|
86
86
|
end
|
87
87
|
else
|
88
|
-
if File.
|
88
|
+
if File.exist? file
|
89
89
|
print "Warning: ".yellow + "The file #{file} already exists. Are you sure to erase it ? (y/N) : "
|
90
90
|
r = STDIN.gets.to_s.chomp
|
91
91
|
raise BinError, "File #{file} already exists" unless r.match(/y(es)?/)
|
data/bin/nephos-server
CHANGED
@@ -9,40 +9,46 @@ require_relative '../lib/nephos-server/version'
|
|
9
9
|
class RoutingError < StandardError; end
|
10
10
|
|
11
11
|
begin
|
12
|
-
opts = OptionParser.new do |
|
13
|
-
|
12
|
+
opts = OptionParser.new do |opt|
|
13
|
+
opt.banner = "Usage<#{Nephos::VERSION}>: nephos-server <options>"
|
14
14
|
|
15
15
|
$server_port = ENV["SERVER_PORT"] || 8080
|
16
|
-
|
16
|
+
opt.on("-p=nb", "--port=nb", "Port to listen") do |port|
|
17
17
|
$server_port = Integer(port)
|
18
18
|
end
|
19
19
|
|
20
20
|
$server_host = ENV["SERVER_HOST"] || "0.0.0.0"
|
21
|
-
|
21
|
+
opt.on("-h=listen", "--host=listen", "Listen on the network") do |host|
|
22
22
|
$server_host = host
|
23
23
|
end
|
24
24
|
|
25
25
|
$server_env = ENV["ENVIRONMENT"] || "development"
|
26
|
-
|
26
|
+
opt.on("-e=env", "--env=env", "Environment") do |env|
|
27
27
|
$server_env = env
|
28
28
|
end
|
29
29
|
|
30
|
-
|
30
|
+
opt.on("--debug", "Enable debugging mode") do
|
31
31
|
$debug = true
|
32
32
|
end
|
33
33
|
|
34
|
-
|
34
|
+
opt.on("--test", "Enable testing mode (for nephos developpers)") do
|
35
35
|
$test = true
|
36
36
|
end
|
37
37
|
|
38
|
-
|
38
|
+
opt.on("-d", "--daemon", "Start in background") do
|
39
39
|
$daemon = true
|
40
40
|
end
|
41
41
|
|
42
|
-
|
42
|
+
opt.on("-k", "--kill", "Kill the daemon if started") do
|
43
43
|
$kill_daemon = true
|
44
44
|
end
|
45
45
|
|
46
|
+
opt.on("-r", "--restart", "Restart the daemon if started") do
|
47
|
+
$restart_daemon = true
|
48
|
+
$kill_daemon = true
|
49
|
+
$daemon = true
|
50
|
+
end
|
51
|
+
|
46
52
|
end.parse!
|
47
53
|
|
48
54
|
Nephos.env = $server_env
|
@@ -54,7 +60,7 @@ begin
|
|
54
60
|
pid = Nephos::Bin::Daemon.get_pid
|
55
61
|
Nephos::Bin::Daemon.kill!
|
56
62
|
puts "Daemon #{pid} stopped"
|
57
|
-
exit 0
|
63
|
+
exit 0 unless $restart_daemon
|
58
64
|
end
|
59
65
|
if $daemon and Nephos::Bin::Daemon.started?
|
60
66
|
raise "Unable to start the server: the daemon #{Nephos::Bin::Daemon.get_pid} already exists"
|
@@ -67,7 +73,7 @@ begin
|
|
67
73
|
end
|
68
74
|
|
69
75
|
if not $test and
|
70
|
-
(not File.
|
76
|
+
(not File.exist? "Gemfile.lock" or
|
71
77
|
not File.read("Gemfile.lock").split.index("nephos-server"))
|
72
78
|
raise InvalidApplication
|
73
79
|
end
|
data/bin/nephos-status
CHANGED
@@ -24,12 +24,12 @@ $dir = opt[0] || "."
|
|
24
24
|
begin
|
25
25
|
if Dir.exists? $dir
|
26
26
|
$gfl = File.expand_path "Gemfile.lock", $dir
|
27
|
-
if not File.
|
27
|
+
if not File.exist? $gfl or
|
28
28
|
not File.read($gfl).split.index("nephos-server")
|
29
29
|
raise "\"#{$dir}\" is not a valid nephos-server application"
|
30
30
|
else
|
31
31
|
data = File.read($gfl).split("\n").map(&:strip)
|
32
|
-
version = data.map{|e| e.match
|
32
|
+
version = data.map{|e| e.match(/nephos-server \((?<version>\d+(\.\d+)+)\)/) }.compact.first
|
33
33
|
raise "\"#{$gfl}\" doesn't contain a valid nephos-server version" unless version
|
34
34
|
version = version["version"]
|
35
35
|
path = $gfl.gsub(/Gemfile\.lock$/, "")
|
@@ -41,7 +41,7 @@ begin
|
|
41
41
|
puts "Installed nephos-version: #{version}"
|
42
42
|
puts "Controllers (#{n_controllers})"
|
43
43
|
daemon = $dir + "/.pid"
|
44
|
-
puts "The application is deploye as daemon (#{File.read(daemon)})" if File.
|
44
|
+
puts "The application is deploye as daemon (#{File.read(daemon)})" if File.exist? daemon
|
45
45
|
end
|
46
46
|
else
|
47
47
|
raise "\"#{$dir}\" is not a valid directory"
|
data/lib/nephos-server.rb
CHANGED
@@ -12,6 +12,7 @@ require_relative 'nephos-server/version'
|
|
12
12
|
# lib
|
13
13
|
require_relative 'nephos-server/basic_errors'
|
14
14
|
require_relative 'nephos-server/params'
|
15
|
+
require_relative 'nephos-server/cookies'
|
15
16
|
require_relative 'nephos-server/controller'
|
16
17
|
require_relative 'nephos-server/router/main'
|
17
18
|
|
@@ -14,7 +14,7 @@ module Nephos
|
|
14
14
|
def self.is_a_valid_application? dir="."
|
15
15
|
return false if not Dir.exists? dir
|
16
16
|
gfl = File.expand_path "Gemfile.lock", dir
|
17
|
-
return false if not File.
|
17
|
+
return false if not File.exist? gfl
|
18
18
|
return false if not File.read(gfl).split.index("nephos-server")
|
19
19
|
return true
|
20
20
|
end
|
@@ -49,7 +49,7 @@ module Nephos
|
|
49
49
|
end
|
50
50
|
|
51
51
|
def self.get_pid
|
52
|
-
return nil if not File.
|
52
|
+
return nil if not File.exist?(get_pid_file)
|
53
53
|
v = File.read(get_pid_file)
|
54
54
|
v = Integer(v) rescue nil
|
55
55
|
return v
|
@@ -0,0 +1,52 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
|
3
|
+
module Nephos
|
4
|
+
|
5
|
+
# Params to a hash, where every elements are accessibles via a stringified key
|
6
|
+
# so, even if the entry was added with the key :KEY, it will be accessible via
|
7
|
+
# a string equivalent to :key.to_s
|
8
|
+
# param["key"] == param[:key]
|
9
|
+
#
|
10
|
+
# Every methods present in {Hash} are usable in {Param}.
|
11
|
+
class Cookies < Params
|
12
|
+
|
13
|
+
# @param hash [Hash] hash containing the parameters
|
14
|
+
def initialize(hash={})
|
15
|
+
raise ArgumentError, "the first argument must be a Hash" unless hash.is_a? Hash
|
16
|
+
# TODO: take care of the path
|
17
|
+
@hash = Hash[hash.map{|k,v| [k.to_s, {content: v, path: "/"}]}]
|
18
|
+
end
|
19
|
+
|
20
|
+
def method_missing m, *a
|
21
|
+
@hash.send(m, *(a.map(&:to_s)))
|
22
|
+
@hash.send(m, *a)
|
23
|
+
end
|
24
|
+
|
25
|
+
def [] i
|
26
|
+
@hash[i.to_s][:content]
|
27
|
+
end
|
28
|
+
|
29
|
+
def []= i, v, path="/"
|
30
|
+
@hash[i.to_s] = {content: v.to_s, path: path.to_s}
|
31
|
+
end
|
32
|
+
|
33
|
+
def path i
|
34
|
+
@hash[i.to_s][:path]
|
35
|
+
end
|
36
|
+
|
37
|
+
def set_path i, v
|
38
|
+
raise InvalidPath, v unless v.is_a? String
|
39
|
+
@hash[i.to_s][:path] = URI.encode(v)
|
40
|
+
end
|
41
|
+
|
42
|
+
def to_h
|
43
|
+
return @hash
|
44
|
+
end
|
45
|
+
alias :to_hash :to_h
|
46
|
+
|
47
|
+
def to_s
|
48
|
+
return to_h.to_s
|
49
|
+
end
|
50
|
+
|
51
|
+
end
|
52
|
+
end
|
@@ -17,9 +17,9 @@ end
|
|
17
17
|
# if the client request match with the verb and the url provided.
|
18
18
|
#
|
19
19
|
# Checkout the documentation about the parameters and API for more informations
|
20
|
-
def add_route(verb,
|
20
|
+
def add_route(verb, option_url=nil, what)
|
21
21
|
raise InvalidRoute, "what must be a hash" unless what.is_a? Hash
|
22
|
-
what[:url] ||=
|
22
|
+
what[:url] ||= option_url
|
23
23
|
Array(what[:url]).each do |url|
|
24
24
|
route = what.dup
|
25
25
|
route[:url] = url
|
@@ -41,7 +41,7 @@ module Nephos
|
|
41
41
|
end
|
42
42
|
|
43
43
|
def error_custom(req, code, default=nil)
|
44
|
-
if File.
|
44
|
+
if File.exist? "app/#{code}.html"
|
45
45
|
@responder.render(status: code, html: File.read("app/#{code}.html"))
|
46
46
|
else
|
47
47
|
render_error(req, code, default || "Error: #{req.status}")
|
@@ -83,7 +83,8 @@ module Nephos
|
|
83
83
|
# puts "--- Params #{params.class} ---", "<<", params, ">>"
|
84
84
|
resp = render(params)
|
85
85
|
controller.cookies.to_h.each do |k, v|
|
86
|
-
resp.set_cookie k, v
|
86
|
+
resp.set_cookie k, v[:content]
|
87
|
+
resp.header["Set-Cookie"] += ";path=" + v[:path]
|
87
88
|
end
|
88
89
|
return resp
|
89
90
|
end
|
data/nephos-server.gemspec
CHANGED
data/routes.rb
CHANGED
@@ -25,3 +25,5 @@ get url: "/get_cookies", controller: "MainController", method: "get_cookies"
|
|
25
25
|
get url: "/add_cookie", controller: "MainController", method: "add_cookie"
|
26
26
|
|
27
27
|
get "/err500", controller: "MainController", method: "err500"
|
28
|
+
|
29
|
+
get "/;/cookie", to: "MainController#root"
|
@@ -33,7 +33,7 @@ class TestController < Test::Unit::TestCase
|
|
33
33
|
router = Nephos::Router.new(silent: true)
|
34
34
|
r = Rack::Request.new({"REQUEST_METHOD"=>"GET", "PATH_INFO"=>"/add_cookie"})
|
35
35
|
out = router.execute(r)
|
36
|
-
assert_equal "UN_COOKIE_VAUT%3A=UN+BON+MOMENT+%21", out.header["Set-Cookie"]
|
36
|
+
assert_equal "UN_COOKIE_VAUT%3A=UN+BON+MOMENT+%21;path=/", out.header["Set-Cookie"]
|
37
37
|
end
|
38
38
|
|
39
39
|
end
|
@@ -5,8 +5,8 @@ class TestNephosServerGenerator < Test::Unit::TestCase
|
|
5
5
|
|
6
6
|
`./bin/nephos-generator --test -a /tmp/nephos-server-test --no-build --no-git`
|
7
7
|
assert(Dir.exists? "/tmp/nephos-server-test")
|
8
|
-
assert(File.
|
9
|
-
assert(File.
|
8
|
+
assert(File.exist? "/tmp/nephos-server-test/Gemfile")
|
9
|
+
assert(File.exist? "/tmp/nephos-server-test/routes.rb")
|
10
10
|
assert(Dir.exists? "/tmp/nephos-server-test/app")
|
11
11
|
gemfile_data = File.read("/tmp/nephos-server-test/Gemfile").split("\n")
|
12
12
|
assert(gemfile_data.include? "gem 'nephos'")
|
@@ -18,14 +18,14 @@ class TestNephosServerGenerator < Test::Unit::TestCase
|
|
18
18
|
|
19
19
|
`./bin/nephos-generator --test -a /tmp/nephos-server-test --no-git`
|
20
20
|
assert(Dir.exists? "/tmp/nephos-server-test")
|
21
|
-
assert(File.
|
22
|
-
assert(File.
|
21
|
+
assert(File.exist? "/tmp/nephos-server-test/Gemfile")
|
22
|
+
assert(File.exist? "/tmp/nephos-server-test/routes.rb")
|
23
23
|
assert(Dir.exists? "/tmp/nephos-server-test/app")
|
24
24
|
gemfile_data = File.read("/tmp/nephos-server-test/Gemfile").split("\n")
|
25
25
|
assert(gemfile_data.include? "gem 'nephos'")
|
26
26
|
|
27
27
|
# if connected to internet only
|
28
|
-
assert(File.
|
28
|
+
assert(File.exist? "/tmp/nephos-server-test/Gemfile.lock")
|
29
29
|
gemfile_lock_data = File.read("/tmp/nephos-server-test/Gemfile.lock").split
|
30
30
|
assert(gemfile_lock_data.include? "nephos")
|
31
31
|
assert(gemfile_lock_data.include? "nephos-server")
|
@@ -37,17 +37,17 @@ class TestNephosServerGenerator < Test::Unit::TestCase
|
|
37
37
|
`rm -f app/test_controller.rb`
|
38
38
|
|
39
39
|
`./bin/nephos-generator --test -c test`
|
40
|
-
assert File.
|
40
|
+
assert File.exist? "app/test_controller.rb"
|
41
41
|
assert_equal "class TestController < Nephos::Controller", File.read("app/test_controller.rb").split("\n").first
|
42
42
|
`rm -f app/test_controller.rb`
|
43
43
|
|
44
44
|
`./bin/nephos-generator -c test --test`
|
45
|
-
assert File.
|
45
|
+
assert File.exist? "app/test_controller.rb"
|
46
46
|
assert_equal "class TestController < Nephos::Controller", File.read("app/test_controller.rb").split("\n").first
|
47
47
|
`rm -f app/test_controller.rb`
|
48
48
|
|
49
49
|
`./bin/nephos-generator -c testController --test`
|
50
|
-
assert File.
|
50
|
+
assert File.exist? "app/test_controller.rb"
|
51
51
|
assert_equal "class TestController < Nephos::Controller", File.read("app/test_controller.rb").split("\n").first
|
52
52
|
`rm -f app/test_controller.rb`
|
53
53
|
end
|
data/test/functional/global.rb
CHANGED
@@ -18,13 +18,13 @@ class TestGlobal < Test::Unit::TestCase
|
|
18
18
|
r = open("http://127.0.0.1:8080/")
|
19
19
|
assert_equal "{\"list\":[],\"add\":\"/add\",\"rm\":\"/rm\"}\n", r.read
|
20
20
|
assert_equal "application/json; charset=UTF-8", r.meta["content-type"]
|
21
|
-
assert_equal "a=b", r.meta["set-cookie"]
|
21
|
+
assert_equal "a=b;path=/", r.meta["set-cookie"]
|
22
22
|
assert_equal ["200", "OK"], r.status
|
23
23
|
|
24
24
|
r = open("http://127.0.0.1:8080/home")
|
25
25
|
assert_equal "{\"list\":[],\"add\":\"/add\",\"rm\":\"/rm\"}\n", r.read
|
26
26
|
assert_equal "application/json; charset=UTF-8", r.meta["content-type"]
|
27
|
-
assert_equal "a=b", r.meta["set-cookie"]
|
27
|
+
assert_equal "a=b;path=/", r.meta["set-cookie"]
|
28
28
|
assert_equal ["200", "OK"], r.status
|
29
29
|
|
30
30
|
r = open("http://127.0.0.1:8080/home/")
|
data/version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.7.0
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nephos-server
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- poulet_a
|
@@ -31,7 +31,7 @@ cert_chain:
|
|
31
31
|
tcYkgfqUJPitIJx1RvWZpIyH5uJhRUYK3+vU9nMOxez5WbIlC1TtpByKAPMX+sht
|
32
32
|
gib3AoIT8jh/2w==
|
33
33
|
-----END CERTIFICATE-----
|
34
|
-
date: 2015-11-
|
34
|
+
date: 2015-11-07 00:00:00.000000000 Z
|
35
35
|
dependencies:
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: nomorebeer
|
@@ -122,6 +122,7 @@ files:
|
|
122
122
|
- lib/nephos-server/basic_errors.rb
|
123
123
|
- lib/nephos-server/bin-helpers.rb
|
124
124
|
- lib/nephos-server/controller.rb
|
125
|
+
- lib/nephos-server/cookies.rb
|
125
126
|
- lib/nephos-server/params.rb
|
126
127
|
- lib/nephos-server/router/helpers.rb
|
127
128
|
- lib/nephos-server/router/load.rb
|
@@ -168,6 +169,12 @@ rubyforge_project:
|
|
168
169
|
rubygems_version: 2.4.8
|
169
170
|
signing_key:
|
170
171
|
specification_version: 4
|
171
|
-
summary: "*
|
172
|
+
summary: "* fix regression on empty response * add unitary tests * improve gemspec
|
173
|
+
* fix severe regression on responder * fix environment bug * add continuous integration
|
174
|
+
with gitlab * fix executables requirements to be testable * add cookies management
|
175
|
+
* fix regression on content-type from v0.4 * fix nephos gem (binaries can be used
|
176
|
+
out of an application) * improve code documentation (annotations above the methods
|
177
|
+
and classes) * fix content type for json to application/json * improve executables:
|
178
|
+
version taking in count"
|
172
179
|
test_files: []
|
173
180
|
has_rdoc:
|
metadata.gz.sig
CHANGED
Binary file
|