sequel 4.6.0 → 4.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (51) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +32 -0
  3. data/doc/association_basics.rdoc +18 -0
  4. data/doc/migration.rdoc +30 -0
  5. data/doc/release_notes/4.7.0.txt +103 -0
  6. data/doc/security.rdoc +5 -0
  7. data/doc/sql.rdoc +21 -12
  8. data/doc/validations.rdoc +10 -2
  9. data/doc/virtual_rows.rdoc +22 -29
  10. data/lib/sequel/adapters/jdbc.rb +4 -1
  11. data/lib/sequel/adapters/jdbc/h2.rb +5 -0
  12. data/lib/sequel/adapters/odbc.rb +0 -1
  13. data/lib/sequel/adapters/postgres.rb +8 -1
  14. data/lib/sequel/adapters/shared/db2.rb +5 -0
  15. data/lib/sequel/adapters/shared/mssql.rb +1 -1
  16. data/lib/sequel/adapters/shared/oracle.rb +5 -0
  17. data/lib/sequel/adapters/shared/postgres.rb +5 -0
  18. data/lib/sequel/adapters/shared/sqlanywhere.rb +1 -1
  19. data/lib/sequel/adapters/shared/sqlite.rb +6 -1
  20. data/lib/sequel/adapters/utils/emulate_offset_with_row_number.rb +1 -1
  21. data/lib/sequel/database/schema_methods.rb +1 -0
  22. data/lib/sequel/database/transactions.rb +11 -26
  23. data/lib/sequel/dataset/actions.rb +3 -3
  24. data/lib/sequel/dataset/features.rb +5 -0
  25. data/lib/sequel/dataset/sql.rb +16 -1
  26. data/lib/sequel/model/associations.rb +22 -7
  27. data/lib/sequel/model/base.rb +2 -2
  28. data/lib/sequel/plugins/auto_validations.rb +5 -1
  29. data/lib/sequel/plugins/instance_hooks.rb +21 -3
  30. data/lib/sequel/plugins/pg_array_associations.rb +21 -5
  31. data/lib/sequel/plugins/update_or_create.rb +60 -0
  32. data/lib/sequel/plugins/validation_helpers.rb +5 -2
  33. data/lib/sequel/sql.rb +55 -9
  34. data/lib/sequel/version.rb +1 -1
  35. data/spec/adapters/postgres_spec.rb +25 -4
  36. data/spec/core/database_spec.rb +1 -1
  37. data/spec/core/dataset_spec.rb +1 -1
  38. data/spec/core/expression_filters_spec.rb +53 -1
  39. data/spec/extensions/auto_validations_spec.rb +18 -0
  40. data/spec/extensions/instance_hooks_spec.rb +14 -0
  41. data/spec/extensions/pg_array_associations_spec.rb +40 -0
  42. data/spec/extensions/to_dot_spec.rb +1 -1
  43. data/spec/extensions/update_or_create_spec.rb +81 -0
  44. data/spec/extensions/validation_helpers_spec.rb +15 -11
  45. data/spec/integration/associations_test.rb +1 -1
  46. data/spec/integration/database_test.rb +8 -0
  47. data/spec/integration/dataset_test.rb +15 -10
  48. data/spec/integration/type_test.rb +4 -0
  49. data/spec/model/associations_spec.rb +20 -0
  50. data/spec/spec_config.rb +1 -1
  51. metadata +364 -360
@@ -124,7 +124,7 @@ END
124
124
  end
125
125
 
126
126
  it "should handle SQL::WindowFunction" do
127
- dot(@ds.select{sum(:over, :partition=>(:a)){}}).should == ["1 -> 2 [label=\"select\"];", "2 [label=\"Array\"];", "2 -> 3 [label=\"0\"];", "3 [label=\"WindowFunction\"];", "3 -> 4 [label=\"function\"];", "4 [label=\"Function: sum\"];", "3 -> 5 [label=\"window\"];", "5 [label=\"Window\"];", "5 -> 6 [label=\"opts\"];", "6 [label=\"Hash\"];", "6 -> 7 [label=\"partition\"];", "7 [label=\":a\"];"]
127
+ dot(@ds.select{sum{}.over(:partition=>:a)}).should == ["1 -> 2 [label=\"select\"];", "2 [label=\"Array\"];", "2 -> 3 [label=\"0\"];", "3 [label=\"WindowFunction\"];", "3 -> 4 [label=\"function\"];", "4 [label=\"Function: sum\"];", "3 -> 5 [label=\"window\"];", "5 [label=\"Window\"];", "5 -> 6 [label=\"opts\"];", "6 [label=\"Hash\"];", "6 -> 7 [label=\"partition\"];", "7 [label=\":a\"];"]
128
128
  end
129
129
 
130
130
  it "should handle SQL::PlaceholderLiteralString" do
@@ -0,0 +1,81 @@
1
+ require File.join(File.dirname(File.expand_path(__FILE__)), "spec_helper")
2
+
3
+ describe "Sequel::Plugins::UpdateOrCreate" do
4
+ before do
5
+ @db = Sequel.mock(:autoid=>proc{1}, :numrows=>1)
6
+ @c = Class.new(Sequel::Model(@db[:test]))
7
+ @c.plugin :update_or_create
8
+ @c.columns :id, :a, :b
9
+ @db.sqls
10
+ end
11
+
12
+ it ".update_or_create should update an existing record if one exists" do
13
+ @db.fetch = [[{:id=>1, :a=>2, :b=>3}]]
14
+ @c.update_or_create(:a=>2){|t| t.b = 4}.should == @c.load(:id=>1, :a=>2, :b=>4)
15
+ @db.sqls.should == ["SELECT * FROM test WHERE (a = 2) LIMIT 1", "UPDATE test SET b = 4 WHERE (id = 1)"]
16
+
17
+ @db.fetch = [[{:id=>1, :a=>2, :b=>3}]]
18
+ @c.update_or_create({:a=>2}, :b=>4).should == @c.load(:id=>1, :a=>2, :b=>4)
19
+ @db.sqls.should == ["SELECT * FROM test WHERE (a = 2) LIMIT 1", "UPDATE test SET b = 4 WHERE (id = 1)"]
20
+
21
+ @db.fetch = [[{:id=>1, :a=>2, :b=>3}]]
22
+ @c.update_or_create({:a=>2}, :a=>3){|t| t.b = 4}.should == @c.load(:id=>1, :a=>3, :b=>4)
23
+ sqls = @db.sqls
24
+ sqls.shift.should == "SELECT * FROM test WHERE (a = 2) LIMIT 1"
25
+ sqls.shift.should =~ /UPDATE test SET [ab] = [34], [ab] = [34] WHERE \(id = 1\)/
26
+ end
27
+
28
+ it ".update_or_create should create a record if an existing record does not exist" do
29
+ @db.fetch = [[], [{:id=>1, :a=>1, :b=>4}]]
30
+ @c.update_or_create(:a=>1){|t| t.b = 4}.should == @c.load(:id=>1, :a=>1, :b=>4)
31
+ sqls = @db.sqls
32
+ sqls.shift.should == "SELECT * FROM test WHERE (a = 1) LIMIT 1"
33
+ sqls.shift.should =~ /INSERT INTO test \([ab], [ab]\) VALUES \([14], [14]\)/
34
+ sqls.shift.should == "SELECT * FROM test WHERE (id = 1) LIMIT 1"
35
+
36
+ @db.fetch = [[], [{:id=>1, :a=>1, :b=>4}]]
37
+ @c.update_or_create({:a=>1}, :b=>4).should == @c.load(:id=>1, :a=>1, :b=>4)
38
+ sqls = @db.sqls
39
+ sqls.shift.should == "SELECT * FROM test WHERE (a = 1) LIMIT 1"
40
+ sqls.shift.should =~ /INSERT INTO test \([ab], [ab]\) VALUES \([14], [14]\)/
41
+ sqls.shift.should == "SELECT * FROM test WHERE (id = 1) LIMIT 1"
42
+
43
+ @db.fetch = [[], [{:id=>1, :a=>3, :b=>4}]]
44
+ @c.update_or_create({:a=>1}, :a=>3){|t| t.b = 4}.should == @c.load(:id=>1, :a=>3, :b=>4)
45
+ sqls = @db.sqls
46
+ sqls.shift.should == "SELECT * FROM test WHERE (a = 1) LIMIT 1"
47
+ sqls.shift.should =~ /INSERT INTO test \([ab], [ab]\) VALUES \([34], [34]\)/
48
+ sqls.shift.should == "SELECT * FROM test WHERE (id = 1) LIMIT 1"
49
+ end
50
+
51
+ it ".find_or_new should return an existing record" do
52
+ @db.fetch = [[{:id=>1, :a=>2, :b=>3}]]
53
+ @c.find_or_new(:a=>2){|t| t.b = 4}.should == @c.load(:id=>1, :a=>2, :b=>4)
54
+ @db.sqls.should == ["SELECT * FROM test WHERE (a = 2) LIMIT 1"]
55
+
56
+ @db.fetch = [[{:id=>1, :a=>2, :b=>3}]]
57
+ @c.find_or_new({:a=>2}, :b=>4).should == @c.load(:id=>1, :a=>2, :b=>4)
58
+ @db.sqls.should == ["SELECT * FROM test WHERE (a = 2) LIMIT 1"]
59
+
60
+ @db.fetch = [[{:id=>1, :a=>2, :b=>3}]]
61
+ @c.find_or_new({:a=>2}, :a=>3){|t| t.b = 4}.should == @c.load(:id=>1, :a=>3, :b=>4)
62
+ @db.sqls.should == ["SELECT * FROM test WHERE (a = 2) LIMIT 1"]
63
+ end
64
+
65
+ it ".find_or_new should return a new record if no record exists" do
66
+ o = @c.find_or_new(:a=>1){|t| t.b = 4}
67
+ o.should == @c.load(:a=>1, :b=>4)
68
+ o.new?.should == true
69
+ @db.sqls.should == ["SELECT * FROM test WHERE (a = 1) LIMIT 1"]
70
+
71
+ o = @c.find_or_new({:a=>1}, :b=>4)
72
+ o.should == @c.load(:a=>1, :b=>4)
73
+ o.new?.should == true
74
+ @db.sqls.should == ["SELECT * FROM test WHERE (a = 1) LIMIT 1"]
75
+
76
+ o = @c.find_or_new({:a=>1}, :a=>3){|t| t.b = 4}
77
+ o.should == @c.load(:a=>3, :b=>4)
78
+ o.new?.should == true
79
+ @db.sqls.should == ["SELECT * FROM test WHERE (a = 1) LIMIT 1"]
80
+ end
81
+ end
@@ -384,11 +384,6 @@ describe "Sequel::Plugins::ValidationHelpers" do
384
384
  @user.should_not be_valid
385
385
  @user.errors.full_messages.should == ['username is already taken']
386
386
 
387
- ds1 = @c.dataset.filter([[:username, '0records']])
388
- ds2 = ds1.exclude(:id=>1)
389
- @c.dataset.should_receive(:where).with([[:username, '0records']]).twice.and_return(ds1)
390
- ds1.should_receive(:exclude).with(:id=>1).once.and_return(ds2)
391
-
392
387
  @user = @c.load(:id=>1, :username => "0records", :password => "anothertest")
393
388
  @user.should be_valid
394
389
  DB.sqls.last.should == "SELECT count(*) AS count FROM items WHERE ((username = '0records') AND (id != 1)) LIMIT 1"
@@ -434,11 +429,6 @@ describe "Sequel::Plugins::ValidationHelpers" do
434
429
  @user.should_not be_valid
435
430
  @user.errors.full_messages.should == ['username and password is already taken']
436
431
 
437
- ds1 = @c.dataset.filter([[:username, '0records'], [:password, 'anothertest']])
438
- ds2 = ds1.exclude(:id=>1)
439
- @c.dataset.should_receive(:where).with([[:username, '0records'], [:password, 'anothertest']]).twice.and_return(ds1)
440
- ds1.should_receive(:exclude).with(:id=>1).once.and_return(ds2)
441
-
442
432
  @user = @c.load(:id=>1, :username => "0records", :password => "anothertest")
443
433
  @user.should be_valid
444
434
  DB.sqls.last.should == "SELECT count(*) AS count FROM items WHERE ((username = '0records') AND (password = 'anothertest') AND (id != 1)) LIMIT 1"
@@ -460,7 +450,7 @@ describe "Sequel::Plugins::ValidationHelpers" do
460
450
  "SELECT count(*) AS count FROM items WHERE ((username = '0records') AND active AND (id != 3)) LIMIT 1"]
461
451
  end
462
452
 
463
- it "should support validates_unique with a custom filter" do
453
+ it "should support validates_unique with :where option" do
464
454
  @c.columns(:id, :username, :password)
465
455
  @c.set_dataset DB[:items]
466
456
  @c.set_validations{validates_unique(:username, :where=>proc{|ds, obj, cols| ds.where(cols.map{|c| [Sequel.function(:lower, c), obj.send(c).downcase]})})}
@@ -473,6 +463,20 @@ describe "Sequel::Plugins::ValidationHelpers" do
473
463
  "SELECT count(*) AS count FROM items WHERE ((lower(username) = '0records') AND (id != 3)) LIMIT 1"]
474
464
  end
475
465
 
466
+ it "should support validates_unique with :dataset option" do
467
+ @c.columns(:id, :username, :password)
468
+ @c.set_dataset DB[:items]
469
+ c = @c
470
+ @c.set_validations{validates_unique(:username, :dataset=>c.where(:a=>[1,2,3]))}
471
+ @c.dataset._fetch = {:v=>0}
472
+
473
+ DB.reset
474
+ @c.new(:username => "0records", :password => "anothertest").should be_valid
475
+ @c.load(:id=>3, :username => "0records", :password => "anothertest").should be_valid
476
+ DB.sqls.should == ["SELECT count(*) AS count FROM items WHERE ((a IN (1, 2, 3)) AND (username = '0records')) LIMIT 1",
477
+ "SELECT count(*) AS count FROM items WHERE ((a IN (1, 2, 3)) AND (username = '0records') AND (id != 3)) LIMIT 1"]
478
+ end
479
+
476
480
  it "should support :only_if_modified option for validates_unique, and not check uniqueness for existing records if values haven't changed" do
477
481
  @c.columns(:id, :username, :password)
478
482
  @c.set_dataset DB[:items]
@@ -1377,7 +1377,7 @@ describe "Sequel::Model Associations with clashing column names" do
1377
1377
  @bar.obj_id.should == 2
1378
1378
 
1379
1379
  @foo.add_bar(b)
1380
- @foo.bars.sort_by{|x| x.obj_id}.should == [@bar, b]
1380
+ @foo.bars.sort_by{|x| x.id}.should == [@bar, b]
1381
1381
  @foo.remove_bar(b)
1382
1382
  @foo.bars.should == [@bar]
1383
1383
  @foo.remove_all_bars
@@ -45,6 +45,14 @@ describe Sequel::Database do
45
45
  proc{@db[:test].update(:a=>'1')}.should raise_error(Sequel::UniqueConstraintViolation)
46
46
  end
47
47
 
48
+ cspecify "should raise Sequel::UniqueConstraintViolation when a unique constraint is violated for composite primary keys", [:jdbc, :sqlite], [:db2] do
49
+ @db.create_table!(:test){String :a; String :b; primary_key [:a, :b]}
50
+ @db[:test].insert(:a=>'1', :b=>'2')
51
+ proc{@db[:test].insert(:a=>'1', :b=>'2')}.should raise_error(Sequel::UniqueConstraintViolation)
52
+ @db[:test].insert(:a=>'3', :b=>'4')
53
+ proc{@db[:test].update(:a=>'1', :b=>'2')}.should raise_error(Sequel::UniqueConstraintViolation)
54
+ end
55
+
48
56
  cspecify "should raise Sequel::CheckConstraintViolation when a check constraint is violated", :mysql, :sqlite, [:db2] do
49
57
  @db.create_table!(:test){String :a; check Sequel.~(:a=>'1')}
50
58
  proc{@db[:test].insert('1')}.should raise_error(Sequel::CheckConstraintViolation)
@@ -302,6 +302,11 @@ describe Sequel::Dataset do
302
302
  @d.count.should == 3
303
303
  end
304
304
 
305
+ specify "should handle functions with identifier names correctly" do
306
+ @d << {:name => 'abc', :value => 6}
307
+ @d.get{sum.function(:value)}.should == 6
308
+ end
309
+
305
310
  specify "should handle aggregate methods on limited datasets correctly" do
306
311
  @d << {:name => 'abc', :value => 6}
307
312
  @d << {:name => 'bcd', :value => 12}
@@ -734,35 +739,35 @@ if DB.dataset.supports_window_functions?
734
739
  end
735
740
 
736
741
  specify "should give correct results for aggregate window functions" do
737
- @ds.select(:id){sum(:over, :args=>amount, :partition=>group_id){}.as(:sum)}.all.should ==
742
+ @ds.select(:id){sum(:amount).over(:partition=>:group_id).as(:sum)}.all.should ==
738
743
  [{:sum=>111, :id=>1}, {:sum=>111, :id=>2}, {:sum=>111, :id=>3}, {:sum=>111000, :id=>4}, {:sum=>111000, :id=>5}, {:sum=>111000, :id=>6}]
739
- @ds.select(:id){sum(:over, :args=>amount){}.as(:sum)}.all.should ==
744
+ @ds.select(:id){sum(:amount).over.as(:sum)}.all.should ==
740
745
  [{:sum=>111111, :id=>1}, {:sum=>111111, :id=>2}, {:sum=>111111, :id=>3}, {:sum=>111111, :id=>4}, {:sum=>111111, :id=>5}, {:sum=>111111, :id=>6}]
741
746
  end
742
747
 
743
748
  specify "should give correct results for ranking window functions with orders" do
744
- @ds.select(:id){rank(:over, :partition=>group_id, :order=>id){}.as(:rank)}.all.should ==
749
+ @ds.select(:id){rank{}.over(:partition=>:group_id, :order=>:id).as(:rank)}.all.should ==
745
750
  [{:rank=>1, :id=>1}, {:rank=>2, :id=>2}, {:rank=>3, :id=>3}, {:rank=>1, :id=>4}, {:rank=>2, :id=>5}, {:rank=>3, :id=>6}]
746
- @ds.select(:id){rank(:over, :order=>id){}.as(:rank)}.all.should ==
751
+ @ds.select(:id){rank{}.over(:order=>id).as(:rank)}.all.should ==
747
752
  [{:rank=>1, :id=>1}, {:rank=>2, :id=>2}, {:rank=>3, :id=>3}, {:rank=>4, :id=>4}, {:rank=>5, :id=>5}, {:rank=>6, :id=>6}]
748
753
  end
749
754
 
750
755
  cspecify "should give correct results for aggregate window functions with orders", :mssql do
751
- @ds.select(:id){sum(:over, :args=>amount, :partition=>group_id, :order=>id){}.as(:sum)}.all.should ==
756
+ @ds.select(:id){sum(:amount).over(:partition=>:group_id, :order=>:id).as(:sum)}.all.should ==
752
757
  [{:sum=>1, :id=>1}, {:sum=>11, :id=>2}, {:sum=>111, :id=>3}, {:sum=>1000, :id=>4}, {:sum=>11000, :id=>5}, {:sum=>111000, :id=>6}]
753
- @ds.select(:id){sum(:over, :args=>amount, :order=>id){}.as(:sum)}.all.should ==
758
+ @ds.select(:id){sum(:amount).over(:order=>:id).as(:sum)}.all.should ==
754
759
  [{:sum=>1, :id=>1}, {:sum=>11, :id=>2}, {:sum=>111, :id=>3}, {:sum=>1111, :id=>4}, {:sum=>11111, :id=>5}, {:sum=>111111, :id=>6}]
755
760
  end
756
761
 
757
762
  cspecify "should give correct results for aggregate window functions with frames", :mssql do
758
- @ds.select(:id){sum(:over, :args=>amount, :partition=>group_id, :order=>id, :frame=>:all){}.as(:sum)}.all.should ==
763
+ @ds.select(:id){sum(:amount).over(:partition=>:group_id, :order=>:id, :frame=>:all).as(:sum)}.all.should ==
759
764
  [{:sum=>111, :id=>1}, {:sum=>111, :id=>2}, {:sum=>111, :id=>3}, {:sum=>111000, :id=>4}, {:sum=>111000, :id=>5}, {:sum=>111000, :id=>6}]
760
- @ds.select(:id){sum(:over, :args=>amount, :order=>id, :frame=>:all){}.as(:sum)}.all.should ==
765
+ @ds.select(:id){sum(:amount).over(:order=>:id, :frame=>:all).as(:sum)}.all.should ==
761
766
  [{:sum=>111111, :id=>1}, {:sum=>111111, :id=>2}, {:sum=>111111, :id=>3}, {:sum=>111111, :id=>4}, {:sum=>111111, :id=>5}, {:sum=>111111, :id=>6}]
762
767
 
763
- @ds.select(:id){sum(:over, :args=>amount, :partition=>group_id, :order=>id, :frame=>:rows){}.as(:sum)}.all.should ==
768
+ @ds.select(:id){sum(:amount).over(:partition=>:group_id, :order=>:id, :frame=>:rows).as(:sum)}.all.should ==
764
769
  [{:sum=>1, :id=>1}, {:sum=>11, :id=>2}, {:sum=>111, :id=>3}, {:sum=>1000, :id=>4}, {:sum=>11000, :id=>5}, {:sum=>111000, :id=>6}]
765
- @ds.select(:id){sum(:over, :args=>amount, :order=>id, :frame=>:rows){}.as(:sum)}.all.should ==
770
+ @ds.select(:id){sum(:amount).over(:order=>:id, :frame=>:rows).as(:sum)}.all.should ==
766
771
  [{:sum=>1, :id=>1}, {:sum=>11, :id=>2}, {:sum=>111, :id=>3}, {:sum=>1111, :id=>4}, {:sum=>11111, :id=>5}, {:sum=>111111, :id=>6}]
767
772
  end
768
773
  end
@@ -6,6 +6,10 @@ describe "Supported types" do
6
6
  DB[:items]
7
7
  end
8
8
 
9
+ after(:all) do
10
+ DB.drop_table?(:items)
11
+ end
12
+
9
13
  specify "should support casting correctly" do
10
14
  ds = create_items_table_with_column(:number, Integer)
11
15
  ds.insert(:number => 1)
@@ -1080,6 +1080,14 @@ describe Sequel::Model, "one_to_one" do
1080
1080
  proc{p.parent = nil}.should raise_error(Sequel::Error)
1081
1081
  end
1082
1082
 
1083
+ it "should not validate the associated object in setter if the :validate=>false option is used" do
1084
+ @c2.one_to_one :parent, :class => @c2, :validate=>false
1085
+ n = @c2.new(:id => 1234)
1086
+ a = @c2.new(:id => 2345)
1087
+ def a.validate() errors.add(:id, 'foo') end
1088
+ (n.parent = a).should == a
1089
+ end
1090
+
1083
1091
  it "should raise an error if a callback is not a proc or symbol" do
1084
1092
  @c2.one_to_one :parent, :class => @c2, :before_set=>Object.new
1085
1093
  proc{@c2.new.parent = @c2.load(:id=>1)}.should raise_error(Sequel::Error)
@@ -1359,6 +1367,18 @@ describe Sequel::Model, "one_to_many" do
1359
1367
  n.remove_attribute(a).should == a
1360
1368
  end
1361
1369
 
1370
+ it "should not raise exception in add_ and remove_ if the :raise_on_save_failure=>false option is used" do
1371
+ @c2.one_to_many :attributes, :class => @c1, :raise_on_save_failure=>false
1372
+ n = @c2.new(:id => 1234)
1373
+ a = @c1.new(:id => 2345)
1374
+ def a.validate() errors.add(:id, 'foo') end
1375
+ n.associations[:attributes] = []
1376
+ n.add_attribute(a).should == nil
1377
+ n.associations[:attributes].should == []
1378
+ n.remove_attribute(a).should == nil
1379
+ n.associations[:attributes].should == []
1380
+ end
1381
+
1362
1382
  it "should raise an error if the model object doesn't have a valid primary key" do
1363
1383
  @c2.one_to_many :attributes, :class => @c1
1364
1384
  a = @c2.new
@@ -1,2 +1,2 @@
1
- ENV['SEQUEL_POSTGRES_URL'] ||= 'postgres:///sequel_test?user=postgres'
1
+ ENV['SEQUEL_POSTGRES_URL'] ||= 'postgres:///sequel_test?user=sequel_test&password=2a9db12d8f993248'
2
2
  ENV['SEQUEL_SQLITE_URL'] ||= 'sqlite:/'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sequel
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.6.0
4
+ version: 4.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeremy Evans
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-01-02 00:00:00.000000000 Z
11
+ date: 2014-02-01 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: The Database Toolkit for Ruby
14
14
  email: code@jeremyevans.net
@@ -123,42 +123,34 @@ extra_rdoc_files:
123
123
  - doc/release_notes/4.4.0.txt
124
124
  - doc/release_notes/4.5.0.txt
125
125
  - doc/release_notes/4.6.0.txt
126
+ - doc/release_notes/4.7.0.txt
126
127
  files:
127
- - MIT-LICENSE
128
128
  - CHANGELOG
129
+ - MIT-LICENSE
129
130
  - README.rdoc
130
131
  - Rakefile
131
132
  - bin/sequel
132
133
  - doc/active_record.rdoc
133
134
  - doc/advanced_associations.rdoc
134
135
  - doc/association_basics.rdoc
136
+ - doc/bin_sequel.rdoc
135
137
  - doc/cheat_sheet.rdoc
138
+ - doc/code_order.rdoc
139
+ - doc/core_extensions.rdoc
136
140
  - doc/dataset_basics.rdoc
137
141
  - doc/dataset_filtering.rdoc
142
+ - doc/extensions.rdoc
143
+ - doc/mass_assignment.rdoc
138
144
  - doc/migration.rdoc
139
145
  - doc/model_hooks.rdoc
146
+ - doc/model_plugins.rdoc
147
+ - doc/mssql_stored_procedures.rdoc
148
+ - doc/object_model.rdoc
140
149
  - doc/opening_databases.rdoc
150
+ - doc/postgresql.rdoc
141
151
  - doc/prepared_statements.rdoc
142
152
  - doc/querying.rdoc
143
153
  - doc/reflection.rdoc
144
- - doc/sharding.rdoc
145
- - doc/sql.rdoc
146
- - doc/validations.rdoc
147
- - doc/virtual_rows.rdoc
148
- - doc/mass_assignment.rdoc
149
- - doc/testing.rdoc
150
- - doc/schema_modification.rdoc
151
- - doc/transactions.rdoc
152
- - doc/thread_safety.rdoc
153
- - doc/object_model.rdoc
154
- - doc/core_extensions.rdoc
155
- - doc/bin_sequel.rdoc
156
- - doc/security.rdoc
157
- - doc/postgresql.rdoc
158
- - doc/code_order.rdoc
159
- - doc/model_plugins.rdoc
160
- - doc/extensions.rdoc
161
- - doc/mssql_stored_procedures.rdoc
162
154
  - doc/release_notes/1.0.txt
163
155
  - doc/release_notes/1.1.txt
164
156
  - doc/release_notes/1.3.txt
@@ -196,17 +188,11 @@ files:
196
188
  - doc/release_notes/3.23.0.txt
197
189
  - doc/release_notes/3.24.0.txt
198
190
  - doc/release_notes/3.25.0.txt
199
- - doc/release_notes/3.3.0.txt
200
- - doc/release_notes/3.4.0.txt
201
- - doc/release_notes/3.5.0.txt
202
- - doc/release_notes/3.6.0.txt
203
- - doc/release_notes/3.7.0.txt
204
- - doc/release_notes/3.8.0.txt
205
- - doc/release_notes/3.9.0.txt
206
191
  - doc/release_notes/3.26.0.txt
207
192
  - doc/release_notes/3.27.0.txt
208
193
  - doc/release_notes/3.28.0.txt
209
194
  - doc/release_notes/3.29.0.txt
195
+ - doc/release_notes/3.3.0.txt
210
196
  - doc/release_notes/3.30.0.txt
211
197
  - doc/release_notes/3.31.0.txt
212
198
  - doc/release_notes/3.32.0.txt
@@ -217,6 +203,7 @@ files:
217
203
  - doc/release_notes/3.37.0.txt
218
204
  - doc/release_notes/3.38.0.txt
219
205
  - doc/release_notes/3.39.0.txt
206
+ - doc/release_notes/3.4.0.txt
220
207
  - doc/release_notes/3.40.0.txt
221
208
  - doc/release_notes/3.41.0.txt
222
209
  - doc/release_notes/3.42.0.txt
@@ -226,6 +213,11 @@ files:
226
213
  - doc/release_notes/3.46.0.txt
227
214
  - doc/release_notes/3.47.0.txt
228
215
  - doc/release_notes/3.48.0.txt
216
+ - doc/release_notes/3.5.0.txt
217
+ - doc/release_notes/3.6.0.txt
218
+ - doc/release_notes/3.7.0.txt
219
+ - doc/release_notes/3.8.0.txt
220
+ - doc/release_notes/3.9.0.txt
229
221
  - doc/release_notes/4.0.0.txt
230
222
  - doc/release_notes/4.1.0.txt
231
223
  - doc/release_notes/4.2.0.txt
@@ -233,462 +225,474 @@ files:
233
225
  - doc/release_notes/4.4.0.txt
234
226
  - doc/release_notes/4.5.0.txt
235
227
  - doc/release_notes/4.6.0.txt
236
- - spec/adapters/firebird_spec.rb
237
- - spec/adapters/informix_spec.rb
238
- - spec/adapters/mssql_spec.rb
239
- - spec/adapters/mysql_spec.rb
240
- - spec/adapters/oracle_spec.rb
241
- - spec/adapters/postgres_spec.rb
242
- - spec/adapters/spec_helper.rb
243
- - spec/adapters/sqlite_spec.rb
244
- - spec/adapters/db2_spec.rb
245
- - spec/adapters/sqlanywhere_spec.rb
246
- - spec/core/connection_pool_spec.rb
247
- - spec/core/dataset_spec.rb
248
- - spec/core/database_spec.rb
249
- - spec/core/expression_filters_spec.rb
250
- - spec/core/schema_spec.rb
251
- - spec/core/object_graph_spec.rb
252
- - spec/core/schema_generator_spec.rb
253
- - spec/core/spec_helper.rb
254
- - spec/core/deprecated_spec.rb
255
- - spec/core/version_spec.rb
256
- - spec/core/mock_adapter_spec.rb
257
- - spec/extensions/active_model_spec.rb
258
- - spec/extensions/association_dependencies_spec.rb
259
- - spec/extensions/boolean_readers_spec.rb
260
- - spec/extensions/caching_spec.rb
261
- - spec/extensions/dirty_spec.rb
262
- - spec/extensions/core_refinements_spec.rb
263
- - spec/extensions/force_encoding_spec.rb
264
- - spec/extensions/hook_class_methods_spec.rb
265
- - spec/extensions/lazy_attributes_spec.rb
266
- - spec/extensions/looser_typecasting_spec.rb
267
- - spec/extensions/instance_hooks_spec.rb
268
- - spec/extensions/migration_spec.rb
269
- - spec/extensions/null_dataset_spec.rb
270
- - spec/extensions/pg_array_ops_spec.rb
271
- - spec/extensions/shared_caching_spec.rb
272
- - spec/extensions/many_through_many_spec.rb
273
- - spec/extensions/named_timezones_spec.rb
274
- - spec/extensions/nested_attributes_spec.rb
275
- - spec/extensions/optimistic_locking_spec.rb
276
- - spec/extensions/pagination_spec.rb
277
- - spec/extensions/pretty_table_spec.rb
278
- - spec/extensions/query_spec.rb
279
- - spec/extensions/schema_dumper_spec.rb
280
- - spec/extensions/schema_spec.rb
281
- - spec/extensions/serialization_spec.rb
282
- - spec/extensions/single_table_inheritance_spec.rb
283
- - spec/extensions/spec_helper.rb
284
- - spec/extensions/sql_expr_spec.rb
285
- - spec/extensions/string_date_time_spec.rb
286
- - spec/extensions/subclasses_spec.rb
287
- - spec/extensions/tactical_eager_loading_spec.rb
288
- - spec/extensions/thread_local_timezones_spec.rb
289
- - spec/extensions/timestamps_spec.rb
290
- - spec/extensions/typecast_on_load_spec.rb
291
- - spec/extensions/validation_helpers_spec.rb
292
- - spec/extensions/string_stripper_spec.rb
293
- - spec/extensions/composition_spec.rb
294
- - spec/extensions/rcte_tree_spec.rb
295
- - spec/extensions/instance_filters_spec.rb
296
- - spec/extensions/sharding_spec.rb
297
- - spec/extensions/skip_create_refresh_spec.rb
298
- - spec/extensions/date_arithmetic_spec.rb
299
- - spec/extensions/update_primary_key_spec.rb
300
- - spec/extensions/association_pks_spec.rb
301
- - spec/extensions/json_serializer_spec.rb
302
- - spec/extensions/eager_each_spec.rb
303
- - spec/extensions/pg_json_spec.rb
304
- - spec/extensions/list_spec.rb
305
- - spec/extensions/tree_spec.rb
306
- - spec/extensions/xml_serializer_spec.rb
307
- - spec/extensions/to_dot_spec.rb
308
- - spec/extensions/class_table_inheritance_spec.rb
309
- - spec/extensions/serialization_modification_detection_spec.rb
310
- - spec/extensions/defaults_setter_spec.rb
311
- - spec/extensions/prepared_statements_spec.rb
312
- - spec/extensions/prepared_statements_safe_spec.rb
313
- - spec/extensions/prepared_statements_with_pk_spec.rb
314
- - spec/extensions/prepared_statements_associations_spec.rb
315
- - spec/extensions/dataset_associations_spec.rb
316
- - spec/extensions/arbitrary_servers_spec.rb
317
- - spec/extensions/touch_spec.rb
318
- - spec/extensions/server_block_spec.rb
319
- - spec/extensions/pg_hstore_ops_spec.rb
320
- - spec/extensions/scissors_spec.rb
321
- - spec/extensions/pg_array_spec.rb
322
- - spec/extensions/static_cache_spec.rb
323
- - spec/extensions/pg_hstore_spec.rb
324
- - spec/extensions/pg_array_associations_spec.rb
325
- - spec/extensions/schema_caching_spec.rb
326
- - spec/extensions/pg_json_ops_spec.rb
327
- - spec/extensions/from_block_spec.rb
328
- - spec/extensions/select_remove_spec.rb
329
- - spec/extensions/pg_loose_count_spec.rb
330
- - spec/extensions/query_literals_spec.rb
331
- - spec/extensions/pg_static_cache_updater_spec.rb
332
- - spec/extensions/pg_inet_spec.rb
333
- - spec/extensions/error_sql_spec.rb
334
- - spec/extensions/eval_inspect_spec.rb
335
- - spec/extensions/pg_range_spec.rb
336
- - spec/extensions/split_array_nil_spec.rb
337
- - spec/extensions/pg_range_ops_spec.rb
338
- - spec/extensions/pg_interval_spec.rb
339
- - spec/extensions/columns_introspection_spec.rb
340
- - spec/extensions/pg_row_ops_spec.rb
341
- - spec/extensions/pg_row_plugin_spec.rb
342
- - spec/extensions/pg_row_spec.rb
343
- - spec/extensions/pg_typecast_on_load_spec.rb
344
- - spec/extensions/constraint_validations_plugin_spec.rb
345
- - spec/extensions/constraint_validations_spec.rb
346
- - spec/extensions/connection_validator_spec.rb
347
- - spec/extensions/validation_class_methods_spec.rb
348
- - spec/extensions/meta_def_spec.rb
349
- - spec/extensions/hash_aliases_spec.rb
350
- - spec/extensions/unlimited_update_spec.rb
351
- - spec/extensions/error_splitter_spec.rb
352
- - spec/extensions/input_transformer_spec.rb
353
- - spec/extensions/filter_having_spec.rb
354
- - spec/extensions/after_initialize_spec.rb
355
- - spec/extensions/set_overrides_spec.rb
356
- - spec/extensions/graph_each_spec.rb
357
- - spec/extensions/blacklist_security_spec.rb
358
- - spec/extensions/sequel_3_dataset_methods_spec.rb
359
- - spec/extensions/empty_array_ignore_nulls_spec.rb
360
- - spec/extensions/auto_validations_spec.rb
361
- - spec/extensions/blank_spec.rb
362
- - spec/extensions/inflector_spec.rb
363
- - spec/extensions/association_proxies_spec.rb
364
- - spec/extensions/table_select_spec.rb
365
- - spec/extensions/mssql_optimistic_locking_spec.rb
366
- - spec/integration/associations_test.rb
367
- - spec/integration/database_test.rb
368
- - spec/integration/dataset_test.rb
369
- - spec/integration/eager_loader_test.rb
370
- - spec/integration/model_test.rb
371
- - spec/integration/plugin_test.rb
372
- - spec/integration/prepared_statement_test.rb
373
- - spec/integration/schema_test.rb
374
- - spec/integration/spec_helper.rb
375
- - spec/integration/timezone_test.rb
376
- - spec/integration/transaction_test.rb
377
- - spec/integration/type_test.rb
378
- - spec/integration/migrator_test.rb
379
- - spec/model/association_reflection_spec.rb
380
- - spec/model/associations_spec.rb
381
- - spec/model/base_spec.rb
382
- - spec/model/dataset_methods_spec.rb
383
- - spec/model/eager_loading_spec.rb
384
- - spec/model/hooks_spec.rb
385
- - spec/model/inflector_spec.rb
386
- - spec/model/model_spec.rb
387
- - spec/model/plugins_spec.rb
388
- - spec/model/record_spec.rb
389
- - spec/model/spec_helper.rb
390
- - spec/model/validations_spec.rb
391
- - spec/model/class_dataset_methods_spec.rb
392
- - spec/spec_config.rb
393
- - spec/files/bad_down_migration/001_create_alt_basic.rb
394
- - spec/files/bad_down_migration/002_create_alt_advanced.rb
395
- - spec/files/bad_timestamped_migrations/1273253849_create_sessions.rb
396
- - spec/files/bad_timestamped_migrations/1273253851_create_nodes.rb
397
- - spec/files/bad_timestamped_migrations/1273253853_3_create_users.rb
398
- - spec/files/bad_up_migration/001_create_alt_basic.rb
399
- - spec/files/bad_up_migration/002_create_alt_advanced.rb
400
- - spec/files/convert_to_timestamp_migrations/001_create_sessions.rb
401
- - spec/files/convert_to_timestamp_migrations/002_create_nodes.rb
402
- - spec/files/convert_to_timestamp_migrations/003_3_create_users.rb
403
- - spec/files/convert_to_timestamp_migrations/1273253850_create_artists.rb
404
- - spec/files/convert_to_timestamp_migrations/1273253852_create_albums.rb
405
- - spec/files/duplicate_integer_migrations/001_create_alt_advanced.rb
406
- - spec/files/duplicate_integer_migrations/001_create_alt_basic.rb
407
- - spec/files/duplicate_timestamped_migrations/1273253849_create_sessions.rb
408
- - spec/files/duplicate_timestamped_migrations/1273253853_create_nodes.rb
409
- - spec/files/duplicate_timestamped_migrations/1273253853_create_users.rb
410
- - spec/files/integer_migrations/001_create_sessions.rb
411
- - spec/files/integer_migrations/002_create_nodes.rb
412
- - spec/files/integer_migrations/003_3_create_users.rb
413
- - spec/files/interleaved_timestamped_migrations/1273253849_create_sessions.rb
414
- - spec/files/interleaved_timestamped_migrations/1273253850_create_artists.rb
415
- - spec/files/interleaved_timestamped_migrations/1273253851_create_nodes.rb
416
- - spec/files/interleaved_timestamped_migrations/1273253852_create_albums.rb
417
- - spec/files/interleaved_timestamped_migrations/1273253853_3_create_users.rb
418
- - spec/files/missing_integer_migrations/001_create_alt_basic.rb
419
- - spec/files/missing_integer_migrations/003_create_alt_advanced.rb
420
- - spec/files/missing_timestamped_migrations/1273253849_create_sessions.rb
421
- - spec/files/missing_timestamped_migrations/1273253853_3_create_users.rb
422
- - spec/files/timestamped_migrations/1273253849_create_sessions.rb
423
- - spec/files/timestamped_migrations/1273253851_create_nodes.rb
424
- - spec/files/timestamped_migrations/1273253853_3_create_users.rb
425
- - spec/files/reversible_migrations/001_reversible.rb
426
- - spec/files/reversible_migrations/002_reversible.rb
427
- - spec/files/reversible_migrations/003_reversible.rb
428
- - spec/files/reversible_migrations/004_reversible.rb
429
- - spec/files/reversible_migrations/005_reversible.rb
430
- - spec/files/transaction_specified_migrations/001_create_alt_basic.rb
431
- - spec/files/transaction_specified_migrations/002_create_basic.rb
432
- - spec/files/transaction_unspecified_migrations/001_create_alt_basic.rb
433
- - spec/files/transaction_unspecified_migrations/002_create_basic.rb
434
- - spec/core_extensions_spec.rb
435
- - spec/sequel_coverage.rb
436
- - spec/bin_spec.rb
437
- - spec/rspec_helper.rb
438
- - spec/files/uppercase_timestamped_migrations/1273253849_CREATE_SESSIONS.RB
439
- - spec/files/uppercase_timestamped_migrations/1273253851_CREATE_NODES.RB
440
- - spec/files/uppercase_timestamped_migrations/1273253853_3_CREATE_USERS.RB
441
- - lib/sequel.rb
442
- - lib/sequel/adapters/ado.rb
443
- - lib/sequel/adapters/ado/mssql.rb
444
- - lib/sequel/adapters/ado/access.rb
445
- - lib/sequel/adapters/amalgalite.rb
446
- - lib/sequel/adapters/db2.rb
447
- - lib/sequel/adapters/dbi.rb
448
- - lib/sequel/adapters/do.rb
228
+ - doc/release_notes/4.7.0.txt
229
+ - doc/schema_modification.rdoc
230
+ - doc/security.rdoc
231
+ - doc/sharding.rdoc
232
+ - doc/sql.rdoc
233
+ - doc/testing.rdoc
234
+ - doc/thread_safety.rdoc
235
+ - doc/transactions.rdoc
236
+ - doc/validations.rdoc
237
+ - doc/virtual_rows.rdoc
238
+ - lib/sequel.rb
239
+ - lib/sequel/adapters/ado.rb
240
+ - lib/sequel/adapters/ado/access.rb
241
+ - lib/sequel/adapters/ado/mssql.rb
242
+ - lib/sequel/adapters/amalgalite.rb
243
+ - lib/sequel/adapters/cubrid.rb
244
+ - lib/sequel/adapters/db2.rb
245
+ - lib/sequel/adapters/dbi.rb
246
+ - lib/sequel/adapters/do.rb
449
247
  - lib/sequel/adapters/do/mysql.rb
450
248
  - lib/sequel/adapters/do/postgres.rb
451
249
  - lib/sequel/adapters/do/sqlite.rb
452
250
  - lib/sequel/adapters/firebird.rb
251
+ - lib/sequel/adapters/ibmdb.rb
453
252
  - lib/sequel/adapters/informix.rb
454
253
  - lib/sequel/adapters/jdbc.rb
254
+ - lib/sequel/adapters/jdbc/as400.rb
255
+ - lib/sequel/adapters/jdbc/cubrid.rb
256
+ - lib/sequel/adapters/jdbc/db2.rb
257
+ - lib/sequel/adapters/jdbc/derby.rb
258
+ - lib/sequel/adapters/jdbc/firebird.rb
455
259
  - lib/sequel/adapters/jdbc/h2.rb
260
+ - lib/sequel/adapters/jdbc/hsqldb.rb
261
+ - lib/sequel/adapters/jdbc/informix.rb
262
+ - lib/sequel/adapters/jdbc/jtds.rb
456
263
  - lib/sequel/adapters/jdbc/mssql.rb
457
264
  - lib/sequel/adapters/jdbc/mysql.rb
458
265
  - lib/sequel/adapters/jdbc/oracle.rb
459
266
  - lib/sequel/adapters/jdbc/postgresql.rb
267
+ - lib/sequel/adapters/jdbc/progress.rb
268
+ - lib/sequel/adapters/jdbc/sqlanywhere.rb
460
269
  - lib/sequel/adapters/jdbc/sqlite.rb
461
- - lib/sequel/adapters/jdbc/as400.rb
462
- - lib/sequel/adapters/jdbc/informix.rb
463
- - lib/sequel/adapters/jdbc/jtds.rb
464
270
  - lib/sequel/adapters/jdbc/sqlserver.rb
465
- - lib/sequel/adapters/jdbc/db2.rb
466
271
  - lib/sequel/adapters/jdbc/transactions.rb
467
- - lib/sequel/adapters/jdbc/firebird.rb
468
- - lib/sequel/adapters/jdbc/hsqldb.rb
469
- - lib/sequel/adapters/jdbc/derby.rb
470
- - lib/sequel/adapters/jdbc/progress.rb
471
- - lib/sequel/adapters/jdbc/cubrid.rb
472
- - lib/sequel/adapters/jdbc/sqlanywhere.rb
272
+ - lib/sequel/adapters/mock.rb
473
273
  - lib/sequel/adapters/mysql.rb
274
+ - lib/sequel/adapters/mysql2.rb
474
275
  - lib/sequel/adapters/odbc.rb
475
276
  - lib/sequel/adapters/odbc/mssql.rb
476
277
  - lib/sequel/adapters/openbase.rb
477
278
  - lib/sequel/adapters/oracle.rb
478
279
  - lib/sequel/adapters/postgres.rb
280
+ - lib/sequel/adapters/shared/access.rb
281
+ - lib/sequel/adapters/shared/cubrid.rb
282
+ - lib/sequel/adapters/shared/db2.rb
283
+ - lib/sequel/adapters/shared/firebird.rb
284
+ - lib/sequel/adapters/shared/informix.rb
479
285
  - lib/sequel/adapters/shared/mssql.rb
480
286
  - lib/sequel/adapters/shared/mysql.rb
287
+ - lib/sequel/adapters/shared/mysql_prepared_statements.rb
481
288
  - lib/sequel/adapters/shared/oracle.rb
482
289
  - lib/sequel/adapters/shared/postgres.rb
483
290
  - lib/sequel/adapters/shared/progress.rb
484
- - lib/sequel/adapters/shared/sqlite.rb
485
- - lib/sequel/adapters/shared/access.rb
486
- - lib/sequel/adapters/shared/informix.rb
487
- - lib/sequel/adapters/shared/mysql_prepared_statements.rb
488
- - lib/sequel/adapters/shared/db2.rb
489
- - lib/sequel/adapters/shared/firebird.rb
490
- - lib/sequel/adapters/shared/cubrid.rb
491
291
  - lib/sequel/adapters/shared/sqlanywhere.rb
292
+ - lib/sequel/adapters/shared/sqlite.rb
293
+ - lib/sequel/adapters/sqlanywhere.rb
492
294
  - lib/sequel/adapters/sqlite.rb
493
- - lib/sequel/adapters/utils/stored_procedures.rb
494
- - lib/sequel/adapters/utils/emulate_offset_with_row_number.rb
495
- - lib/sequel/adapters/utils/pg_types.rb
496
- - lib/sequel/adapters/utils/split_alter_table.rb
497
- - lib/sequel/adapters/utils/emulate_offset_with_reverse_and_count.rb
498
- - lib/sequel/adapters/utils/replace.rb
499
- - lib/sequel/adapters/mysql2.rb
500
295
  - lib/sequel/adapters/swift.rb
501
296
  - lib/sequel/adapters/swift/mysql.rb
502
297
  - lib/sequel/adapters/swift/postgres.rb
503
298
  - lib/sequel/adapters/swift/sqlite.rb
504
299
  - lib/sequel/adapters/tinytds.rb
505
- - lib/sequel/adapters/ibmdb.rb
506
- - lib/sequel/adapters/mock.rb
507
- - lib/sequel/adapters/cubrid.rb
508
- - lib/sequel/adapters/sqlanywhere.rb
300
+ - lib/sequel/adapters/utils/emulate_offset_with_reverse_and_count.rb
301
+ - lib/sequel/adapters/utils/emulate_offset_with_row_number.rb
302
+ - lib/sequel/adapters/utils/pg_types.rb
303
+ - lib/sequel/adapters/utils/replace.rb
304
+ - lib/sequel/adapters/utils/split_alter_table.rb
305
+ - lib/sequel/adapters/utils/stored_procedures.rb
306
+ - lib/sequel/ast_transformer.rb
509
307
  - lib/sequel/connection_pool.rb
510
308
  - lib/sequel/connection_pool/sharded_single.rb
511
309
  - lib/sequel/connection_pool/sharded_threaded.rb
512
310
  - lib/sequel/connection_pool/single.rb
513
311
  - lib/sequel/connection_pool/threaded.rb
514
312
  - lib/sequel/core.rb
515
- - lib/sequel/sql.rb
516
313
  - lib/sequel/database.rb
517
- - lib/sequel/database/schema_generator.rb
518
- - lib/sequel/database/schema_methods.rb
519
314
  - lib/sequel/database/connecting.rb
520
315
  - lib/sequel/database/dataset.rb
521
316
  - lib/sequel/database/dataset_defaults.rb
317
+ - lib/sequel/database/features.rb
522
318
  - lib/sequel/database/logging.rb
523
319
  - lib/sequel/database/misc.rb
524
320
  - lib/sequel/database/query.rb
525
- - lib/sequel/database/features.rb
321
+ - lib/sequel/database/schema_generator.rb
322
+ - lib/sequel/database/schema_methods.rb
526
323
  - lib/sequel/database/transactions.rb
527
324
  - lib/sequel/dataset.rb
528
325
  - lib/sequel/dataset/actions.rb
529
326
  - lib/sequel/dataset/features.rb
530
327
  - lib/sequel/dataset/graph.rb
531
328
  - lib/sequel/dataset/misc.rb
329
+ - lib/sequel/dataset/mutation.rb
532
330
  - lib/sequel/dataset/prepared_statements.rb
533
331
  - lib/sequel/dataset/query.rb
534
332
  - lib/sequel/dataset/sql.rb
535
- - lib/sequel/dataset/mutation.rb
333
+ - lib/sequel/deprecated.rb
536
334
  - lib/sequel/exceptions.rb
335
+ - lib/sequel/extensions/_pretty_table.rb
336
+ - lib/sequel/extensions/arbitrary_servers.rb
537
337
  - lib/sequel/extensions/blank.rb
338
+ - lib/sequel/extensions/columns_introspection.rb
339
+ - lib/sequel/extensions/connection_validator.rb
340
+ - lib/sequel/extensions/constraint_validations.rb
341
+ - lib/sequel/extensions/core_extensions.rb
342
+ - lib/sequel/extensions/core_refinements.rb
343
+ - lib/sequel/extensions/date_arithmetic.rb
344
+ - lib/sequel/extensions/empty_array_ignore_nulls.rb
345
+ - lib/sequel/extensions/error_sql.rb
346
+ - lib/sequel/extensions/eval_inspect.rb
347
+ - lib/sequel/extensions/filter_having.rb
348
+ - lib/sequel/extensions/from_block.rb
349
+ - lib/sequel/extensions/graph_each.rb
350
+ - lib/sequel/extensions/hash_aliases.rb
538
351
  - lib/sequel/extensions/inflector.rb
539
352
  - lib/sequel/extensions/looser_typecasting.rb
353
+ - lib/sequel/extensions/meta_def.rb
540
354
  - lib/sequel/extensions/migration.rb
355
+ - lib/sequel/extensions/mssql_emulate_lateral_with_apply.rb
541
356
  - lib/sequel/extensions/named_timezones.rb
357
+ - lib/sequel/extensions/null_dataset.rb
542
358
  - lib/sequel/extensions/pagination.rb
543
- - lib/sequel/extensions/pretty_table.rb
544
- - lib/sequel/extensions/query.rb
545
- - lib/sequel/extensions/schema_dumper.rb
546
- - lib/sequel/extensions/sql_expr.rb
547
- - lib/sequel/extensions/string_date_time.rb
548
- - lib/sequel/extensions/thread_local_timezones.rb
549
- - lib/sequel/extensions/to_dot.rb
550
- - lib/sequel/extensions/arbitrary_servers.rb
551
- - lib/sequel/extensions/server_block.rb
552
- - lib/sequel/extensions/columns_introspection.rb
553
- - lib/sequel/extensions/core_extensions.rb
554
359
  - lib/sequel/extensions/pg_array.rb
555
- - lib/sequel/extensions/pg_json.rb
556
360
  - lib/sequel/extensions/pg_array_ops.rb
557
361
  - lib/sequel/extensions/pg_hstore.rb
558
362
  - lib/sequel/extensions/pg_hstore_ops.rb
559
- - lib/sequel/extensions/schema_caching.rb
560
- - lib/sequel/extensions/null_dataset.rb
561
- - lib/sequel/extensions/_pretty_table.rb
562
- - lib/sequel/extensions/constraint_validations.rb
563
- - lib/sequel/extensions/select_remove.rb
564
- - lib/sequel/extensions/date_arithmetic.rb
565
- - lib/sequel/extensions/query_literals.rb
566
363
  - lib/sequel/extensions/pg_inet.rb
567
- - lib/sequel/extensions/eval_inspect.rb
364
+ - lib/sequel/extensions/pg_interval.rb
365
+ - lib/sequel/extensions/pg_json.rb
366
+ - lib/sequel/extensions/pg_json_ops.rb
367
+ - lib/sequel/extensions/pg_loose_count.rb
568
368
  - lib/sequel/extensions/pg_range.rb
569
- - lib/sequel/extensions/split_array_nil.rb
570
369
  - lib/sequel/extensions/pg_range_ops.rb
571
- - lib/sequel/extensions/pg_interval.rb
572
370
  - lib/sequel/extensions/pg_row.rb
573
371
  - lib/sequel/extensions/pg_row_ops.rb
574
- - lib/sequel/extensions/graph_each.rb
575
- - lib/sequel/extensions/connection_validator.rb
576
- - lib/sequel/extensions/set_overrides.rb
577
- - lib/sequel/extensions/core_refinements.rb
578
- - lib/sequel/extensions/meta_def.rb
579
- - lib/sequel/extensions/filter_having.rb
580
- - lib/sequel/extensions/hash_aliases.rb
372
+ - lib/sequel/extensions/pg_static_cache_updater.rb
373
+ - lib/sequel/extensions/pretty_table.rb
374
+ - lib/sequel/extensions/query.rb
375
+ - lib/sequel/extensions/query_literals.rb
581
376
  - lib/sequel/extensions/ruby18_symbol_extensions.rb
377
+ - lib/sequel/extensions/schema_caching.rb
378
+ - lib/sequel/extensions/schema_dumper.rb
379
+ - lib/sequel/extensions/select_remove.rb
582
380
  - lib/sequel/extensions/sequel_3_dataset_methods.rb
583
- - lib/sequel/extensions/pg_json_ops.rb
584
- - lib/sequel/extensions/empty_array_ignore_nulls.rb
585
- - lib/sequel/extensions/from_block.rb
586
- - lib/sequel/extensions/mssql_emulate_lateral_with_apply.rb
587
- - lib/sequel/extensions/pg_loose_count.rb
588
- - lib/sequel/extensions/pg_static_cache_updater.rb
589
- - lib/sequel/extensions/error_sql.rb
590
- - lib/sequel/version.rb
381
+ - lib/sequel/extensions/server_block.rb
382
+ - lib/sequel/extensions/set_overrides.rb
383
+ - lib/sequel/extensions/split_array_nil.rb
384
+ - lib/sequel/extensions/sql_expr.rb
385
+ - lib/sequel/extensions/string_date_time.rb
386
+ - lib/sequel/extensions/thread_local_timezones.rb
387
+ - lib/sequel/extensions/to_dot.rb
591
388
  - lib/sequel/model.rb
592
389
  - lib/sequel/model/associations.rb
593
390
  - lib/sequel/model/base.rb
391
+ - lib/sequel/model/dataset_module.rb
594
392
  - lib/sequel/model/default_inflections.rb
595
393
  - lib/sequel/model/errors.rb
596
394
  - lib/sequel/model/exceptions.rb
597
395
  - lib/sequel/model/inflections.rb
598
396
  - lib/sequel/model/plugins.rb
599
- - lib/sequel/model/dataset_module.rb
397
+ - lib/sequel/no_core_ext.rb
600
398
  - lib/sequel/plugins/active_model.rb
399
+ - lib/sequel/plugins/after_initialize.rb
400
+ - lib/sequel/plugins/association_autoreloading.rb
601
401
  - lib/sequel/plugins/association_dependencies.rb
402
+ - lib/sequel/plugins/association_pks.rb
602
403
  - lib/sequel/plugins/association_proxies.rb
404
+ - lib/sequel/plugins/auto_validations.rb
405
+ - lib/sequel/plugins/blacklist_security.rb
603
406
  - lib/sequel/plugins/boolean_readers.rb
604
407
  - lib/sequel/plugins/caching.rb
605
408
  - lib/sequel/plugins/class_table_inheritance.rb
409
+ - lib/sequel/plugins/composition.rb
410
+ - lib/sequel/plugins/constraint_validations.rb
411
+ - lib/sequel/plugins/dataset_associations.rb
412
+ - lib/sequel/plugins/defaults_setter.rb
413
+ - lib/sequel/plugins/dirty.rb
414
+ - lib/sequel/plugins/eager_each.rb
415
+ - lib/sequel/plugins/error_splitter.rb
606
416
  - lib/sequel/plugins/force_encoding.rb
607
417
  - lib/sequel/plugins/hook_class_methods.rb
608
- - lib/sequel/plugins/composition.rb
418
+ - lib/sequel/plugins/input_transformer.rb
419
+ - lib/sequel/plugins/instance_filters.rb
609
420
  - lib/sequel/plugins/instance_hooks.rb
421
+ - lib/sequel/plugins/json_serializer.rb
610
422
  - lib/sequel/plugins/lazy_attributes.rb
423
+ - lib/sequel/plugins/list.rb
611
424
  - lib/sequel/plugins/many_through_many.rb
425
+ - lib/sequel/plugins/many_to_one_pk_lookup.rb
426
+ - lib/sequel/plugins/mssql_optimistic_locking.rb
612
427
  - lib/sequel/plugins/nested_attributes.rb
613
428
  - lib/sequel/plugins/optimistic_locking.rb
429
+ - lib/sequel/plugins/pg_array_associations.rb
430
+ - lib/sequel/plugins/pg_row.rb
431
+ - lib/sequel/plugins/pg_typecast_on_load.rb
432
+ - lib/sequel/plugins/prepared_statements.rb
433
+ - lib/sequel/plugins/prepared_statements_associations.rb
434
+ - lib/sequel/plugins/prepared_statements_safe.rb
435
+ - lib/sequel/plugins/prepared_statements_with_pk.rb
436
+ - lib/sequel/plugins/rcte_tree.rb
614
437
  - lib/sequel/plugins/schema.rb
438
+ - lib/sequel/plugins/scissors.rb
615
439
  - lib/sequel/plugins/serialization.rb
616
- - lib/sequel/plugins/subclasses.rb
440
+ - lib/sequel/plugins/serialization_modification_detection.rb
441
+ - lib/sequel/plugins/sharding.rb
617
442
  - lib/sequel/plugins/single_table_inheritance.rb
443
+ - lib/sequel/plugins/skip_create_refresh.rb
444
+ - lib/sequel/plugins/static_cache.rb
445
+ - lib/sequel/plugins/string_stripper.rb
446
+ - lib/sequel/plugins/subclasses.rb
447
+ - lib/sequel/plugins/table_select.rb
618
448
  - lib/sequel/plugins/tactical_eager_loading.rb
619
449
  - lib/sequel/plugins/timestamps.rb
620
450
  - lib/sequel/plugins/touch.rb
451
+ - lib/sequel/plugins/tree.rb
621
452
  - lib/sequel/plugins/typecast_on_load.rb
453
+ - lib/sequel/plugins/unlimited_update.rb
454
+ - lib/sequel/plugins/update_or_create.rb
455
+ - lib/sequel/plugins/update_primary_key.rb
622
456
  - lib/sequel/plugins/validation_class_methods.rb
623
457
  - lib/sequel/plugins/validation_helpers.rb
624
- - lib/sequel/plugins/list.rb
625
- - lib/sequel/plugins/rcte_tree.rb
626
- - lib/sequel/plugins/instance_filters.rb
627
- - lib/sequel/plugins/sharding.rb
628
- - lib/sequel/plugins/skip_create_refresh.rb
629
- - lib/sequel/plugins/string_stripper.rb
630
- - lib/sequel/plugins/update_primary_key.rb
631
- - lib/sequel/plugins/association_pks.rb
632
- - lib/sequel/plugins/json_serializer.rb
633
- - lib/sequel/plugins/tree.rb
634
- - lib/sequel/plugins/static_cache.rb
635
458
  - lib/sequel/plugins/xml_serializer.rb
636
- - lib/sequel/plugins/association_autoreloading.rb
637
- - lib/sequel/plugins/serialization_modification_detection.rb
638
- - lib/sequel/plugins/defaults_setter.rb
639
- - lib/sequel/plugins/prepared_statements.rb
640
- - lib/sequel/plugins/prepared_statements_safe.rb
641
- - lib/sequel/plugins/prepared_statements_with_pk.rb
642
- - lib/sequel/plugins/prepared_statements_associations.rb
643
- - lib/sequel/plugins/dataset_associations.rb
644
- - lib/sequel/plugins/many_to_one_pk_lookup.rb
645
- - lib/sequel/plugins/dirty.rb
646
- - lib/sequel/plugins/eager_each.rb
647
- - lib/sequel/plugins/pg_row.rb
648
- - lib/sequel/plugins/pg_typecast_on_load.rb
649
- - lib/sequel/plugins/constraint_validations.rb
650
- - lib/sequel/plugins/unlimited_update.rb
651
- - lib/sequel/plugins/auto_validations.rb
652
- - lib/sequel/plugins/error_splitter.rb
653
- - lib/sequel/plugins/scissors.rb
654
- - lib/sequel/plugins/input_transformer.rb
655
- - lib/sequel/plugins/after_initialize.rb
656
- - lib/sequel/plugins/blacklist_security.rb
657
- - lib/sequel/plugins/pg_array_associations.rb
658
- - lib/sequel/plugins/table_select.rb
659
- - lib/sequel/plugins/mssql_optimistic_locking.rb
459
+ - lib/sequel/sql.rb
660
460
  - lib/sequel/timezones.rb
661
- - lib/sequel/deprecated.rb
662
- - lib/sequel/ast_transformer.rb
663
- - lib/sequel/no_core_ext.rb
461
+ - lib/sequel/version.rb
462
+ - spec/adapters/db2_spec.rb
463
+ - spec/adapters/firebird_spec.rb
464
+ - spec/adapters/informix_spec.rb
465
+ - spec/adapters/mssql_spec.rb
466
+ - spec/adapters/mysql_spec.rb
467
+ - spec/adapters/oracle_spec.rb
468
+ - spec/adapters/postgres_spec.rb
469
+ - spec/adapters/spec_helper.rb
470
+ - spec/adapters/sqlanywhere_spec.rb
471
+ - spec/adapters/sqlite_spec.rb
472
+ - spec/bin_spec.rb
473
+ - spec/core/connection_pool_spec.rb
474
+ - spec/core/database_spec.rb
475
+ - spec/core/dataset_spec.rb
476
+ - spec/core/deprecated_spec.rb
477
+ - spec/core/expression_filters_spec.rb
478
+ - spec/core/mock_adapter_spec.rb
479
+ - spec/core/object_graph_spec.rb
480
+ - spec/core/schema_generator_spec.rb
481
+ - spec/core/schema_spec.rb
482
+ - spec/core/spec_helper.rb
483
+ - spec/core/version_spec.rb
484
+ - spec/core_extensions_spec.rb
485
+ - spec/extensions/active_model_spec.rb
486
+ - spec/extensions/after_initialize_spec.rb
487
+ - spec/extensions/arbitrary_servers_spec.rb
488
+ - spec/extensions/association_dependencies_spec.rb
489
+ - spec/extensions/association_pks_spec.rb
490
+ - spec/extensions/association_proxies_spec.rb
491
+ - spec/extensions/auto_validations_spec.rb
492
+ - spec/extensions/blacklist_security_spec.rb
493
+ - spec/extensions/blank_spec.rb
494
+ - spec/extensions/boolean_readers_spec.rb
495
+ - spec/extensions/caching_spec.rb
496
+ - spec/extensions/class_table_inheritance_spec.rb
497
+ - spec/extensions/columns_introspection_spec.rb
498
+ - spec/extensions/composition_spec.rb
499
+ - spec/extensions/connection_validator_spec.rb
500
+ - spec/extensions/constraint_validations_plugin_spec.rb
501
+ - spec/extensions/constraint_validations_spec.rb
502
+ - spec/extensions/core_refinements_spec.rb
503
+ - spec/extensions/dataset_associations_spec.rb
504
+ - spec/extensions/date_arithmetic_spec.rb
505
+ - spec/extensions/defaults_setter_spec.rb
506
+ - spec/extensions/dirty_spec.rb
507
+ - spec/extensions/eager_each_spec.rb
508
+ - spec/extensions/empty_array_ignore_nulls_spec.rb
509
+ - spec/extensions/error_splitter_spec.rb
510
+ - spec/extensions/error_sql_spec.rb
511
+ - spec/extensions/eval_inspect_spec.rb
512
+ - spec/extensions/filter_having_spec.rb
513
+ - spec/extensions/force_encoding_spec.rb
514
+ - spec/extensions/from_block_spec.rb
515
+ - spec/extensions/graph_each_spec.rb
516
+ - spec/extensions/hash_aliases_spec.rb
517
+ - spec/extensions/hook_class_methods_spec.rb
518
+ - spec/extensions/inflector_spec.rb
519
+ - spec/extensions/input_transformer_spec.rb
520
+ - spec/extensions/instance_filters_spec.rb
521
+ - spec/extensions/instance_hooks_spec.rb
522
+ - spec/extensions/json_serializer_spec.rb
523
+ - spec/extensions/lazy_attributes_spec.rb
524
+ - spec/extensions/list_spec.rb
525
+ - spec/extensions/looser_typecasting_spec.rb
526
+ - spec/extensions/many_through_many_spec.rb
527
+ - spec/extensions/meta_def_spec.rb
528
+ - spec/extensions/migration_spec.rb
529
+ - spec/extensions/mssql_optimistic_locking_spec.rb
530
+ - spec/extensions/named_timezones_spec.rb
531
+ - spec/extensions/nested_attributes_spec.rb
532
+ - spec/extensions/null_dataset_spec.rb
533
+ - spec/extensions/optimistic_locking_spec.rb
534
+ - spec/extensions/pagination_spec.rb
535
+ - spec/extensions/pg_array_associations_spec.rb
536
+ - spec/extensions/pg_array_ops_spec.rb
537
+ - spec/extensions/pg_array_spec.rb
538
+ - spec/extensions/pg_hstore_ops_spec.rb
539
+ - spec/extensions/pg_hstore_spec.rb
540
+ - spec/extensions/pg_inet_spec.rb
541
+ - spec/extensions/pg_interval_spec.rb
542
+ - spec/extensions/pg_json_ops_spec.rb
543
+ - spec/extensions/pg_json_spec.rb
544
+ - spec/extensions/pg_loose_count_spec.rb
545
+ - spec/extensions/pg_range_ops_spec.rb
546
+ - spec/extensions/pg_range_spec.rb
547
+ - spec/extensions/pg_row_ops_spec.rb
548
+ - spec/extensions/pg_row_plugin_spec.rb
549
+ - spec/extensions/pg_row_spec.rb
550
+ - spec/extensions/pg_static_cache_updater_spec.rb
551
+ - spec/extensions/pg_typecast_on_load_spec.rb
552
+ - spec/extensions/prepared_statements_associations_spec.rb
553
+ - spec/extensions/prepared_statements_safe_spec.rb
554
+ - spec/extensions/prepared_statements_spec.rb
555
+ - spec/extensions/prepared_statements_with_pk_spec.rb
556
+ - spec/extensions/pretty_table_spec.rb
557
+ - spec/extensions/query_literals_spec.rb
558
+ - spec/extensions/query_spec.rb
559
+ - spec/extensions/rcte_tree_spec.rb
560
+ - spec/extensions/schema_caching_spec.rb
561
+ - spec/extensions/schema_dumper_spec.rb
562
+ - spec/extensions/schema_spec.rb
563
+ - spec/extensions/scissors_spec.rb
564
+ - spec/extensions/select_remove_spec.rb
565
+ - spec/extensions/sequel_3_dataset_methods_spec.rb
566
+ - spec/extensions/serialization_modification_detection_spec.rb
567
+ - spec/extensions/serialization_spec.rb
568
+ - spec/extensions/server_block_spec.rb
569
+ - spec/extensions/set_overrides_spec.rb
570
+ - spec/extensions/sharding_spec.rb
571
+ - spec/extensions/shared_caching_spec.rb
572
+ - spec/extensions/single_table_inheritance_spec.rb
573
+ - spec/extensions/skip_create_refresh_spec.rb
574
+ - spec/extensions/spec_helper.rb
575
+ - spec/extensions/split_array_nil_spec.rb
576
+ - spec/extensions/sql_expr_spec.rb
577
+ - spec/extensions/static_cache_spec.rb
578
+ - spec/extensions/string_date_time_spec.rb
579
+ - spec/extensions/string_stripper_spec.rb
580
+ - spec/extensions/subclasses_spec.rb
581
+ - spec/extensions/table_select_spec.rb
582
+ - spec/extensions/tactical_eager_loading_spec.rb
583
+ - spec/extensions/thread_local_timezones_spec.rb
584
+ - spec/extensions/timestamps_spec.rb
585
+ - spec/extensions/to_dot_spec.rb
586
+ - spec/extensions/touch_spec.rb
587
+ - spec/extensions/tree_spec.rb
588
+ - spec/extensions/typecast_on_load_spec.rb
589
+ - spec/extensions/unlimited_update_spec.rb
590
+ - spec/extensions/update_or_create_spec.rb
591
+ - spec/extensions/update_primary_key_spec.rb
592
+ - spec/extensions/validation_class_methods_spec.rb
593
+ - spec/extensions/validation_helpers_spec.rb
594
+ - spec/extensions/xml_serializer_spec.rb
595
+ - spec/files/bad_down_migration/001_create_alt_basic.rb
596
+ - spec/files/bad_down_migration/002_create_alt_advanced.rb
597
+ - spec/files/bad_timestamped_migrations/1273253849_create_sessions.rb
598
+ - spec/files/bad_timestamped_migrations/1273253851_create_nodes.rb
599
+ - spec/files/bad_timestamped_migrations/1273253853_3_create_users.rb
600
+ - spec/files/bad_up_migration/001_create_alt_basic.rb
601
+ - spec/files/bad_up_migration/002_create_alt_advanced.rb
602
+ - spec/files/convert_to_timestamp_migrations/001_create_sessions.rb
603
+ - spec/files/convert_to_timestamp_migrations/002_create_nodes.rb
604
+ - spec/files/convert_to_timestamp_migrations/003_3_create_users.rb
605
+ - spec/files/convert_to_timestamp_migrations/1273253850_create_artists.rb
606
+ - spec/files/convert_to_timestamp_migrations/1273253852_create_albums.rb
607
+ - spec/files/duplicate_integer_migrations/001_create_alt_advanced.rb
608
+ - spec/files/duplicate_integer_migrations/001_create_alt_basic.rb
609
+ - spec/files/duplicate_timestamped_migrations/1273253849_create_sessions.rb
610
+ - spec/files/duplicate_timestamped_migrations/1273253853_create_nodes.rb
611
+ - spec/files/duplicate_timestamped_migrations/1273253853_create_users.rb
612
+ - spec/files/integer_migrations/001_create_sessions.rb
613
+ - spec/files/integer_migrations/002_create_nodes.rb
614
+ - spec/files/integer_migrations/003_3_create_users.rb
615
+ - spec/files/interleaved_timestamped_migrations/1273253849_create_sessions.rb
616
+ - spec/files/interleaved_timestamped_migrations/1273253850_create_artists.rb
617
+ - spec/files/interleaved_timestamped_migrations/1273253851_create_nodes.rb
618
+ - spec/files/interleaved_timestamped_migrations/1273253852_create_albums.rb
619
+ - spec/files/interleaved_timestamped_migrations/1273253853_3_create_users.rb
620
+ - spec/files/missing_integer_migrations/001_create_alt_basic.rb
621
+ - spec/files/missing_integer_migrations/003_create_alt_advanced.rb
622
+ - spec/files/missing_timestamped_migrations/1273253849_create_sessions.rb
623
+ - spec/files/missing_timestamped_migrations/1273253853_3_create_users.rb
624
+ - spec/files/reversible_migrations/001_reversible.rb
625
+ - spec/files/reversible_migrations/002_reversible.rb
626
+ - spec/files/reversible_migrations/003_reversible.rb
627
+ - spec/files/reversible_migrations/004_reversible.rb
628
+ - spec/files/reversible_migrations/005_reversible.rb
629
+ - spec/files/timestamped_migrations/1273253849_create_sessions.rb
630
+ - spec/files/timestamped_migrations/1273253851_create_nodes.rb
631
+ - spec/files/timestamped_migrations/1273253853_3_create_users.rb
632
+ - spec/files/transaction_specified_migrations/001_create_alt_basic.rb
633
+ - spec/files/transaction_specified_migrations/002_create_basic.rb
634
+ - spec/files/transaction_unspecified_migrations/001_create_alt_basic.rb
635
+ - spec/files/transaction_unspecified_migrations/002_create_basic.rb
636
+ - spec/files/uppercase_timestamped_migrations/1273253849_CREATE_SESSIONS.RB
637
+ - spec/files/uppercase_timestamped_migrations/1273253851_CREATE_NODES.RB
638
+ - spec/files/uppercase_timestamped_migrations/1273253853_3_CREATE_USERS.RB
639
+ - spec/integration/associations_test.rb
640
+ - spec/integration/database_test.rb
641
+ - spec/integration/dataset_test.rb
642
+ - spec/integration/eager_loader_test.rb
643
+ - spec/integration/migrator_test.rb
644
+ - spec/integration/model_test.rb
645
+ - spec/integration/plugin_test.rb
646
+ - spec/integration/prepared_statement_test.rb
647
+ - spec/integration/schema_test.rb
648
+ - spec/integration/spec_helper.rb
649
+ - spec/integration/timezone_test.rb
650
+ - spec/integration/transaction_test.rb
651
+ - spec/integration/type_test.rb
652
+ - spec/model/association_reflection_spec.rb
653
+ - spec/model/associations_spec.rb
654
+ - spec/model/base_spec.rb
655
+ - spec/model/class_dataset_methods_spec.rb
656
+ - spec/model/dataset_methods_spec.rb
657
+ - spec/model/eager_loading_spec.rb
658
+ - spec/model/hooks_spec.rb
659
+ - spec/model/inflector_spec.rb
660
+ - spec/model/model_spec.rb
661
+ - spec/model/plugins_spec.rb
662
+ - spec/model/record_spec.rb
663
+ - spec/model/spec_helper.rb
664
+ - spec/model/validations_spec.rb
665
+ - spec/rspec_helper.rb
666
+ - spec/sequel_coverage.rb
667
+ - spec/spec_config.rb
664
668
  homepage: http://sequel.jeremyevans.net
665
669
  licenses:
666
670
  - MIT
667
671
  metadata: {}
668
672
  post_install_message:
669
673
  rdoc_options:
670
- - --quiet
671
- - --line-numbers
672
- - --inline-source
673
- - --title
674
+ - "--quiet"
675
+ - "--line-numbers"
676
+ - "--inline-source"
677
+ - "--title"
674
678
  - 'Sequel: The Database Toolkit for Ruby'
675
- - --main
679
+ - "--main"
676
680
  - README.rdoc
677
681
  require_paths:
678
682
  - lib
679
683
  required_ruby_version: !ruby/object:Gem::Requirement
680
684
  requirements:
681
- - - '>='
685
+ - - ">="
682
686
  - !ruby/object:Gem::Version
683
687
  version: 1.8.7
684
688
  required_rubygems_version: !ruby/object:Gem::Requirement
685
689
  requirements:
686
- - - '>='
690
+ - - ">="
687
691
  - !ruby/object:Gem::Version
688
692
  version: '0'
689
693
  requirements: []
690
694
  rubyforge_project:
691
- rubygems_version: 2.0.14
695
+ rubygems_version: 2.2.0
692
696
  signing_key:
693
697
  specification_version: 4
694
698
  summary: The Database Toolkit for Ruby