tzispa 0.7.0 → 0.7.1
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 +5 -0
- data/lib/tzispa/api/handler.rb +20 -12
- data/lib/tzispa/controller/base.rb +5 -1
- data/lib/tzispa/server.rb +2 -0
- data/lib/tzispa/version.rb +1 -1
- data/tzispa.gemspec +1 -1
- metadata +7 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f50c454f5ef7dadfebaba6ef100dd0b0c46cf195
|
4
|
+
data.tar.gz: ea1f5f7ba86c28537a1cb6cd3bbc2837e5d75da4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4d25afce79bda116c7b7794eae00b10403edd4573950c3a9c6ee19cffe90dc2eb9d730865ba253eb460175abb0e5f206332aa4eac9ee7394730919565debed39
|
7
|
+
data.tar.gz: 587680df83f8d2c9016dd3c86b50d2baaf941398a791335ff5f570408b2ae0c2c83d85f83270ea15a7c57c76476e7af35cc6d9f3909a224cac69266f5fa3d18a
|
data/CHANGELOG.md
CHANGED
@@ -2,6 +2,11 @@ Tzispa
|
|
2
2
|
|
3
3
|
General purpose web framework
|
4
4
|
|
5
|
+
## v0.7.1
|
6
|
+
- ensure set response status in prepare_client/server_error
|
7
|
+
- added result_redirect method in api handlers
|
8
|
+
- bug fixes
|
9
|
+
|
5
10
|
## v0.7.0
|
6
11
|
- distinct error and http status in api handlers
|
7
12
|
- better api responses by content type
|
data/lib/tzispa/api/handler.rb
CHANGED
@@ -41,12 +41,6 @@ module Tzispa
|
|
41
41
|
@status = nil
|
42
42
|
end
|
43
43
|
|
44
|
-
def result(type:, data: nil, error: nil)
|
45
|
-
@type = type
|
46
|
-
@data = data
|
47
|
-
@error = error
|
48
|
-
end
|
49
|
-
|
50
44
|
class << self
|
51
45
|
def before(*args)
|
52
46
|
(@before_chain ||= []).tap do |bef|
|
@@ -59,7 +53,7 @@ module Tzispa
|
|
59
53
|
end
|
60
54
|
|
61
55
|
def error?
|
62
|
-
error && error != HANDLER_OK
|
56
|
+
@error && @error != HANDLER_OK
|
63
57
|
end
|
64
58
|
|
65
59
|
def error_status(error, status = nil)
|
@@ -67,12 +61,22 @@ module Tzispa
|
|
67
61
|
@status = status
|
68
62
|
end
|
69
63
|
|
70
|
-
def
|
71
|
-
|
64
|
+
def result(type:, data: nil, error: nil)
|
65
|
+
@type = type
|
66
|
+
@data = data
|
67
|
+
@error = error if error
|
68
|
+
end
|
69
|
+
|
70
|
+
def result_json(data)
|
71
|
+
result type: :json, data: data
|
72
72
|
end
|
73
73
|
|
74
|
-
def result_download(data
|
75
|
-
result type: :download, data: data
|
74
|
+
def result_download(data)
|
75
|
+
result type: :download, data: data
|
76
|
+
end
|
77
|
+
|
78
|
+
def result_redirect(data)
|
79
|
+
result type: :redirect, data: data
|
76
80
|
end
|
77
81
|
|
78
82
|
def not_found
|
@@ -80,7 +84,11 @@ module Tzispa
|
|
80
84
|
end
|
81
85
|
|
82
86
|
def message
|
83
|
-
I18n.t(
|
87
|
+
I18n.t(error_id, default: error.to_s) if error
|
88
|
+
end
|
89
|
+
|
90
|
+
def error_id
|
91
|
+
"#{self.class.name.dottize}.#{error}" if error
|
84
92
|
end
|
85
93
|
|
86
94
|
def run!(verb, predicate = nil)
|
@@ -53,13 +53,15 @@ module Tzispa
|
|
53
53
|
end
|
54
54
|
|
55
55
|
def prepare_response(status, content = nil)
|
56
|
-
response.status = status if status.is_a?(Integer)
|
57
56
|
if response.client_error?
|
58
57
|
prepare_client_error(status)
|
59
58
|
elsif response.server_error?
|
60
59
|
prepare_server_error(status)
|
61
60
|
elsif content
|
61
|
+
response.status = status if status.is_a?(Integer)
|
62
62
|
response.body = content
|
63
|
+
elsif status.is_a?(Integer)
|
64
|
+
response.status = status
|
63
65
|
end
|
64
66
|
end
|
65
67
|
|
@@ -69,6 +71,7 @@ module Tzispa
|
|
69
71
|
|
70
72
|
def prepare_client_error(status, error = nil)
|
71
73
|
status.tap do |code|
|
74
|
+
response.status = status if status.is_a?(Integer)
|
72
75
|
context.logger.info log_format(code, error.to_s) if error
|
73
76
|
response.body = error_page(context.domain, status: code)
|
74
77
|
end
|
@@ -76,6 +79,7 @@ module Tzispa
|
|
76
79
|
|
77
80
|
def prepare_server_error(status, error = nil)
|
78
81
|
status.tap do |code|
|
82
|
+
response.status = status if status.is_a?(Integer)
|
79
83
|
context.logger.error log_format(code, error_log(error)) if error
|
80
84
|
response.body = if error && Tzispa::Environment.development?
|
81
85
|
debug_info(error)
|
data/lib/tzispa/server.rb
CHANGED
@@ -23,8 +23,10 @@ module Tzispa
|
|
23
23
|
def setup
|
24
24
|
instance_eval 'load "./config/boot.rb"'
|
25
25
|
@app = if code_reloading?
|
26
|
+
puts 'Tzispa is booting server with code reloading'
|
26
27
|
Shotgun::Loader.new(rackup_file)
|
27
28
|
else
|
29
|
+
puts 'Tzispa is booting server without code reloading'
|
28
30
|
config = "Rack::Builder.new {( #{::File.read(rackup_file)}\n )}.to_app"
|
29
31
|
instance_eval config, rackup_file
|
30
32
|
end
|
data/lib/tzispa/version.rb
CHANGED
data/tzispa.gemspec
CHANGED
@@ -28,7 +28,7 @@ Gem::Specification.new do |s|
|
|
28
28
|
s.add_dependency 'tzispa_data', '~> 0.4'
|
29
29
|
s.add_dependency 'dotenv', '~> 2.2'
|
30
30
|
|
31
|
-
s.add_development_dependency 'shotgun'
|
31
|
+
s.add_development_dependency 'shotgun', '~> 0.9'
|
32
32
|
|
33
33
|
s.files = Dir.glob('{lib,bin}/**/*') + %w(README.md CHANGELOG.md LICENSE tzispa.gemspec)
|
34
34
|
s.executables = s.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tzispa
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.7.
|
4
|
+
version: 0.7.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Juan Antonio Piñero
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-04-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -160,16 +160,16 @@ dependencies:
|
|
160
160
|
name: shotgun
|
161
161
|
requirement: !ruby/object:Gem::Requirement
|
162
162
|
requirements:
|
163
|
-
- - "
|
163
|
+
- - "~>"
|
164
164
|
- !ruby/object:Gem::Version
|
165
|
-
version: '0'
|
165
|
+
version: '0.9'
|
166
166
|
type: :development
|
167
167
|
prerelease: false
|
168
168
|
version_requirements: !ruby/object:Gem::Requirement
|
169
169
|
requirements:
|
170
|
-
- - "
|
170
|
+
- - "~>"
|
171
171
|
- !ruby/object:Gem::Version
|
172
|
-
version: '0'
|
172
|
+
version: '0.9'
|
173
173
|
description: A sparkling web framework Rack based
|
174
174
|
email:
|
175
175
|
- japinero@area-integral.com
|
@@ -241,7 +241,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
241
241
|
version: '0'
|
242
242
|
requirements: []
|
243
243
|
rubyforge_project:
|
244
|
-
rubygems_version: 2.6.
|
244
|
+
rubygems_version: 2.6.11
|
245
245
|
signing_key:
|
246
246
|
specification_version: 4
|
247
247
|
summary: A sparkling web framework
|