sequel-rails 1.0.1 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. checksums.yaml +5 -5
  2. data/.github/workflows/ci.yml +121 -0
  3. data/.rubocop.yml +9 -3
  4. data/.rubocop_todo.yml +490 -0
  5. data/Gemfile +0 -1
  6. data/History.md +40 -0
  7. data/README.md +58 -11
  8. data/Rakefile +1 -4
  9. data/ci/{rails-5.0.gemfile → rails-5.2.gemfile} +5 -5
  10. data/ci/{rails-4.0.gemfile → rails-6.0.gemfile} +5 -4
  11. data/ci/{rails-4.1.gemfile → rails-6.1.gemfile} +5 -4
  12. data/ci/{rails-4.2.gemfile → rails-7.0.gemfile} +5 -4
  13. data/lib/action_dispatch/middleware/session/sequel_store.rb +21 -9
  14. data/lib/generators/sequel/migration/migration_generator.rb +1 -1
  15. data/lib/generators/sequel/migration/templates/migration.rb.erb +2 -0
  16. data/lib/generators/sequel/session_migration/session_migration_generator.rb +1 -1
  17. data/lib/sequel_rails/configuration.rb +5 -0
  18. data/lib/sequel_rails/db_config.rb +6 -2
  19. data/lib/sequel_rails/migrations.rb +16 -7
  20. data/lib/sequel_rails/railtie.rb +6 -9
  21. data/lib/sequel_rails/railties/database.rake +17 -0
  22. data/lib/sequel_rails/storage/abstract.rb +2 -0
  23. data/lib/sequel_rails/storage/mysql.rb +1 -0
  24. data/lib/sequel_rails/version.rb +1 -1
  25. data/sequel-rails.gemspec +7 -6
  26. data/spec/helpers/io.rb +5 -0
  27. data/spec/integration/sessions_controller_spec.rb +1 -1
  28. data/spec/internal/config/database.yml +3 -0
  29. data/spec/internal/db/schema.rb.init +2 -2
  30. data/spec/lib/generators/sequel/migration_spec.rb +9 -1
  31. data/spec/lib/generators/sequel/session_migration_spec.rb +1 -1
  32. data/spec/lib/sequel_rails/configuration_spec.rb +109 -10
  33. data/spec/lib/sequel_rails/migrations_spec.rb +27 -4
  34. data/spec/lib/sequel_rails/railtie_spec.rb +7 -3
  35. data/spec/lib/sequel_rails/railties/database_rake_spec.rb +42 -0
  36. data/spec/lib/sequel_rails/storage/mysql_spec.rb +1 -1
  37. data/spec/lib/sequel_rails/storage/postgres_spec.rb +11 -0
  38. data/spec/lib/sequel_rails/storage/sqlite_spec.rb +4 -1
  39. data/spec/spec_helper.rb +1 -1
  40. metadata +46 -41
  41. data/.travis.yml +0 -37
  42. data/ci/rails-5.1.gemfile +0 -28
  43. data/lib/sequel_rails/railties/spring_support.rb +0 -14
  44. data/rubocop-todo.yml +0 -39
@@ -21,7 +21,7 @@ describe Sequel::Generators::MigrationGenerator do
21
21
  it 'refuses to generate migration with invalid filename' do
22
22
  expect do
23
23
  run_generator ['add_something:datetime']
24
- end.to raise_error
24
+ end.to raise_error(Sequel::IllegalMigrationNameError)
25
25
  end
26
26
 
27
27
  context 'when name starts with create' do
@@ -251,5 +251,13 @@ describe Sequel::Generators::MigrationGenerator do
251
251
  }
252
252
  end
253
253
  end
254
+
255
+ context 'when invalid migration name' do
256
+ it 'raises error' do
257
+ expect { run_generator ['invalid:file:name'] }
258
+ .to raise_error(Sequel::IllegalMigrationNameError)
259
+ .with_message("Illegal name for migration file: invalid:file:name (only lower case letters, numbers, and '_' allowed)")
260
+ end
261
+ end
254
262
  end
255
263
  end
@@ -11,7 +11,7 @@ describe Sequel::Generators::SessionMigrationGenerator do
11
11
  it 'refuses to generate migration with invalid filename' do
12
12
  expect do
13
13
  run_generator ['add:sessions']
14
- end.to raise_error
14
+ end.to raise_error(Sequel::IllegalMigrationNameError)
15
15
  end
16
16
 
17
17
  it 'creates a new migration for sessions table' do
@@ -96,24 +96,50 @@ describe SequelRails::Configuration do
96
96
  end
97
97
  end
98
98
 
99
+ describe '#test_connect' do
100
+ it 'defaults to true' do
101
+ expect(subject.test_connect).to be true
102
+ end
103
+
104
+ it 'can be assigned' do
105
+ subject.test_connect = true
106
+ expect(subject.test_connect).to be true
107
+ end
108
+
109
+ it 'can be set from merging another hash' do
110
+ subject.merge!(:test_connect => true)
111
+ expect(subject.test_connect).to be true
112
+ end
113
+ end
114
+
99
115
  describe '#connect' do
116
+ let(:adapter) { ENV['TEST_ADAPTER'] || 'postgres' }
100
117
  let(:environments) do
101
118
  {
102
119
  'development' => {
103
- 'adapter' => 'postgres',
120
+ 'adapter' => adapter,
104
121
  'owner' => (ENV['TEST_OWNER'] || ENV['USER']),
105
- 'username' => (ENV['TEST_OWNER'] || ENV['USER']),
122
+ 'username' => (ENV['TEST_USERNAME'] || ENV['TEST_OWNER'] || ENV['USER']),
106
123
  'database' => 'sequel_rails_test_storage_dev',
107
- 'host' => '127.0.0.1',
124
+ 'password' => ENV['TEST_PASSWORD'],
125
+ 'host' => ENV['TEST_DATABASE_HOST'],
126
+ 'port' => ENV['TEST_DATABASE_PORT'],
108
127
  },
109
128
  'test' => {
110
- 'adapter' => 'postgres',
129
+ 'adapter' => adapter,
111
130
  'owner' => (ENV['TEST_OWNER'] || ENV['USER']),
112
- 'username' => (ENV['TEST_OWNER'] || ENV['USER']),
131
+ 'username' => (ENV['TEST_USERNAME'] || ENV['TEST_OWNER'] || ENV['USER']),
113
132
  'database' => 'sequel_rails_test_storage_test',
114
- 'host' => '127.0.0.1',
133
+ 'password' => ENV['TEST_PASSWORD'],
134
+ 'host' => ENV['TEST_DATABASE_HOST'],
135
+ 'port' => ENV['TEST_DATABASE_PORT'],
136
+ },
137
+ 'remote_pg' => {
138
+ 'adapter' => 'postgres',
139
+ 'host' => '10.0.0.1',
140
+ 'database' => 'sequel_rails_test_storage_dev',
115
141
  },
116
- 'remote' => {
142
+ 'remote_mysql' => {
117
143
  'adapter' => 'mysql',
118
144
  'host' => '10.0.0.1',
119
145
  'database' => 'sequel_rails_test_storage_remote',
@@ -135,6 +161,22 @@ describe SequelRails::Configuration do
135
161
  context 'when stubbing SequelRails.jruby?' do
136
162
  before { allow(SequelRails).to receive(:jruby?).and_return(is_jruby) }
137
163
 
164
+ shared_examples 'test_connect' do
165
+ context 'test_connect' do
166
+ it 'passes the value' do
167
+ expect(::Sequel).to receive(:connect) do |hash_or_url, *_|
168
+ if hash_or_url.is_a? Hash
169
+ expect(hash_or_url[:test]).to eq true
170
+ else
171
+ expect(hash_or_url).to include('test=true')
172
+ end
173
+ end
174
+
175
+ subject.connect environment
176
+ end
177
+ end
178
+ end
179
+
138
180
  shared_examples 'max_connections' do
139
181
  context 'with max_connections=7 config option' do
140
182
  let(:max_connections) { 31_337 }
@@ -172,6 +214,44 @@ describe SequelRails::Configuration do
172
214
  end
173
215
  end
174
216
 
217
+ shared_examples 'servers' do
218
+ context 'servers' do
219
+ let(:servers) { { read_only: { host: 'replica' } } }
220
+
221
+ shared_examples 'passes the value only through options hash' do
222
+ it 'passes the value only through options hash' do
223
+ expect(::Sequel).to receive(:connect) do |hash_or_url, *_|
224
+ if hash_or_url.is_a? Hash
225
+ servers.keys.each do |k|
226
+ expect(hash_or_url[:servers][k]).to eq servers[k]
227
+ end
228
+ else
229
+ puts hash_or_url
230
+ expect(hash_or_url).not_to include('servers=')
231
+ end
232
+ end
233
+ subject.connect environment
234
+ end
235
+ end
236
+
237
+ context 'with servers set in config' do
238
+ before do
239
+ subject.servers = servers
240
+ end
241
+
242
+ include_examples 'passes the value only through options hash'
243
+ end
244
+
245
+ context 'with servers set in environment' do
246
+ before do
247
+ environments[environment]['servers'] = servers
248
+ end
249
+
250
+ include_examples 'passes the value only through options hash'
251
+ end
252
+ end
253
+ end
254
+
175
255
  shared_examples 'with DATABASE_URL in ENV' do
176
256
  let(:database_url) { 'adapter://user:pass@host/db' }
177
257
  def with_database_url_env
@@ -245,11 +325,13 @@ describe SequelRails::Configuration do
245
325
  end
246
326
  end
247
327
 
248
- let(:environment) { 'development' }
328
+ let(:environment) { 'remote_pg' }
249
329
 
250
330
  context 'in C-Ruby' do
331
+ include_examples 'test_connect'
251
332
  include_examples 'max_connections'
252
333
  include_examples 'search_path'
334
+ include_examples 'servers'
253
335
  include_examples 'with DATABASE_URL in ENV'
254
336
 
255
337
  let(:is_jruby) { false }
@@ -263,8 +345,10 @@ describe SequelRails::Configuration do
263
345
  end
264
346
 
265
347
  context 'in JRuby' do
348
+ include_examples 'test_connect'
266
349
  include_examples 'max_connections'
267
350
  include_examples 'search_path'
351
+ include_examples 'servers'
268
352
  include_examples 'with DATABASE_URL in ENV'
269
353
 
270
354
  let(:is_jruby) { true }
@@ -273,7 +357,7 @@ describe SequelRails::Configuration do
273
357
  expect(::Sequel).to receive(:connect) do |url, hash|
274
358
  expect(url).to start_with('jdbc:postgresql://')
275
359
  expect(hash[:adapter]).to eq('jdbc:postgresql')
276
- expect(hash[:host]).to eq('127.0.0.1')
360
+ expect(hash[:host]).to eq('10.0.0.1')
277
361
  end
278
362
  subject.connect environment
279
363
  end
@@ -293,10 +377,12 @@ describe SequelRails::Configuration do
293
377
  end
294
378
 
295
379
  context 'for a mysql connection' do
296
- let(:environment) { 'remote' }
380
+ let(:environment) { 'remote_mysql' }
297
381
 
298
382
  context 'in C-Ruby' do
383
+ include_examples 'test_connect'
299
384
  include_examples 'max_connections'
385
+ include_examples 'servers'
300
386
  include_examples 'with DATABASE_URL in ENV'
301
387
 
302
388
  let(:is_jruby) { false }
@@ -310,7 +396,9 @@ describe SequelRails::Configuration do
310
396
  end
311
397
 
312
398
  context 'in JRuby' do
399
+ include_examples 'test_connect'
313
400
  include_examples 'max_connections'
401
+ include_examples 'servers'
314
402
  include_examples 'with DATABASE_URL in ENV'
315
403
 
316
404
  let(:is_jruby) { true }
@@ -349,5 +437,16 @@ describe SequelRails::Configuration do
349
437
  subject.connect environment
350
438
  end
351
439
  end
440
+
441
+ describe 'after each connection hook' do
442
+ let(:environment) { 'development' }
443
+
444
+ it 'runs hook if provided' do
445
+ called = 0
446
+ subject.after_new_connection = ->(_conn){ called += 1 }
447
+ subject.connect environment
448
+ expect(called).to eq(1)
449
+ end
450
+ end
352
451
  end
353
452
  end
@@ -8,23 +8,46 @@ describe SequelRails::Migrations do
8
8
  describe ".#{migration_method}" do
9
9
  let(:result) { double(:result) }
10
10
  context 'with no version specified' do
11
- let(:opts) { {} }
12
11
  it 'runs migrations using Sequel::Migrator' do
13
12
  expect(::Sequel::Migrator).to receive(:run).with(
14
- db, Rails.root.join('db/migrate'), opts
13
+ db,
14
+ Rails.root.join('db/migrate'),
15
+ { :allow_missing_migration_files => false }
15
16
  ).and_return result
16
17
  expect(described_class.send(migration_method)).to be(result)
17
18
  end
18
19
  end
19
20
  context 'with version specified' do
20
- let(:opts) { { :target => 1 } }
21
21
  it 'runs migrations using Sequel::Migrator' do
22
22
  expect(::Sequel::Migrator).to receive(:run).with(
23
- db, Rails.root.join('db/migrate'), opts
23
+ db,
24
+ Rails.root.join('db/migrate'),
25
+ { :allow_missing_migration_files => false, :target => 1 }
24
26
  ).and_return result
25
27
  expect(described_class.send(migration_method, 1)).to be(result)
26
28
  end
27
29
  end
30
+
31
+ context 'with allow_missing_migration_files' do
32
+ around do |ex|
33
+ option = SequelRails.configuration.allow_missing_migration_files
34
+ SequelRails.configuration.allow_missing_migration_files = true
35
+
36
+ ex.run
37
+
38
+ SequelRails.configuration.allow_missing_migration_files = option
39
+ end
40
+
41
+ it 'runs migrations using Sequel::Migrator' do
42
+ expect(::Sequel::Migrator).to receive(:run).with(
43
+ db,
44
+ Rails.root.join('db/migrate'),
45
+ { :allow_missing_migration_files => true }
46
+ ).and_return result
47
+
48
+ described_class.send(migration_method)
49
+ end
50
+ end
28
51
  end
29
52
  end
30
53
 
@@ -93,8 +93,12 @@ describe SequelRails::Railtie do
93
93
 
94
94
  context 'and DATABASE_URL is defined' do
95
95
  let :database_url do
96
- cfg = Combustion::Application.config.database_configuration['test']
97
- SequelRails::DbConfig.new(cfg).url
96
+ if ENV['TEST_ADAPTER']=~/sqlite/
97
+ 'sqlite:/' # in-memory db
98
+ else
99
+ cfg = Combustion::Application.config.database_configuration['test']
100
+ SequelRails::DbConfig.new(cfg).url
101
+ end
98
102
  end
99
103
 
100
104
  around do |ex|
@@ -123,7 +127,7 @@ describe SequelRails::Railtie do
123
127
  it 'initializing the application fails' do
124
128
  expect do
125
129
  configure_sequel!
126
- end.to raise_error
130
+ end.to raise_error RuntimeError, "Database not configured.\nPlease create config/database.yml or set DATABASE_URL in environment."
127
131
  end
128
132
  end
129
133
  end
@@ -99,4 +99,46 @@ describe 'Database rake tasks', :no_transaction => true do
99
99
  end
100
100
  end
101
101
  end
102
+
103
+ describe 'db:sessions:clear' do
104
+ let(:sessions) { Sequel::Model.db.from(:sessions) }
105
+
106
+ after { sessions.delete }
107
+
108
+ it 'truncates sessions table' do
109
+ sessions.insert session_id: 'foo', data: ''
110
+ sessions.insert session_id: 'bar', data: ''
111
+
112
+ Dir.chdir app_root do
113
+ expect { `rake db:sessions:clear` }.to change { sessions.count }.by(-2)
114
+ end
115
+ end
116
+ end
117
+
118
+ describe 'db:sessions:trim' do
119
+ let(:sessions) { Sequel::Model.db.from(:sessions) }
120
+
121
+ before do
122
+ sessions.insert session_id: 'foo', data: '', updated_at: (Date.today - 60).to_time
123
+ sessions.insert session_id: 'bar', data: '', updated_at: Date.today.to_time
124
+ end
125
+
126
+ after { sessions.delete }
127
+
128
+ it 'delete sessions before cutoff' do
129
+ Dir.chdir app_root do
130
+ expect { `rake db:sessions:trim` }.to change { sessions.count }.by(-1)
131
+ end
132
+ end
133
+
134
+ context 'with threshold' do
135
+ it 'delete sessions before cutoff' do
136
+ sessions.insert session_id: 'baz', data: '', updated_at: (Date.today - 44).to_time
137
+
138
+ Dir.chdir app_root do
139
+ expect { `rake db:sessions:trim[45]` }.to change { sessions.count }.by(-1)
140
+ end
141
+ end
142
+ end
143
+ end
102
144
  end
@@ -46,7 +46,7 @@ describe SequelRails::Storage::Mysql, :mysql do
46
46
  let(:dump_file_name) { 'dump.sql' }
47
47
  it 'uses the mysqldump command' do
48
48
  expect(subject).to receive(:`).with(
49
- "mysqldump --user\\=#{username} --password\\=#{password} --host\\=#{host} --port\\=#{port} --no-data --result-file\\=#{dump_file_name} #{database}"
49
+ "mysqldump --user\\=#{username} --password\\=#{password} --host\\=#{host} --port\\=#{port} --no-data --skip-dump-date --result-file\\=#{dump_file_name} #{database}"
50
50
  )
51
51
  subject._dump dump_file_name
52
52
  end
@@ -83,6 +83,17 @@ describe SequelRails::Storage::Postgres, :postgres do
83
83
  end
84
84
  end
85
85
 
86
+ describe '#drop' do
87
+ before do
88
+ stub_const('Sequel::DATABASES', [])
89
+ end
90
+
91
+ it 'properly executes without active sequel connections' do
92
+ expect(Sequel::Model).not_to receive(:db)
93
+ subject.drop
94
+ end
95
+ end
96
+
86
97
  describe '#_dump' do
87
98
  let(:dump_file_name) { 'dump.sql' }
88
99
  it 'uses the pg_dump command' do
@@ -17,7 +17,10 @@ describe SequelRails::Storage::Sqlite, :sqlite do
17
17
  it 'defer to Sequel' do
18
18
  path = double(:path)
19
19
  allow(subject).to receive(:path).and_return path
20
- expect(::Sequel).to receive(:connect).with('adapter' => 'sqlite3', 'database' => path)
20
+ expect(::Sequel).to receive(:connect).with({
21
+ 'adapter' => 'sqlite3',
22
+ 'database' => path
23
+ })
21
24
  subject._create
22
25
  end
23
26
  end
data/spec/spec_helper.rb CHANGED
@@ -13,7 +13,7 @@ require 'ammeter/init'
13
13
  Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
14
14
 
15
15
  rspec_exclusions = {}
16
- rspec_exclusions[:skip_jdbc] = SequelRails.jruby?
16
+ rspec_exclusions[:skip_jdbc] = !SequelRails.jruby?
17
17
  rspec_exclusions[:postgres] = ENV['TEST_ADAPTER'] != 'postgresql'
18
18
  rspec_exclusions[:mysql] = !%w(mysql mysql2).include?(ENV['TEST_ADAPTER'])
19
19
  rspec_exclusions[:sqlite] = ENV['TEST_ADAPTER'] != 'sqlite3'
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sequel-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brasten Sager (brasten)
8
8
  - Jonathan TRON
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2018-02-27 00:00:00.000000000 Z
12
+ date: 2022-04-15 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activemodel
@@ -77,16 +77,16 @@ dependencies:
77
77
  name: combustion
78
78
  requirement: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ">="
80
+ - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '0'
82
+ version: '1.3'
83
83
  type: :development
84
84
  prerelease: false
85
85
  version_requirements: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ">="
87
+ - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '0'
89
+ version: '1.3'
90
90
  - !ruby/object:Gem::Dependency
91
91
  name: generator_spec
92
92
  requirement: !ruby/object:Gem::Requirement
@@ -107,76 +107,70 @@ dependencies:
107
107
  requirements:
108
108
  - - ">="
109
109
  - !ruby/object:Gem::Version
110
- version: 0.8.7
111
- - - "<"
112
- - !ruby/object:Gem::Version
113
- version: '12.1'
110
+ version: '0'
114
111
  type: :development
115
112
  prerelease: false
116
113
  version_requirements: !ruby/object:Gem::Requirement
117
114
  requirements:
118
115
  - - ">="
119
116
  - !ruby/object:Gem::Version
120
- version: 0.8.7
121
- - - "<"
122
- - !ruby/object:Gem::Version
123
- version: '12.1'
117
+ version: '0'
124
118
  - !ruby/object:Gem::Dependency
125
119
  name: rspec
126
120
  requirement: !ruby/object:Gem::Requirement
127
121
  requirements:
128
- - - "~>"
122
+ - - ">="
129
123
  - !ruby/object:Gem::Version
130
- version: '3.7'
124
+ version: '0'
131
125
  type: :development
132
126
  prerelease: false
133
127
  version_requirements: !ruby/object:Gem::Requirement
134
128
  requirements:
135
- - - "~>"
129
+ - - ">="
136
130
  - !ruby/object:Gem::Version
137
- version: '3.7'
131
+ version: '0'
138
132
  - !ruby/object:Gem::Dependency
139
133
  name: rspec-rails
140
134
  requirement: !ruby/object:Gem::Requirement
141
135
  requirements:
142
- - - "~>"
136
+ - - ">="
143
137
  - !ruby/object:Gem::Version
144
- version: '3.7'
138
+ version: '0'
145
139
  type: :development
146
140
  prerelease: false
147
141
  version_requirements: !ruby/object:Gem::Requirement
148
142
  requirements:
149
- - - "~>"
143
+ - - ">="
150
144
  - !ruby/object:Gem::Version
151
- version: '3.7'
145
+ version: '0'
152
146
  - !ruby/object:Gem::Dependency
153
147
  name: rubocop
154
148
  requirement: !ruby/object:Gem::Requirement
155
149
  requirements:
156
- - - "~>"
150
+ - - '='
157
151
  - !ruby/object:Gem::Version
158
- version: 0.52.0
152
+ version: 1.27.0
159
153
  type: :development
160
154
  prerelease: false
161
155
  version_requirements: !ruby/object:Gem::Requirement
162
156
  requirements:
163
- - - "~>"
157
+ - - '='
164
158
  - !ruby/object:Gem::Version
165
- version: 0.52.0
159
+ version: 1.27.0
166
160
  - !ruby/object:Gem::Dependency
167
161
  name: ammeter
168
162
  requirement: !ruby/object:Gem::Requirement
169
163
  requirements:
170
164
  - - '='
171
165
  - !ruby/object:Gem::Version
172
- version: 1.1.4
166
+ version: 1.1.5
173
167
  type: :development
174
168
  prerelease: false
175
169
  version_requirements: !ruby/object:Gem::Requirement
176
170
  requirements:
177
171
  - - '='
178
172
  - !ruby/object:Gem::Version
179
- version: 1.1.4
173
+ version: 1.1.5
180
174
  - !ruby/object:Gem::Dependency
181
175
  name: test-unit
182
176
  requirement: !ruby/object:Gem::Requirement
@@ -191,6 +185,20 @@ dependencies:
191
185
  - - ">="
192
186
  - !ruby/object:Gem::Version
193
187
  version: '0'
188
+ - !ruby/object:Gem::Dependency
189
+ name: nokogiri
190
+ requirement: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - ">="
193
+ - !ruby/object:Gem::Version
194
+ version: 1.13.4
195
+ type: :development
196
+ prerelease: false
197
+ version_requirements: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - ">="
200
+ - !ruby/object:Gem::Version
201
+ version: 1.13.4
194
202
  description: Integrate Sequel with Rails (3.x and 4.x)
195
203
  email:
196
204
  - brasten@gmail.com
@@ -201,20 +209,20 @@ extra_rdoc_files:
201
209
  - LICENSE
202
210
  - README.md
203
211
  files:
212
+ - ".github/workflows/ci.yml"
204
213
  - ".gitignore"
205
214
  - ".rspec"
206
215
  - ".rubocop.yml"
207
- - ".travis.yml"
216
+ - ".rubocop_todo.yml"
208
217
  - Gemfile
209
218
  - History.md
210
219
  - LICENSE
211
220
  - README.md
212
221
  - Rakefile
213
- - ci/rails-4.0.gemfile
214
- - ci/rails-4.1.gemfile
215
- - ci/rails-4.2.gemfile
216
- - ci/rails-5.0.gemfile
217
- - ci/rails-5.1.gemfile
222
+ - ci/rails-5.2.gemfile
223
+ - ci/rails-6.0.gemfile
224
+ - ci/rails-6.1.gemfile
225
+ - ci/rails-7.0.gemfile
218
226
  - config.ru
219
227
  - lib/action_dispatch/middleware/session/sequel_store.rb
220
228
  - lib/generators/sequel.rb
@@ -238,7 +246,6 @@ files:
238
246
  - lib/sequel_rails/railties/i18n_support.rb
239
247
  - lib/sequel_rails/railties/legacy_model_config.rb
240
248
  - lib/sequel_rails/railties/log_subscriber.rb
241
- - lib/sequel_rails/railties/spring_support.rb
242
249
  - lib/sequel_rails/sequel/database/active_support_notification.rb
243
250
  - lib/sequel_rails/sequel/plugins/rails_extensions.rb
244
251
  - lib/sequel_rails/shellwords.rb
@@ -250,7 +257,6 @@ files:
250
257
  - lib/sequel_rails/storage/postgres.rb
251
258
  - lib/sequel_rails/storage/sqlite.rb
252
259
  - lib/sequel_rails/version.rb
253
- - rubocop-todo.yml
254
260
  - sequel-rails.gemspec
255
261
  - spec/helpers/io.rb
256
262
  - spec/integration/sessions_controller_spec.rb
@@ -282,7 +288,7 @@ homepage: http://talentbox.github.io/sequel-rails/
282
288
  licenses:
283
289
  - MIT
284
290
  metadata: {}
285
- post_install_message:
291
+ post_install_message:
286
292
  rdoc_options:
287
293
  - "--charset=UTF-8"
288
294
  require_paths:
@@ -298,9 +304,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
298
304
  - !ruby/object:Gem::Version
299
305
  version: 1.8.11
300
306
  requirements: []
301
- rubyforge_project:
302
- rubygems_version: 2.6.14
303
- signing_key:
307
+ rubygems_version: 3.3.7
308
+ signing_key:
304
309
  specification_version: 4
305
310
  summary: Use Sequel with Rails (3.x and 4.x)
306
311
  test_files:
data/.travis.yml DELETED
@@ -1,37 +0,0 @@
1
- language: ruby
2
- cache: bundler
3
- sudo: false
4
- rvm:
5
- - 2.2.9
6
- - 2.3.6
7
- - 2.4.3
8
- - 2.5.0
9
- - jruby-9.1.16.0
10
- before_script:
11
- - mysql -e 'create database sequel_rails_test;'
12
- - mysql -e 'create database sequel_rails_test_mysql2;'
13
- - mysql -e 'create database sequel_rails_test_storage_dev;'
14
- - psql -c 'create database sequel_rails_test_storage_dev;' -U postgres
15
- - psql -c 'create database sequel_rails_test;' -U postgres
16
- env:
17
- - SEQUEL='~> 4.0'
18
- - SEQUEL='~> 5.0'
19
- gemfile:
20
- - ci/rails-4.0.gemfile
21
- - ci/rails-4.1.gemfile
22
- - ci/rails-4.2.gemfile
23
- - ci/rails-5.0.gemfile
24
- - ci/rails-5.1.gemfile
25
- matrix:
26
- exclude:
27
- - rvm: 2.4.3
28
- gemfile: ci/rails-4.0.gemfile
29
- - rvm: 2.4.3
30
- gemfile: ci/rails-4.1.gemfile
31
- - rvm: 2.5.0
32
- gemfile: ci/rails-4.0.gemfile
33
- - rvm: 2.5.0
34
- gemfile: ci/rails-4.1.gemfile
35
- notifications:
36
- email:
37
- - jonathan.tron@metrilio.com