sequel 4.6.0 → 4.7.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.
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