moneta 1.4.0 → 1.5.0
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 +4 -4
- data/.github/workflows/ruby.yml +415 -0
- data/CHANGES +18 -0
- data/CONTRIBUTORS +2 -0
- data/Gemfile +144 -56
- data/README.md +21 -17
- data/lib/moneta/adapter.rb +52 -0
- data/lib/moneta/adapters/activerecord.rb +77 -68
- data/lib/moneta/adapters/activesupportcache.rb +22 -31
- data/lib/moneta/adapters/cassandra.rb +114 -116
- data/lib/moneta/adapters/client.rb +17 -18
- data/lib/moneta/adapters/couch.rb +31 -26
- data/lib/moneta/adapters/datamapper.rb +9 -5
- data/lib/moneta/adapters/daybreak.rb +15 -21
- data/lib/moneta/adapters/dbm.rb +6 -12
- data/lib/moneta/adapters/file.rb +21 -13
- data/lib/moneta/adapters/fog.rb +5 -6
- data/lib/moneta/adapters/gdbm.rb +6 -12
- data/lib/moneta/adapters/hbase.rb +10 -12
- data/lib/moneta/adapters/kyotocabinet.rb +22 -27
- data/lib/moneta/adapters/leveldb.rb +14 -20
- data/lib/moneta/adapters/lmdb.rb +19 -22
- data/lib/moneta/adapters/localmemcache.rb +7 -13
- data/lib/moneta/adapters/lruhash.rb +20 -20
- data/lib/moneta/adapters/memcached/dalli.rb +25 -33
- data/lib/moneta/adapters/memcached/native.rb +14 -20
- data/lib/moneta/adapters/memory.rb +5 -7
- data/lib/moneta/adapters/mongo.rb +59 -50
- data/lib/moneta/adapters/pstore.rb +21 -27
- data/lib/moneta/adapters/redis.rb +42 -37
- data/lib/moneta/adapters/restclient.rb +17 -25
- data/lib/moneta/adapters/riak.rb +8 -9
- data/lib/moneta/adapters/sdbm.rb +6 -12
- data/lib/moneta/adapters/sequel/mysql.rb +8 -8
- data/lib/moneta/adapters/sequel/postgres.rb +17 -17
- data/lib/moneta/adapters/sequel/postgres_hstore.rb +47 -47
- data/lib/moneta/adapters/sequel/sqlite.rb +9 -9
- data/lib/moneta/adapters/sequel.rb +56 -65
- data/lib/moneta/adapters/sqlite.rb +37 -35
- data/lib/moneta/adapters/tdb.rb +8 -14
- data/lib/moneta/adapters/tokyocabinet.rb +19 -17
- data/lib/moneta/adapters/tokyotyrant.rb +29 -30
- data/lib/moneta/adapters/yaml.rb +1 -5
- data/lib/moneta/config.rb +101 -0
- data/lib/moneta/expires.rb +0 -1
- data/lib/moneta/expires_support.rb +3 -4
- data/lib/moneta/pool.rb +27 -7
- data/lib/moneta/proxy.rb +29 -0
- data/lib/moneta/server.rb +21 -14
- data/lib/moneta/version.rb +1 -1
- data/lib/moneta/wrapper.rb +5 -0
- data/lib/moneta.rb +2 -0
- data/moneta.gemspec +1 -0
- data/spec/active_support/cache_moneta_store_spec.rb +13 -13
- data/spec/helper.rb +14 -3
- data/spec/moneta/adapters/activerecord/adapter_activerecord_existing_connection_spec.rb +3 -1
- data/spec/moneta/adapters/activerecord/adapter_activerecord_spec.rb +15 -7
- data/spec/moneta/adapters/activerecord/standard_activerecord_spec.rb +5 -2
- data/spec/moneta/adapters/activerecord/standard_activerecord_with_expires_spec.rb +5 -2
- data/spec/moneta/adapters/activesupportcache/adapter_activesupportcache_spec.rb +3 -3
- data/spec/moneta/adapters/activesupportcache/adapter_activesupportcache_with_default_expires_spec.rb +2 -2
- data/spec/moneta/adapters/client/client_helper.rb +4 -3
- data/spec/moneta/adapters/datamapper/adapter_datamapper_spec.rb +25 -8
- data/spec/moneta/adapters/datamapper/standard_datamapper_spec.rb +2 -2
- data/spec/moneta/adapters/datamapper/standard_datamapper_with_expires_spec.rb +2 -2
- data/spec/moneta/adapters/datamapper/standard_datamapper_with_repository_spec.rb +2 -2
- data/spec/moneta/adapters/faraday_helper.rb +3 -2
- data/spec/moneta/adapters/lruhash/adapter_lruhash_spec.rb +10 -6
- data/spec/moneta/adapters/memcached/dalli/adapter_memcached_dalli_spec.rb +13 -3
- data/spec/moneta/adapters/memcached/native/adapter_memcached_native_spec.rb +13 -3
- data/spec/moneta/adapters/mongo/adapter_mongo_spec.rb +17 -3
- data/spec/moneta/adapters/mongo/adapter_mongo_with_default_expires_spec.rb +4 -4
- data/spec/moneta/adapters/mongo/standard_mongo_spec.rb +1 -1
- data/spec/moneta/adapters/redis/adapter_redis_spec.rb +13 -3
- data/spec/moneta/adapters/redis/standard_redis_spec.rb +8 -1
- data/spec/moneta/adapters/sequel/adapter_sequel_spec.rb +4 -4
- data/spec/moneta/adapters/sequel/helper.rb +10 -5
- data/spec/moneta/adapters/sequel/standard_sequel_spec.rb +1 -1
- data/spec/moneta/adapters/sequel/standard_sequel_with_expires_spec.rb +1 -1
- data/spec/moneta/adapters/sqlite/adapter_sqlite_spec.rb +1 -1
- data/spec/moneta/adapters/sqlite/standard_sqlite_spec.rb +1 -1
- data/spec/moneta/adapters/sqlite/standard_sqlite_with_expires_spec.rb +1 -1
- data/spec/moneta/config_spec.rb +219 -0
- data/spec/moneta/proxies/pool/pool_spec.rb +31 -3
- data/spec/moneta/proxies/transformer/transformer_bson_spec.rb +3 -1
- data/spec/moneta/proxies/transformer/transformer_marshal_escape_spec.rb +2 -0
- data/spec/rack/session_moneta_spec.rb +44 -25
- data/spec/restserver.rb +3 -14
- metadata +25 -17
- data/.travis.yml +0 -146
- data/spec/moneta/adapters/memcached/dalli/adapter_memcached_dalli_with_default_expires_spec.rb +0 -15
- data/spec/moneta/adapters/memcached/native/adapter_memcached_native_with_default_expires_spec.rb +0 -15
- data/spec/moneta/adapters/redis/adapter_redis_with_default_expires_spec.rb +0 -10
- data/spec/moneta/proxies/proxy/proxy_redis_spec.rb +0 -13
- data/spec/support/mongo_helper.rb +0 -12
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 67e7a85926fad89dd255f180a3455b67c923d0194d447a8fe82cca0dbb546bbe
|
|
4
|
+
data.tar.gz: 51e15e0e3e1bafd312ee62d807afb72836e4f5c3cc036dc8c1ee0dcb8d51f80a
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: cc4340a0c94ce262108361a3ed49116980cc0ee94838810babe5015bb43d3084875fa3e76f232b182470dda6a5ab9ac7e09fe9917a97082047ec9d0b7112a02a
|
|
7
|
+
data.tar.gz: a0f1c197e3222848e246bf0535805b4dd47bf8dbf9b3a383c619e187cb9b6d64ac6de4f711190630b4befac1e820061fd66a04d83a529a01bee519fbcde4af23
|
|
@@ -0,0 +1,415 @@
|
|
|
1
|
+
name: Ruby CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [ main ]
|
|
6
|
+
pull_request:
|
|
7
|
+
branches: [ main ]
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
adapters:
|
|
11
|
+
runs-on: ubuntu-latest
|
|
12
|
+
|
|
13
|
+
strategy:
|
|
14
|
+
fail-fast: false
|
|
15
|
+
|
|
16
|
+
matrix:
|
|
17
|
+
ruby-version: [2.7, 2.6, 2.5, 2.4, jruby]
|
|
18
|
+
adapter:
|
|
19
|
+
- Client
|
|
20
|
+
- Cookie
|
|
21
|
+
- Daybreak
|
|
22
|
+
#- dbm
|
|
23
|
+
- File
|
|
24
|
+
- Fog
|
|
25
|
+
- GDBM
|
|
26
|
+
- HashFile
|
|
27
|
+
#- HBase
|
|
28
|
+
- KyotoCabinet
|
|
29
|
+
- LevelDB
|
|
30
|
+
- LMDB
|
|
31
|
+
- LocalMemCache
|
|
32
|
+
- LRUHash
|
|
33
|
+
- Memory
|
|
34
|
+
- 'Null'
|
|
35
|
+
- PStore
|
|
36
|
+
- RestClient
|
|
37
|
+
#- riak
|
|
38
|
+
- SDBM
|
|
39
|
+
- TDB
|
|
40
|
+
- TokyoCabinet
|
|
41
|
+
- TokyoTyrant
|
|
42
|
+
- YAML
|
|
43
|
+
|
|
44
|
+
env:
|
|
45
|
+
BUNDLE_WITH: ${{ matrix.adapter }} snappy
|
|
46
|
+
|
|
47
|
+
steps:
|
|
48
|
+
- uses: actions/checkout@v2
|
|
49
|
+
|
|
50
|
+
- name: Apt update
|
|
51
|
+
run: sudo apt-get update
|
|
52
|
+
|
|
53
|
+
- name: Apt install dependencies
|
|
54
|
+
run: sudo apt-get install -y libkyotocabinet-dev libleveldb-dev libtdb-dev libtokyocabinet-dev tokyotyrant libgdbm-dev
|
|
55
|
+
|
|
56
|
+
- name: Set up Ruby ${{ matrix.ruby-version }}
|
|
57
|
+
uses: ruby/setup-ruby@v1
|
|
58
|
+
with:
|
|
59
|
+
ruby-version: ${{ matrix.ruby-version }}
|
|
60
|
+
bundler: latest
|
|
61
|
+
bundler-cache: true
|
|
62
|
+
|
|
63
|
+
- name: Rspec
|
|
64
|
+
run: bundle exec rspec -t ~unstable -t adapter:${{ matrix.adapter }} -- spec/moneta
|
|
65
|
+
|
|
66
|
+
couch:
|
|
67
|
+
name: "Couch adapter"
|
|
68
|
+
runs-on: ubuntu-latest
|
|
69
|
+
|
|
70
|
+
services:
|
|
71
|
+
couch:
|
|
72
|
+
image: couchdb
|
|
73
|
+
env:
|
|
74
|
+
COUCHDB_USER: admin
|
|
75
|
+
COUCHDB_PASSWORD: password
|
|
76
|
+
options: >-
|
|
77
|
+
--health-cmd "curl -s http://127.0.0.1:5984/"
|
|
78
|
+
--health-interval 10s
|
|
79
|
+
--health-timeout 5s
|
|
80
|
+
--health-retries 5
|
|
81
|
+
ports:
|
|
82
|
+
- 5984:5984
|
|
83
|
+
|
|
84
|
+
strategy:
|
|
85
|
+
matrix:
|
|
86
|
+
ruby-version: [2.7, 2.4, jruby]
|
|
87
|
+
|
|
88
|
+
env:
|
|
89
|
+
BUNDLE_WITH: RestClient
|
|
90
|
+
|
|
91
|
+
steps:
|
|
92
|
+
- uses: actions/checkout@v2
|
|
93
|
+
|
|
94
|
+
- name: Set up Ruby ${{ matrix.ruby-version }}
|
|
95
|
+
uses: ruby/setup-ruby@v1
|
|
96
|
+
with:
|
|
97
|
+
ruby-version: ${{ matrix.ruby-version }}
|
|
98
|
+
bundler: latest
|
|
99
|
+
bundler-cache: true
|
|
100
|
+
|
|
101
|
+
- name: Rspec
|
|
102
|
+
run: bundle exec rspec -t adapter:Couch -- spec/moneta
|
|
103
|
+
|
|
104
|
+
cassandra:
|
|
105
|
+
name: "Cassandra adapter"
|
|
106
|
+
runs-on: ubuntu-latest
|
|
107
|
+
|
|
108
|
+
services:
|
|
109
|
+
cassandra:
|
|
110
|
+
image: cassandra
|
|
111
|
+
options: >-
|
|
112
|
+
--health-cmd "cqlsh -e \"SELECT cql_version FROM system.local\""
|
|
113
|
+
--health-interval 10s
|
|
114
|
+
--health-timeout 10s
|
|
115
|
+
--health-retries 10
|
|
116
|
+
ports:
|
|
117
|
+
- 9042:9042
|
|
118
|
+
|
|
119
|
+
strategy:
|
|
120
|
+
matrix:
|
|
121
|
+
ruby-version: [2.7, 2.4, jruby]
|
|
122
|
+
|
|
123
|
+
env:
|
|
124
|
+
BUNDLE_WITH: Cassandra
|
|
125
|
+
|
|
126
|
+
steps:
|
|
127
|
+
- uses: actions/checkout@v2
|
|
128
|
+
|
|
129
|
+
- name: Set up Ruby ${{ matrix.ruby-version }}
|
|
130
|
+
uses: ruby/setup-ruby@v1
|
|
131
|
+
with:
|
|
132
|
+
ruby-version: ${{ matrix.ruby-version }}
|
|
133
|
+
bundler: latest
|
|
134
|
+
bundler-cache: true
|
|
135
|
+
|
|
136
|
+
- name: Rspec
|
|
137
|
+
run: bundle exec rspec -t adapter:Cassandra -- spec/moneta
|
|
138
|
+
|
|
139
|
+
mysql-adapters:
|
|
140
|
+
name: "MySQL adapters"
|
|
141
|
+
runs-on: ubuntu-latest
|
|
142
|
+
|
|
143
|
+
services:
|
|
144
|
+
mysql:
|
|
145
|
+
image: mysql
|
|
146
|
+
env:
|
|
147
|
+
MYSQL_ROOT_PASSWORD: moneta
|
|
148
|
+
options: >-
|
|
149
|
+
--health-cmd "mysqladmin ping -h 127.0.0.1 --silent"
|
|
150
|
+
--health-interval 10s
|
|
151
|
+
--health-timeout 5s
|
|
152
|
+
--health-retries 5
|
|
153
|
+
ports:
|
|
154
|
+
- 3306:3306
|
|
155
|
+
|
|
156
|
+
strategy:
|
|
157
|
+
matrix:
|
|
158
|
+
ruby-version: [2.7, 2.4, jruby]
|
|
159
|
+
|
|
160
|
+
env:
|
|
161
|
+
BUNDLE_WITH: ActiveRecord Sequel DataMapper mysql
|
|
162
|
+
MYSQL_HOST: 127.0.0.1
|
|
163
|
+
MONETA_MYSQL_PASSWORD: moneta
|
|
164
|
+
|
|
165
|
+
steps:
|
|
166
|
+
- uses: actions/checkout@v2
|
|
167
|
+
|
|
168
|
+
- name: Apt update
|
|
169
|
+
run: sudo apt-get update
|
|
170
|
+
|
|
171
|
+
- name: Apt install mysql packages
|
|
172
|
+
run: sudo apt-get install -y libmysqlclient-dev
|
|
173
|
+
|
|
174
|
+
- name: Create Database moneta
|
|
175
|
+
run: mysqladmin -h 127.0.0.1 -u root create moneta
|
|
176
|
+
env:
|
|
177
|
+
MYSQL_PWD: moneta
|
|
178
|
+
|
|
179
|
+
- name: Create Database moneta2
|
|
180
|
+
run: mysqladmin -h 127.0.0.1 -u root create moneta2
|
|
181
|
+
env:
|
|
182
|
+
MYSQL_PWD: moneta
|
|
183
|
+
|
|
184
|
+
- name: Set up Ruby ${{ matrix.ruby-version }}
|
|
185
|
+
uses: ruby/setup-ruby@v1
|
|
186
|
+
with:
|
|
187
|
+
ruby-version: ${{ matrix.ruby-version }}
|
|
188
|
+
bundler: latest
|
|
189
|
+
bundler-cache: true
|
|
190
|
+
|
|
191
|
+
- name: Rspec
|
|
192
|
+
run: bundle exec rspec -t mysql -- spec/moneta
|
|
193
|
+
|
|
194
|
+
postgres-adapters:
|
|
195
|
+
name: "Postgres adapters"
|
|
196
|
+
runs-on: ubuntu-latest
|
|
197
|
+
|
|
198
|
+
services:
|
|
199
|
+
postgres:
|
|
200
|
+
image: postgres:13.6
|
|
201
|
+
env:
|
|
202
|
+
POSTGRES_PASSWORD: moneta
|
|
203
|
+
options: >-
|
|
204
|
+
--health-cmd pg_isready
|
|
205
|
+
--health-interval 10s
|
|
206
|
+
--health-timeout 5s
|
|
207
|
+
--health-retries 5
|
|
208
|
+
ports:
|
|
209
|
+
- 5432:5432
|
|
210
|
+
|
|
211
|
+
strategy:
|
|
212
|
+
matrix:
|
|
213
|
+
ruby-version: [2.7, 2.4, jruby]
|
|
214
|
+
|
|
215
|
+
env:
|
|
216
|
+
BUNDLE_WITH: ActiveRecord Sequel DataMapper postgresql
|
|
217
|
+
PGHOST: localhost
|
|
218
|
+
PGUSER: postgres
|
|
219
|
+
PGPASSWORD: moneta
|
|
220
|
+
|
|
221
|
+
steps:
|
|
222
|
+
- uses: actions/checkout@v2
|
|
223
|
+
|
|
224
|
+
- name: Create Database moneta1
|
|
225
|
+
run: createdb moneta1
|
|
226
|
+
|
|
227
|
+
- name: Create Database moneta2
|
|
228
|
+
run: createdb moneta2
|
|
229
|
+
|
|
230
|
+
- name: Add hstore support to moneta1
|
|
231
|
+
run: psql -c 'create extension hstore;' moneta1
|
|
232
|
+
|
|
233
|
+
- name: Set up Ruby ${{ matrix.ruby-version }}
|
|
234
|
+
uses: ruby/setup-ruby@v1
|
|
235
|
+
with:
|
|
236
|
+
ruby-version: ${{ matrix.ruby-version }}
|
|
237
|
+
bundler: latest
|
|
238
|
+
bundler-cache: true
|
|
239
|
+
|
|
240
|
+
- name: Rspec
|
|
241
|
+
run: bundle exec rspec -t postgres -- spec/moneta
|
|
242
|
+
|
|
243
|
+
sqlite-adapters:
|
|
244
|
+
name: "SQLite adapters"
|
|
245
|
+
runs-on: ubuntu-latest
|
|
246
|
+
|
|
247
|
+
strategy:
|
|
248
|
+
matrix:
|
|
249
|
+
ruby-version: [2.7, 2.4, jruby]
|
|
250
|
+
|
|
251
|
+
env:
|
|
252
|
+
BUNDLE_WITH: ActiveRecord Sequel DataMapper sqlite
|
|
253
|
+
|
|
254
|
+
steps:
|
|
255
|
+
- uses: actions/checkout@v2
|
|
256
|
+
|
|
257
|
+
- name: Set up Ruby ${{ matrix.ruby-version }}
|
|
258
|
+
uses: ruby/setup-ruby@v1
|
|
259
|
+
with:
|
|
260
|
+
ruby-version: ${{ matrix.ruby-version }}
|
|
261
|
+
bundler: latest
|
|
262
|
+
bundler-cache: true
|
|
263
|
+
|
|
264
|
+
- name: Rspec
|
|
265
|
+
run: bundle exec rspec -t sqlite -- spec/moneta
|
|
266
|
+
|
|
267
|
+
redis:
|
|
268
|
+
name: "Redis adapters"
|
|
269
|
+
runs-on: ubuntu-latest
|
|
270
|
+
|
|
271
|
+
services:
|
|
272
|
+
redis:
|
|
273
|
+
image: redis
|
|
274
|
+
options: >-
|
|
275
|
+
--health-cmd "redis-cli ping"
|
|
276
|
+
--health-interval 10s
|
|
277
|
+
--health-timeout 5s
|
|
278
|
+
--health-retries 5
|
|
279
|
+
ports:
|
|
280
|
+
- 6379:6379
|
|
281
|
+
|
|
282
|
+
strategy:
|
|
283
|
+
matrix:
|
|
284
|
+
ruby-version: [2.7, 2.4, jruby]
|
|
285
|
+
|
|
286
|
+
env:
|
|
287
|
+
BUNDLE_WITH: Redis
|
|
288
|
+
|
|
289
|
+
steps:
|
|
290
|
+
- uses: actions/checkout@v2
|
|
291
|
+
|
|
292
|
+
- name: Set up Ruby ${{ matrix.ruby-version }}
|
|
293
|
+
uses: ruby/setup-ruby@v1
|
|
294
|
+
with:
|
|
295
|
+
ruby-version: ${{ matrix.ruby-version }}
|
|
296
|
+
bundler: latest
|
|
297
|
+
bundler-cache: true
|
|
298
|
+
|
|
299
|
+
- name: Rspec
|
|
300
|
+
run: bundle exec rspec -t adapter:Redis -t redis -- spec/moneta
|
|
301
|
+
|
|
302
|
+
memcached:
|
|
303
|
+
name: "Memcached adapters"
|
|
304
|
+
runs-on: ubuntu-latest
|
|
305
|
+
|
|
306
|
+
strategy:
|
|
307
|
+
matrix:
|
|
308
|
+
ruby-version: [2.7, 2.4, jruby]
|
|
309
|
+
|
|
310
|
+
env:
|
|
311
|
+
BUNDLE_WITH: Memcached
|
|
312
|
+
|
|
313
|
+
steps:
|
|
314
|
+
- uses: actions/checkout@v2
|
|
315
|
+
|
|
316
|
+
- name: Apt update
|
|
317
|
+
run: sudo apt-get update
|
|
318
|
+
|
|
319
|
+
- name: Apt install memcached
|
|
320
|
+
run: sudo apt-get install -y memcached libsasl2-dev
|
|
321
|
+
|
|
322
|
+
- name: Set up Ruby ${{ matrix.ruby-version }}
|
|
323
|
+
uses: ruby/setup-ruby@v1
|
|
324
|
+
with:
|
|
325
|
+
ruby-version: ${{ matrix.ruby-version }}
|
|
326
|
+
bundler: latest
|
|
327
|
+
bundler-cache: true
|
|
328
|
+
|
|
329
|
+
- name: Rspec
|
|
330
|
+
run: bundle exec rspec -t ~unstable -t adapter:Memcached -t memcached -- spec/moneta
|
|
331
|
+
|
|
332
|
+
mongo:
|
|
333
|
+
name: "Mongo adapter"
|
|
334
|
+
runs-on: ubuntu-latest
|
|
335
|
+
|
|
336
|
+
services:
|
|
337
|
+
mongo:
|
|
338
|
+
image: mongo
|
|
339
|
+
options: >-
|
|
340
|
+
--health-cmd "mongo --eval db"
|
|
341
|
+
--health-interval 10s
|
|
342
|
+
--health-timeout 5s
|
|
343
|
+
--health-retries 5
|
|
344
|
+
ports:
|
|
345
|
+
- 27017:27017
|
|
346
|
+
|
|
347
|
+
strategy:
|
|
348
|
+
matrix:
|
|
349
|
+
ruby-version: [2.7, 2.4] #, jruby] - FIXME reenable once https://github.com/mongodb/mongo-ruby-driver/pull/2143 is released
|
|
350
|
+
|
|
351
|
+
env:
|
|
352
|
+
BUNDLE_WITH: Mongo
|
|
353
|
+
|
|
354
|
+
steps:
|
|
355
|
+
- uses: actions/checkout@v2
|
|
356
|
+
|
|
357
|
+
- name: Set up Ruby ${{ matrix.ruby-version }}
|
|
358
|
+
uses: ruby/setup-ruby@v1
|
|
359
|
+
with:
|
|
360
|
+
ruby-version: ${{ matrix.ruby-version }}
|
|
361
|
+
bundler: latest
|
|
362
|
+
bundler-cache: true
|
|
363
|
+
|
|
364
|
+
- name: Rspec
|
|
365
|
+
run: bundle exec rspec -t adapter:Mongo -- spec/moneta
|
|
366
|
+
|
|
367
|
+
residual-specs:
|
|
368
|
+
name: "Proxies and other specs"
|
|
369
|
+
runs-on: ubuntu-latest
|
|
370
|
+
|
|
371
|
+
strategy:
|
|
372
|
+
matrix:
|
|
373
|
+
ruby-version: [2.7, 2.4, jruby]
|
|
374
|
+
|
|
375
|
+
env:
|
|
376
|
+
BUNDLE_WITH: transformers GDBM Fog
|
|
377
|
+
|
|
378
|
+
steps:
|
|
379
|
+
- uses: actions/checkout@v2
|
|
380
|
+
|
|
381
|
+
- name: Apt update
|
|
382
|
+
run: sudo apt-get update
|
|
383
|
+
|
|
384
|
+
- name: Apt install dependencies
|
|
385
|
+
run: sudo apt-get install -y libgdbm-dev liblzo2-dev
|
|
386
|
+
|
|
387
|
+
- name: Set up Ruby ${{ matrix.ruby-version }}
|
|
388
|
+
uses: ruby/setup-ruby@v1
|
|
389
|
+
with:
|
|
390
|
+
ruby-version: ${{ matrix.ruby-version }}
|
|
391
|
+
bundler: latest
|
|
392
|
+
bundler-cache: true
|
|
393
|
+
|
|
394
|
+
- name: Rspec
|
|
395
|
+
run: bundle exec rspec -t ~unstable --exclude-pattern "./spec/{moneta/adapters/**/*,active_support/**/*}"
|
|
396
|
+
|
|
397
|
+
- name: Minitest
|
|
398
|
+
run: bundle exec ruby test/action_dispatch/session_moneta_store_test.rb
|
|
399
|
+
|
|
400
|
+
rubocop:
|
|
401
|
+
name: "Rubocop"
|
|
402
|
+
runs-on: ubuntu-latest
|
|
403
|
+
|
|
404
|
+
steps:
|
|
405
|
+
- uses: actions/checkout@v2
|
|
406
|
+
|
|
407
|
+
- name: Set up Ruby
|
|
408
|
+
uses: ruby/setup-ruby@v1
|
|
409
|
+
with:
|
|
410
|
+
ruby-version: 2.7
|
|
411
|
+
bundler: latest
|
|
412
|
+
bundler-cache: true
|
|
413
|
+
|
|
414
|
+
- name: Rubocop
|
|
415
|
+
run: bundle exec rubocop lib
|
data/CHANGES
CHANGED
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
1.5.0
|
|
2
|
+
|
|
3
|
+
* Adapters - internally, most (all?) adapters now inherit from a base Adapter class
|
|
4
|
+
* Adapters - adapter configuration is now accessed via a `config` method on
|
|
5
|
+
each adapter - see the code for examples. This shouldn't affect
|
|
6
|
+
users unless they were directly modifying adapters' attributes.
|
|
7
|
+
* Redis - fix deprecation warnings for Redis 4.6+ multi/pipelined handling (#215)
|
|
8
|
+
* Mongo - slight improvement to error handling
|
|
9
|
+
|
|
10
|
+
1.4.2
|
|
11
|
+
|
|
12
|
+
* Pool - fix busy-loop issue (#197)
|
|
13
|
+
|
|
14
|
+
1.4.1
|
|
15
|
+
|
|
16
|
+
* Adapters::Mongo - deprecate :db option, document :database option (#194)
|
|
17
|
+
* Adapters::Mongo - add retries to increment operation
|
|
18
|
+
|
|
1
19
|
1.4.0
|
|
2
20
|
|
|
3
21
|
* Adapters::Mongo - drop support for moped gem (#182)
|
data/CONTRIBUTORS
CHANGED
|
@@ -3,6 +3,7 @@ Alastair Pharo <me@asph.dev>
|
|
|
3
3
|
Alejandro Crosa <acrosa@sharing.local>
|
|
4
4
|
Alessio Signorini <alessio@signorini.us>
|
|
5
5
|
Anthony Eden <anthonyeden@gmail.com>
|
|
6
|
+
Antonio Terceiro <terceiro@debian.org>
|
|
6
7
|
Atoxhybrid <atoxhybrid@gmail.com>
|
|
7
8
|
AtoxIO <atoxhybrid@gmail.com>
|
|
8
9
|
Ben Schwarz <ben.schwarz@gmail.com>
|
|
@@ -32,6 +33,7 @@ Potapov Sergey <blake131313@gmail.com>
|
|
|
32
33
|
Quin Hoxie <quin@aboutus.org>
|
|
33
34
|
Ryan T. Hosford <tad.hosford@gmail.com>
|
|
34
35
|
Scott Wadden <scott.wadden@gmail.com>
|
|
36
|
+
Sven Riedel <sr@gimp.org>
|
|
35
37
|
Timo Goebel <timo.goebel@dm.de>
|
|
36
38
|
Tom Meier <ozmeier@yahoo.co.uk>
|
|
37
39
|
Tony Han <h.bing612@gmail.com>
|
data/Gemfile
CHANGED
|
@@ -1,86 +1,174 @@
|
|
|
1
1
|
source 'https://rubygems.org'
|
|
2
2
|
gemspec
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
gem '
|
|
7
|
-
|
|
4
|
+
group :transformers, optional: true do
|
|
5
|
+
group :tnet, optional: true do
|
|
6
|
+
gem 'tnetstring'
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
group :bencode, optional: true do
|
|
10
|
+
gem 'bencode'
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
group :ox, optional: true do
|
|
14
|
+
gem 'ox', platforms: :ruby
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
group :bert, optional: true do
|
|
18
|
+
gem 'bert', platforms: :ruby
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
group :php, optional: true do
|
|
22
|
+
gem 'php-serialize'
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
group :bson, optional: true do
|
|
26
|
+
gem 'bson', '>= 4.0.0'
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
group :msgpack, optional: true do
|
|
30
|
+
gem 'msgpack', platforms: :ruby
|
|
31
|
+
gem 'msgpack-jruby', platforms: :jruby
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
# Compressors used by Transformer
|
|
35
|
+
group :bzip2, optional: true do
|
|
36
|
+
gem 'rbzip2', '>= 0.3.0'
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
group :lz4, optional: true do
|
|
40
|
+
gem 'lz4-ruby', platforms: :ruby
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
group :lzma, optional: true do
|
|
44
|
+
gem 'ruby-lzma', platforms: :ruby
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
group :lzo, optional: true do
|
|
48
|
+
gem 'lzoruby', platforms: :ruby
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
group :snappy, optional: true do
|
|
52
|
+
gem 'snappy', platforms: :ruby
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
group :quicklz, optional: true do
|
|
56
|
+
gem 'qlzruby', platforms: :ruby
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
# Hash transformer library
|
|
60
|
+
group :city, optional: true do
|
|
61
|
+
gem 'cityhash', platforms: :ruby
|
|
62
|
+
end
|
|
63
|
+
end
|
|
8
64
|
|
|
9
|
-
#
|
|
10
|
-
|
|
11
|
-
gem '
|
|
12
|
-
|
|
13
|
-
gem 'bert', platforms: :ruby, group: :bert
|
|
14
|
-
gem 'php-serialize', group: :php
|
|
65
|
+
# Backends
|
|
66
|
+
group :Daybreak, optional: true do
|
|
67
|
+
gem 'daybreak'
|
|
68
|
+
end
|
|
15
69
|
|
|
16
|
-
group :
|
|
17
|
-
gem '
|
|
70
|
+
group :ActiveRecord, optional: true do
|
|
71
|
+
gem 'activerecord', '~> 5.2'
|
|
18
72
|
end
|
|
19
73
|
|
|
20
|
-
group :
|
|
21
|
-
gem '
|
|
22
|
-
gem 'msgpack-jruby', platforms: :jruby
|
|
74
|
+
group :Redis, optional: true do
|
|
75
|
+
gem 'redis', '~> 4.2'
|
|
23
76
|
end
|
|
24
77
|
|
|
25
|
-
|
|
26
|
-
gem '
|
|
27
|
-
|
|
28
|
-
gem 'ruby-lzma', platforms: :ruby, group: :lzma
|
|
29
|
-
gem 'lzoruby', platforms: :ruby, group: :lzo
|
|
30
|
-
gem 'snappy', platforms: :ruby, group: :snappy
|
|
31
|
-
gem 'qlzruby', platforms: :ruby, group: :quicklz
|
|
78
|
+
group :Mongo, optional: true do
|
|
79
|
+
gem 'mongo', '>= 2'
|
|
80
|
+
end
|
|
32
81
|
|
|
33
|
-
|
|
34
|
-
gem '
|
|
82
|
+
group :Sequel, optional: true do
|
|
83
|
+
gem 'sequel', '5.52.0'
|
|
84
|
+
end
|
|
35
85
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
gem '
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
gem '
|
|
43
|
-
gem '
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
gem '
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
gem '
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
gem '
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
86
|
+
group :Memcached, optional: true do
|
|
87
|
+
group :MemcachedDalli, optional: true do
|
|
88
|
+
gem 'dalli', '~> 2.7.11'
|
|
89
|
+
end
|
|
90
|
+
|
|
91
|
+
group :MemcachedNative, optional: true do
|
|
92
|
+
gem 'memcached', platforms: :ruby
|
|
93
|
+
gem 'jruby-memcached', platforms: :jruby
|
|
94
|
+
end
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
group :Riak, optional: true do
|
|
98
|
+
gem 'riak-client'
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
group :Cassandra, optional: true do
|
|
102
|
+
gem 'cassandra-driver'
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
group :TokyoTyrant, optional: true do
|
|
106
|
+
gem 'tokyotyrant'
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
group :HBase, optional: true do
|
|
110
|
+
gem 'hbaserb'
|
|
111
|
+
end
|
|
112
|
+
|
|
113
|
+
group :LocalMemCache, optional: true do
|
|
114
|
+
gem 'localmemcache', platforms: :ruby
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
group :TDB, optional: true do
|
|
118
|
+
gem 'tdb', platforms: :ruby
|
|
119
|
+
end
|
|
120
|
+
|
|
121
|
+
group :LevelDB, optional: true do
|
|
122
|
+
gem 'leveldb-ruby', platforms: :ruby
|
|
123
|
+
end
|
|
124
|
+
|
|
125
|
+
group :LMDB, optional: true do
|
|
126
|
+
gem 'lmdb', platforms: :mri
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
group :TokyoCabinet, optional: true do
|
|
130
|
+
gem 'tokyocabinet', platforms: :ruby
|
|
131
|
+
end
|
|
132
|
+
|
|
133
|
+
group :KyotoCabinet, optional: true do
|
|
134
|
+
gem 'kyotocabinet-ruby-reanimated', platforms: [:ruby_23, :ruby_24, :ruby_25, :ruby_26]
|
|
135
|
+
end
|
|
136
|
+
|
|
137
|
+
group :H2, optional: true do
|
|
138
|
+
gem 'activerecord-jdbch2-adapter', platforms: :jruby, github: 'jruby/activerecord-jdbc-adapter', glob: 'activerecord-jdbch2-adapter/*.gemspec', branch: '52-stable'
|
|
139
|
+
end
|
|
140
|
+
|
|
141
|
+
group :GDBM, optional: true do
|
|
142
|
+
gem 'ffi-gdbm', platforms: :jruby
|
|
143
|
+
end
|
|
144
|
+
|
|
145
|
+
group :RestClient do
|
|
146
|
+
gem 'faraday'
|
|
147
|
+
gem 'webrick'
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
group :DataMapper, optional: true do
|
|
63
151
|
gem 'dm-core'
|
|
64
152
|
gem 'dm-migrations'
|
|
65
153
|
gem 'dm-mysql-adapter'
|
|
66
154
|
end
|
|
67
155
|
|
|
68
|
-
group :
|
|
156
|
+
group :Fog, optional: true do
|
|
69
157
|
gem 'fog-aws', '>= 1.11.1'
|
|
70
158
|
gem 'mime-types'
|
|
71
159
|
end
|
|
72
160
|
|
|
73
|
-
group :mysql do
|
|
161
|
+
group :mysql, optional: true do
|
|
74
162
|
gem 'activerecord-jdbcmysql-adapter', platforms: :jruby
|
|
75
163
|
gem 'mysql2', platforms: :ruby
|
|
76
164
|
end
|
|
77
165
|
|
|
78
|
-
group :sqlite do
|
|
166
|
+
group :sqlite, optional: true do
|
|
79
167
|
gem 'activerecord-jdbcsqlite3-adapter', platforms: :jruby
|
|
80
168
|
gem 'sqlite3', '~> 1.3.6', platforms: :ruby
|
|
81
169
|
end
|
|
82
170
|
|
|
83
|
-
group :postgresql do
|
|
171
|
+
group :postgresql, optional: true do
|
|
84
172
|
gem 'activerecord-jdbcpostgresql-adapter', platforms: :jruby
|
|
85
173
|
gem 'pg', platforms: :ruby
|
|
86
174
|
end
|
|
@@ -99,7 +187,7 @@ end
|
|
|
99
187
|
|
|
100
188
|
# Used for generating the feature matrix
|
|
101
189
|
group :doc, optional: true do
|
|
102
|
-
gem 'kramdown', '~>
|
|
190
|
+
gem 'kramdown', '~> 2.3.0'
|
|
103
191
|
gem 'yard', '~> 0.9.20'
|
|
104
192
|
end
|
|
105
193
|
|