egregious 0.2.4 → 0.2.5.pre
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 +15 -0
- data/.gitignore +3 -1
- data/egregious.gemspec +1 -1
- data/lib/egregious.rb +14 -3
- data/lib/egregious/version.rb +1 -1
- metadata +17 -33
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
OTkxMTgxZjU3ZmQ3NDFhNzRlMDg1ZTg0NGQ2Zjk2N2VhZTkwNDU1OA==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
N2UwMzc2N2UwNTg1MGI3YzAzMDE3MWU2ODU0ODVhZjY5Y2I5NjUxNA==
|
7
|
+
SHA512:
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
NGY5Y2EwYjhkZTc1OWM4MGIxNGI4ZTg4NjIwN2Y2Y2QxOTk1YjZjMWEwNmVl
|
10
|
+
M2YwZjJkYzI3Yjg3ZmM1ZTAyOThlMTA0NGUyMjMxNDVkYWUyM2Y0NzE2OTI4
|
11
|
+
NjEzNTU1MWRkYjhmYzQ1MmU2ZTg2M2U3ZGEzNTk2NDMzY2JjNTQ=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
Njg0NDBkNTdiMTZmOGQ4NzJjNzVkMmFkMzhkZTg3OTU2Y2M1M2ZiZjAyMWEz
|
14
|
+
ZjdmZjZiNDhkZmI4OWE0NjViYzhkMTM2ZDkyMWE4OThlNDYwNWQwY2I1NGEw
|
15
|
+
MDZiYWY4YjZlMmIxMTNhZGE3MjgxMmQyMmEwYTQzYmIzZTJjNmU=
|
data/.gitignore
CHANGED
data/egregious.gemspec
CHANGED
@@ -19,7 +19,7 @@ Gem::Specification.new do |s|
|
|
19
19
|
s.require_paths = ["lib"]
|
20
20
|
|
21
21
|
|
22
|
-
s.add_runtime_dependency "rails", '
|
22
|
+
s.add_runtime_dependency "rails", '> 3.0', '< 4.2'
|
23
23
|
s.add_runtime_dependency "rack", '>= 1.3.6'
|
24
24
|
s.add_runtime_dependency "htmlentities"
|
25
25
|
|
data/lib/egregious.rb
CHANGED
@@ -13,10 +13,15 @@ require 'active_record/validations'
|
|
13
13
|
|
14
14
|
module Egregious
|
15
15
|
|
16
|
+
# Must sub out (Experimental) to avoid a class name: VariantAlsoNegotiates(Experimental)
|
17
|
+
def self.clean_class_name(str)
|
18
|
+
str.gsub(/\s|-|'/,'').sub('(Experimental)','')
|
19
|
+
end
|
20
|
+
|
16
21
|
# use these exception to control the code you are throwing from you code
|
17
22
|
# all http statuses have an exception defined for them
|
18
23
|
Rack::Utils::HTTP_STATUS_CODES.each do |key, value|
|
19
|
-
class_eval "class #{
|
24
|
+
class_eval "class #{Egregious.clean_class_name(value)} < StandardError; end"
|
20
25
|
end
|
21
26
|
|
22
27
|
def self.status_code(status)
|
@@ -42,7 +47,7 @@ module Egregious
|
|
42
47
|
}
|
43
48
|
# all status codes have a exception class defined
|
44
49
|
Rack::Utils::HTTP_STATUS_CODES.each do |key, value|
|
45
|
-
exception_codes.merge!(eval("Egregious::#{
|
50
|
+
exception_codes.merge!(eval("Egregious::#{Egregious.clean_class_name(value)}")=>value.downcase.gsub(/\s|-/, '_').to_sym)
|
46
51
|
end
|
47
52
|
|
48
53
|
if defined?(ActionController)
|
@@ -66,7 +71,6 @@ module Egregious
|
|
66
71
|
if defined?(ActiveRecord)
|
67
72
|
exception_codes.merge!({
|
68
73
|
ActiveRecord::AttributeAssignmentError=>status_code(:bad_request),
|
69
|
-
ActiveRecord::HasAndBelongsToManyAssociationForeignKeyNeeded=>status_code(:bad_request),
|
70
74
|
ActiveRecord::MultiparameterAssignmentErrors=>status_code(:bad_request),
|
71
75
|
ActiveRecord::ReadOnlyAssociation=>status_code(:forbidden),
|
72
76
|
ActiveRecord::ReadOnlyRecord=>status_code(:forbidden),
|
@@ -74,6 +78,13 @@ module Egregious
|
|
74
78
|
ActiveRecord::RecordNotFound=>status_code(:not_found),
|
75
79
|
ActiveRecord::UnknownAttributeError=>status_code(:bad_request)
|
76
80
|
})
|
81
|
+
begin
|
82
|
+
exception_codes.merge!({
|
83
|
+
ActiveRecord::HasAndBelongsToManyAssociationForeignKeyNeeded=>status_code(:bad_request)
|
84
|
+
})
|
85
|
+
rescue => e
|
86
|
+
# Unknown if using Rails 4
|
87
|
+
end
|
77
88
|
end
|
78
89
|
|
79
90
|
if defined?(Mongoid)
|
data/lib/egregious/version.rb
CHANGED
metadata
CHANGED
@@ -1,36 +1,38 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: egregious
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
5
|
-
prerelease:
|
4
|
+
version: 0.2.5.pre
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Russell Edens
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2014-06-17 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: rails
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - ! '>'
|
20
18
|
- !ruby/object:Gem::Version
|
21
|
-
version: 3.
|
19
|
+
version: '3.0'
|
20
|
+
- - <
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: '4.2'
|
22
23
|
type: :runtime
|
23
24
|
prerelease: false
|
24
25
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
26
|
requirements:
|
27
|
-
- -
|
27
|
+
- - ! '>'
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '3.0'
|
30
|
+
- - <
|
28
31
|
- !ruby/object:Gem::Version
|
29
|
-
version:
|
32
|
+
version: '4.2'
|
30
33
|
- !ruby/object:Gem::Dependency
|
31
34
|
name: rack
|
32
35
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
36
|
requirements:
|
35
37
|
- - ! '>='
|
36
38
|
- !ruby/object:Gem::Version
|
@@ -38,7 +40,6 @@ dependencies:
|
|
38
40
|
type: :runtime
|
39
41
|
prerelease: false
|
40
42
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
43
|
requirements:
|
43
44
|
- - ! '>='
|
44
45
|
- !ruby/object:Gem::Version
|
@@ -46,7 +47,6 @@ dependencies:
|
|
46
47
|
- !ruby/object:Gem::Dependency
|
47
48
|
name: htmlentities
|
48
49
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
50
|
requirements:
|
51
51
|
- - ! '>='
|
52
52
|
- !ruby/object:Gem::Version
|
@@ -54,7 +54,6 @@ dependencies:
|
|
54
54
|
type: :runtime
|
55
55
|
prerelease: false
|
56
56
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
57
|
requirements:
|
59
58
|
- - ! '>='
|
60
59
|
- !ruby/object:Gem::Version
|
@@ -62,7 +61,6 @@ dependencies:
|
|
62
61
|
- !ruby/object:Gem::Dependency
|
63
62
|
name: rspec
|
64
63
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
64
|
requirements:
|
67
65
|
- - ! '>='
|
68
66
|
- !ruby/object:Gem::Version
|
@@ -70,7 +68,6 @@ dependencies:
|
|
70
68
|
type: :development
|
71
69
|
prerelease: false
|
72
70
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
71
|
requirements:
|
75
72
|
- - ! '>='
|
76
73
|
- !ruby/object:Gem::Version
|
@@ -78,7 +75,6 @@ dependencies:
|
|
78
75
|
- !ruby/object:Gem::Dependency
|
79
76
|
name: json
|
80
77
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
78
|
requirements:
|
83
79
|
- - ! '>='
|
84
80
|
- !ruby/object:Gem::Version
|
@@ -86,7 +82,6 @@ dependencies:
|
|
86
82
|
type: :development
|
87
83
|
prerelease: false
|
88
84
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
85
|
requirements:
|
91
86
|
- - ! '>='
|
92
87
|
- !ruby/object:Gem::Version
|
@@ -94,7 +89,6 @@ dependencies:
|
|
94
89
|
- !ruby/object:Gem::Dependency
|
95
90
|
name: hpricot
|
96
91
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
92
|
requirements:
|
99
93
|
- - ! '>='
|
100
94
|
- !ruby/object:Gem::Version
|
@@ -102,7 +96,6 @@ dependencies:
|
|
102
96
|
type: :development
|
103
97
|
prerelease: false
|
104
98
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
99
|
requirements:
|
107
100
|
- - ! '>='
|
108
101
|
- !ruby/object:Gem::Version
|
@@ -110,7 +103,6 @@ dependencies:
|
|
110
103
|
- !ruby/object:Gem::Dependency
|
111
104
|
name: warden
|
112
105
|
requirement: !ruby/object:Gem::Requirement
|
113
|
-
none: false
|
114
106
|
requirements:
|
115
107
|
- - ! '>='
|
116
108
|
- !ruby/object:Gem::Version
|
@@ -118,7 +110,6 @@ dependencies:
|
|
118
110
|
type: :development
|
119
111
|
prerelease: false
|
120
112
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
none: false
|
122
113
|
requirements:
|
123
114
|
- - ! '>='
|
124
115
|
- !ruby/object:Gem::Version
|
@@ -126,7 +117,6 @@ dependencies:
|
|
126
117
|
- !ruby/object:Gem::Dependency
|
127
118
|
name: cancan
|
128
119
|
requirement: !ruby/object:Gem::Requirement
|
129
|
-
none: false
|
130
120
|
requirements:
|
131
121
|
- - ! '>='
|
132
122
|
- !ruby/object:Gem::Version
|
@@ -134,7 +124,6 @@ dependencies:
|
|
134
124
|
type: :development
|
135
125
|
prerelease: false
|
136
126
|
version_requirements: !ruby/object:Gem::Requirement
|
137
|
-
none: false
|
138
127
|
requirements:
|
139
128
|
- - ! '>='
|
140
129
|
- !ruby/object:Gem::Version
|
@@ -142,7 +131,6 @@ dependencies:
|
|
142
131
|
- !ruby/object:Gem::Dependency
|
143
132
|
name: mongoid
|
144
133
|
requirement: !ruby/object:Gem::Requirement
|
145
|
-
none: false
|
146
134
|
requirements:
|
147
135
|
- - ! '>='
|
148
136
|
- !ruby/object:Gem::Version
|
@@ -150,7 +138,6 @@ dependencies:
|
|
150
138
|
type: :development
|
151
139
|
prerelease: false
|
152
140
|
version_requirements: !ruby/object:Gem::Requirement
|
153
|
-
none: false
|
154
141
|
requirements:
|
155
142
|
- - ! '>='
|
156
143
|
- !ruby/object:Gem::Version
|
@@ -158,7 +145,6 @@ dependencies:
|
|
158
145
|
- !ruby/object:Gem::Dependency
|
159
146
|
name: bson_ext
|
160
147
|
requirement: !ruby/object:Gem::Requirement
|
161
|
-
none: false
|
162
148
|
requirements:
|
163
149
|
- - ! '>='
|
164
150
|
- !ruby/object:Gem::Version
|
@@ -166,7 +152,6 @@ dependencies:
|
|
166
152
|
type: :development
|
167
153
|
prerelease: false
|
168
154
|
version_requirements: !ruby/object:Gem::Requirement
|
169
|
-
none: false
|
170
155
|
requirements:
|
171
156
|
- - ! '>='
|
172
157
|
- !ruby/object:Gem::Version
|
@@ -195,27 +180,26 @@ files:
|
|
195
180
|
homepage: http://github.com/voomify/egregious
|
196
181
|
licenses:
|
197
182
|
- MIT
|
183
|
+
metadata: {}
|
198
184
|
post_install_message:
|
199
185
|
rdoc_options: []
|
200
186
|
require_paths:
|
201
187
|
- lib
|
202
188
|
required_ruby_version: !ruby/object:Gem::Requirement
|
203
|
-
none: false
|
204
189
|
requirements:
|
205
190
|
- - ! '>='
|
206
191
|
- !ruby/object:Gem::Version
|
207
192
|
version: '0'
|
208
193
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
209
|
-
none: false
|
210
194
|
requirements:
|
211
|
-
- - ! '
|
195
|
+
- - ! '>'
|
212
196
|
- !ruby/object:Gem::Version
|
213
|
-
version:
|
197
|
+
version: 1.3.1
|
214
198
|
requirements: []
|
215
199
|
rubyforge_project: egregious
|
216
|
-
rubygems_version:
|
200
|
+
rubygems_version: 2.2.2
|
217
201
|
signing_key:
|
218
|
-
specification_version:
|
202
|
+
specification_version: 4
|
219
203
|
summary: Egregious is a rails based exception handling gem for well defined http exception
|
220
204
|
handling for json, xml and html. Requires Rails 3.x.
|
221
205
|
test_files:
|