RiotGames/berkshelf-api — pull request #50 by andrewGarson (2013-08-15 23:58:13+00:00)
Title: RemoteCookbooks are compared using set notation, this requires you to

implement #eql? and #hash for appropriate behavior

Without this, if you save a full cache then restart the server, it will
rebuild the cache as if it were empty (removing all existing items on
the first pass through).