light_service_object 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9f4945827359c35e199f0ca797d380b1c72f9acd7d34f228c9d652f61b823abb
4
- data.tar.gz: c6fde36ee42649546d3edb6ac54e60f1bf1b05d2412b79ed37dcb7b4f8c3cd1e
3
+ metadata.gz: 293a4fa3153d6f921850be4073bcb4552aaefd841dc977c303c28290e9fda93a
4
+ data.tar.gz: 85c3c344669169285bb84b18264e467e82b5bd0f70046fbe79fdde4f14113444
5
5
  SHA512:
6
- metadata.gz: da8eaaa6e7dfd9aaa7f8ba8300d9a5c92aa1b370c3caaaad64e8497059958359fa4b02a9a981a521cd4d6841ebef9409d25be5e252e976346796f58e462d24fd
7
- data.tar.gz: 7363de6a8c646636aa81668082c6a2fbdd16af551f7227f0d67f5db71b6ab774b056982c2ac8377e24d534c9df94fc1988e064c47fe7ffbeb0d0a7dd1446e903
6
+ metadata.gz: 78e593be6026dea52561fc7e4ce8c6834f364ad9c1db1a11637aa3a7a639523ce47755e5c2bed70d5fec967cab0265cd88e4d49b442a4308d6f247b43ede6844
7
+ data.tar.gz: 8f1538d0fa975103e6306234a3483ce862c35675c3c203d62d0481682f1d5f0056d6d47fa32c44dad2d2e82a41c05c1929d2ba9f2d4dde47f72fb8cf49896bc1
@@ -1,5 +1,8 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.2
4
+ - improve error handling when ensuring a model that doesn't exist
5
+
3
6
  ## 0.1.1
4
7
  - if Ensurance gem is present, allow `ensure` option on `required`
5
8
 
@@ -11,7 +11,14 @@ if defined?(Ensurance)
11
11
  klass = binding.local_variable_get(:ensure)
12
12
  return options unless klass
13
13
 
14
- klass = klass.constantize if klass.is_a?(String)
14
+ begin
15
+ klass = klass.constantize if klass.is_a?(String)
16
+ rescue NameError => e
17
+ msg = "LightServiceObject: #{self.class} cannot ensure(#{klass}) as the model can't be found"
18
+ Rails.logger.error msg
19
+ puts msg if !Rails.env.production?
20
+ raise e
21
+ end
15
22
  klass = klass.klass if klass.is_a?(ActiveRecord::Relation)
16
23
 
17
24
  coercer = ->(value) { klass.ensure(value) }
@@ -1,3 +1,3 @@
1
1
  module LightServiceObject
2
- VERSION = "0.1.1"
2
+ VERSION = "0.1.2"
3
3
  end
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
10
10
  spec.email = ["bsharpe@gmail.com"]
11
11
 
12
12
  spec.summary = %q{A lightweight base service object for Rails/Ruby}
13
- spec.description = %q{A lightweight base service object for Rails/Ruby}
13
+ spec.description = %q{Service object based on DRY.rb components for speed and less boilerplate }
14
14
  spec.homepage = "https://github.com/bsharpe/light_service_object"
15
15
  spec.license = "MIT"
16
16
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: light_service_object
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Sharpe
@@ -80,7 +80,7 @@ dependencies:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
82
  version: '1.0'
83
- description: A lightweight base service object for Rails/Ruby
83
+ description: 'Service object based on DRY.rb components for speed and less boilerplate '
84
84
  email:
85
85
  - bsharpe@gmail.com
86
86
  executables: []