moneta 1.1.0 → 1.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (208) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -0
  3. data/.rubocop.yml +194 -0
  4. data/.travis.yml +65 -25
  5. data/CHANGES +36 -0
  6. data/CONTRIBUTORS +4 -2
  7. data/Gemfile +94 -65
  8. data/README.md +50 -25
  9. data/feature_matrix.yaml +3 -11
  10. data/lib/action_dispatch/middleware/session/moneta_store.rb +1 -0
  11. data/lib/active_support/cache/moneta_store.rb +5 -5
  12. data/lib/moneta.rb +20 -10
  13. data/lib/moneta/adapters/activerecord.rb +35 -19
  14. data/lib/moneta/adapters/activesupportcache.rb +3 -7
  15. data/lib/moneta/adapters/cassandra.rb +24 -16
  16. data/lib/moneta/adapters/client.rb +62 -21
  17. data/lib/moneta/adapters/couch.rb +225 -80
  18. data/lib/moneta/adapters/datamapper.rb +1 -0
  19. data/lib/moneta/adapters/file.rb +9 -6
  20. data/lib/moneta/adapters/hbase.rb +1 -1
  21. data/lib/moneta/adapters/kyotocabinet.rb +8 -7
  22. data/lib/moneta/adapters/leveldb.rb +1 -1
  23. data/lib/moneta/adapters/lmdb.rb +3 -4
  24. data/lib/moneta/adapters/lruhash.rb +29 -62
  25. data/lib/moneta/adapters/memcached.rb +1 -0
  26. data/lib/moneta/adapters/memcached/dalli.rb +1 -1
  27. data/lib/moneta/adapters/memcached/native.rb +10 -8
  28. data/lib/moneta/adapters/mongo.rb +256 -6
  29. data/lib/moneta/adapters/null.rb +1 -2
  30. data/lib/moneta/adapters/pstore.rb +3 -2
  31. data/lib/moneta/adapters/redis.rb +8 -4
  32. data/lib/moneta/adapters/restclient.rb +12 -3
  33. data/lib/moneta/adapters/riak.rb +2 -2
  34. data/lib/moneta/adapters/sequel.rb +137 -328
  35. data/lib/moneta/adapters/sequel/mysql.rb +66 -0
  36. data/lib/moneta/adapters/sequel/postgres.rb +80 -0
  37. data/lib/moneta/adapters/sequel/postgres_hstore.rb +240 -0
  38. data/lib/moneta/adapters/sequel/sqlite.rb +57 -0
  39. data/lib/moneta/adapters/sqlite.rb +25 -11
  40. data/lib/moneta/adapters/tokyotyrant.rb +1 -1
  41. data/lib/moneta/builder.rb +2 -3
  42. data/lib/moneta/create_support.rb +21 -0
  43. data/lib/moneta/dbm_adapter.rb +31 -0
  44. data/lib/moneta/{mixins.rb → defaults.rb} +3 -302
  45. data/lib/moneta/each_key_support.rb +27 -0
  46. data/lib/moneta/enumerable.rb +38 -0
  47. data/lib/moneta/expires.rb +12 -12
  48. data/lib/moneta/expires_support.rb +60 -0
  49. data/lib/moneta/fallback.rb +84 -0
  50. data/lib/moneta/hash_adapter.rb +68 -0
  51. data/lib/moneta/increment_support.rb +16 -0
  52. data/lib/moneta/lock.rb +7 -2
  53. data/lib/moneta/logger.rb +2 -2
  54. data/lib/moneta/nil_values.rb +35 -0
  55. data/lib/moneta/option_support.rb +51 -0
  56. data/lib/moneta/optionmerger.rb +0 -1
  57. data/lib/moneta/pool.rb +312 -30
  58. data/lib/moneta/proxy.rb +3 -3
  59. data/lib/moneta/server.rb +216 -65
  60. data/lib/moneta/shared.rb +13 -7
  61. data/lib/moneta/stack.rb +6 -6
  62. data/lib/moneta/synchronize.rb +3 -3
  63. data/lib/moneta/transformer.rb +68 -24
  64. data/lib/moneta/transformer/config.rb +63 -43
  65. data/lib/moneta/transformer/helper.rb +3 -3
  66. data/lib/moneta/transformer/helper/bson.rb +7 -14
  67. data/lib/moneta/utils.rb +3 -9
  68. data/lib/moneta/version.rb +1 -1
  69. data/lib/moneta/weak_each_key.rb +2 -4
  70. data/lib/rack/cache/moneta.rb +13 -11
  71. data/lib/rack/moneta_rest.rb +2 -2
  72. data/lib/rack/session/moneta.rb +3 -4
  73. data/moneta.gemspec +18 -4
  74. data/script/benchmarks +145 -46
  75. data/script/contributors +11 -6
  76. data/script/start-couchdb +27 -0
  77. data/script/start-hbase +3 -2
  78. data/script/start-services +3 -11
  79. data/spec/active_support/cache_moneta_store_spec.rb +30 -30
  80. data/spec/features/concurrent_create.rb +31 -10
  81. data/spec/features/concurrent_increment.rb +26 -19
  82. data/spec/features/create_expires.rb +15 -15
  83. data/spec/features/default_expires.rb +11 -12
  84. data/spec/features/expires.rb +215 -210
  85. data/spec/features/increment.rb +41 -41
  86. data/spec/features/store.rb +3 -3
  87. data/spec/helper.rb +23 -82
  88. data/spec/moneta/adapters/activerecord/standard_activerecord_spec.rb +1 -1
  89. data/spec/moneta/adapters/activerecord/standard_activerecord_with_expires_spec.rb +1 -1
  90. data/spec/moneta/adapters/activesupportcache/adapter_activesupportcache_spec.rb +4 -1
  91. data/spec/moneta/adapters/activesupportcache/adapter_activesupportcache_with_default_expires_spec.rb +4 -1
  92. data/spec/moneta/adapters/activesupportcache/standard_activesupportcache_spec.rb +14 -0
  93. data/spec/moneta/adapters/cassandra/standard_cassandra_spec.rb +1 -1
  94. data/spec/moneta/adapters/client/adapter_client_spec.rb +6 -6
  95. data/spec/moneta/adapters/client/client_helper.rb +24 -0
  96. data/spec/moneta/adapters/client/standard_client_tcp_spec.rb +8 -8
  97. data/spec/moneta/adapters/client/standard_client_unix_spec.rb +23 -7
  98. data/spec/moneta/adapters/couch/adapter_couch_spec.rb +199 -2
  99. data/spec/moneta/adapters/couch/standard_couch_spec.rb +9 -3
  100. data/spec/moneta/adapters/couch/standard_couch_with_expires_spec.rb +8 -2
  101. data/spec/moneta/adapters/daybreak/standard_daybreak_spec.rb +1 -1
  102. data/spec/moneta/adapters/daybreak/standard_daybreak_with_expires_spec.rb +1 -1
  103. data/spec/moneta/adapters/dbm/standard_dbm_spec.rb +1 -1
  104. data/spec/moneta/adapters/dbm/standard_dbm_with_expires_spec.rb +1 -1
  105. data/spec/moneta/adapters/faraday_helper.rb +9 -0
  106. data/spec/moneta/adapters/file/standard_file_spec.rb +2 -2
  107. data/spec/moneta/adapters/file/standard_file_with_expires_spec.rb +1 -1
  108. data/spec/moneta/adapters/gdbm/standard_gdbm_spec.rb +1 -1
  109. data/spec/moneta/adapters/gdbm/standard_gdbm_with_expires_spec.rb +1 -1
  110. data/spec/moneta/adapters/kyotocabinet/adapter_kyotocabinet_spec.rb +1 -1
  111. data/spec/moneta/adapters/kyotocabinet/standard_kyotocabinet_spec.rb +2 -2
  112. data/spec/moneta/adapters/kyotocabinet/standard_kyotocabinet_with_expires_spec.rb +2 -2
  113. data/spec/moneta/adapters/leveldb/standard_leveldb_spec.rb +1 -1
  114. data/spec/moneta/adapters/leveldb/standard_leveldb_with_expires_spec.rb +1 -1
  115. data/spec/moneta/adapters/lmdb/standard_lmdb_spec.rb +1 -1
  116. data/spec/moneta/adapters/lmdb/standard_lmdb_with_expires_spec.rb +1 -1
  117. data/spec/moneta/adapters/lruhash/adapter_lruhash_spec.rb +2 -2
  118. data/spec/moneta/adapters/lruhash/standard_lruhash_spec.rb +1 -1
  119. data/spec/moneta/adapters/lruhash/standard_lruhash_with_expires_spec.rb +1 -1
  120. data/spec/moneta/adapters/memcached/adapter_memcached_spec.rb +1 -1
  121. data/spec/moneta/adapters/memcached/dalli/adapter_memcached_dalli_spec.rb +1 -1
  122. data/spec/moneta/adapters/memcached/dalli/adapter_memcached_dalli_with_default_expires_spec.rb +1 -1
  123. data/spec/moneta/adapters/memcached/dalli/standard_memcached_dalli_spec.rb +1 -1
  124. data/spec/moneta/adapters/memcached/native/adapter_memcached_native_spec.rb +1 -1
  125. data/spec/moneta/adapters/memcached/native/adapter_memcached_native_with_default_expires_spec.rb +1 -1
  126. data/spec/moneta/adapters/memcached/native/standard_memcached_native_spec.rb +1 -1
  127. data/spec/moneta/adapters/memcached/standard_memcached_spec.rb +1 -1
  128. data/spec/moneta/adapters/{memcached/helper.rb → memcached_helper.rb} +0 -0
  129. data/spec/moneta/adapters/memory/standard_memory_spec.rb +1 -1
  130. data/spec/moneta/adapters/memory/standard_memory_with_compress_spec.rb +1 -1
  131. data/spec/moneta/adapters/memory/standard_memory_with_expires_spec.rb +1 -1
  132. data/spec/moneta/adapters/memory/standard_memory_with_json_key_serializer_spec.rb +1 -1
  133. data/spec/moneta/adapters/memory/standard_memory_with_json_serializer_spec.rb +1 -1
  134. data/spec/moneta/adapters/memory/standard_memory_with_json_value_serializer_spec.rb +2 -2
  135. data/spec/moneta/adapters/memory/standard_memory_with_prefix_spec.rb +39 -2
  136. data/spec/moneta/adapters/memory/standard_memory_with_snappy_compress_spec.rb +2 -2
  137. data/spec/moneta/adapters/mongo/adapter_mongo_spec.rb +18 -2
  138. data/spec/moneta/adapters/mongo/adapter_mongo_with_default_expires_spec.rb +5 -3
  139. data/spec/moneta/adapters/mongo/standard_mongo_spec.rb +2 -2
  140. data/spec/moneta/adapters/null/null_adapter_spec.rb +1 -1
  141. data/spec/moneta/adapters/pstore/standard_pstore_spec.rb +1 -1
  142. data/spec/moneta/adapters/pstore/standard_pstore_with_expires_spec.rb +1 -1
  143. data/spec/moneta/adapters/redis/standard_redis_spec.rb +1 -1
  144. data/spec/moneta/adapters/restclient/adapter_restclient_spec.rb +7 -5
  145. data/spec/moneta/adapters/restclient/helper.rb +12 -0
  146. data/spec/moneta/adapters/restclient/standard_restclient_spec.rb +9 -6
  147. data/spec/moneta/adapters/riak/standard_riak_with_expires_spec.rb +4 -0
  148. data/spec/moneta/adapters/sdbm/standard_sdbm_spec.rb +1 -1
  149. data/spec/moneta/adapters/sdbm/standard_sdbm_with_expires_spec.rb +1 -1
  150. data/spec/moneta/adapters/sequel/adapter_sequel_spec.rb +31 -79
  151. data/spec/moneta/adapters/sequel/helper.rb +75 -0
  152. data/spec/moneta/adapters/sequel/standard_sequel_spec.rb +5 -11
  153. data/spec/moneta/adapters/sequel/standard_sequel_with_expires_spec.rb +8 -9
  154. data/spec/moneta/adapters/sqlite/standard_sqlite_spec.rb +1 -1
  155. data/spec/moneta/adapters/sqlite/standard_sqlite_with_expires_spec.rb +1 -1
  156. data/spec/moneta/adapters/tdb/standard_tdb_spec.rb +1 -1
  157. data/spec/moneta/adapters/tdb/standard_tdb_with_expires_spec.rb +1 -1
  158. data/spec/moneta/adapters/tokyocabinet/standard_tokyocabinet_spec.rb +1 -1
  159. data/spec/moneta/adapters/tokyocabinet/standard_tokyocabinet_with_expires_spec.rb +1 -1
  160. data/spec/moneta/adapters/tokyotyrant/adapter_tokyotyrant_spec.rb +6 -2
  161. data/spec/moneta/adapters/tokyotyrant/helper.rb +12 -0
  162. data/spec/moneta/adapters/tokyotyrant/standard_tokyotyrant_spec.rb +5 -2
  163. data/spec/moneta/adapters/tokyotyrant/standard_tokyotyrant_with_expires_spec.rb +5 -1
  164. data/spec/moneta/adapters/yaml/standard_yaml_spec.rb +1 -1
  165. data/spec/moneta/adapters/yaml/standard_yaml_with_expires_spec.rb +1 -1
  166. data/spec/moneta/builder_spec.rb +22 -0
  167. data/spec/moneta/proxies/enumerable/enumerable_spec.rb +26 -0
  168. data/spec/moneta/proxies/expires/expires_file_spec.rb +1 -1
  169. data/spec/moneta/proxies/fallback/fallback_spec.rb +42 -0
  170. data/spec/moneta/proxies/pool/pool_spec.rb +319 -6
  171. data/spec/moneta/proxies/shared/shared_tcp_spec.rb +14 -4
  172. data/spec/moneta/proxies/shared/shared_unix_spec.rb +14 -4
  173. data/spec/moneta/proxies/transformer/transformer_bencode_spec.rb +1 -1
  174. data/spec/moneta/proxies/transformer/transformer_bert_spec.rb +3 -3
  175. data/spec/moneta/proxies/transformer/transformer_bson_spec.rb +2 -2
  176. data/spec/moneta/proxies/transformer/transformer_json_spec.rb +1 -1
  177. data/spec/moneta/proxies/transformer/transformer_key_marshal_spec.rb +1 -1
  178. data/spec/moneta/proxies/transformer/transformer_key_yaml_spec.rb +1 -1
  179. data/spec/moneta/proxies/transformer/transformer_marshal_base64_spec.rb +1 -1
  180. data/spec/moneta/proxies/transformer/transformer_marshal_escape_spec.rb +8 -4
  181. data/spec/moneta/proxies/transformer/transformer_marshal_hex_spec.rb +1 -1
  182. data/spec/moneta/proxies/transformer/transformer_marshal_hmac_spec.rb +1 -1
  183. data/spec/moneta/proxies/transformer/transformer_marshal_prefix_base64_spec.rb +33 -0
  184. data/spec/moneta/proxies/transformer/transformer_marshal_prefix_spec.rb +1 -1
  185. data/spec/moneta/proxies/transformer/transformer_marshal_qp_spec.rb +1 -1
  186. data/spec/moneta/proxies/transformer/transformer_marshal_spec.rb +1 -1
  187. data/spec/moneta/proxies/transformer/transformer_marshal_urlsafe_base64_spec.rb +1 -1
  188. data/spec/moneta/proxies/transformer/transformer_marshal_uuencode_spec.rb +1 -1
  189. data/spec/moneta/proxies/transformer/transformer_msgpack_spec.rb +1 -1
  190. data/spec/moneta/proxies/transformer/transformer_ox_spec.rb +1 -1
  191. data/spec/moneta/proxies/transformer/transformer_php_spec.rb +1 -1
  192. data/spec/moneta/proxies/transformer/transformer_tnet_spec.rb +1 -1
  193. data/spec/moneta/proxies/transformer/transformer_yaml_spec.rb +2 -2
  194. data/spec/moneta/proxies/weak_each_key/weak_each_key_spec.rb +0 -2
  195. data/spec/restserver.rb +55 -0
  196. data/spec/support/mongo_helper.rb +12 -0
  197. metadata +140 -32
  198. data/lib/moneta/adapters/mongo/base.rb +0 -103
  199. data/lib/moneta/adapters/mongo/moped.rb +0 -164
  200. data/lib/moneta/adapters/mongo/official.rb +0 -157
  201. data/script/install-kyotocabinet +0 -17
  202. data/spec/moneta/adapters/mongo/adapter_mongo_moped_spec.rb +0 -25
  203. data/spec/moneta/adapters/mongo/adapter_mongo_moped_with_default_expires_spec.rb +0 -12
  204. data/spec/moneta/adapters/mongo/adapter_mongo_official_spec.rb +0 -25
  205. data/spec/moneta/adapters/mongo/adapter_mongo_official_with_default_expires_spec.rb +0 -12
  206. data/spec/moneta/adapters/mongo/standard_mongo_moped_spec.rb +0 -7
  207. data/spec/moneta/adapters/mongo/standard_mongo_official_spec.rb +0 -7
  208. data/spec/quality_spec.rb +0 -51
@@ -1,15 +1,15 @@
1
- describe "shared_tcp", isolate: true, proxy: :Shared do
1
+ describe "shared_tcp", proxy: :Shared do
2
2
  moneta_build do
3
3
  tempdir = self.tempdir
4
4
  Moneta.build do
5
5
  use(:Shared, port: 9001) do
6
- adapter :PStore, file: File.join(tempdir, 'shared_tcp')
6
+ adapter :GDBM, file: File.join(tempdir, 'shared_tcp')
7
7
  end
8
8
  end
9
9
  end
10
10
 
11
11
  shared_examples :shared_tcp do
12
- moneta_specs ADAPTER_SPECS
12
+ moneta_specs ADAPTER_SPECS.with_each_key
13
13
 
14
14
  it 'shares values' do
15
15
  store['shared_key'] = 'shared_value'
@@ -22,11 +22,16 @@ describe "shared_tcp", isolate: true, proxy: :Shared do
22
22
 
23
23
  # The first store initialised will be running the server
24
24
  context "running as the server" do
25
+ before do
26
+ store.load('dummy')
27
+ expect(store.server?).to be true
28
+ end
29
+
25
30
  include_examples :shared_tcp
26
31
 
27
32
  it 'has the underlying adapter' do
28
33
  store.load('dummy')
29
- expect(store.adapter.adapter).to be_a Moneta::Adapters::PStore
34
+ expect(store.adapter.adapter).to be_a Moneta::Adapters::GDBM
30
35
  end
31
36
  end
32
37
 
@@ -35,6 +40,11 @@ describe "shared_tcp", isolate: true, proxy: :Shared do
35
40
  new_store.tap { |store| store.load('dummy') } # Makes a connection
36
41
  end
37
42
 
43
+ before do
44
+ store.load('dummy')
45
+ expect(store.server?).to be false
46
+ end
47
+
38
48
  after do
39
49
  server_store.close
40
50
  end
@@ -1,15 +1,15 @@
1
- describe "shared_unix", isolate: true, proxy: :Shared do
1
+ describe "shared_unix", proxy: :Shared do
2
2
  moneta_build do
3
3
  tempdir = self.tempdir
4
4
  Moneta.build do
5
5
  use(:Shared, socket: File.join(tempdir, 'shared_unix.socket')) do
6
- adapter :PStore, file: File.join(tempdir, 'shared_unix')
6
+ adapter :GDBM, file: File.join(tempdir, 'shared_unix')
7
7
  end
8
8
  end
9
9
  end
10
10
 
11
11
  shared_examples :shared_unix do
12
- moneta_specs ADAPTER_SPECS
12
+ moneta_specs ADAPTER_SPECS.with_each_key
13
13
 
14
14
  it 'shares values' do
15
15
  store['shared_key'] = 'shared_value'
@@ -21,11 +21,16 @@ describe "shared_unix", isolate: true, proxy: :Shared do
21
21
  end
22
22
 
23
23
  context "runnning as the server" do
24
+ before do
25
+ store.load('dummy')
26
+ expect(store.server?).to be true
27
+ end
28
+
24
29
  include_examples :shared_unix
25
30
 
26
31
  it "has the underlying adapter" do
27
32
  store.load('dummy')
28
- expect(store.adapter.adapter).to be_a Moneta::Adapters::PStore
33
+ expect(store.adapter.adapter).to be_a Moneta::Adapters::GDBM
29
34
  end
30
35
  end
31
36
 
@@ -34,6 +39,11 @@ describe "shared_unix", isolate: true, proxy: :Shared do
34
39
  new_store.tap { |store| store.load('dummy') } # Makes a connection
35
40
  end
36
41
 
42
+ before do
43
+ store.load('dummy')
44
+ expect(store.server?).to be false
45
+ end
46
+
37
47
  after do
38
48
  server_store.close
39
49
  end
@@ -10,7 +10,7 @@ describe 'transformer_bencode', proxy: :Transformer do
10
10
  ::BEncode.load(value)
11
11
  end
12
12
 
13
- moneta_specs TRANSFORMER_SPECS.simplekeys_only.simplevalues_only
13
+ moneta_specs TRANSFORMER_SPECS.simplekeys_only.simplevalues_only.with_each_key
14
14
 
15
15
  it 'compile transformer class' do
16
16
  store.should_not be_nil
@@ -9,9 +9,9 @@ describe 'transformer_bert', unsupported: defined?(JRUBY_VERSION), proxy: :Trans
9
9
  moneta_loader do |value|
10
10
  ::BERT.decode(value)
11
11
  end
12
-
13
- moneta_specs TRANSFORMER_SPECS.simplekeys_only.simplevalues_only
14
-
12
+
13
+ moneta_specs TRANSFORMER_SPECS.simplekeys_only.simplevalues_only.with_each_key
14
+
15
15
  it 'compile transformer class' do
16
16
  store.should_not be_nil
17
17
  Moneta::Transformer::BertKeyBertValue.should_not be_nil
@@ -14,8 +14,8 @@ describe 'transformer_bson', proxy: :Transformer do
14
14
  end
15
15
  end
16
16
 
17
- moneta_specs TRANSFORMER_SPECS.simplekeys_only.simplevalues_only
18
-
17
+ moneta_specs TRANSFORMER_SPECS.simplekeys_only.simplevalues_only.with_each_key
18
+
19
19
  it 'compile transformer class' do
20
20
  store.should_not be_nil
21
21
  Moneta::Transformer::BsonKeyBsonValue.should_not be_nil
@@ -10,7 +10,7 @@ describe 'transformer_json', proxy: :Transformer do
10
10
  ::MultiJson.load(value)
11
11
  end
12
12
 
13
- moneta_specs TRANSFORMER_SPECS.simplekeys_only.simplevalues_only
13
+ moneta_specs TRANSFORMER_SPECS.simplekeys_only.simplevalues_only.with_each_key
14
14
 
15
15
  it 'compile transformer class' do
16
16
  store.should_not be_nil
@@ -8,7 +8,7 @@ describe 'transformer_key_marshal', proxy: :Transformer do
8
8
 
9
9
  moneta_loader{ |value| value }
10
10
 
11
- moneta_specs TRANSFORMER_SPECS.returnsame
11
+ moneta_specs TRANSFORMER_SPECS.returnsame.with_each_key
12
12
 
13
13
  it 'compile transformer class' do
14
14
  store.should_not be_nil
@@ -8,7 +8,7 @@ describe 'transformer_key_yaml', proxy: :Transformer do
8
8
 
9
9
  moneta_loader{ |value| value }
10
10
 
11
- moneta_specs TRANSFORMER_SPECS.returnsame
11
+ moneta_specs TRANSFORMER_SPECS.returnsame.with_each_key
12
12
 
13
13
  it 'compile transformer class' do
14
14
  store.should_not be_nil
@@ -11,7 +11,7 @@ describe 'transformer_marshal_base64', proxy: :Transformer do
11
11
  ::Marshal.load(value.unpack('m').first)
12
12
  end
13
13
 
14
- moneta_specs STANDARD_SPECS.without_persist
14
+ moneta_specs STANDARD_SPECS.without_persist.with_each_key
15
15
 
16
16
  it 'compile transformer class' do
17
17
  store.should_not be_nil
@@ -1,15 +1,19 @@
1
1
  describe 'transformer_marshal_escape', proxy: :Transformer do
2
2
  moneta_build do
3
3
  Moneta.build do
4
- use :Transformer, key: [:marshal, :escape], value: :marshal
4
+ use :Transformer, key: [:marshal, :escape], value: [:marshal, :escape]
5
5
  adapter :Memory
6
6
  end
7
7
  end
8
8
 
9
- moneta_specs STANDARD_SPECS.without_persist
9
+ moneta_loader do |value|
10
+ ::Marshal.load(::URI.decode_www_form_component(value))
11
+ end
12
+
13
+ moneta_specs STANDARD_SPECS.without_persist.with_each_key
10
14
 
11
- it 'compile transformer class' do
15
+ it 'compiles the transformer class' do
12
16
  store.should_not be_nil
13
- Moneta::Transformer::MarshalEscapeKeyMarshalValue.should_not be_nil
17
+ Moneta::Transformer::MarshalEscapeKeyMarshalEscapeValue.should_not be_nil
14
18
  end
15
19
  end
@@ -11,7 +11,7 @@ describe 'transformer_marshal_hex', proxy: :Transformer do
11
11
  ::Marshal.load([value].pack('H*'))
12
12
  end
13
13
 
14
- moneta_specs STANDARD_SPECS.without_persist
14
+ moneta_specs STANDARD_SPECS.without_persist.with_each_key
15
15
 
16
16
  it 'compile transformer class' do
17
17
  store.should_not be_nil
@@ -10,7 +10,7 @@ describe 'transformer_marshal_hmac', proxy: :Transformer do
10
10
  ::Marshal.load(::Moneta::Transformer::Helper.hmacverify(value, 'secret'))
11
11
  end
12
12
 
13
- moneta_specs STANDARD_SPECS.without_persist
13
+ moneta_specs STANDARD_SPECS.without_persist.with_each_key
14
14
 
15
15
  it 'compile transformer class' do
16
16
  store.should_not be_nil
@@ -0,0 +1,33 @@
1
+ describe 'transformer_marshal_prefix_base64', proxy: :Transformer do
2
+ moneta_build do
3
+
4
+ Moneta.build do
5
+ use :Transformer, key: [:marshal, :prefix, :base64], value: [:marshal, :base64], prefix: 'moneta'
6
+ adapter :Memory
7
+ end
8
+ end
9
+
10
+ moneta_loader do |value|
11
+ ::Marshal.load(value.unpack('m').first)
12
+ end
13
+
14
+ moneta_specs STANDARD_SPECS.without_persist.with_each_key
15
+
16
+ it 'compile transformer class' do
17
+ store.should_not be_nil
18
+ Moneta::Transformer::MarshalPrefixBase64KeyMarshalBase64Value.should_not be_nil
19
+ end
20
+
21
+ context 'with keys with no prefix' do
22
+ before(:each) do
23
+ store.adapter.backend['no_prefix'] = 'hidden'
24
+ end
25
+
26
+ after(:each) do
27
+ expect(store.adapter.backend.keys).to include('no_prefix')
28
+ end
29
+
30
+ include_examples :each_key
31
+ end
32
+
33
+ end
@@ -6,7 +6,7 @@ describe 'transformer_marshal_prefix', proxy: :Transformer do
6
6
  end
7
7
  end
8
8
 
9
- moneta_specs STANDARD_SPECS.without_persist
9
+ moneta_specs STANDARD_SPECS.without_persist.with_each_key
10
10
 
11
11
  it 'compile transformer class' do
12
12
  store.should_not be_nil
@@ -11,7 +11,7 @@ describe 'transformer_marshal_qp', proxy: :Transformer do
11
11
  ::Marshal.load(value.unpack('M').first)
12
12
  end
13
13
 
14
- moneta_specs STANDARD_SPECS.without_persist
14
+ moneta_specs STANDARD_SPECS.without_persist.with_each_key
15
15
 
16
16
  it 'compile transformer class' do
17
17
  store.should_not be_nil
@@ -10,7 +10,7 @@ describe 'transformer_marshal', proxy: :Transformer do
10
10
  ::Marshal.load(value)
11
11
  end
12
12
 
13
- moneta_specs TRANSFORMER_SPECS
13
+ moneta_specs TRANSFORMER_SPECS.with_each_key
14
14
 
15
15
  it 'compile transformer class' do
16
16
  store.should_not be_nil
@@ -11,7 +11,7 @@ describe 'transformer_marshal_urlsafe_base64', proxy: :Transformer do
11
11
  ::Marshal.load(::Base64.urlsafe_decode64(value))
12
12
  end
13
13
 
14
- moneta_specs STANDARD_SPECS.without_persist
14
+ moneta_specs STANDARD_SPECS.without_persist.with_each_key
15
15
 
16
16
  it 'compile transformer class' do
17
17
  store.should_not be_nil
@@ -10,7 +10,7 @@ describe 'transformer_marshal_uuencode', proxy: :Transformer do
10
10
  ::Marshal.load(value.unpack('u').first)
11
11
  end
12
12
 
13
- moneta_specs STANDARD_SPECS.without_persist
13
+ moneta_specs STANDARD_SPECS.without_persist.with_each_key
14
14
 
15
15
  it 'compile transformer class' do
16
16
  store.should_not be_nil
@@ -10,7 +10,7 @@ describe 'transformer_msgpack', proxy: :Transformer do
10
10
  ::MessagePack.unpack(value)
11
11
  end
12
12
 
13
- moneta_specs TRANSFORMER_SPECS.simplekeys_only.simplevalues_only
13
+ moneta_specs TRANSFORMER_SPECS.simplekeys_only.simplevalues_only.with_each_key
14
14
 
15
15
  it 'compile transformer class' do
16
16
  store.should_not be_nil
@@ -10,7 +10,7 @@ describe 'transformer_ox', unsupported: defined?(JRUBY_VERSION), proxy: :Transfo
10
10
  ::Ox.parse_obj(value)
11
11
  end
12
12
 
13
- moneta_specs TRANSFORMER_SPECS.without_keys_or_values(:binary, :float)
13
+ moneta_specs TRANSFORMER_SPECS.without_keys_or_values(:binary, :float).with_each_key
14
14
 
15
15
  it 'compile transformer class' do
16
16
  store.should_not be_nil
@@ -10,7 +10,7 @@ describe 'transformer_php', proxy: :Transformer do
10
10
  ::PHP.unserialize(value)
11
11
  end
12
12
 
13
- moneta_specs TRANSFORMER_SPECS.simplekeys_only.simplevalues_only
13
+ moneta_specs TRANSFORMER_SPECS.simplekeys_only.simplevalues_only.with_each_key
14
14
 
15
15
  it 'compile transformer class' do
16
16
  store.should_not be_nil
@@ -10,7 +10,7 @@ describe 'transformer_tnet', proxy: :Transformer do
10
10
  ::TNetstring.parse(value).first
11
11
  end
12
12
 
13
- moneta_specs TRANSFORMER_SPECS.simplekeys_only.simplevalues_only
13
+ moneta_specs TRANSFORMER_SPECS.simplekeys_only.simplevalues_only.with_each_key
14
14
 
15
15
  it 'compile transformer class' do
16
16
  store.should_not be_nil
@@ -9,8 +9,8 @@ describe 'transformer_yaml', proxy: :Transformer do
9
9
  moneta_loader do |value|
10
10
  ::YAML.load(value)
11
11
  end
12
-
13
- moneta_specs TRANSFORMER_SPECS
12
+
13
+ moneta_specs TRANSFORMER_SPECS.with_each_key
14
14
 
15
15
  it 'compile transformer class' do
16
16
  store.should_not be_nil
@@ -9,8 +9,6 @@ describe 'weak_each_key', proxy: :WeakEachKey do
9
9
  moneta_build do
10
10
  Moneta.build do
11
11
  use :WeakEachKey
12
- # use :WeakIncrement
13
- # use :WeakCreate
14
12
 
15
13
  adapter :Fog,
16
14
  aws_access_key_id: 'fake_access_key_id',
@@ -0,0 +1,55 @@
1
+ require 'faraday'
2
+ require 'rack'
3
+ require 'rack/moneta_rest'
4
+
5
+ MONETA_RESTSERVER_LOGGER =
6
+ if defined?(JRUBY_VERSION)
7
+ require 'rjack-logback'
8
+ RJack::Logback.config_console( :level => :off )
9
+ require 'fishwife'
10
+ nil
11
+ else
12
+ require 'webrick'
13
+ # Keep webrick quiet
14
+ WEBrick::Log.new($stderr, WEBrick::BasicLog::ERROR)
15
+ end
16
+
17
+ class MonetaRestServerShutdown < StandardError; end
18
+
19
+ def start_restserver(port)
20
+ server = Rack::Server.new(
21
+ :app => Rack::Builder.app do
22
+ use Rack::Lint
23
+ map '/moneta' do
24
+ run Rack::MonetaRest.new(:Memory)
25
+ end
26
+ end,
27
+ :environment => 'none',
28
+ :server => defined?(JRUBY_VERSION) ? :Fishwife : :webrick,
29
+ :Port => port,
30
+ :AccessLog => [],
31
+ :Logger => MONETA_RESTSERVER_LOGGER
32
+ )
33
+
34
+ Thread.start { server.start }
35
+
36
+ begin
37
+ Faraday.get("http://127.0.0.1:#{port}")
38
+ rescue Faraday::ConnectionFailed
39
+ tries ||= 5
40
+ tries -= 1
41
+ if tries > 0
42
+ sleep 0.1
43
+ retry
44
+ else
45
+ raise
46
+ end
47
+ end
48
+
49
+ server
50
+ end
51
+
52
+ def stop_restserver(server)
53
+ server.server.shutdown
54
+ end
55
+
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module MongoHelper
4
+ def mongo_config(opts = {})
5
+ prefix = ENV.fetch('TEST_ENV_NUMBER', '')
6
+ opts.merge(collection: "#{prefix}#{opts[:collection]}")
7
+ end
8
+
9
+ def self.mongo_config(args)
10
+ Class.include(MongoHelper).new.mongo_config(args)
11
+ end
12
+ end
metadata CHANGED
@@ -1,24 +1,108 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: moneta
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Mendler
8
8
  - Yehuda Katz
9
9
  - Hannes Georg
10
10
  - Alastair Pharo
11
- autorequire:
11
+ autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2019-03-16 00:00:00.000000000 Z
15
- dependencies: []
14
+ date: 2020-08-23 00:00:00.000000000 Z
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ name: parallel_tests
18
+ requirement: !ruby/object:Gem::Requirement
19
+ requirements:
20
+ - - "~>"
21
+ - !ruby/object:Gem::Version
22
+ version: 2.29.2
23
+ type: :development
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: 2.29.2
30
+ - !ruby/object:Gem::Dependency
31
+ name: rantly
32
+ requirement: !ruby/object:Gem::Requirement
33
+ requirements:
34
+ - - "~>"
35
+ - !ruby/object:Gem::Version
36
+ version: 1.2.0
37
+ type: :development
38
+ prerelease: false
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - "~>"
42
+ - !ruby/object:Gem::Version
43
+ version: 1.2.0
44
+ - !ruby/object:Gem::Dependency
45
+ name: rspec
46
+ requirement: !ruby/object:Gem::Requirement
47
+ requirements:
48
+ - - "~>"
49
+ - !ruby/object:Gem::Version
50
+ version: '3.0'
51
+ type: :development
52
+ prerelease: false
53
+ version_requirements: !ruby/object:Gem::Requirement
54
+ requirements:
55
+ - - "~>"
56
+ - !ruby/object:Gem::Version
57
+ version: '3.0'
58
+ - !ruby/object:Gem::Dependency
59
+ name: rspec-retry
60
+ requirement: !ruby/object:Gem::Requirement
61
+ requirements:
62
+ - - "~>"
63
+ - !ruby/object:Gem::Version
64
+ version: 0.6.1
65
+ type: :development
66
+ prerelease: false
67
+ version_requirements: !ruby/object:Gem::Requirement
68
+ requirements:
69
+ - - "~>"
70
+ - !ruby/object:Gem::Version
71
+ version: 0.6.1
72
+ - !ruby/object:Gem::Dependency
73
+ name: rubocop
74
+ requirement: !ruby/object:Gem::Requirement
75
+ requirements:
76
+ - - "~>"
77
+ - !ruby/object:Gem::Version
78
+ version: 0.81.0
79
+ type: :development
80
+ prerelease: false
81
+ version_requirements: !ruby/object:Gem::Requirement
82
+ requirements:
83
+ - - "~>"
84
+ - !ruby/object:Gem::Version
85
+ version: 0.81.0
86
+ - !ruby/object:Gem::Dependency
87
+ name: timecop
88
+ requirement: !ruby/object:Gem::Requirement
89
+ requirements:
90
+ - - "~>"
91
+ - !ruby/object:Gem::Version
92
+ version: 0.9.1
93
+ type: :development
94
+ prerelease: false
95
+ version_requirements: !ruby/object:Gem::Requirement
96
+ requirements:
97
+ - - "~>"
98
+ - !ruby/object:Gem::Version
99
+ version: 0.9.1
16
100
  description: A unified interface to key/value stores
17
101
  email:
18
102
  - mail@daniel-mendler.de
19
103
  - wycats@gmail.com
20
104
  - hannes.georg@googlemail.com
21
- - asppsa@gmail.com
105
+ - me@asph.dev
22
106
  executables: []
23
107
  extensions: []
24
108
  extra_rdoc_files:
@@ -28,6 +112,7 @@ extra_rdoc_files:
28
112
  files:
29
113
  - ".gitignore"
30
114
  - ".rspec"
115
+ - ".rubocop.yml"
31
116
  - ".travis.yml"
32
117
  - ".yardopts"
33
118
  - CHANGES
@@ -63,9 +148,6 @@ files:
63
148
  - lib/moneta/adapters/memcached/native.rb
64
149
  - lib/moneta/adapters/memory.rb
65
150
  - lib/moneta/adapters/mongo.rb
66
- - lib/moneta/adapters/mongo/base.rb
67
- - lib/moneta/adapters/mongo/moped.rb
68
- - lib/moneta/adapters/mongo/official.rb
69
151
  - lib/moneta/adapters/null.rb
70
152
  - lib/moneta/adapters/pstore.rb
71
153
  - lib/moneta/adapters/redis.rb
@@ -73,6 +155,10 @@ files:
73
155
  - lib/moneta/adapters/riak.rb
74
156
  - lib/moneta/adapters/sdbm.rb
75
157
  - lib/moneta/adapters/sequel.rb
158
+ - lib/moneta/adapters/sequel/mysql.rb
159
+ - lib/moneta/adapters/sequel/postgres.rb
160
+ - lib/moneta/adapters/sequel/postgres_hstore.rb
161
+ - lib/moneta/adapters/sequel/sqlite.rb
76
162
  - lib/moneta/adapters/sqlite.rb
77
163
  - lib/moneta/adapters/tdb.rb
78
164
  - lib/moneta/adapters/tokyocabinet.rb
@@ -80,10 +166,20 @@ files:
80
166
  - lib/moneta/adapters/yaml.rb
81
167
  - lib/moneta/builder.rb
82
168
  - lib/moneta/cache.rb
169
+ - lib/moneta/create_support.rb
170
+ - lib/moneta/dbm_adapter.rb
171
+ - lib/moneta/defaults.rb
172
+ - lib/moneta/each_key_support.rb
173
+ - lib/moneta/enumerable.rb
83
174
  - lib/moneta/expires.rb
175
+ - lib/moneta/expires_support.rb
176
+ - lib/moneta/fallback.rb
177
+ - lib/moneta/hash_adapter.rb
178
+ - lib/moneta/increment_support.rb
84
179
  - lib/moneta/lock.rb
85
180
  - lib/moneta/logger.rb
86
- - lib/moneta/mixins.rb
181
+ - lib/moneta/nil_values.rb
182
+ - lib/moneta/option_support.rb
87
183
  - lib/moneta/optionmerger.rb
88
184
  - lib/moneta/pool.rb
89
185
  - lib/moneta/proxy.rb
@@ -108,9 +204,9 @@ files:
108
204
  - moneta.gemspec
109
205
  - script/benchmarks
110
206
  - script/contributors
111
- - script/install-kyotocabinet
112
207
  - script/memusage
113
208
  - script/parallel-tests
209
+ - script/start-couchdb
114
210
  - script/start-hbase
115
211
  - script/start-services
116
212
  - script/travis-logs
@@ -147,11 +243,13 @@ files:
147
243
  - spec/moneta/adapters/activerecord/standard_activerecord_with_expires_spec.rb
148
244
  - spec/moneta/adapters/activesupportcache/adapter_activesupportcache_spec.rb
149
245
  - spec/moneta/adapters/activesupportcache/adapter_activesupportcache_with_default_expires_spec.rb
246
+ - spec/moneta/adapters/activesupportcache/standard_activesupportcache_spec.rb
150
247
  - spec/moneta/adapters/cassandra/adapter_cassandra_spec.rb
151
248
  - spec/moneta/adapters/cassandra/adapter_cassandra_with_default_expires_spec.rb
152
249
  - spec/moneta/adapters/cassandra/helper.rb
153
250
  - spec/moneta/adapters/cassandra/standard_cassandra_spec.rb
154
251
  - spec/moneta/adapters/client/adapter_client_spec.rb
252
+ - spec/moneta/adapters/client/client_helper.rb
155
253
  - spec/moneta/adapters/client/standard_client_tcp_spec.rb
156
254
  - spec/moneta/adapters/client/standard_client_unix_spec.rb
157
255
  - spec/moneta/adapters/cookie/adapter_cookie_spec.rb
@@ -168,6 +266,7 @@ files:
168
266
  - spec/moneta/adapters/dbm/adapter_dbm_spec.rb
169
267
  - spec/moneta/adapters/dbm/standard_dbm_spec.rb
170
268
  - spec/moneta/adapters/dbm/standard_dbm_with_expires_spec.rb
269
+ - spec/moneta/adapters/faraday_helper.rb
171
270
  - spec/moneta/adapters/file/adapter_file_spec.rb
172
271
  - spec/moneta/adapters/file/standard_file_spec.rb
173
272
  - spec/moneta/adapters/file/standard_file_with_expires_spec.rb
@@ -202,11 +301,11 @@ files:
202
301
  - spec/moneta/adapters/memcached/dalli/adapter_memcached_dalli_spec.rb
203
302
  - spec/moneta/adapters/memcached/dalli/adapter_memcached_dalli_with_default_expires_spec.rb
204
303
  - spec/moneta/adapters/memcached/dalli/standard_memcached_dalli_spec.rb
205
- - spec/moneta/adapters/memcached/helper.rb
206
304
  - spec/moneta/adapters/memcached/native/adapter_memcached_native_spec.rb
207
305
  - spec/moneta/adapters/memcached/native/adapter_memcached_native_with_default_expires_spec.rb
208
306
  - spec/moneta/adapters/memcached/native/standard_memcached_native_spec.rb
209
307
  - spec/moneta/adapters/memcached/standard_memcached_spec.rb
308
+ - spec/moneta/adapters/memcached_helper.rb
210
309
  - spec/moneta/adapters/memory/adapter_memory_spec.rb
211
310
  - spec/moneta/adapters/memory/standard_memory_spec.rb
212
311
  - spec/moneta/adapters/memory/standard_memory_with_compress_spec.rb
@@ -216,14 +315,8 @@ files:
216
315
  - spec/moneta/adapters/memory/standard_memory_with_json_value_serializer_spec.rb
217
316
  - spec/moneta/adapters/memory/standard_memory_with_prefix_spec.rb
218
317
  - spec/moneta/adapters/memory/standard_memory_with_snappy_compress_spec.rb
219
- - spec/moneta/adapters/mongo/adapter_mongo_moped_spec.rb
220
- - spec/moneta/adapters/mongo/adapter_mongo_moped_with_default_expires_spec.rb
221
- - spec/moneta/adapters/mongo/adapter_mongo_official_spec.rb
222
- - spec/moneta/adapters/mongo/adapter_mongo_official_with_default_expires_spec.rb
223
318
  - spec/moneta/adapters/mongo/adapter_mongo_spec.rb
224
319
  - spec/moneta/adapters/mongo/adapter_mongo_with_default_expires_spec.rb
225
- - spec/moneta/adapters/mongo/standard_mongo_moped_spec.rb
226
- - spec/moneta/adapters/mongo/standard_mongo_official_spec.rb
227
320
  - spec/moneta/adapters/mongo/standard_mongo_spec.rb
228
321
  - spec/moneta/adapters/null/null_adapter_spec.rb
229
322
  - spec/moneta/adapters/null/standard_null_spec.rb
@@ -234,6 +327,7 @@ files:
234
327
  - spec/moneta/adapters/redis/adapter_redis_with_default_expires_spec.rb
235
328
  - spec/moneta/adapters/redis/standard_redis_spec.rb
236
329
  - spec/moneta/adapters/restclient/adapter_restclient_spec.rb
330
+ - spec/moneta/adapters/restclient/helper.rb
237
331
  - spec/moneta/adapters/restclient/standard_restclient_spec.rb
238
332
  - spec/moneta/adapters/riak/adapter_riak_spec.rb
239
333
  - spec/moneta/adapters/riak/standard_riak_spec.rb
@@ -242,6 +336,7 @@ files:
242
336
  - spec/moneta/adapters/sdbm/standard_sdbm_spec.rb
243
337
  - spec/moneta/adapters/sdbm/standard_sdbm_with_expires_spec.rb
244
338
  - spec/moneta/adapters/sequel/adapter_sequel_spec.rb
339
+ - spec/moneta/adapters/sequel/helper.rb
245
340
  - spec/moneta/adapters/sequel/standard_sequel_spec.rb
246
341
  - spec/moneta/adapters/sequel/standard_sequel_with_expires_spec.rb
247
342
  - spec/moneta/adapters/sqlite/adapter_sqlite_spec.rb
@@ -255,6 +350,7 @@ files:
255
350
  - spec/moneta/adapters/tokyocabinet/standard_tokyocabinet_spec.rb
256
351
  - spec/moneta/adapters/tokyocabinet/standard_tokyocabinet_with_expires_spec.rb
257
352
  - spec/moneta/adapters/tokyotyrant/adapter_tokyotyrant_spec.rb
353
+ - spec/moneta/adapters/tokyotyrant/helper.rb
258
354
  - spec/moneta/adapters/tokyotyrant/standard_tokyotyrant_spec.rb
259
355
  - spec/moneta/adapters/tokyotyrant/standard_tokyotyrant_with_expires_spec.rb
260
356
  - spec/moneta/adapters/yaml/adapter_yaml_spec.rb
@@ -264,9 +360,11 @@ files:
264
360
  - spec/moneta/mutex_spec.rb
265
361
  - spec/moneta/proxies/cache/cache_file_memory_spec.rb
266
362
  - spec/moneta/proxies/cache/cache_memory_null_spec.rb
363
+ - spec/moneta/proxies/enumerable/enumerable_spec.rb
267
364
  - spec/moneta/proxies/expires/expires_file_spec.rb
268
365
  - spec/moneta/proxies/expires/expires_memory_spec.rb
269
366
  - spec/moneta/proxies/expires/expires_memory_with_default_expires_spec.rb
367
+ - spec/moneta/proxies/fallback/fallback_spec.rb
270
368
  - spec/moneta/proxies/lock/lock_spec.rb
271
369
  - spec/moneta/proxies/optionmerger/optionmerger_spec.rb
272
370
  - spec/moneta/proxies/pool/pool_spec.rb
@@ -295,6 +393,7 @@ files:
295
393
  - spec/moneta/proxies/transformer/transformer_marshal_hmac_spec.rb
296
394
  - spec/moneta/proxies/transformer/transformer_marshal_md5_spec.rb
297
395
  - spec/moneta/proxies/transformer/transformer_marshal_md5_spread_spec.rb
396
+ - spec/moneta/proxies/transformer/transformer_marshal_prefix_base64_spec.rb
298
397
  - spec/moneta/proxies/transformer/transformer_marshal_prefix_spec.rb
299
398
  - spec/moneta/proxies/transformer/transformer_marshal_qp_spec.rb
300
399
  - spec/moneta/proxies/transformer/transformer_marshal_rmd160_spec.rb
@@ -322,18 +421,23 @@ files:
322
421
  - spec/moneta/semaphore_spec.rb
323
422
  - spec/moneta/stack_file_memory_spec.rb
324
423
  - spec/moneta/stack_memory_file_spec.rb
325
- - spec/quality_spec.rb
326
424
  - spec/rack/cache_moneta_spec.rb
327
425
  - spec/rack/moneta_cookies_spec.rb
328
426
  - spec/rack/moneta_store_spec.rb
329
427
  - spec/rack/session_moneta_spec.rb
428
+ - spec/restserver.rb
429
+ - spec/support/mongo_helper.rb
330
430
  - test/action_dispatch/fixtures/session_autoload_test/foo.rb
331
431
  - test/action_dispatch/session_moneta_store_test.rb
332
- homepage: http://github.com/moneta-rb/moneta
432
+ homepage: https://github.com/moneta-rb/moneta
333
433
  licenses:
334
434
  - MIT
335
- metadata: {}
336
- post_install_message:
435
+ metadata:
436
+ bug_tracker_uri: https://github.com/moneta-rb/moneta/issues
437
+ changelog_uri: https://github.com/moneta-rb/moneta/blob/v1.4.0/CHANGES
438
+ documentation_uri: https://www.rubydoc.info/gems/moneta/1.4.0
439
+ source_code_uri: https://github.com/moneta-rb/moneta/tree/v1.4.0
440
+ post_install_message:
337
441
  rdoc_options: []
338
442
  require_paths:
339
443
  - lib
@@ -341,15 +445,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
341
445
  requirements:
342
446
  - - ">="
343
447
  - !ruby/object:Gem::Version
344
- version: 2.2.2
448
+ version: 2.3.0
345
449
  required_rubygems_version: !ruby/object:Gem::Requirement
346
450
  requirements:
347
451
  - - ">="
348
452
  - !ruby/object:Gem::Version
349
453
  version: '0'
350
454
  requirements: []
351
- rubygems_version: 3.0.2
352
- signing_key:
455
+ rubygems_version: 3.1.4
456
+ signing_key:
353
457
  specification_version: 4
354
458
  summary: A unified interface to key/value stores, including Redis, Memcached, TokyoCabinet,
355
459
  ActiveRecord and many more
@@ -386,11 +490,13 @@ test_files:
386
490
  - spec/moneta/adapters/activerecord/standard_activerecord_with_expires_spec.rb
387
491
  - spec/moneta/adapters/activesupportcache/adapter_activesupportcache_spec.rb
388
492
  - spec/moneta/adapters/activesupportcache/adapter_activesupportcache_with_default_expires_spec.rb
493
+ - spec/moneta/adapters/activesupportcache/standard_activesupportcache_spec.rb
389
494
  - spec/moneta/adapters/cassandra/adapter_cassandra_spec.rb
390
495
  - spec/moneta/adapters/cassandra/adapter_cassandra_with_default_expires_spec.rb
391
496
  - spec/moneta/adapters/cassandra/helper.rb
392
497
  - spec/moneta/adapters/cassandra/standard_cassandra_spec.rb
393
498
  - spec/moneta/adapters/client/adapter_client_spec.rb
499
+ - spec/moneta/adapters/client/client_helper.rb
394
500
  - spec/moneta/adapters/client/standard_client_tcp_spec.rb
395
501
  - spec/moneta/adapters/client/standard_client_unix_spec.rb
396
502
  - spec/moneta/adapters/cookie/adapter_cookie_spec.rb
@@ -407,6 +513,7 @@ test_files:
407
513
  - spec/moneta/adapters/dbm/adapter_dbm_spec.rb
408
514
  - spec/moneta/adapters/dbm/standard_dbm_spec.rb
409
515
  - spec/moneta/adapters/dbm/standard_dbm_with_expires_spec.rb
516
+ - spec/moneta/adapters/faraday_helper.rb
410
517
  - spec/moneta/adapters/file/adapter_file_spec.rb
411
518
  - spec/moneta/adapters/file/standard_file_spec.rb
412
519
  - spec/moneta/adapters/file/standard_file_with_expires_spec.rb
@@ -441,11 +548,11 @@ test_files:
441
548
  - spec/moneta/adapters/memcached/dalli/adapter_memcached_dalli_spec.rb
442
549
  - spec/moneta/adapters/memcached/dalli/adapter_memcached_dalli_with_default_expires_spec.rb
443
550
  - spec/moneta/adapters/memcached/dalli/standard_memcached_dalli_spec.rb
444
- - spec/moneta/adapters/memcached/helper.rb
445
551
  - spec/moneta/adapters/memcached/native/adapter_memcached_native_spec.rb
446
552
  - spec/moneta/adapters/memcached/native/adapter_memcached_native_with_default_expires_spec.rb
447
553
  - spec/moneta/adapters/memcached/native/standard_memcached_native_spec.rb
448
554
  - spec/moneta/adapters/memcached/standard_memcached_spec.rb
555
+ - spec/moneta/adapters/memcached_helper.rb
449
556
  - spec/moneta/adapters/memory/adapter_memory_spec.rb
450
557
  - spec/moneta/adapters/memory/standard_memory_spec.rb
451
558
  - spec/moneta/adapters/memory/standard_memory_with_compress_spec.rb
@@ -455,14 +562,8 @@ test_files:
455
562
  - spec/moneta/adapters/memory/standard_memory_with_json_value_serializer_spec.rb
456
563
  - spec/moneta/adapters/memory/standard_memory_with_prefix_spec.rb
457
564
  - spec/moneta/adapters/memory/standard_memory_with_snappy_compress_spec.rb
458
- - spec/moneta/adapters/mongo/adapter_mongo_moped_spec.rb
459
- - spec/moneta/adapters/mongo/adapter_mongo_moped_with_default_expires_spec.rb
460
- - spec/moneta/adapters/mongo/adapter_mongo_official_spec.rb
461
- - spec/moneta/adapters/mongo/adapter_mongo_official_with_default_expires_spec.rb
462
565
  - spec/moneta/adapters/mongo/adapter_mongo_spec.rb
463
566
  - spec/moneta/adapters/mongo/adapter_mongo_with_default_expires_spec.rb
464
- - spec/moneta/adapters/mongo/standard_mongo_moped_spec.rb
465
- - spec/moneta/adapters/mongo/standard_mongo_official_spec.rb
466
567
  - spec/moneta/adapters/mongo/standard_mongo_spec.rb
467
568
  - spec/moneta/adapters/null/null_adapter_spec.rb
468
569
  - spec/moneta/adapters/null/standard_null_spec.rb
@@ -473,6 +574,7 @@ test_files:
473
574
  - spec/moneta/adapters/redis/adapter_redis_with_default_expires_spec.rb
474
575
  - spec/moneta/adapters/redis/standard_redis_spec.rb
475
576
  - spec/moneta/adapters/restclient/adapter_restclient_spec.rb
577
+ - spec/moneta/adapters/restclient/helper.rb
476
578
  - spec/moneta/adapters/restclient/standard_restclient_spec.rb
477
579
  - spec/moneta/adapters/riak/adapter_riak_spec.rb
478
580
  - spec/moneta/adapters/riak/standard_riak_spec.rb
@@ -481,6 +583,7 @@ test_files:
481
583
  - spec/moneta/adapters/sdbm/standard_sdbm_spec.rb
482
584
  - spec/moneta/adapters/sdbm/standard_sdbm_with_expires_spec.rb
483
585
  - spec/moneta/adapters/sequel/adapter_sequel_spec.rb
586
+ - spec/moneta/adapters/sequel/helper.rb
484
587
  - spec/moneta/adapters/sequel/standard_sequel_spec.rb
485
588
  - spec/moneta/adapters/sequel/standard_sequel_with_expires_spec.rb
486
589
  - spec/moneta/adapters/sqlite/adapter_sqlite_spec.rb
@@ -494,6 +597,7 @@ test_files:
494
597
  - spec/moneta/adapters/tokyocabinet/standard_tokyocabinet_spec.rb
495
598
  - spec/moneta/adapters/tokyocabinet/standard_tokyocabinet_with_expires_spec.rb
496
599
  - spec/moneta/adapters/tokyotyrant/adapter_tokyotyrant_spec.rb
600
+ - spec/moneta/adapters/tokyotyrant/helper.rb
497
601
  - spec/moneta/adapters/tokyotyrant/standard_tokyotyrant_spec.rb
498
602
  - spec/moneta/adapters/tokyotyrant/standard_tokyotyrant_with_expires_spec.rb
499
603
  - spec/moneta/adapters/yaml/adapter_yaml_spec.rb
@@ -503,9 +607,11 @@ test_files:
503
607
  - spec/moneta/mutex_spec.rb
504
608
  - spec/moneta/proxies/cache/cache_file_memory_spec.rb
505
609
  - spec/moneta/proxies/cache/cache_memory_null_spec.rb
610
+ - spec/moneta/proxies/enumerable/enumerable_spec.rb
506
611
  - spec/moneta/proxies/expires/expires_file_spec.rb
507
612
  - spec/moneta/proxies/expires/expires_memory_spec.rb
508
613
  - spec/moneta/proxies/expires/expires_memory_with_default_expires_spec.rb
614
+ - spec/moneta/proxies/fallback/fallback_spec.rb
509
615
  - spec/moneta/proxies/lock/lock_spec.rb
510
616
  - spec/moneta/proxies/optionmerger/optionmerger_spec.rb
511
617
  - spec/moneta/proxies/pool/pool_spec.rb
@@ -534,6 +640,7 @@ test_files:
534
640
  - spec/moneta/proxies/transformer/transformer_marshal_hmac_spec.rb
535
641
  - spec/moneta/proxies/transformer/transformer_marshal_md5_spec.rb
536
642
  - spec/moneta/proxies/transformer/transformer_marshal_md5_spread_spec.rb
643
+ - spec/moneta/proxies/transformer/transformer_marshal_prefix_base64_spec.rb
537
644
  - spec/moneta/proxies/transformer/transformer_marshal_prefix_spec.rb
538
645
  - spec/moneta/proxies/transformer/transformer_marshal_qp_spec.rb
539
646
  - spec/moneta/proxies/transformer/transformer_marshal_rmd160_spec.rb
@@ -561,10 +668,11 @@ test_files:
561
668
  - spec/moneta/semaphore_spec.rb
562
669
  - spec/moneta/stack_file_memory_spec.rb
563
670
  - spec/moneta/stack_memory_file_spec.rb
564
- - spec/quality_spec.rb
565
671
  - spec/rack/cache_moneta_spec.rb
566
672
  - spec/rack/moneta_cookies_spec.rb
567
673
  - spec/rack/moneta_store_spec.rb
568
674
  - spec/rack/session_moneta_spec.rb
675
+ - spec/restserver.rb
676
+ - spec/support/mongo_helper.rb
569
677
  - test/action_dispatch/fixtures/session_autoload_test/foo.rb
570
678
  - test/action_dispatch/session_moneta_store_test.rb