sequel 5.2.0 → 5.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG +32 -0
- data/bin/sequel +5 -6
- data/doc/release_notes/5.3.0.txt +121 -0
- data/doc/schema_modification.rdoc +15 -4
- data/doc/testing.rdoc +1 -0
- data/lib/sequel/adapters/jdbc.rb +4 -0
- data/lib/sequel/adapters/jdbc/postgresql.rb +15 -0
- data/lib/sequel/adapters/oracle.rb +2 -1
- data/lib/sequel/adapters/postgres.rb +4 -0
- data/lib/sequel/adapters/shared/mysql.rb +38 -3
- data/lib/sequel/adapters/shared/postgres.rb +15 -6
- data/lib/sequel/adapters/shared/sqlite.rb +10 -0
- data/lib/sequel/adapters/utils/mysql_mysql2.rb +2 -0
- data/lib/sequel/connection_pool.rb +12 -0
- data/lib/sequel/database/misc.rb +13 -0
- data/lib/sequel/dataset/dataset_module.rb +1 -1
- data/lib/sequel/dataset/features.rb +5 -0
- data/lib/sequel/dataset/query.rb +20 -6
- data/lib/sequel/dataset/sql.rb +3 -0
- data/lib/sequel/extensions/pg_extended_date_support.rb +15 -0
- data/lib/sequel/extensions/synchronize_sql.rb +45 -0
- data/lib/sequel/model/associations.rb +1 -0
- data/lib/sequel/model/base.rb +4 -11
- data/lib/sequel/plugins/validation_helpers.rb +2 -2
- data/lib/sequel/version.rb +1 -1
- data/spec/adapters/postgres_spec.rb +5 -34
- data/spec/core/database_spec.rb +32 -0
- data/spec/core/dataset_spec.rb +19 -0
- data/spec/core/mock_adapter_spec.rb +65 -0
- data/spec/extensions/association_pks_spec.rb +26 -33
- data/spec/extensions/class_table_inheritance_spec.rb +18 -32
- data/spec/extensions/composition_spec.rb +7 -23
- data/spec/extensions/list_spec.rb +4 -5
- data/spec/extensions/many_through_many_spec.rb +24 -32
- data/spec/extensions/optimistic_locking_spec.rb +1 -1
- data/spec/extensions/pg_array_associations_spec.rb +18 -25
- data/spec/extensions/pg_extended_date_support_spec.rb +13 -0
- data/spec/extensions/pg_hstore_spec.rb +2 -2
- data/spec/extensions/prepared_statements_safe_spec.rb +6 -6
- data/spec/extensions/pretty_table_spec.rb +39 -8
- data/spec/extensions/rcte_tree_spec.rb +22 -33
- data/spec/extensions/schema_dumper_spec.rb +42 -31
- data/spec/extensions/serialization_spec.rb +3 -3
- data/spec/extensions/synchronize_sql_spec.rb +124 -0
- data/spec/extensions/timestamps_spec.rb +2 -4
- data/spec/extensions/update_or_create_spec.rb +11 -15
- data/spec/extensions/uuid_spec.rb +2 -3
- data/spec/extensions/xml_serializer_spec.rb +5 -10
- data/spec/integration/database_test.rb +1 -1
- data/spec/integration/dataset_test.rb +7 -0
- data/spec/integration/plugin_test.rb +1 -1
- data/spec/integration/schema_test.rb +3 -3
- data/spec/integration/spec_helper.rb +4 -0
- data/spec/model/base_spec.rb +6 -0
- data/spec/model/eager_loading_spec.rb +31 -6
- data/spec/model/model_spec.rb +9 -19
- data/spec/model/record_spec.rb +4 -8
- metadata +6 -2
data/spec/model/record_spec.rb
CHANGED
@@ -146,10 +146,8 @@ describe "Model#save" do
|
|
146
146
|
o = @c.new(:x => 11)
|
147
147
|
def o.autoincrementing_primary_key() :y end
|
148
148
|
o.save
|
149
|
-
sqls
|
150
|
-
|
151
|
-
sqls.first.must_equal "INSERT INTO items (x) VALUES (11)"
|
152
|
-
sqls.last.must_match %r{SELECT \* FROM items WHERE \(\([xy] = 1[13]\) AND \([xy] = 1[13]\)\) LIMIT 1}
|
149
|
+
DB.sqls.must_equal ["INSERT INTO items (x) VALUES (11)",
|
150
|
+
'SELECT * FROM items WHERE ((x = 11) AND (y = 13)) LIMIT 1']
|
153
151
|
end
|
154
152
|
|
155
153
|
it "should update a record for an existing model instance" do
|
@@ -837,7 +835,7 @@ describe Sequel::Model, "#this" do
|
|
837
835
|
it "should support composite primary keys" do
|
838
836
|
@example.set_primary_key [:x, :y]
|
839
837
|
instance = @example.load(:x => 4, :y => 5)
|
840
|
-
instance.this.sql.
|
838
|
+
instance.this.sql.must_equal 'SELECT * FROM examples WHERE ((x = 4) AND (y = 5)) LIMIT 1'
|
841
839
|
end
|
842
840
|
end
|
843
841
|
|
@@ -1223,9 +1221,7 @@ describe Sequel::Model, "#update_fields" do
|
|
1223
1221
|
it "should set only the given fields, and then save the changes to the record" do
|
1224
1222
|
@o1.update_fields({:x => 1, :y => 2, :z=>3, :id=>4}, [:x, :y])
|
1225
1223
|
@o1.values.must_equal(:x => 1, :y => 2, :id=>1)
|
1226
|
-
sqls =
|
1227
|
-
sqls.pop.must_match(/UPDATE items SET [xy] = [12], [xy] = [12] WHERE \(id = 1\)/)
|
1228
|
-
sqls.must_equal []
|
1224
|
+
DB.sqls.must_equal ['UPDATE items SET x = 1, y = 2 WHERE (id = 1)']
|
1229
1225
|
|
1230
1226
|
@o1.update_fields({:x => 1, :y => 5, :z=>6, :id=>7}, [:x, :y])
|
1231
1227
|
@o1.values.must_equal(:x => 1, :y => 5, :id=>1)
|
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: 5.
|
4
|
+
version: 5.3.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: 2017-
|
11
|
+
date: 2017-12-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: minitest
|
@@ -253,6 +253,7 @@ extra_rdoc_files:
|
|
253
253
|
- doc/release_notes/5.0.0.txt
|
254
254
|
- doc/release_notes/5.1.0.txt
|
255
255
|
- doc/release_notes/5.2.0.txt
|
256
|
+
- doc/release_notes/5.3.0.txt
|
256
257
|
files:
|
257
258
|
- CHANGELOG
|
258
259
|
- MIT-LICENSE
|
@@ -400,6 +401,7 @@ files:
|
|
400
401
|
- doc/release_notes/5.0.0.txt
|
401
402
|
- doc/release_notes/5.1.0.txt
|
402
403
|
- doc/release_notes/5.2.0.txt
|
404
|
+
- doc/release_notes/5.3.0.txt
|
403
405
|
- doc/schema_modification.rdoc
|
404
406
|
- doc/security.rdoc
|
405
407
|
- doc/sharding.rdoc
|
@@ -556,6 +558,7 @@ files:
|
|
556
558
|
- lib/sequel/extensions/symbol_aref_refinement.rb
|
557
559
|
- lib/sequel/extensions/symbol_as.rb
|
558
560
|
- lib/sequel/extensions/symbol_as_refinement.rb
|
561
|
+
- lib/sequel/extensions/synchronize_sql.rb
|
559
562
|
- lib/sequel/extensions/thread_local_timezones.rb
|
560
563
|
- lib/sequel/extensions/to_dot.rb
|
561
564
|
- lib/sequel/extensions/virtual_row_method_block.rb
|
@@ -790,6 +793,7 @@ files:
|
|
790
793
|
- spec/extensions/subset_conditions_spec.rb
|
791
794
|
- spec/extensions/symbol_aref_refinement_spec.rb
|
792
795
|
- spec/extensions/symbol_as_refinement_spec.rb
|
796
|
+
- spec/extensions/synchronize_sql_spec.rb
|
793
797
|
- spec/extensions/table_select_spec.rb
|
794
798
|
- spec/extensions/tactical_eager_loading_spec.rb
|
795
799
|
- spec/extensions/thread_local_timezones_spec.rb
|