mebla 1.0.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- mebla (1.0.0.rc2)
4
+ mebla (1.0.0)
5
5
  bson (= 1.2.0)
6
6
  bson_ext (= 1.2.0)
7
7
  mebla
data/TODO.md CHANGED
@@ -1,3 +1,9 @@
1
+ TODO for version 1.0.1
2
+ ==============
3
+
4
+ * add ability to index embedded documents (as part of the parent document)
5
+ * properly handle sub classes
6
+
1
7
  TODO for version 1.0.0
2
8
  ==============
3
9
 
@@ -7,6 +13,5 @@ TODO for version 1.0.0
7
13
  Future plan
8
14
  =======
9
15
 
10
- * add ability to index embedded documents (as part of the parent document)
11
16
  * optimize : should find a solution for not refreshing the index while indexing embedded documents in lib/mebla/context
12
17
  * optimize : refractor result_set
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.0
1
+ 1.0.1
data/lib/mebla/context.rb CHANGED
@@ -129,6 +129,10 @@ module Mebla
129
129
  attrs = document.attributes.dup # make sure we dont modify the document it self
130
130
  attrs["id"] = attrs.delete("_id") # the id is already added in the meta data of the action part of the query
131
131
 
132
+ # only index search fields
133
+ attrs.select!{|field, value| document.class.search_fields.include?(field.to_sym)}
134
+
135
+ # If embedded get the parent id
132
136
  if document.embedded?
133
137
  parent_id = document.send(document.class.embedded_parent_foreign_key.to_sym).id.to_s
134
138
  attrs[(document.class.embedded_parent_foreign_key + "_id").to_sym] = parent_id
@@ -217,10 +221,10 @@ module Mebla
217
221
  # Builds a bulk index query
218
222
  # @return [String]
219
223
  def build_bulk_query(index_name, type, id, attributes, parent = nil)
220
- attrs_to_json = attributes.collect{|k,v| "\"#{k}\" : \"#{v}\""}.join(", ")
224
+ attrs_to_json = ActiveSupport::JSON.encode(attributes).gsub(/\n/, " ")
221
225
  <<-eos
222
- { "index" : { "_index" : "#{index_name}", "_type" : "#{type}", "_id" : "#{id}"#{", \"_parent\" : \"#{parent}\"" if parent}, "refresh" : "true"} }
223
- {#{attrs_to_json}}
226
+ { "index" : { "_index" : "#{index_name}", "_type" : "#{type}", "_id" : "#{id}"#{", \"_parent\" : \"#{parent}\"" if parent}, "refresh" : "true"} }
227
+ #{attrs_to_json}
224
228
  eos
225
229
  end
226
230
  end
@@ -4,7 +4,7 @@ module Mebla
4
4
  module Errors
5
5
  # Thrown when configuration fails
6
6
  # @note this is a fatal exception
7
- class MeblaIndexException < MeblaFatal
7
+ class MeblaConfigurationException < MeblaFatal
8
8
  end
9
9
  end
10
10
  end
data/lib/mebla/errors.rb CHANGED
@@ -6,6 +6,6 @@ module Mebla
6
6
  autoload :MeblaFatal, 'mebla/errors/mebla_fatal'
7
7
  autoload :MeblaConfigurationException, 'mebla/errors/mebla_configuration_exception'
8
8
  autoload :MeblaIndexException, 'mebla/errors/mebla_index_exception'
9
- autoload :MeblaSynchronizationException, 'mebla/errors/mebla_synchronization_exceptions'
9
+ autoload :MeblaSynchronizationException, 'mebla/errors/mebla_synchronization_exception'
10
10
  end
11
11
  end
@@ -21,17 +21,16 @@ module Mongoid
21
21
  'Boolean' => 'boolean'
22
22
  }
23
23
  end
24
-
25
- cattr_accessor :embedded_as
26
- cattr_accessor :embedded_parent
27
- cattr_accessor :embedded_parent_foreign_key
28
- cattr_accessor :index_mappings
29
- cattr_accessor :index_options
30
- cattr_accessor :search_fields
31
- cattr_accessor :whiny_indexing # set to true to raise errors if indexing fails
32
-
24
+
25
+ class_inheritable_accessor :embedded_as
26
+ class_inheritable_accessor :embedded_parent
27
+ class_inheritable_accessor :embedded_parent_foreign_key
28
+ class_inheritable_accessor :slingshot_mappings
29
+ class_inheritable_accessor :search_fields
30
+ class_inheritable_accessor :whiny_indexing # set to true to raise errors if indexing fails
31
+
33
32
  # make sure critical data remain read only
34
- private_class_method :"search_fields=", :"index_options=", :"index_mappings=",
33
+ private_class_method :"search_fields=", :"slingshot_mappings=",
35
34
  :"embedded_parent_foreign_key=", :"embedded_parent=", :"embedded_as="
36
35
 
37
36
  # add callbacks to synchronize modifications with elasticsearch
@@ -72,7 +71,7 @@ module Mongoid
72
71
  # embedded_in :category
73
72
  # search_in :title, :publish_date, :body => { :boost => 2.0, :analyzer => 'snowball' }, :embedded_in => :category
74
73
  # end
75
- def search_in(*opts)
74
+ def search_in(*opts)
76
75
  # Extract advanced indeces
77
76
  options = opts.extract_options!.symbolize_keys
78
77
  # Extract simple indeces
@@ -83,7 +82,7 @@ module Mongoid
83
82
  # Example::
84
83
  # embedded in a regular class (e.g.: using the default convention for naming the foreign key)
85
84
  # :embedded_in => :parent
86
- if self.embedded?
85
+ if self.embedded?
87
86
  if (embedor = options.delete(:embedded_in))
88
87
  relation = self.relations[embedor.to_s]
89
88
 
@@ -101,7 +100,7 @@ module Mongoid
101
100
  end
102
101
 
103
102
  # Keep track of searchable fields (for indexing)
104
- self.search_fields = attrs + options.keys
103
+ self.search_fields = attrs + options.keys
105
104
 
106
105
  # Generate simple indeces' mappings
107
106
  attrs_mappings = {}
@@ -118,7 +117,7 @@ module Mongoid
118
117
  end
119
118
 
120
119
  # Merge mappings
121
- self.index_mappings = {}.merge!(attrs_mappings).merge!(opts_mappings)
120
+ self.slingshot_mappings = {}.merge!(attrs_mappings).merge!(opts_mappings)
122
121
 
123
122
  # Keep track of indexed models (for bulk indexing)
124
123
  ::Mebla.context.add_indexed_model(self, self.slingshot_type_name.to_sym => prepare_mappings)
@@ -138,8 +137,8 @@ module Mongoid
138
137
  # Retrieves the type name of the model
139
138
  # (used to populate the _type variable while indexing)
140
139
  # @return [String]
141
- def slingshot_type_name #:nodoc:
142
- "#{self.model_name.underscore}"
140
+ def slingshot_type_name
141
+ "#{self.name.underscore}"
143
142
  end
144
143
 
145
144
  # Enables the modification of records without indexing
@@ -173,9 +172,9 @@ module Mongoid
173
172
  else
174
173
  mappings = {}
175
174
  end
176
-
175
+
177
176
  mappings.merge!({
178
- :properties => self.index_mappings
177
+ :properties => self.slingshot_mappings
179
178
  })
180
179
  end
181
180
  end
@@ -183,7 +182,7 @@ module Mongoid
183
182
  private
184
183
  # Adds the document to the index
185
184
  # @return [Boolean] true if the operation is successful
186
- def add_to_index
185
+ def add_to_index
187
186
  return false unless ::Mebla.context.index_exists? # only try to index if the index exists
188
187
 
189
188
  # Prepare attributes to hash
@@ -199,7 +198,7 @@ module Mongoid
199
198
  end
200
199
 
201
200
  # Add indexed fields to the hash
202
- self.search_fields.each do |sfield|
201
+ self.class.search_fields.each do |sfield|
203
202
  to_index_hash[sfield] = self.attributes[sfield]
204
203
  end
205
204
 
data/mebla.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{mebla}
8
- s.version = "1.0.0"
8
+ s.version = "1.0.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Omar Mekky"]
12
- s.date = %q{2011-03-17}
12
+ s.date = %q{2011-03-18}
13
13
  s.description = %q{
14
14
  An elasticsearch wrapper for mongoid odm based on slingshot. Makes integration between ElasticSearch full-text
15
15
  search engine and Mongoid documents seemless and simple.
@@ -146,6 +146,14 @@ Gem::Specification.new do |s|
146
146
  s.add_development_dependency(%q<mongoid-rspec>, ["= 1.4.1"])
147
147
  s.add_development_dependency(%q<database_cleaner>, ["= 0.6.4"])
148
148
  s.add_development_dependency(%q<bluecloth>, ["~> 2.1.0"])
149
+ s.add_development_dependency(%q<rspec>, ["~> 2.3.0"])
150
+ s.add_development_dependency(%q<yard>, ["~> 0.6.0"])
151
+ s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
152
+ s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
153
+ s.add_development_dependency(%q<rcov>, [">= 0"])
154
+ s.add_development_dependency(%q<mongoid-rspec>, ["= 1.4.1"])
155
+ s.add_development_dependency(%q<database_cleaner>, ["= 0.6.4"])
156
+ s.add_development_dependency(%q<bluecloth>, ["~> 2.1.0"])
149
157
  s.add_runtime_dependency(%q<slingshot-rb>, ["~> 0.0.6"])
150
158
  s.add_runtime_dependency(%q<mongoid>, ["= 2.0.0.rc.7"])
151
159
  s.add_runtime_dependency(%q<bson>, ["= 1.2.0"])
@@ -225,6 +233,14 @@ Gem::Specification.new do |s|
225
233
  s.add_dependency(%q<mongoid-rspec>, ["= 1.4.1"])
226
234
  s.add_dependency(%q<database_cleaner>, ["= 0.6.4"])
227
235
  s.add_dependency(%q<bluecloth>, ["~> 2.1.0"])
236
+ s.add_dependency(%q<rspec>, ["~> 2.3.0"])
237
+ s.add_dependency(%q<yard>, ["~> 0.6.0"])
238
+ s.add_dependency(%q<bundler>, ["~> 1.0.0"])
239
+ s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
240
+ s.add_dependency(%q<rcov>, [">= 0"])
241
+ s.add_dependency(%q<mongoid-rspec>, ["= 1.4.1"])
242
+ s.add_dependency(%q<database_cleaner>, ["= 0.6.4"])
243
+ s.add_dependency(%q<bluecloth>, ["~> 2.1.0"])
228
244
  s.add_dependency(%q<slingshot-rb>, ["~> 0.0.6"])
229
245
  s.add_dependency(%q<mongoid>, ["= 2.0.0.rc.7"])
230
246
  s.add_dependency(%q<bson>, ["= 1.2.0"])
@@ -305,6 +321,14 @@ Gem::Specification.new do |s|
305
321
  s.add_dependency(%q<mongoid-rspec>, ["= 1.4.1"])
306
322
  s.add_dependency(%q<database_cleaner>, ["= 0.6.4"])
307
323
  s.add_dependency(%q<bluecloth>, ["~> 2.1.0"])
324
+ s.add_dependency(%q<rspec>, ["~> 2.3.0"])
325
+ s.add_dependency(%q<yard>, ["~> 0.6.0"])
326
+ s.add_dependency(%q<bundler>, ["~> 1.0.0"])
327
+ s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
328
+ s.add_dependency(%q<rcov>, [">= 0"])
329
+ s.add_dependency(%q<mongoid-rspec>, ["= 1.4.1"])
330
+ s.add_dependency(%q<database_cleaner>, ["= 0.6.4"])
331
+ s.add_dependency(%q<bluecloth>, ["~> 2.1.0"])
308
332
  s.add_dependency(%q<slingshot-rb>, ["~> 0.0.6"])
309
333
  s.add_dependency(%q<mongoid>, ["= 2.0.0.rc.7"])
310
334
  s.add_dependency(%q<bson>, ["= 1.2.0"])
@@ -23,6 +23,12 @@ class MongoidBeta
23
23
  search_in :name => {:boost => 2.0, :analyzer => 'snowball'}
24
24
  end
25
25
 
26
+ class MongoidTheta < MongoidAlpha
27
+ field :extra
28
+
29
+ search_in :extra
30
+ end
31
+
26
32
  class MongoidGamma
27
33
  include Mongoid::Document
28
34
  include Mongoid::Mebla
@@ -22,15 +22,34 @@ describe "Mebla" do
22
22
 
23
23
  it "should update the index automatically when a document is updated" do
24
24
  udocument = MongoidAlpha.first
25
- udocument.update_attributes(:cost => 3.1)
25
+ udocument.update_attributes(:cost => 3.1).should == true
26
26
 
27
27
  result = Mebla.context.slingshot_index.retrieve(:mongoid_alpha, udocument.id.to_s)
28
28
  result[:cost].should == 3.1
29
29
  end
30
30
  end
31
31
 
32
+ describe "sub classes" do
33
+ before(:each) do
34
+ Mebla.context.rebuild_index
35
+ MongoidTheta.create! :extra => "Is this indexed?"
36
+ end
37
+
38
+ it "should index sub-classed documents automatically under the sub-class type" do
39
+ mdocument = MongoidTheta.first
40
+ lambda {Mebla.context.slingshot_index.retrieve(:mongoid_theta, mdocument.id.to_s)}.should_not raise_error
41
+ end
42
+
43
+ it "should index fields under sub-classed documents automatically and correctly" do
44
+ mdocument = MongoidTheta.first
45
+ result = Mebla.context.slingshot_index.retrieve(:mongoid_theta, mdocument.id.to_s)
46
+ result.extra.should == "Is this indexed?"
47
+ end
48
+ end
49
+
32
50
  describe "embedded documents" do
33
51
  before(:each) do
52
+ Mebla.context.rebuild_index
34
53
  beta = MongoidBeta.create! :name => "Embedor parent"
35
54
  beta.mongoid_gammas.create :name => "Embedded", :value => 1
36
55
  end
data/spec/mebla_spec.rb CHANGED
@@ -9,6 +9,7 @@ describe "Mebla" do
9
9
  !(defined?(LogSubscriber).nil?).should == true
10
10
  !(defined?(ResultSet).nil?).should == true
11
11
  !(defined?(Errors).nil?).should == true
12
+ !(defined?(Search).nil?).should == true
12
13
  !(defined?(Mongoid::Mebla).nil?).should == true
13
14
  end
14
15
 
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: mebla
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 1.0.0
5
+ version: 1.0.1
6
6
  platform: ruby
7
7
  authors:
8
8
  - Omar Mekky
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2011-03-17 00:00:00 +02:00
13
+ date: 2011-03-18 00:00:00 +02:00
14
14
  default_executable:
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
@@ -740,8 +740,96 @@ dependencies:
740
740
  prerelease: false
741
741
  version_requirements: *id066
742
742
  - !ruby/object:Gem::Dependency
743
- name: slingshot-rb
743
+ name: rspec
744
744
  requirement: &id067 !ruby/object:Gem::Requirement
745
+ none: false
746
+ requirements:
747
+ - - ~>
748
+ - !ruby/object:Gem::Version
749
+ version: 2.3.0
750
+ type: :development
751
+ prerelease: false
752
+ version_requirements: *id067
753
+ - !ruby/object:Gem::Dependency
754
+ name: yard
755
+ requirement: &id068 !ruby/object:Gem::Requirement
756
+ none: false
757
+ requirements:
758
+ - - ~>
759
+ - !ruby/object:Gem::Version
760
+ version: 0.6.0
761
+ type: :development
762
+ prerelease: false
763
+ version_requirements: *id068
764
+ - !ruby/object:Gem::Dependency
765
+ name: bundler
766
+ requirement: &id069 !ruby/object:Gem::Requirement
767
+ none: false
768
+ requirements:
769
+ - - ~>
770
+ - !ruby/object:Gem::Version
771
+ version: 1.0.0
772
+ type: :development
773
+ prerelease: false
774
+ version_requirements: *id069
775
+ - !ruby/object:Gem::Dependency
776
+ name: jeweler
777
+ requirement: &id070 !ruby/object:Gem::Requirement
778
+ none: false
779
+ requirements:
780
+ - - ~>
781
+ - !ruby/object:Gem::Version
782
+ version: 1.5.2
783
+ type: :development
784
+ prerelease: false
785
+ version_requirements: *id070
786
+ - !ruby/object:Gem::Dependency
787
+ name: rcov
788
+ requirement: &id071 !ruby/object:Gem::Requirement
789
+ none: false
790
+ requirements:
791
+ - - ">="
792
+ - !ruby/object:Gem::Version
793
+ version: "0"
794
+ type: :development
795
+ prerelease: false
796
+ version_requirements: *id071
797
+ - !ruby/object:Gem::Dependency
798
+ name: mongoid-rspec
799
+ requirement: &id072 !ruby/object:Gem::Requirement
800
+ none: false
801
+ requirements:
802
+ - - "="
803
+ - !ruby/object:Gem::Version
804
+ version: 1.4.1
805
+ type: :development
806
+ prerelease: false
807
+ version_requirements: *id072
808
+ - !ruby/object:Gem::Dependency
809
+ name: database_cleaner
810
+ requirement: &id073 !ruby/object:Gem::Requirement
811
+ none: false
812
+ requirements:
813
+ - - "="
814
+ - !ruby/object:Gem::Version
815
+ version: 0.6.4
816
+ type: :development
817
+ prerelease: false
818
+ version_requirements: *id073
819
+ - !ruby/object:Gem::Dependency
820
+ name: bluecloth
821
+ requirement: &id074 !ruby/object:Gem::Requirement
822
+ none: false
823
+ requirements:
824
+ - - ~>
825
+ - !ruby/object:Gem::Version
826
+ version: 2.1.0
827
+ type: :development
828
+ prerelease: false
829
+ version_requirements: *id074
830
+ - !ruby/object:Gem::Dependency
831
+ name: slingshot-rb
832
+ requirement: &id075 !ruby/object:Gem::Requirement
745
833
  none: false
746
834
  requirements:
747
835
  - - ~>
@@ -749,10 +837,10 @@ dependencies:
749
837
  version: 0.0.6
750
838
  type: :runtime
751
839
  prerelease: false
752
- version_requirements: *id067
840
+ version_requirements: *id075
753
841
  - !ruby/object:Gem::Dependency
754
842
  name: mongoid
755
- requirement: &id068 !ruby/object:Gem::Requirement
843
+ requirement: &id076 !ruby/object:Gem::Requirement
756
844
  none: false
757
845
  requirements:
758
846
  - - "="
@@ -760,10 +848,10 @@ dependencies:
760
848
  version: 2.0.0.rc.7
761
849
  type: :runtime
762
850
  prerelease: false
763
- version_requirements: *id068
851
+ version_requirements: *id076
764
852
  - !ruby/object:Gem::Dependency
765
853
  name: bson
766
- requirement: &id069 !ruby/object:Gem::Requirement
854
+ requirement: &id077 !ruby/object:Gem::Requirement
767
855
  none: false
768
856
  requirements:
769
857
  - - "="
@@ -771,10 +859,10 @@ dependencies:
771
859
  version: 1.2.0
772
860
  type: :runtime
773
861
  prerelease: false
774
- version_requirements: *id069
862
+ version_requirements: *id077
775
863
  - !ruby/object:Gem::Dependency
776
864
  name: bson_ext
777
- requirement: &id070 !ruby/object:Gem::Requirement
865
+ requirement: &id078 !ruby/object:Gem::Requirement
778
866
  none: false
779
867
  requirements:
780
868
  - - "="
@@ -782,10 +870,10 @@ dependencies:
782
870
  version: 1.2.0
783
871
  type: :runtime
784
872
  prerelease: false
785
- version_requirements: *id070
873
+ version_requirements: *id078
786
874
  - !ruby/object:Gem::Dependency
787
875
  name: rspec
788
- requirement: &id071 !ruby/object:Gem::Requirement
876
+ requirement: &id079 !ruby/object:Gem::Requirement
789
877
  none: false
790
878
  requirements:
791
879
  - - ~>
@@ -793,10 +881,10 @@ dependencies:
793
881
  version: 2.3.0
794
882
  type: :development
795
883
  prerelease: false
796
- version_requirements: *id071
884
+ version_requirements: *id079
797
885
  - !ruby/object:Gem::Dependency
798
886
  name: yard
799
- requirement: &id072 !ruby/object:Gem::Requirement
887
+ requirement: &id080 !ruby/object:Gem::Requirement
800
888
  none: false
801
889
  requirements:
802
890
  - - ~>
@@ -804,10 +892,10 @@ dependencies:
804
892
  version: 0.6.0
805
893
  type: :development
806
894
  prerelease: false
807
- version_requirements: *id072
895
+ version_requirements: *id080
808
896
  - !ruby/object:Gem::Dependency
809
897
  name: bundler
810
- requirement: &id073 !ruby/object:Gem::Requirement
898
+ requirement: &id081 !ruby/object:Gem::Requirement
811
899
  none: false
812
900
  requirements:
813
901
  - - ~>
@@ -815,10 +903,10 @@ dependencies:
815
903
  version: 1.0.0
816
904
  type: :development
817
905
  prerelease: false
818
- version_requirements: *id073
906
+ version_requirements: *id081
819
907
  - !ruby/object:Gem::Dependency
820
908
  name: jeweler
821
- requirement: &id074 !ruby/object:Gem::Requirement
909
+ requirement: &id082 !ruby/object:Gem::Requirement
822
910
  none: false
823
911
  requirements:
824
912
  - - ~>
@@ -826,10 +914,10 @@ dependencies:
826
914
  version: 1.5.2
827
915
  type: :development
828
916
  prerelease: false
829
- version_requirements: *id074
917
+ version_requirements: *id082
830
918
  - !ruby/object:Gem::Dependency
831
919
  name: rcov
832
- requirement: &id075 !ruby/object:Gem::Requirement
920
+ requirement: &id083 !ruby/object:Gem::Requirement
833
921
  none: false
834
922
  requirements:
835
923
  - - ">="
@@ -837,10 +925,10 @@ dependencies:
837
925
  version: "0"
838
926
  type: :development
839
927
  prerelease: false
840
- version_requirements: *id075
928
+ version_requirements: *id083
841
929
  - !ruby/object:Gem::Dependency
842
930
  name: mongoid-rspec
843
- requirement: &id076 !ruby/object:Gem::Requirement
931
+ requirement: &id084 !ruby/object:Gem::Requirement
844
932
  none: false
845
933
  requirements:
846
934
  - - "="
@@ -848,10 +936,10 @@ dependencies:
848
936
  version: 1.4.1
849
937
  type: :development
850
938
  prerelease: false
851
- version_requirements: *id076
939
+ version_requirements: *id084
852
940
  - !ruby/object:Gem::Dependency
853
941
  name: database_cleaner
854
- requirement: &id077 !ruby/object:Gem::Requirement
942
+ requirement: &id085 !ruby/object:Gem::Requirement
855
943
  none: false
856
944
  requirements:
857
945
  - - "="
@@ -859,10 +947,10 @@ dependencies:
859
947
  version: 0.6.4
860
948
  type: :development
861
949
  prerelease: false
862
- version_requirements: *id077
950
+ version_requirements: *id085
863
951
  - !ruby/object:Gem::Dependency
864
952
  name: bluecloth
865
- requirement: &id078 !ruby/object:Gem::Requirement
953
+ requirement: &id086 !ruby/object:Gem::Requirement
866
954
  none: false
867
955
  requirements:
868
956
  - - ~>
@@ -870,7 +958,7 @@ dependencies:
870
958
  version: 2.1.0
871
959
  type: :development
872
960
  prerelease: false
873
- version_requirements: *id078
961
+ version_requirements: *id086
874
962
  description: "\n An elasticsearch wrapper for mongoid odm based on slingshot. Makes integration between ElasticSearch full-text \n search engine and Mongoid documents seemless and simple.\n "
875
963
  email: omar.mekky@mashsolvents.com
876
964
  executables: []
@@ -933,7 +1021,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
933
1021
  requirements:
934
1022
  - - ">="
935
1023
  - !ruby/object:Gem::Version
936
- hash: -646980475899686207
1024
+ hash: 3644119659415680929
937
1025
  segments:
938
1026
  - 0
939
1027
  version: "0"