diff --git a/lib/searchkick.rb b/lib/searchkick.rb index b280106..24d7fdb 100644 --- a/lib/searchkick.rb +++ b/lib/searchkick.rb @@ -6,6 +6,7 @@ require "searchkick/index_options" require "searchkick/index" require "searchkick/indexer" require "searchkick/reindex_queue" +require "searchkick/hash_wrapper" require "searchkick/results" require "searchkick/query" require "searchkick/multi_search" diff --git a/lib/searchkick/hash_wrapper.rb b/lib/searchkick/hash_wrapper.rb new file mode 100644 index 0000000..a5eb37f --- /dev/null +++ b/lib/searchkick/hash_wrapper.rb @@ -0,0 +1,12 @@ +module Searchkick + # Subclass of `Hashie::Mash` to wrap Hash-like structures + # (responses from Elasticsearch) + # + # The primary goal of the subclass is to disable the + # warning being printed by Hashie for re-defined + # methods, such as `sort`. + # + class HashWrapper < ::Hashie::Mash + disable_warnings if respond_to?(:disable_warnings) + end +end diff --git a/lib/searchkick/results.rb b/lib/searchkick/results.rb index e4af90a..3b31045 100644 --- a/lib/searchkick/results.rb +++ b/lib/searchkick/results.rb @@ -68,7 +68,7 @@ module Searchkick end result["id"] ||= result["_id"] # needed for legacy reasons - Hashie::Mash.new(result) + HashWrapper.new(result) end end end -- libgit2 0.21.0