sequel 3.48.0 → 4.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (267) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG +114 -0
  3. data/Rakefile +10 -7
  4. data/doc/association_basics.rdoc +25 -23
  5. data/doc/code_order.rdoc +7 -0
  6. data/doc/core_extensions.rdoc +0 -10
  7. data/doc/object_model.rdoc +4 -1
  8. data/doc/querying.rdoc +3 -3
  9. data/doc/release_notes/4.0.0.txt +262 -0
  10. data/doc/security.rdoc +0 -28
  11. data/doc/testing.rdoc +8 -14
  12. data/lib/sequel/adapters/ado.rb +7 -11
  13. data/lib/sequel/adapters/ado/access.rb +8 -8
  14. data/lib/sequel/adapters/ado/mssql.rb +4 -4
  15. data/lib/sequel/adapters/amalgalite.rb +6 -6
  16. data/lib/sequel/adapters/cubrid.rb +7 -7
  17. data/lib/sequel/adapters/db2.rb +5 -9
  18. data/lib/sequel/adapters/dbi.rb +2 -6
  19. data/lib/sequel/adapters/do.rb +4 -4
  20. data/lib/sequel/adapters/firebird.rb +4 -4
  21. data/lib/sequel/adapters/ibmdb.rb +8 -8
  22. data/lib/sequel/adapters/informix.rb +2 -10
  23. data/lib/sequel/adapters/jdbc.rb +17 -17
  24. data/lib/sequel/adapters/jdbc/as400.rb +2 -2
  25. data/lib/sequel/adapters/jdbc/cubrid.rb +1 -1
  26. data/lib/sequel/adapters/jdbc/db2.rb +1 -1
  27. data/lib/sequel/adapters/jdbc/derby.rb +1 -1
  28. data/lib/sequel/adapters/jdbc/h2.rb +2 -2
  29. data/lib/sequel/adapters/jdbc/hsqldb.rb +1 -1
  30. data/lib/sequel/adapters/jdbc/informix.rb +1 -1
  31. data/lib/sequel/adapters/jdbc/mssql.rb +2 -2
  32. data/lib/sequel/adapters/jdbc/mysql.rb +1 -1
  33. data/lib/sequel/adapters/jdbc/oracle.rb +5 -1
  34. data/lib/sequel/adapters/jdbc/postgresql.rb +3 -3
  35. data/lib/sequel/adapters/jdbc/sqlite.rb +3 -3
  36. data/lib/sequel/adapters/jdbc/transactions.rb +3 -3
  37. data/lib/sequel/adapters/mock.rb +7 -7
  38. data/lib/sequel/adapters/mysql.rb +3 -3
  39. data/lib/sequel/adapters/mysql2.rb +4 -4
  40. data/lib/sequel/adapters/odbc.rb +2 -6
  41. data/lib/sequel/adapters/odbc/mssql.rb +1 -1
  42. data/lib/sequel/adapters/openbase.rb +1 -5
  43. data/lib/sequel/adapters/oracle.rb +13 -17
  44. data/lib/sequel/adapters/postgres.rb +20 -25
  45. data/lib/sequel/adapters/shared/cubrid.rb +3 -3
  46. data/lib/sequel/adapters/shared/db2.rb +2 -2
  47. data/lib/sequel/adapters/shared/firebird.rb +7 -7
  48. data/lib/sequel/adapters/shared/mssql.rb +9 -9
  49. data/lib/sequel/adapters/shared/mysql.rb +29 -13
  50. data/lib/sequel/adapters/shared/mysql_prepared_statements.rb +7 -7
  51. data/lib/sequel/adapters/shared/oracle.rb +22 -13
  52. data/lib/sequel/adapters/shared/postgres.rb +61 -46
  53. data/lib/sequel/adapters/shared/sqlite.rb +9 -9
  54. data/lib/sequel/adapters/sqlite.rb +17 -11
  55. data/lib/sequel/adapters/swift.rb +3 -3
  56. data/lib/sequel/adapters/swift/mysql.rb +1 -1
  57. data/lib/sequel/adapters/swift/sqlite.rb +1 -1
  58. data/lib/sequel/adapters/tinytds.rb +8 -8
  59. data/lib/sequel/ast_transformer.rb +3 -1
  60. data/lib/sequel/connection_pool.rb +4 -2
  61. data/lib/sequel/connection_pool/sharded_single.rb +2 -2
  62. data/lib/sequel/connection_pool/sharded_threaded.rb +5 -5
  63. data/lib/sequel/connection_pool/threaded.rb +7 -7
  64. data/lib/sequel/core.rb +4 -67
  65. data/lib/sequel/database.rb +1 -0
  66. data/lib/sequel/database/connecting.rb +2 -8
  67. data/lib/sequel/database/dataset.rb +2 -7
  68. data/lib/sequel/database/dataset_defaults.rb +0 -18
  69. data/lib/sequel/database/features.rb +4 -4
  70. data/lib/sequel/database/misc.rb +6 -8
  71. data/lib/sequel/database/query.rb +5 -61
  72. data/lib/sequel/database/schema_generator.rb +22 -20
  73. data/lib/sequel/database/schema_methods.rb +48 -20
  74. data/lib/sequel/database/transactions.rb +7 -17
  75. data/lib/sequel/dataset.rb +2 -0
  76. data/lib/sequel/dataset/actions.rb +23 -91
  77. data/lib/sequel/dataset/features.rb +1 -4
  78. data/lib/sequel/dataset/graph.rb +3 -47
  79. data/lib/sequel/dataset/misc.rb +4 -33
  80. data/lib/sequel/dataset/prepared_statements.rb +3 -1
  81. data/lib/sequel/dataset/query.rb +116 -240
  82. data/lib/sequel/dataset/sql.rb +19 -97
  83. data/lib/sequel/deprecated.rb +0 -16
  84. data/lib/sequel/exceptions.rb +0 -3
  85. data/lib/sequel/extensions/_pretty_table.rb +1 -1
  86. data/lib/sequel/extensions/columns_introspection.rb +1 -12
  87. data/lib/sequel/extensions/constraint_validations.rb +3 -3
  88. data/lib/sequel/extensions/core_extensions.rb +0 -9
  89. data/lib/sequel/extensions/date_arithmetic.rb +1 -2
  90. data/lib/sequel/extensions/graph_each.rb +11 -0
  91. data/lib/sequel/extensions/migration.rb +5 -5
  92. data/lib/sequel/extensions/null_dataset.rb +11 -13
  93. data/lib/sequel/extensions/pagination.rb +3 -6
  94. data/lib/sequel/extensions/pg_array.rb +6 -4
  95. data/lib/sequel/extensions/pg_array_ops.rb +35 -1
  96. data/lib/sequel/extensions/pg_json.rb +12 -2
  97. data/lib/sequel/extensions/pg_json_ops.rb +266 -0
  98. data/lib/sequel/extensions/pg_range.rb +2 -2
  99. data/lib/sequel/extensions/pg_range_ops.rb +0 -8
  100. data/lib/sequel/extensions/pg_row.rb +2 -2
  101. data/lib/sequel/extensions/pretty_table.rb +0 -4
  102. data/lib/sequel/extensions/query.rb +3 -8
  103. data/lib/sequel/extensions/schema_caching.rb +0 -7
  104. data/lib/sequel/extensions/schema_dumper.rb +10 -17
  105. data/lib/sequel/extensions/select_remove.rb +0 -4
  106. data/lib/sequel/extensions/set_overrides.rb +28 -0
  107. data/lib/sequel/extensions/to_dot.rb +6 -10
  108. data/lib/sequel/model.rb +6 -7
  109. data/lib/sequel/model/associations.rb +127 -182
  110. data/lib/sequel/model/base.rb +88 -211
  111. data/lib/sequel/model/errors.rb +0 -13
  112. data/lib/sequel/model/plugins.rb +2 -2
  113. data/lib/sequel/no_core_ext.rb +0 -1
  114. data/lib/sequel/plugins/after_initialize.rb +11 -17
  115. data/lib/sequel/plugins/association_autoreloading.rb +1 -47
  116. data/lib/sequel/plugins/association_dependencies.rb +2 -2
  117. data/lib/sequel/plugins/auto_validations.rb +2 -8
  118. data/lib/sequel/plugins/blacklist_security.rb +32 -2
  119. data/lib/sequel/plugins/caching.rb +1 -1
  120. data/lib/sequel/plugins/class_table_inheritance.rb +2 -2
  121. data/lib/sequel/plugins/composition.rb +10 -8
  122. data/lib/sequel/plugins/constraint_validations.rb +2 -2
  123. data/lib/sequel/plugins/dataset_associations.rb +4 -0
  124. data/lib/sequel/plugins/defaults_setter.rb +8 -6
  125. data/lib/sequel/plugins/dirty.rb +6 -6
  126. data/lib/sequel/plugins/force_encoding.rb +13 -8
  127. data/lib/sequel/plugins/hook_class_methods.rb +1 -7
  128. data/lib/sequel/plugins/json_serializer.rb +13 -74
  129. data/lib/sequel/plugins/lazy_attributes.rb +2 -4
  130. data/lib/sequel/plugins/list.rb +1 -1
  131. data/lib/sequel/plugins/many_through_many.rb +4 -11
  132. data/lib/sequel/plugins/many_to_one_pk_lookup.rb +1 -49
  133. data/lib/sequel/plugins/nested_attributes.rb +1 -1
  134. data/lib/sequel/plugins/optimistic_locking.rb +3 -5
  135. data/lib/sequel/plugins/pg_array_associations.rb +453 -0
  136. data/lib/sequel/plugins/pg_typecast_on_load.rb +23 -7
  137. data/lib/sequel/plugins/prepared_statements.rb +1 -1
  138. data/lib/sequel/plugins/prepared_statements_associations.rb +20 -14
  139. data/lib/sequel/plugins/prepared_statements_safe.rb +2 -2
  140. data/lib/sequel/plugins/rcte_tree.rb +1 -1
  141. data/lib/sequel/plugins/serialization.rb +5 -4
  142. data/lib/sequel/plugins/serialization_modification_detection.rb +1 -1
  143. data/lib/sequel/plugins/sharding.rb +7 -1
  144. data/lib/sequel/plugins/single_table_inheritance.rb +1 -1
  145. data/lib/sequel/plugins/timestamps.rb +1 -1
  146. data/lib/sequel/plugins/touch.rb +2 -2
  147. data/lib/sequel/plugins/tree.rb +1 -1
  148. data/lib/sequel/plugins/typecast_on_load.rb +19 -4
  149. data/lib/sequel/plugins/validation_class_methods.rb +0 -30
  150. data/lib/sequel/plugins/validation_helpers.rb +13 -31
  151. data/lib/sequel/plugins/xml_serializer.rb +18 -57
  152. data/lib/sequel/sql.rb +20 -22
  153. data/lib/sequel/version.rb +2 -2
  154. data/spec/adapters/db2_spec.rb +14 -23
  155. data/spec/adapters/firebird_spec.rb +25 -29
  156. data/spec/adapters/informix_spec.rb +11 -14
  157. data/spec/adapters/mssql_spec.rb +71 -77
  158. data/spec/adapters/mysql_spec.rb +165 -172
  159. data/spec/adapters/oracle_spec.rb +36 -39
  160. data/spec/adapters/postgres_spec.rb +175 -100
  161. data/spec/adapters/spec_helper.rb +13 -11
  162. data/spec/adapters/sqlite_spec.rb +36 -44
  163. data/spec/core/connection_pool_spec.rb +2 -1
  164. data/spec/core/database_spec.rb +55 -55
  165. data/spec/core/dataset_spec.rb +45 -249
  166. data/spec/core/deprecated_spec.rb +0 -8
  167. data/spec/core/expression_filters_spec.rb +23 -5
  168. data/spec/core/object_graph_spec.rb +4 -66
  169. data/spec/core/schema_spec.rb +35 -12
  170. data/spec/core/spec_helper.rb +3 -2
  171. data/spec/core_extensions_spec.rb +17 -19
  172. data/spec/extensions/arbitrary_servers_spec.rb +2 -3
  173. data/spec/extensions/association_dependencies_spec.rb +14 -14
  174. data/spec/extensions/auto_validations_spec.rb +7 -0
  175. data/spec/extensions/blacklist_security_spec.rb +5 -5
  176. data/spec/extensions/blank_spec.rb +2 -0
  177. data/spec/extensions/class_table_inheritance_spec.rb +2 -2
  178. data/spec/extensions/columns_introspection_spec.rb +2 -29
  179. data/spec/extensions/composition_spec.rb +10 -17
  180. data/spec/extensions/core_refinements_spec.rb +5 -1
  181. data/spec/extensions/dataset_associations_spec.rb +18 -0
  182. data/spec/extensions/date_arithmetic_spec.rb +2 -2
  183. data/spec/extensions/defaults_setter_spec.rb +9 -9
  184. data/spec/extensions/dirty_spec.rb +0 -5
  185. data/spec/extensions/eval_inspect_spec.rb +2 -0
  186. data/spec/extensions/force_encoding_spec.rb +2 -18
  187. data/spec/extensions/hash_aliases_spec.rb +8 -0
  188. data/spec/extensions/hook_class_methods_spec.rb +39 -58
  189. data/spec/extensions/inflector_spec.rb +2 -0
  190. data/spec/extensions/instance_filters_spec.rb +8 -8
  191. data/spec/extensions/json_serializer_spec.rb +1 -41
  192. data/spec/extensions/list_spec.rb +1 -1
  193. data/spec/extensions/many_through_many_spec.rb +106 -109
  194. data/spec/extensions/migration_spec.rb +2 -0
  195. data/spec/extensions/named_timezones_spec.rb +1 -0
  196. data/spec/extensions/pg_array_associations_spec.rb +603 -0
  197. data/spec/extensions/pg_array_ops_spec.rb +25 -0
  198. data/spec/extensions/pg_array_spec.rb +9 -1
  199. data/spec/extensions/pg_hstore_ops_spec.rb +13 -0
  200. data/spec/extensions/pg_hstore_spec.rb +1 -0
  201. data/spec/extensions/pg_json_ops_spec.rb +131 -0
  202. data/spec/extensions/pg_json_spec.rb +10 -4
  203. data/spec/extensions/pg_range_ops_spec.rb +2 -5
  204. data/spec/extensions/pg_range_spec.rb +6 -2
  205. data/spec/extensions/pg_row_ops_spec.rb +2 -0
  206. data/spec/extensions/prepared_statements_associations_spec.rb +26 -5
  207. data/spec/extensions/rcte_tree_spec.rb +15 -15
  208. data/spec/extensions/schema_dumper_spec.rb +0 -1
  209. data/spec/extensions/schema_spec.rb +9 -9
  210. data/spec/extensions/serialization_modification_detection_spec.rb +1 -1
  211. data/spec/extensions/serialization_spec.rb +18 -29
  212. data/spec/extensions/set_overrides_spec.rb +4 -0
  213. data/spec/extensions/{many_to_one_pk_lookup_spec.rb → shared_caching_spec.rb} +1 -4
  214. data/spec/extensions/single_table_inheritance_spec.rb +4 -4
  215. data/spec/extensions/spec_helper.rb +8 -9
  216. data/spec/extensions/sql_expr_spec.rb +2 -0
  217. data/spec/extensions/string_date_time_spec.rb +2 -0
  218. data/spec/extensions/string_stripper_spec.rb +2 -0
  219. data/spec/extensions/tactical_eager_loading_spec.rb +12 -12
  220. data/spec/extensions/thread_local_timezones_spec.rb +2 -0
  221. data/spec/extensions/timestamps_spec.rb +1 -1
  222. data/spec/extensions/to_dot_spec.rb +1 -1
  223. data/spec/extensions/touch_spec.rb +24 -24
  224. data/spec/extensions/tree_spec.rb +7 -7
  225. data/spec/extensions/typecast_on_load_spec.rb +8 -1
  226. data/spec/extensions/update_primary_key_spec.rb +10 -10
  227. data/spec/extensions/validation_class_methods_spec.rb +10 -39
  228. data/spec/extensions/validation_helpers_spec.rb +29 -47
  229. data/spec/extensions/xml_serializer_spec.rb +1 -23
  230. data/spec/integration/associations_test.rb +231 -40
  231. data/spec/integration/database_test.rb +1 -1
  232. data/spec/integration/dataset_test.rb +64 -64
  233. data/spec/integration/eager_loader_test.rb +28 -28
  234. data/spec/integration/migrator_test.rb +1 -1
  235. data/spec/integration/model_test.rb +2 -2
  236. data/spec/integration/plugin_test.rb +21 -21
  237. data/spec/integration/prepared_statement_test.rb +7 -7
  238. data/spec/integration/schema_test.rb +115 -110
  239. data/spec/integration/spec_helper.rb +17 -27
  240. data/spec/integration/timezone_test.rb +1 -1
  241. data/spec/integration/transaction_test.rb +10 -10
  242. data/spec/integration/type_test.rb +2 -2
  243. data/spec/model/association_reflection_spec.rb +2 -28
  244. data/spec/model/associations_spec.rb +239 -188
  245. data/spec/model/base_spec.rb +27 -68
  246. data/spec/model/dataset_methods_spec.rb +4 -4
  247. data/spec/model/eager_loading_spec.rb +160 -172
  248. data/spec/model/hooks_spec.rb +62 -79
  249. data/spec/model/model_spec.rb +36 -51
  250. data/spec/model/plugins_spec.rb +5 -19
  251. data/spec/model/record_spec.rb +125 -151
  252. data/spec/model/spec_helper.rb +8 -6
  253. data/spec/model/validations_spec.rb +4 -17
  254. data/spec/spec_config.rb +2 -10
  255. metadata +50 -56
  256. data/lib/sequel/deprecated_core_extensions.rb +0 -135
  257. data/lib/sequel/extensions/pg_auto_parameterize.rb +0 -185
  258. data/lib/sequel/extensions/pg_statement_cache.rb +0 -318
  259. data/lib/sequel/plugins/identity_map.rb +0 -260
  260. data/lib/sequel_core.rb +0 -2
  261. data/lib/sequel_model.rb +0 -2
  262. data/spec/extensions/association_autoreloading_spec.rb +0 -102
  263. data/spec/extensions/identity_map_spec.rb +0 -337
  264. data/spec/extensions/pg_auto_parameterize_spec.rb +0 -70
  265. data/spec/extensions/pg_statement_cache_spec.rb +0 -208
  266. data/spec/rcov.opts +0 -8
  267. data/spec/spec_config.rb.example +0 -10
@@ -1,14 +1,10 @@
1
1
  require 'rubygems'
2
2
  unless Object.const_defined?('Sequel') && Sequel.const_defined?('Model')
3
3
  $:.unshift(File.join(File.dirname(File.expand_path(__FILE__)), "../../lib/"))
4
- require 'sequel/no_core_ext'
4
+ require 'sequel'
5
5
  end
6
6
  Sequel::Deprecation.backtrace_filter = lambda{|line, lineno| lineno < 4 || line =~ /_spec\.rb/}
7
7
 
8
- if ENV['SEQUEL_COLUMNS_INTROSPECTION']
9
- Sequel.extension :columns_introspection
10
- Sequel::Dataset.introspect_all_columns
11
- end
12
8
 
13
9
  (defined?(RSpec) ? RSpec::Core::ExampleGroup : Spec::Example::ExampleGroup).class_eval do
14
10
  if ENV['SEQUEL_DEPRECATION_WARNINGS']
@@ -55,4 +51,10 @@ db = Sequel.mock(:fetch=>{:id => 1, :x => 1}, :numrows=>1, :autoid=>proc{|sql| 1
55
51
  def db.schema(*) [[:id, {:primary_key=>true}]] end
56
52
  def db.reset() sqls end
57
53
  def db.supports_schema_parsing?() true end
58
- Sequel::Model.db = MODEL_DB = db
54
+ Sequel::Model.db = DB = db
55
+
56
+ if ENV['SEQUEL_COLUMNS_INTROSPECTION']
57
+ Sequel.extension :columns_introspection
58
+ Sequel::Database.extension :columns_introspection
59
+ Sequel::Mock::Dataset.send(:include, Sequel::ColumnsIntrospection)
60
+ end
@@ -21,14 +21,6 @@ describe Sequel::Model::Errors do
21
21
  @errors.should_not be_empty
22
22
  end
23
23
 
24
- qspecify "should return errors for a specific attribute using #[]" do
25
- @errors[:blah].should == []
26
- @errors[:blah] << 'blah'
27
- @errors[:blah].should == ['blah']
28
-
29
- @errors[:bleu].should == []
30
- end
31
-
32
24
  specify "should return an array of errors for a specific attribute using #on if there are errors" do
33
25
  @errors.add(:blah, 'blah')
34
26
  @errors.on(:blah).should == ['blah']
@@ -38,11 +30,6 @@ describe Sequel::Model::Errors do
38
30
  @errors.on(:blah).should == nil
39
31
  end
40
32
 
41
- qspecify "should accept errors using #[] <<" do
42
- @errors[:blah] << 'blah'
43
- @errors[:blah].should == ['blah']
44
- end
45
-
46
33
  specify "should accept errors using #add" do
47
34
  @errors.add :blah, 'zzzz'
48
35
  @errors[:blah].should == ['zzzz']
@@ -163,26 +150,26 @@ describe "Model#save" do
163
150
  end
164
151
  end
165
152
  @m = @c.load(:id => 4, :x=>6)
166
- MODEL_DB.reset
153
+ DB.reset
167
154
  end
168
155
 
169
156
  specify "should save only if validations pass" do
170
157
  @m.raise_on_save_failure = false
171
158
  @m.should_not be_valid
172
159
  @m.save
173
- MODEL_DB.sqls.should be_empty
160
+ DB.sqls.should be_empty
174
161
 
175
162
  @m.x = 7
176
163
  @m.should be_valid
177
164
  @m.save.should_not be_false
178
- MODEL_DB.sqls.should == ['UPDATE people SET x = 7 WHERE (id = 4)']
165
+ DB.sqls.should == ['UPDATE people SET x = 7 WHERE (id = 4)']
179
166
  end
180
167
 
181
168
  specify "should skip validations if the :validate=>false option is used" do
182
169
  @m.raise_on_save_failure = false
183
170
  @m.should_not be_valid
184
171
  @m.save(:validate=>false)
185
- MODEL_DB.sqls.should == ['UPDATE people SET x = 6 WHERE (id = 4)']
172
+ DB.sqls.should == ['UPDATE people SET x = 6 WHERE (id = 4)']
186
173
  end
187
174
 
188
175
  specify "should raise error if validations fail and raise_on_save_failure is true" do
@@ -1,10 +1,2 @@
1
- # database objects for running adapter specs
2
- # ADO_DB = Sequel.connect(:adapter => 'ado', :driver => "{Microsoft Access Driver (*.mdb)}; DBQ=c:\\Nwind.mdb")
3
- # INFORMIX_DB = Sequel.connect('informix://localhost/mydb')
4
- # INTEGRATION_URL = 'sqlite:/'
5
- # MYSQL_USER = 'root'
6
- # MYSQL_URL = "mysql://#{MYSQL_USER}@localhost/sandbox"
7
- # MYSQL_SOCKET_FILE = '/tmp/mysql.sock'
8
- # ORACLE_DB = Sequel.connect('oracle://hr:hr@localhost/XE')
9
- POSTGRES_URL = 'postgres:///sequel_test?user=postgres'
10
- # SQLITE_URL = 'sqlite:/'
1
+ ENV['SEQUEL_POSTGRES_URL'] ||= 'postgres:///sequel_test?user=postgres'
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: 3.48.0
4
+ version: 4.0.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: 2013-06-01 00:00:00.000000000 Z
11
+ date: 2013-07-01 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: The Database Toolkit for Ruby
14
14
  email: code@jeremyevans.net
@@ -113,6 +113,7 @@ extra_rdoc_files:
113
113
  - doc/release_notes/3.46.0.txt
114
114
  - doc/release_notes/3.47.0.txt
115
115
  - doc/release_notes/3.48.0.txt
116
+ - doc/release_notes/4.0.0.txt
116
117
  files:
117
118
  - MIT-LICENSE
118
119
  - CHANGELOG
@@ -131,6 +132,21 @@ files:
131
132
  - doc/prepared_statements.rdoc
132
133
  - doc/querying.rdoc
133
134
  - doc/reflection.rdoc
135
+ - doc/sharding.rdoc
136
+ - doc/sql.rdoc
137
+ - doc/validations.rdoc
138
+ - doc/virtual_rows.rdoc
139
+ - doc/mass_assignment.rdoc
140
+ - doc/testing.rdoc
141
+ - doc/schema_modification.rdoc
142
+ - doc/transactions.rdoc
143
+ - doc/thread_safety.rdoc
144
+ - doc/object_model.rdoc
145
+ - doc/core_extensions.rdoc
146
+ - doc/bin_sequel.rdoc
147
+ - doc/security.rdoc
148
+ - doc/postgresql.rdoc
149
+ - doc/code_order.rdoc
134
150
  - doc/release_notes/1.0.txt
135
151
  - doc/release_notes/1.1.txt
136
152
  - doc/release_notes/1.3.txt
@@ -198,21 +214,7 @@ files:
198
214
  - doc/release_notes/3.46.0.txt
199
215
  - doc/release_notes/3.47.0.txt
200
216
  - doc/release_notes/3.48.0.txt
201
- - doc/sharding.rdoc
202
- - doc/sql.rdoc
203
- - doc/validations.rdoc
204
- - doc/virtual_rows.rdoc
205
- - doc/mass_assignment.rdoc
206
- - doc/testing.rdoc
207
- - doc/schema_modification.rdoc
208
- - doc/transactions.rdoc
209
- - doc/thread_safety.rdoc
210
- - doc/object_model.rdoc
211
- - doc/core_extensions.rdoc
212
- - doc/bin_sequel.rdoc
213
- - doc/security.rdoc
214
- - doc/postgresql.rdoc
215
- - doc/code_order.rdoc
217
+ - doc/release_notes/4.0.0.txt
216
218
  - spec/adapters/firebird_spec.rb
217
219
  - spec/adapters/informix_spec.rb
218
220
  - spec/adapters/mssql_spec.rb
@@ -235,19 +237,19 @@ files:
235
237
  - spec/core/mock_adapter_spec.rb
236
238
  - spec/extensions/active_model_spec.rb
237
239
  - spec/extensions/association_dependencies_spec.rb
238
- - spec/extensions/association_proxies_spec.rb
239
- - spec/extensions/blank_spec.rb
240
240
  - spec/extensions/boolean_readers_spec.rb
241
241
  - spec/extensions/caching_spec.rb
242
- - spec/extensions/class_table_inheritance_spec.rb
242
+ - spec/extensions/dirty_spec.rb
243
+ - spec/extensions/core_refinements_spec.rb
243
244
  - spec/extensions/force_encoding_spec.rb
244
245
  - spec/extensions/hook_class_methods_spec.rb
245
- - spec/extensions/identity_map_spec.rb
246
- - spec/extensions/inflector_spec.rb
247
- - spec/extensions/instance_hooks_spec.rb
248
246
  - spec/extensions/lazy_attributes_spec.rb
249
247
  - spec/extensions/looser_typecasting_spec.rb
248
+ - spec/extensions/instance_hooks_spec.rb
250
249
  - spec/extensions/migration_spec.rb
250
+ - spec/extensions/null_dataset_spec.rb
251
+ - spec/extensions/pg_array_ops_spec.rb
252
+ - spec/extensions/shared_caching_spec.rb
251
253
  - spec/extensions/many_through_many_spec.rb
252
254
  - spec/extensions/named_timezones_spec.rb
253
255
  - spec/extensions/nested_attributes_spec.rb
@@ -284,7 +286,7 @@ files:
284
286
  - spec/extensions/tree_spec.rb
285
287
  - spec/extensions/xml_serializer_spec.rb
286
288
  - spec/extensions/to_dot_spec.rb
287
- - spec/extensions/association_autoreloading_spec.rb
289
+ - spec/extensions/class_table_inheritance_spec.rb
288
290
  - spec/extensions/serialization_modification_detection_spec.rb
289
291
  - spec/extensions/defaults_setter_spec.rb
290
292
  - spec/extensions/prepared_statements_spec.rb
@@ -295,21 +297,17 @@ files:
295
297
  - spec/extensions/arbitrary_servers_spec.rb
296
298
  - spec/extensions/touch_spec.rb
297
299
  - spec/extensions/server_block_spec.rb
298
- - spec/extensions/pg_auto_parameterize_spec.rb
299
- - spec/extensions/pg_statement_cache_spec.rb
300
+ - spec/extensions/pg_hstore_ops_spec.rb
301
+ - spec/extensions/scissors_spec.rb
300
302
  - spec/extensions/pg_array_spec.rb
301
- - spec/extensions/pg_array_ops_spec.rb
303
+ - spec/extensions/static_cache_spec.rb
302
304
  - spec/extensions/pg_hstore_spec.rb
303
- - spec/extensions/pg_hstore_ops_spec.rb
305
+ - spec/extensions/pg_array_associations_spec.rb
304
306
  - spec/extensions/schema_caching_spec.rb
305
- - spec/extensions/null_dataset_spec.rb
306
- - spec/extensions/many_to_one_pk_lookup_spec.rb
307
+ - spec/extensions/pg_json_ops_spec.rb
307
308
  - spec/extensions/select_remove_spec.rb
308
- - spec/extensions/static_cache_spec.rb
309
309
  - spec/extensions/query_literals_spec.rb
310
- - spec/extensions/dirty_spec.rb
311
310
  - spec/extensions/pg_inet_spec.rb
312
- - spec/extensions/auto_validations_spec.rb
313
311
  - spec/extensions/eval_inspect_spec.rb
314
312
  - spec/extensions/pg_range_spec.rb
315
313
  - spec/extensions/split_array_nil_spec.rb
@@ -325,19 +323,21 @@ files:
325
323
  - spec/extensions/connection_validator_spec.rb
326
324
  - spec/extensions/validation_class_methods_spec.rb
327
325
  - spec/extensions/meta_def_spec.rb
328
- - spec/extensions/core_refinements_spec.rb
326
+ - spec/extensions/hash_aliases_spec.rb
329
327
  - spec/extensions/unlimited_update_spec.rb
330
328
  - spec/extensions/error_splitter_spec.rb
331
329
  - spec/extensions/input_transformer_spec.rb
332
330
  - spec/extensions/filter_having_spec.rb
333
- - spec/extensions/hash_aliases_spec.rb
334
331
  - spec/extensions/after_initialize_spec.rb
335
332
  - spec/extensions/set_overrides_spec.rb
336
333
  - spec/extensions/graph_each_spec.rb
337
334
  - spec/extensions/blacklist_security_spec.rb
338
335
  - spec/extensions/sequel_3_dataset_methods_spec.rb
339
336
  - spec/extensions/empty_array_ignore_nulls_spec.rb
340
- - spec/extensions/scissors_spec.rb
337
+ - spec/extensions/auto_validations_spec.rb
338
+ - spec/extensions/blank_spec.rb
339
+ - spec/extensions/inflector_spec.rb
340
+ - spec/extensions/association_proxies_spec.rb
341
341
  - spec/integration/associations_test.rb
342
342
  - spec/integration/database_test.rb
343
343
  - spec/integration/dataset_test.rb
@@ -364,8 +364,6 @@ files:
364
364
  - spec/model/spec_helper.rb
365
365
  - spec/model/validations_spec.rb
366
366
  - spec/model/class_dataset_methods_spec.rb
367
- - spec/rcov.opts
368
- - spec/spec_config.rb.example
369
367
  - spec/spec_config.rb
370
368
  - spec/files/bad_down_migration/001_create_alt_basic.rb
371
369
  - spec/files/bad_down_migration/002_create_alt_advanced.rb
@@ -399,9 +397,6 @@ files:
399
397
  - spec/files/timestamped_migrations/1273253849_create_sessions.rb
400
398
  - spec/files/timestamped_migrations/1273253851_create_nodes.rb
401
399
  - spec/files/timestamped_migrations/1273253853_3_create_users.rb
402
- - spec/files/uppercase_timestamped_migrations/1273253849_CREATE_SESSIONS.RB
403
- - spec/files/uppercase_timestamped_migrations/1273253851_CREATE_NODES.RB
404
- - spec/files/uppercase_timestamped_migrations/1273253853_3_CREATE_USERS.RB
405
400
  - spec/files/reversible_migrations/001_reversible.rb
406
401
  - spec/files/reversible_migrations/002_reversible.rb
407
402
  - spec/files/reversible_migrations/003_reversible.rb
@@ -414,6 +409,9 @@ files:
414
409
  - spec/core_extensions_spec.rb
415
410
  - spec/sequel_coverage.rb
416
411
  - spec/bin_spec.rb
412
+ - spec/files/uppercase_timestamped_migrations/1273253849_CREATE_SESSIONS.RB
413
+ - spec/files/uppercase_timestamped_migrations/1273253851_CREATE_NODES.RB
414
+ - spec/files/uppercase_timestamped_migrations/1273253853_3_CREATE_USERS.RB
417
415
  - lib/sequel.rb
418
416
  - lib/sequel/adapters/ado.rb
419
417
  - lib/sequel/adapters/ado/mssql.rb
@@ -521,8 +519,8 @@ files:
521
519
  - lib/sequel/extensions/to_dot.rb
522
520
  - lib/sequel/extensions/arbitrary_servers.rb
523
521
  - lib/sequel/extensions/server_block.rb
524
- - lib/sequel/extensions/pg_auto_parameterize.rb
525
- - lib/sequel/extensions/pg_statement_cache.rb
522
+ - lib/sequel/extensions/columns_introspection.rb
523
+ - lib/sequel/extensions/core_extensions.rb
526
524
  - lib/sequel/extensions/pg_array.rb
527
525
  - lib/sequel/extensions/pg_json.rb
528
526
  - lib/sequel/extensions/pg_array_ops.rb
@@ -531,9 +529,9 @@ files:
531
529
  - lib/sequel/extensions/schema_caching.rb
532
530
  - lib/sequel/extensions/null_dataset.rb
533
531
  - lib/sequel/extensions/_pretty_table.rb
534
- - lib/sequel/extensions/columns_introspection.rb
532
+ - lib/sequel/extensions/constraint_validations.rb
535
533
  - lib/sequel/extensions/select_remove.rb
536
- - lib/sequel/extensions/core_extensions.rb
534
+ - lib/sequel/extensions/date_arithmetic.rb
537
535
  - lib/sequel/extensions/query_literals.rb
538
536
  - lib/sequel/extensions/pg_inet.rb
539
537
  - lib/sequel/extensions/eval_inspect.rb
@@ -543,17 +541,16 @@ files:
543
541
  - lib/sequel/extensions/pg_interval.rb
544
542
  - lib/sequel/extensions/pg_row.rb
545
543
  - lib/sequel/extensions/pg_row_ops.rb
546
- - lib/sequel/extensions/constraint_validations.rb
544
+ - lib/sequel/extensions/graph_each.rb
547
545
  - lib/sequel/extensions/connection_validator.rb
548
- - lib/sequel/extensions/date_arithmetic.rb
546
+ - lib/sequel/extensions/set_overrides.rb
549
547
  - lib/sequel/extensions/core_refinements.rb
550
548
  - lib/sequel/extensions/meta_def.rb
551
549
  - lib/sequel/extensions/filter_having.rb
552
550
  - lib/sequel/extensions/hash_aliases.rb
553
551
  - lib/sequel/extensions/ruby18_symbol_extensions.rb
554
- - lib/sequel/extensions/set_overrides.rb
555
- - lib/sequel/extensions/graph_each.rb
556
552
  - lib/sequel/extensions/sequel_3_dataset_methods.rb
553
+ - lib/sequel/extensions/pg_json_ops.rb
557
554
  - lib/sequel/extensions/empty_array_ignore_nulls.rb
558
555
  - lib/sequel/version.rb
559
556
  - lib/sequel/model.rb
@@ -573,7 +570,7 @@ files:
573
570
  - lib/sequel/plugins/class_table_inheritance.rb
574
571
  - lib/sequel/plugins/force_encoding.rb
575
572
  - lib/sequel/plugins/hook_class_methods.rb
576
- - lib/sequel/plugins/identity_map.rb
573
+ - lib/sequel/plugins/composition.rb
577
574
  - lib/sequel/plugins/instance_hooks.rb
578
575
  - lib/sequel/plugins/lazy_attributes.rb
579
576
  - lib/sequel/plugins/many_through_many.rb
@@ -589,7 +586,7 @@ files:
589
586
  - lib/sequel/plugins/typecast_on_load.rb
590
587
  - lib/sequel/plugins/validation_class_methods.rb
591
588
  - lib/sequel/plugins/validation_helpers.rb
592
- - lib/sequel/plugins/composition.rb
589
+ - lib/sequel/plugins/list.rb
593
590
  - lib/sequel/plugins/rcte_tree.rb
594
591
  - lib/sequel/plugins/instance_filters.rb
595
592
  - lib/sequel/plugins/sharding.rb
@@ -598,7 +595,6 @@ files:
598
595
  - lib/sequel/plugins/update_primary_key.rb
599
596
  - lib/sequel/plugins/association_pks.rb
600
597
  - lib/sequel/plugins/json_serializer.rb
601
- - lib/sequel/plugins/list.rb
602
598
  - lib/sequel/plugins/tree.rb
603
599
  - lib/sequel/plugins/static_cache.rb
604
600
  - lib/sequel/plugins/xml_serializer.rb
@@ -623,13 +619,11 @@ files:
623
619
  - lib/sequel/plugins/input_transformer.rb
624
620
  - lib/sequel/plugins/after_initialize.rb
625
621
  - lib/sequel/plugins/blacklist_security.rb
622
+ - lib/sequel/plugins/pg_array_associations.rb
626
623
  - lib/sequel/timezones.rb
627
624
  - lib/sequel/deprecated.rb
628
625
  - lib/sequel/ast_transformer.rb
629
626
  - lib/sequel/no_core_ext.rb
630
- - lib/sequel/deprecated_core_extensions.rb
631
- - lib/sequel_core.rb
632
- - lib/sequel_model.rb
633
627
  homepage: http://sequel.rubyforge.org
634
628
  licenses: []
635
629
  metadata: {}
@@ -656,7 +650,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
656
650
  version: '0'
657
651
  requirements: []
658
652
  rubyforge_project: sequel
659
- rubygems_version: 2.0.2
653
+ rubygems_version: 2.0.3
660
654
  signing_key:
661
655
  specification_version: 4
662
656
  summary: The Database Toolkit for Ruby
@@ -1,135 +0,0 @@
1
- def Sequel.core_extensions?
2
- true
3
- end
4
-
5
- class Array
6
- def ~
7
- Sequel::Deprecation.deprecate('Array#~', 'Please use Sequel.~ instead, or Sequel.extension(:core_extensions) to continue using it')
8
- Sequel.~(self)
9
- end
10
-
11
- def case(*args)
12
- Sequel::Deprecation.deprecate('Array#case', 'Please use Sequel.case instead, or Sequel.extension(:core_extensions) to continue using it')
13
- ::Sequel::SQL::CaseExpression.new(self, *args)
14
- end
15
-
16
- def sql_value_list
17
- Sequel::Deprecation.deprecate('Array#sql_value_list/Array#sql_array', 'Please use Sequel.value_list instead, or Sequel.extension(:core_extensions) to continue using it')
18
- ::Sequel::SQL::ValueList.new(self)
19
- end
20
- alias sql_array sql_value_list
21
-
22
- def sql_expr
23
- Sequel::Deprecation.deprecate('Array#sql_expr', 'Please use Sequel.expr instead, or Sequel.extension(:core_extensions) to continue using it')
24
- Sequel.expr(self)
25
- end
26
-
27
- def sql_negate
28
- Sequel::Deprecation.deprecate('Array#sql_negate', 'Please use Sequel.negate instead, or Sequel.extension(:core_extensions) to continue using it')
29
- Sequel.negate(self)
30
- end
31
-
32
- def sql_or
33
- Sequel::Deprecation.deprecate('Array#sql_or', 'Please use Sequel.or instead, or Sequel.extension(:core_extensions) to continue using it')
34
- Sequel.or(self)
35
- end
36
-
37
- def sql_string_join(joiner=nil)
38
- Sequel::Deprecation.deprecate('Array#sql_string_join', 'Please use Sequel.join instead, or Sequel.extension(:core_extensions) to continue using it')
39
- Sequel.join(self, joiner)
40
- end
41
- end
42
-
43
- class Hash
44
- def &(ce)
45
- Sequel::Deprecation.deprecate('Hash#&', 'Please use Sequel.& instead, or Sequel.extension(:core_extensions) to continue using it')
46
- ::Sequel::SQL::BooleanExpression.new(:AND, self, ce)
47
- end
48
-
49
- def |(ce)
50
- Sequel::Deprecation.deprecate('Hash#|', 'Please use Sequel.| instead, or Sequel.extension(:core_extensions) to continue using it')
51
- ::Sequel::SQL::BooleanExpression.new(:OR, self, ce)
52
- end
53
-
54
- def ~
55
- Sequel::Deprecation.deprecate('Hash#~', 'Please use Sequel.~ instead, or Sequel.extension(:core_extensions) to continue using it')
56
- ::Sequel::SQL::BooleanExpression.from_value_pairs(self, :OR, true)
57
- end
58
-
59
- def case(*args)
60
- Sequel::Deprecation.deprecate('Hash#case', 'Please use Sequel.case instead, or Sequel.extension(:core_extensions) to continue using it')
61
- ::Sequel::SQL::CaseExpression.new(to_a, *args)
62
- end
63
-
64
- def sql_expr
65
- Sequel::Deprecation.deprecate('Hash#sql_expr', 'Please use Sequel.expr instead, or Sequel.extension(:core_extensions) to continue using it')
66
- ::Sequel::SQL::BooleanExpression.from_value_pairs(self)
67
- end
68
-
69
- def sql_negate
70
- Sequel::Deprecation.deprecate('Hash#sql_negate', 'Please use Sequel.negate instead, or Sequel.extension(:core_extensions) to continue using it')
71
- ::Sequel::SQL::BooleanExpression.from_value_pairs(self, :AND, true)
72
- end
73
-
74
- def sql_or
75
- Sequel::Deprecation.deprecate('Hash#sql_or', 'Please use Sequel.or instead, or Sequel.extension(:core_extensions) to continue using it')
76
- ::Sequel::SQL::BooleanExpression.from_value_pairs(self, :OR)
77
- end
78
- end
79
-
80
- class String
81
- include Sequel::Deprecation.deprecated_module(Sequel::SQL::AliasMethods){|meth| ["String#as", 'Please use Sequel.as instead, or Sequel.extension(:core_extensions) to continue using it']}
82
- include Sequel::Deprecation.deprecated_module(Sequel::SQL::CastMethods){|meth| ["String##{meth}", "Please use Sequel.#{meth} instead, or Sequel.extension(:core_extensions) to continue using it"]}
83
-
84
- def lit(*args)
85
- Sequel::Deprecation.deprecate('String#lit', 'Please use Sequel.lit instead, or Sequel.extension(:core_extensions) to continue using it')
86
- args.empty? ? Sequel::LiteralString.new(self) : Sequel::SQL::PlaceholderLiteralString.new(self, args)
87
- end
88
-
89
- def to_sequel_blob
90
- Sequel::Deprecation.deprecate('String#to_sequel_blob', 'Please use Sequel.blob instead, or Sequel.extension(:core_extensions) to continue using it')
91
- ::Sequel::SQL::Blob.new(self)
92
- end
93
- end
94
-
95
- class Symbol
96
- include Sequel::Deprecation.deprecated_module(Sequel::SQL::AliasMethods){|meth| ["Symbol#as", 'Please use Sequel.as instead, or Sequel.extension(:core_extensions) to continue using it']}
97
- include Sequel::Deprecation.deprecated_module(Sequel::SQL::CastMethods){|meth| ["Symbol##{meth}", "Please use Sequel.#{meth} instead, or Sequel.extension(:core_extensions) to continue using it"]}
98
- include Sequel::Deprecation.deprecated_module(Sequel::SQL::OrderMethods){|meth| ["Symbol##{meth}", "Please use Sequel.#{meth} instead, or Sequel.extension(:core_extensions) to continue using it"]}
99
- include Sequel::Deprecation.deprecated_module(Sequel::SQL::BooleanMethods){|meth| ["Symbol##{meth}", "Please use Sequel.#{meth} instead, or Sequel.extension(:core_extensions) to continue using it"]}
100
- include Sequel::Deprecation.deprecated_module(Sequel::SQL::NumericMethods){|meth| ["Symbol##{meth}", "Please use Sequel.#{meth} instead, or Sequel.extension(:core_extensions) to continue using it"]}
101
- include(Sequel::Deprecation.deprecated_module(Sequel::SQL::QualifyingMethods){|meth| ["Symbol##{meth}", "Please use Sequel.#{meth} instead, or Sequel.extension(:core_extensions) to continue using it"]}.module_eval do
102
- def *(ce=(arg=false;nil))
103
- if arg == false
104
- Sequel::Deprecation.deprecate('Symbol#*', "Please use Sequel.expr(symbol).* instead, or Sequel.extension(:core_extensions) to continue using it")
105
- Sequel::SQL::ColumnAll.new(self)
106
- else
107
- super(ce)
108
- end
109
- end
110
- self
111
- end)
112
- include Sequel::Deprecation.deprecated_module(Sequel::SQL::StringMethods){|meth| ["Symbol##{meth}", "Please use Sequel.#{meth} instead, or Sequel.extension(:core_extensions) to continue using it"]}
113
- include Sequel::Deprecation.deprecated_module(Sequel::SQL::SubscriptMethods){["Symbol#sql_subscript", "Please use Sequel.subscript instead, or Sequel.extension(:core_extensions) to continue using it"]}
114
- include Sequel::Deprecation.deprecated_module(Sequel::SQL::ComplexExpressionMethods){|meth| ["Symbol##{meth}", "Please use Sequel.expr(symbol).#{meth} instead, or Sequel.extension(:core_extensions) to continue using it"]}
115
-
116
- if RUBY_VERSION < '1.9.0'
117
- include Sequel::Deprecation.deprecated_module(Sequel::SQL::InequalityMethods){|meth| ["Symbol##{meth}", "Please use Sequel.expr(symbol).#{meth} instead, or Sequel.extension(:ruby18_symbol_extensions) to continue using it"]}
118
- end
119
-
120
- def identifier
121
- Sequel::Deprecation.deprecate('Symbol#identifier', 'Please use Sequel.identifier instead, or Sequel.extension(:core_extensions) to continue using it')
122
- Sequel::SQL::Identifier.new(self)
123
- end
124
-
125
- def sql_function(*args)
126
- Sequel::Deprecation.deprecate('Symbol#sql_function', 'Please use Sequel.function instead, or Sequel.extension(:core_extensions) to continue using it')
127
- Sequel::SQL::Function.new(self, *args)
128
- end
129
- if RUBY_VERSION < '1.9.0'
130
- def [](*args)
131
- Sequel::Deprecation.deprecate('Symbol#[]', 'Please use Sequel.function instead, or Sequel.extension(:ruby18_symbol_extensions) to continue using it')
132
- Sequel::SQL::Function.new(self, *args)
133
- end
134
- end
135
- end