tzispa 0.4.10 → 0.4.11
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/app.rb +5 -13
- data/lib/tzispa/controller/base.rb +11 -3
- data/lib/tzispa/http/context.rb +6 -7
- data/lib/tzispa/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9b3b6df11ce0ea41a4e564ec835dd8c98a87218c
|
4
|
+
data.tar.gz: 951f7c1e75d68514481c2f81cc5c92d461834bd3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 031c851c6926cabb3ee2e8f2283b3701d842eba3fd9d607a75b5cfb39604a3acff2d9e9402905063ba6ffd65874c48373fd62eb41b04f22c2ad8ae58cfb930cc
|
7
|
+
data.tar.gz: cd1a9dd768e7723b1ae6f50fe3d8a3b63ba8e523aae1dc827e83cc14543dd9755dbc958c3fcf8ca8bf26aca4b8acc3ae7efb36ca24fb9c9af80d84cce7c31fb4
|
data/CHANGELOG.md
CHANGED
@@ -2,6 +2,11 @@ Tzispa
|
|
2
2
|
|
3
3
|
General purpose web framework
|
4
4
|
|
5
|
+
## v0.4.11
|
6
|
+
- Rescue exceptions and catch halts on controller/base
|
7
|
+
- http/context error_500 not sets response.status
|
8
|
+
- Rescue exceptions in app.call only log and set response.status previous code moved to controller/base
|
9
|
+
|
5
10
|
## v0.4.10
|
6
11
|
- http/context api method return a canonical url including hostname
|
7
12
|
|
data/lib/tzispa/app.rb
CHANGED
@@ -8,7 +8,6 @@ require 'tzispa/routes'
|
|
8
8
|
require 'tzispa/config/appconfig'
|
9
9
|
require 'tzispa/middleware'
|
10
10
|
require 'tzispa/http/context'
|
11
|
-
require 'tzispa/helpers/error_view'
|
12
11
|
require 'tzispa_data'
|
13
12
|
require "tzispa_rig"
|
14
13
|
|
@@ -22,8 +21,6 @@ module Tzispa
|
|
22
21
|
class Application
|
23
22
|
extend Forwardable
|
24
23
|
|
25
|
-
include Tzispa::Helpers::ErrorView
|
26
|
-
|
27
24
|
attr_reader :domain, :config, :middleware, :repository, :engine, :logger
|
28
25
|
def_delegator :@middleware, :use
|
29
26
|
def_delegator :@domain, :name
|
@@ -76,18 +73,13 @@ module Tzispa
|
|
76
73
|
|
77
74
|
def call(env)
|
78
75
|
env[Tzispa::ENV_TZISPA_APP] = self
|
79
|
-
|
80
|
-
env[Tzispa::ENV_TZISPA_CONTEXT] = context
|
76
|
+
env[Tzispa::ENV_TZISPA_CONTEXT] = Tzispa::Http::Context.new(env)
|
81
77
|
begin
|
82
78
|
middleware.call(env)
|
83
|
-
rescue
|
84
|
-
logger.error
|
85
|
-
|
86
|
-
|
87
|
-
else
|
88
|
-
context.error_500 error_page(domain)
|
89
|
-
end
|
90
|
-
context.response.finish
|
79
|
+
rescue => ex
|
80
|
+
logger.error ex.message
|
81
|
+
env[Tzispa::ENV_TZISPA_CONTEXT].response.status = 500
|
82
|
+
env[Tzispa::ENV_TZISPA_CONTEXT].response.finish
|
91
83
|
end
|
92
84
|
end
|
93
85
|
|
@@ -3,6 +3,7 @@
|
|
3
3
|
require 'forwardable'
|
4
4
|
require 'tzispa/version'
|
5
5
|
require 'tzispa/rig/template'
|
6
|
+
require 'tzispa/helpers/error_view'
|
6
7
|
|
7
8
|
|
8
9
|
module Tzispa
|
@@ -11,6 +12,8 @@ module Tzispa
|
|
11
12
|
class Base
|
12
13
|
extend Forwardable
|
13
14
|
|
15
|
+
include Tzispa::Helpers::ErrorView
|
16
|
+
|
14
17
|
attr_reader :context
|
15
18
|
def_delegators :@context, :request, :response, :config
|
16
19
|
|
@@ -28,13 +31,18 @@ module Tzispa
|
|
28
31
|
|
29
32
|
def invoke(callmethod)
|
30
33
|
status = catch(:halt) {
|
31
|
-
|
34
|
+
begin
|
35
|
+
send "#{@callmethod}"
|
36
|
+
rescue StandardError, ScriptError => exx
|
37
|
+
context.error_500( config.developing ? debug_info(exx) : nil )
|
38
|
+
end
|
32
39
|
}
|
33
40
|
response.status = status if status.is_a?(Integer)
|
34
|
-
|
41
|
+
if (response.client_error? || response.server_error?) && !config.developing
|
42
|
+
response.body = error_page(context.domain)
|
43
|
+
end
|
35
44
|
end
|
36
45
|
|
37
|
-
|
38
46
|
end
|
39
47
|
|
40
48
|
end
|
data/lib/tzispa/http/context.rb
CHANGED
@@ -38,13 +38,6 @@ module Tzispa
|
|
38
38
|
router_params&.fetch(:layout, nil)
|
39
39
|
end
|
40
40
|
|
41
|
-
def error_500(body)
|
42
|
-
500.tap { |code|
|
43
|
-
response.status = code
|
44
|
-
response.body = body
|
45
|
-
}
|
46
|
-
end
|
47
|
-
|
48
41
|
def set_last_access
|
49
42
|
session[SESSION_LAST_ACCESS] = Time.now.utc.iso8601
|
50
43
|
end
|
@@ -73,6 +66,12 @@ module Tzispa
|
|
73
66
|
session.delete(SESSION_AUTH_USER)
|
74
67
|
end
|
75
68
|
|
69
|
+
def error_500(str)
|
70
|
+
500.tap { |code|
|
71
|
+
response.body = str if str
|
72
|
+
}
|
73
|
+
end
|
74
|
+
|
76
75
|
def path(path_id, params={})
|
77
76
|
app.class.routes.path path_id, params
|
78
77
|
end
|
data/lib/tzispa/version.rb
CHANGED
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.4.
|
4
|
+
version: 0.4.11
|
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: 2016-05-
|
11
|
+
date: 2016-05-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rack
|