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 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
@@ -2,4 +2,6 @@
2
2
  .bundle
3
3
  Gemfile.lock
4
4
  pkg/*
5
- .idea
5
+ .idea
6
+ .ruby-gemset
7
+ .ruby-version
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", '~> 3.1.12'
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 #{value.gsub(/\s|-|'/,'')} < StandardError; end"
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::#{value.gsub(/\s|-|'/,'')}")=>value.downcase.gsub(/\s|-/, '_').to_sym)
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)
@@ -1,3 +1,3 @@
1
1
  module Egregious
2
- VERSION = "0.2.4"
2
+ VERSION = "0.2.5.pre"
3
3
  end
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.4
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: 2013-07-23 00:00:00.000000000 Z
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.1.12
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: 3.1.12
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: '0'
197
+ version: 1.3.1
214
198
  requirements: []
215
199
  rubyforge_project: egregious
216
- rubygems_version: 1.8.24
200
+ rubygems_version: 2.2.2
217
201
  signing_key:
218
- specification_version: 3
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: