custom_fields 2.3.4 → 2.4.0.rc1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 41b1a552f6a1354a2b634cf8a23abac17ce397b4
4
- data.tar.gz: 1cd897947e6db09f0e32543a57d89121348d7eb0
3
+ metadata.gz: 0691b611ee56693347828a7d7c2d5e831d4bfdf4
4
+ data.tar.gz: 58c48324ef9366f1d1a36876bc0239c212bf5378
5
5
  SHA512:
6
- metadata.gz: 38424e89463d3223cccf7c6663d8a06583b45d7cbfde534fb58dadb4e18db267f9ae22ccf8609d17af567903d04c5079950429350b55c8cc00230f0ce946de28
7
- data.tar.gz: 36cf663eb585b4cf26d0d3ac6dc5301d0bfe4074a56bddd94e9e157587e3dc8dcd92ef949ff2c6d43a82fe437d86757614ee01ad192aa234ceb20354d781ad47
6
+ metadata.gz: 377cdb5985891770d23ec1f76a0bf6a93057c5ef31c5687b0c743b253f591f34ac2c728f26ca7e46ea2634723b2439ad2cbcfd78e5ad310ea50bd307a3fc512b
7
+ data.tar.gz: cf70d24c170faa1f6c27c864fcf06cf0f2a3ac5ce2bf7accad0d9e1bf22cd6967872a5df2c7bfe546b3cf8f69ae5becfb67c34e03e979ec6742ca9406e3b3532
@@ -12,7 +12,7 @@ The main goals:
12
12
 
13
13
  h2. Requirements
14
14
 
15
- Ruby 2.1.x, ActiveSupport 3.2.21, MongoDB 2.0 and Mongoid 3.1.3
15
+ ActiveSupport 3.2.13, MongoDB 2.0 and Mongoid 3.1.3
16
16
 
17
17
  h2. Examples
18
18
 
@@ -4,10 +4,12 @@ require 'active_support'
4
4
  require 'carrierwave/mongoid'
5
5
  require 'money'
6
6
 
7
+ Money.use_i18n = false
8
+
7
9
  module CustomFields
8
10
 
9
11
  @@options = {
10
- reserved_names: Mongoid.destructive_fields + %w(id _id send class),
12
+ reserved_names: Mongoid.destructive_fields + %w(id _id send class destroy),
11
13
  default_currency: 'EUR'
12
14
  }
13
15
 
@@ -4,17 +4,16 @@ module Mongoid #:nodoc:
4
4
  # Instantiates documents that came from the database.
5
5
  module Factory
6
6
 
7
- def from_db_with_custom_fields(klass, attributes = {}, criteria_instance_id = nil)
7
+ def from_db_with_custom_fields(klass, attributes = nil, selected_fields = nil)
8
8
  if klass.with_custom_fields?
9
9
  klass.klass_with_custom_fields(attributes['custom_fields_recipe'])
10
10
  end
11
- from_db_without_custom_fields(klass, attributes, criteria_instance_id)
11
+
12
+ from_db_without_custom_fields(klass, attributes, selected_fields)
12
13
  end
13
14
 
14
15
  # equivalent for "alias_method_chain :from_db, :custom_fields"
15
16
  alias_method :from_db_without_custom_fields, :from_db unless method_defined?(:from_db_without_custom_fields)
16
17
  alias_method :from_db, :from_db_with_custom_fields
17
-
18
18
  end
19
-
20
19
  end
@@ -20,10 +20,10 @@ module Mongoid #:nodoc
20
20
  end
21
21
 
22
22
  def self.fallbacks
23
- if !self.instance.fallbacks.blank?
24
- self.instance.fallbacks
25
- elsif ::I18n.respond_to?(:fallbacks)
23
+ if ::I18n.respond_to?(:fallbacks)
26
24
  ::I18n.fallbacks
25
+ elsif !self.instance.fallbacks.blank?
26
+ self.instance.fallbacks
27
27
  else
28
28
  nil
29
29
  end
@@ -35,11 +35,7 @@ module Mongoid #:nodoc
35
35
  end
36
36
 
37
37
  def self.fallbacks?
38
- !self.instance.fallbacks.blank? || ::I18n.respond_to?(:fallbacks)
39
- end
40
-
41
- def self.clear_fallbacks
42
- self.instance.fallbacks.try(:clear)
38
+ ::I18n.respond_to?(:fallbacks) || !self.instance.fallbacks.blank?
43
39
  end
44
40
 
45
41
  def self.with_locale(new_locale = nil)
@@ -56,4 +52,4 @@ module Mongoid #:nodoc
56
52
 
57
53
  end
58
54
 
59
- end
55
+ end
@@ -4,19 +4,13 @@ module Mongoid # :nodoc:
4
4
  module Referenced #:nodoc:
5
5
 
6
6
  class In < Relations::One
7
-
8
7
  class << self
9
-
10
8
  def valid_options_with_parent_class
11
9
  valid_options_without_parent_class.push :custom_fields_parent_klass
12
10
  end
13
-
14
11
  alias_method_chain :valid_options, :parent_class
15
-
16
12
  end
17
-
18
13
  end
19
-
20
14
  end
21
15
  end
22
16
  end
@@ -7,22 +7,17 @@ module Mongoid #:nodoc:
7
7
  # one-to-many between documents in different collections.
8
8
  class Many < Relations::Many
9
9
 
10
- def build_with_custom_fields(attributes = {}, options = {}, type = nil)
11
- if base.respond_to?(:custom_fields_for?) && base.custom_fields_for?(metadata.name)
10
+ def build_with_custom_fields(attributes = {}, type = nil)
11
+ if base.respond_to?(:custom_fields_for?) && base.custom_fields_for?(relation_metadata.name)
12
12
  # all the information about how to build the custom class are stored here
13
- recipe = base.custom_fields_recipe_for(metadata.name)
14
-
13
+ recipe = base.custom_fields_recipe_for(relation_metadata.name)
15
14
  attributes ||= {}
16
-
17
15
  attributes.merge!(custom_fields_recipe: recipe)
18
-
19
16
  # build the class with custom_fields for the first time
20
- type = metadata.klass.klass_with_custom_fields(recipe)
17
+ type = relation_metadata.klass.klass_with_custom_fields(recipe)
21
18
  end
22
- build_without_custom_fields(attributes, options, type)
23
-
19
+ build_without_custom_fields(attributes, type)
24
20
  end
25
-
26
21
  alias_method_chain :build, :custom_fields
27
22
 
28
23
  # new should point to the new build method
@@ -13,7 +13,7 @@ module Mongoid
13
13
  #
14
14
  # validates_collection_size_of :addresses, in: 1..10
15
15
  # end
16
- class CollectionSizeValidator < LengthValidator
16
+ class CollectionSizeValidator < Mongoid::Validatable::LengthValidator
17
17
 
18
18
  def validate_each_with_collection(record, attribute, value)
19
19
  value = collection_to_size(record, attribute)
@@ -1,5 +1,5 @@
1
1
  module Mongoid
2
- module Validations
2
+ module Validatable
3
3
  module Macros
4
4
  extend ActiveSupport::Concern
5
5
 
@@ -22,4 +22,4 @@ module Mongoid
22
22
 
23
23
  end
24
24
  end
25
- end
25
+ end
@@ -27,7 +27,7 @@ module CustomFields
27
27
  validates_presence_of :label, :type
28
28
  validates_exclusion_of :name, in: lambda { |f| CustomFields.options[:reserved_names].map(&:to_s) }
29
29
  validates_inclusion_of :type, in: AVAILABLE_TYPES, allow_blank: true
30
- validates_format_of :name, with: /^[a-z]([A-Za-z0-9_]+)?$/
30
+ validates_format_of :name, with: /^[a-z]([A-Za-z0-9_]+)?$/, multiline: true
31
31
  validate :uniqueness_of_label_and_name
32
32
 
33
33
  ## callbacks ##
@@ -98,7 +98,8 @@ module CustomFields
98
98
  end
99
99
 
100
100
  def siblings
101
- self._parent.send(self.metadata.name)
101
+ # binding.pry
102
+ self._parent.send(self.relation_metadata.name)
102
103
  end
103
104
 
104
105
  end
@@ -36,7 +36,7 @@ module CustomFields
36
36
  def klass_with_custom_fields(name)
37
37
  # Rails.logger.debug "[CustomFields] klass_with_custom_fields #{self.send(name).metadata.klass} / #{self.send(name).metadata[:old_klass]}" if defined?(Rails) # DEBUG
38
38
  recipe = self.custom_fields_recipe_for(name)
39
- _metadata = self.send(name).metadata
39
+ _metadata = self.send(name).relation_metadata
40
40
  target = _metadata[:original_klass] || _metadata.klass # avoid to use an already enhanced klass
41
41
  target.klass_with_custom_fields(recipe)
42
42
  end
@@ -66,7 +66,7 @@ module CustomFields
66
66
  'name' => "#{self.relations[name.to_s].class_name.demodulize}#{self._id}",
67
67
  'rules' => self.ordered_custom_fields(name).map(&:to_recipe),
68
68
  'version' => self.custom_fields_version(name),
69
- 'model_name' => self.relations[name.to_s].class_name.constantize.model_name
69
+ 'model_name' => self.relations[name.to_s].class_name.constantize.model_name.to_s
70
70
  }
71
71
  end
72
72
 
@@ -98,13 +98,13 @@ module CustomFields
98
98
  def refresh_metadata_with_custom_fields(name)
99
99
  return if !self.persisted? || self.send(:"#{name}_custom_fields").blank? # do not generate a klass without all the information
100
100
 
101
- old_metadata = self.send(name).metadata
101
+ old_metadata = self.send(name).relation_metadata
102
102
 
103
103
  # puts "old_metadata = #{old_metadata.klass.inspect} / #{old_metadata.object_id.inspect}" # DEBUG
104
104
 
105
105
  # puts "[CustomFields] refresh_metadata_with_custom_fields, #{name.inspect}, self = #{self.inspect}"
106
106
 
107
- self.send(name).metadata = old_metadata.clone.tap do |metadata|
107
+ self.send(name).__metadata = old_metadata.clone.tap do |metadata|
108
108
  # Rails.logger.debug "[CustomFields] refresh_metadata_with_custom_fields #{metadata.klass}" if defined?(Rails) # DEBUG
109
109
 
110
110
  # backup the current klass
@@ -172,12 +172,9 @@ module CustomFields
172
172
  operations['$set'].merge!({ 'custom_fields_recipe.version' => self.custom_fields_version(name) })
173
173
  collection, selector = self.send(name).collection, self.send(name).criteria.selector
174
174
 
175
- # http://docs.mongodb.org/manual/reference/method/db.collection.update/#update-parameter
176
- # The <update> document must contain only update operator expressions.
177
- %w(set unset rename).each do |operation_name|
178
- _operations = { "$#{operation_name}" => operations.delete("$#{operation_name}") }
179
- collection.find(selector).update _operations, multi: true
180
- end
175
+ # puts "selector = #{selector.inspect}, memo = #{attributes.inspect}" # DEBUG
176
+
177
+ collection.find(selector).update operations, multi: true
181
178
  end
182
179
 
183
180
  # If the localized attribute has been changed in at least one of the custom fields,
@@ -27,11 +27,7 @@ module CustomFields
27
27
  end
28
28
 
29
29
  if rule['required']
30
- # FIXME: previously, we called "klass.validates_presence_of name"
31
- # but it didn't work well with localized fields.
32
- klass.validate do |object|
33
- UploaderPresenceValidator.new(object, name).validate
34
- end
30
+ klass.validates_presence_of name
35
31
  end
36
32
  end
37
33
 
@@ -68,20 +64,6 @@ module CustomFields
68
64
 
69
65
  end
70
66
 
71
- class UploaderPresenceValidator
72
-
73
- def initialize(document, name)
74
- @document, @name = document, name
75
- end
76
-
77
- def validate
78
- if @document.send(@name).blank?
79
- @document.errors.add(@name, :blank)
80
- end
81
- end
82
-
83
- end
84
-
85
67
  class FileUploader < ::CarrierWave::Uploader::Base
86
68
  end
87
69
 
@@ -1,11 +1,7 @@
1
1
  module CustomFields
2
-
3
2
  module Types
4
-
5
3
  module HasMany
6
-
7
4
  module Field
8
-
9
5
  extend ActiveSupport::Concern
10
6
 
11
7
  included do
@@ -17,15 +13,11 @@ module CustomFields
17
13
  def has_many_is_relationship?
18
14
  self.type == 'has_many'
19
15
  end
20
-
21
16
  end
22
-
23
17
  end
24
18
 
25
19
  module Target
26
-
27
20
  extend ActiveSupport::Concern
28
-
29
21
  module ClassMethods
30
22
 
31
23
  # Adds a has_many relationship between 2 mongoid models
@@ -34,7 +26,7 @@ module CustomFields
34
26
  # @param [ Hash ] rule It contains the name of the relation and if it is required or not
35
27
  #
36
28
  def apply_has_many_custom_field(klass, rule)
37
- # puts "#{klass.inspect}.has_many #{rule['name'].inspect}, class_name: #{rule['class_name'].inspect}, inverse_of: #{rule['inverse_of']}, order_by: #{rule['order_by'].inspect}" # DEBUG
29
+ # puts "#{klass.inspect}.has_many #{rule['name'].inspect}, class_name: #{rule['class_name'].inspect}, inverse_of: #{rule['inverse_of']}" # DEBUG
38
30
  position_name = "position_in_#{rule['inverse_of']}"
39
31
 
40
32
  _order_by = rule['order_by'] || position_name.to_sym.asc
@@ -48,12 +40,10 @@ module CustomFields
48
40
  if order_by
49
41
  list.order_by(order_by)
50
42
  else
51
- list.order_by(metadata.order)
43
+ list.order_by(relation_metadata.order)
52
44
  end
53
45
  end
54
-
55
46
  alias :ordered :filtered # backward compatibility + semantic purpose
56
-
57
47
  end
58
48
 
59
49
  klass.accepts_nested_attributes_for rule['name'], allow_destroy: true
@@ -62,13 +52,8 @@ module CustomFields
62
52
  klass.validates_collection_size_of rule['name'], minimum: 1, message: :at_least_one_element, on: :update
63
53
  end
64
54
  end
65
-
66
55
  end
67
-
68
56
  end
69
-
70
57
  end
71
-
72
58
  end
73
-
74
59
  end
@@ -1,15 +1,10 @@
1
1
  module CustomFields
2
-
3
2
  module Types
4
-
5
3
  module ManyToMany
6
-
7
4
  module Field
8
-
9
5
  extend ActiveSupport::Concern
10
6
 
11
7
  included do
12
-
13
8
  def many_to_many_to_recipe
14
9
  { 'class_name' => self.class_name, 'inverse_of' => self.inverse_of, 'order_by' => self.order_by }
15
10
  end
@@ -17,13 +12,10 @@ module CustomFields
17
12
  def many_to_many_is_relationship?
18
13
  self.type == 'many_to_many'
19
14
  end
20
-
21
15
  end
22
-
23
16
  end
24
17
 
25
18
  module Target
26
-
27
19
  extend ActiveSupport::Concern
28
20
 
29
21
  module ClassMethods
@@ -50,7 +42,7 @@ module CustomFields
50
42
  else
51
43
  # use the natural order given by the initial array (ex: project_ids).
52
44
  # Warning: it returns an array and not a criteria object meaning it breaks the chain
53
- ids = base.send(metadata.key.to_sym)
45
+ ids = base.send(relation_metadata.key.to_sym)
54
46
  list.entries.sort { |a, b| ids.index(a.id) <=> ids.index(b.id) }
55
47
  end
56
48
  end
@@ -72,4 +64,4 @@ module CustomFields
72
64
 
73
65
  end
74
66
 
75
- end
67
+ end
@@ -21,7 +21,7 @@ module CustomFields
21
21
  end
22
22
 
23
23
  def check_currency
24
- ::Money::Currency.find( self.default_currency )
24
+ ::Money::Currency.find(self.default_currency)
25
25
  end
26
26
 
27
27
  end # included
@@ -71,18 +71,18 @@ module CustomFields
71
71
  klass.field names[:currency_field], type: ::String, localize: false
72
72
 
73
73
  # getters and setters
74
- klass.send( :define_method, name ) { _get_money(names) }
75
- klass.send( :define_method, :"#{name}=" ) { |value| _set_money(value, names) }
74
+ klass.send(:define_method, name) { _get_money(names) }
75
+ klass.send(:define_method, :"#{name}=") { |value| _set_money(value, names) }
76
76
 
77
- klass.send( :define_method, names[:formatted_name_field] ) { _get_formatted_money(names) }
78
- klass.send( :define_method, :"#{names[:formatted_name_field]}=" ) { |value| _set_money(value, names) }
77
+ klass.send(:define_method, names[:formatted_name_field]) { _get_formatted_money(names) }
78
+ klass.send(:define_method, :"#{names[:formatted_name_field]}=") { |value| _set_money(value, names) }
79
79
 
80
- klass.send( :define_method, names[:allow_currency_from_symbol] ) { rule['allow_currency_from_symbol'] }
81
- klass.send( :define_method, names[:default_currency] ) { rule['default_currency'] }
80
+ klass.send(:define_method, names[:allow_currency_from_symbol]) { rule['allow_currency_from_symbol'] }
81
+ klass.send(:define_method, names[:default_currency]) { rule['default_currency'] }
82
82
 
83
83
  # validations
84
- klass.validate { _check_money( names ) } if rule['required']
85
- klass.validates_presence_of( names[:cents_field], names[:currency_field] ) if rule['required']
84
+ klass.validate { _check_money(names) } if rule['required']
85
+ klass.validates_presence_of(names[:cents_field], names[:currency_field]) if rule['required']
86
86
  klass.validates_numericality_of names[:cents_field], only_integer: true, if: names[:cents_field]
87
87
 
88
88
  end
@@ -106,38 +106,38 @@ module CustomFields
106
106
 
107
107
  protected
108
108
 
109
- def _set_money_defaults( names )
110
- ::Money.assume_from_symbol = self.send( names[:allow_currency_from_symbol] )
111
- ::Money.default_currency = self.send( names[:default_currency] )
109
+ def _set_money_defaults(names)
110
+ ::Money.assume_from_symbol = self.send(names[:allow_currency_from_symbol])
111
+ ::Money.default_currency = self.send(names[:default_currency])
112
112
  end
113
113
 
114
- def _get_money( names )
115
- _set_money_defaults( names )
116
- ::Money.new( self.read_attribute( names[:cents_field] ), self.read_attribute( names[:currency_field] ) || ::Money.default_currency )
114
+ def _get_money(names)
115
+ _set_money_defaults(names)
116
+ ::Money.new(self.read_attribute(names[:cents_field]), self.read_attribute(names[:currency_field]) || ::Money.default_currency)
117
117
  end
118
118
 
119
- def _check_money( names )
119
+ def _check_money(names)
120
120
  if [nil, ''].include? self.read_attribute.names[:cents_field]
121
121
  raise ArgumentError.new 'Unrecognized amount'
122
122
  end
123
- _get_money( names )
123
+ _get_money(names)
124
124
  rescue
125
- self.errors.add( names[:name], "#{$!}" )
125
+ self.errors.add(names[:name], "#{$!}")
126
126
  false
127
127
  end
128
128
 
129
- def _set_money( _money, names )
129
+ def _set_money(_money, names)
130
130
  return if _money.blank?
131
- _set_money_defaults( names )
132
- money = _money.kind_of?( Money ) ? _money : ::Money.parse( _money )
133
- self.write_attribute( names[:cents_field], money.cents )
134
- self.write_attribute( names[:currency_field], money.currency.iso_code )
131
+ _set_money_defaults(names)
132
+ money = _money.kind_of?(Money) ? _money : ::Money.parse(_money)
133
+ self.write_attribute(names[:cents_field], money.cents)
134
+ self.write_attribute(names[:currency_field], money.currency.iso_code)
135
135
  rescue
136
- self.errors.add( names[:name], "#{$!}" )
136
+ self.errors.add(names[:name], "#{$!}")
137
137
  end
138
138
 
139
- def _get_formatted_money( names )
140
- _get_money( names ).format( symbol: self.send( names[:allow_currency_from_symbol] ), no_cents_if_whole: true ) rescue nil
139
+ def _get_formatted_money(names)
140
+ _get_money(names).format(symbol: self.send(names[:allow_currency_from_symbol]), no_cents_if_whole: true) rescue nil
141
141
  end
142
142
 
143
143
  end
@@ -67,7 +67,7 @@ module CustomFields
67
67
  def apply_select_custom_field(klass, rule)
68
68
  name, base_collection_name = rule['name'], "#{rule['name']}_options".to_sym
69
69
 
70
- klass.field :"#{name}_id", type: Moped::BSON::ObjectId, localize: rule['localized'] || false
70
+ klass.field :"#{name}_id", type: BSON::ObjectId, localize: rule['localized'] || false
71
71
 
72
72
  klass.cattr_accessor "_raw_#{base_collection_name}"
73
73
  klass.send :"_raw_#{base_collection_name}=", rule['select_options'].sort { |a, b| a['position'] <=> b['position'] }
@@ -1,6 +1,6 @@
1
1
  # encoding: utf-8
2
2
  module CustomFields #:nodoc
3
3
 
4
- VERSION = '2.3.4'
4
+ VERSION = '2.4.0.rc1'
5
5
 
6
6
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: custom_fields
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.4
4
+ version: 2.4.0.rc1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Didier Lafforgue
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-23 00:00:00.000000000 Z
11
+ date: 2014-08-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mongoid
@@ -16,56 +16,56 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 3.1.6
19
+ version: 4.0.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 3.1.6
26
+ version: 4.0.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: activesupport
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 3.2.21
33
+ version: 4.0.8
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 3.2.21
40
+ version: 4.0.8
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: carrierwave-mongoid
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 0.6.0
47
+ version: '0.7'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 0.6.0
54
+ version: '0.7'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: money
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '5.0'
61
+ version: 5.1.1
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '5.0'
68
+ version: 5.1.1
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: yard
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -100,14 +100,28 @@ dependencies:
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: '2.6'
103
+ version: '2.99'
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: '2.6'
110
+ version: '2.99'
111
+ - !ruby/object:Gem::Dependency
112
+ name: rspec-its
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: 1.0.1
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: 1.0.1
111
125
  - !ruby/object:Gem::Dependency
112
126
  name: simplecov
113
127
  requirement: !ruby/object:Gem::Requirement
@@ -235,7 +249,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
235
249
  version: 1.3.6
236
250
  requirements: []
237
251
  rubyforge_project: nowarning
238
- rubygems_version: 2.2.0
252
+ rubygems_version: 2.2.2
239
253
  signing_key:
240
254
  specification_version: 4
241
255
  summary: Custom fields extension for Mongoid