sequel 3.21.0 → 3.39.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 (352) hide show
  1. data/CHANGELOG +1061 -3
  2. data/MIT-LICENSE +1 -1
  3. data/README.rdoc +103 -63
  4. data/Rakefile +59 -27
  5. data/bin/sequel +50 -26
  6. data/doc/active_record.rdoc +67 -51
  7. data/doc/advanced_associations.rdoc +189 -75
  8. data/doc/association_basics.rdoc +327 -79
  9. data/doc/cheat_sheet.rdoc +21 -21
  10. data/doc/core_extensions.rdoc +374 -0
  11. data/doc/dataset_basics.rdoc +10 -10
  12. data/doc/dataset_filtering.rdoc +54 -42
  13. data/doc/mass_assignment.rdoc +56 -0
  14. data/doc/migration.rdoc +89 -557
  15. data/doc/model_hooks.rdoc +80 -29
  16. data/doc/object_model.rdoc +547 -0
  17. data/doc/opening_databases.rdoc +114 -53
  18. data/doc/prepared_statements.rdoc +41 -15
  19. data/doc/querying.rdoc +137 -56
  20. data/doc/reflection.rdoc +36 -10
  21. data/doc/release_notes/3.22.0.txt +39 -0
  22. data/doc/release_notes/3.23.0.txt +172 -0
  23. data/doc/release_notes/3.24.0.txt +420 -0
  24. data/doc/release_notes/3.25.0.txt +88 -0
  25. data/doc/release_notes/3.26.0.txt +88 -0
  26. data/doc/release_notes/3.27.0.txt +82 -0
  27. data/doc/release_notes/3.28.0.txt +304 -0
  28. data/doc/release_notes/3.29.0.txt +459 -0
  29. data/doc/release_notes/3.30.0.txt +135 -0
  30. data/doc/release_notes/3.31.0.txt +146 -0
  31. data/doc/release_notes/3.32.0.txt +202 -0
  32. data/doc/release_notes/3.33.0.txt +157 -0
  33. data/doc/release_notes/3.34.0.txt +671 -0
  34. data/doc/release_notes/3.35.0.txt +144 -0
  35. data/doc/release_notes/3.36.0.txt +245 -0
  36. data/doc/release_notes/3.37.0.txt +338 -0
  37. data/doc/release_notes/3.38.0.txt +234 -0
  38. data/doc/release_notes/3.39.0.txt +237 -0
  39. data/doc/schema_modification.rdoc +585 -0
  40. data/doc/sharding.rdoc +99 -8
  41. data/doc/sql.rdoc +154 -112
  42. data/doc/testing.rdoc +169 -0
  43. data/doc/thread_safety.rdoc +17 -0
  44. data/doc/transactions.rdoc +137 -0
  45. data/doc/validations.rdoc +1 -1
  46. data/doc/virtual_rows.rdoc +78 -43
  47. data/lib/sequel/adapters/ado/mssql.rb +18 -6
  48. data/lib/sequel/adapters/ado.rb +40 -18
  49. data/lib/sequel/adapters/amalgalite.rb +17 -9
  50. data/lib/sequel/adapters/db2.rb +175 -86
  51. data/lib/sequel/adapters/dbi.rb +15 -15
  52. data/lib/sequel/adapters/do/mysql.rb +17 -11
  53. data/lib/sequel/adapters/do/postgres.rb +2 -61
  54. data/lib/sequel/adapters/do/sqlite.rb +0 -10
  55. data/lib/sequel/adapters/do.rb +18 -36
  56. data/lib/sequel/adapters/firebird.rb +27 -208
  57. data/lib/sequel/adapters/ibmdb.rb +453 -0
  58. data/lib/sequel/adapters/informix.rb +6 -23
  59. data/lib/sequel/adapters/jdbc/as400.rb +16 -34
  60. data/lib/sequel/adapters/jdbc/db2.rb +56 -0
  61. data/lib/sequel/adapters/jdbc/derby.rb +325 -0
  62. data/lib/sequel/adapters/jdbc/firebird.rb +24 -0
  63. data/lib/sequel/adapters/jdbc/h2.rb +73 -31
  64. data/lib/sequel/adapters/jdbc/hsqldb.rb +184 -0
  65. data/lib/sequel/adapters/jdbc/informix.rb +21 -0
  66. data/lib/sequel/adapters/jdbc/jtds.rb +40 -0
  67. data/lib/sequel/adapters/jdbc/mssql.rb +3 -33
  68. data/lib/sequel/adapters/jdbc/mysql.rb +7 -24
  69. data/lib/sequel/adapters/jdbc/oracle.rb +88 -25
  70. data/lib/sequel/adapters/jdbc/postgresql.rb +77 -52
  71. data/lib/sequel/adapters/jdbc/progress.rb +21 -0
  72. data/lib/sequel/adapters/jdbc/sqlite.rb +20 -10
  73. data/lib/sequel/adapters/jdbc/sqlserver.rb +66 -0
  74. data/lib/sequel/adapters/jdbc/transactions.rb +83 -0
  75. data/lib/sequel/adapters/jdbc.rb +279 -97
  76. data/lib/sequel/adapters/mock.rb +372 -0
  77. data/lib/sequel/adapters/mysql.rb +125 -222
  78. data/lib/sequel/adapters/mysql2.rb +65 -56
  79. data/lib/sequel/adapters/odbc/mssql.rb +17 -9
  80. data/lib/sequel/adapters/odbc.rb +28 -9
  81. data/lib/sequel/adapters/openbase.rb +3 -5
  82. data/lib/sequel/adapters/oracle.rb +349 -53
  83. data/lib/sequel/adapters/postgres.rb +368 -138
  84. data/lib/sequel/adapters/shared/access.rb +32 -9
  85. data/lib/sequel/adapters/shared/db2.rb +343 -0
  86. data/lib/sequel/adapters/shared/firebird.rb +221 -0
  87. data/lib/sequel/adapters/shared/informix.rb +53 -0
  88. data/lib/sequel/adapters/shared/mssql.rb +401 -116
  89. data/lib/sequel/adapters/shared/mysql.rb +424 -89
  90. data/lib/sequel/adapters/shared/mysql_prepared_statements.rb +155 -0
  91. data/lib/sequel/adapters/shared/oracle.rb +257 -45
  92. data/lib/sequel/adapters/shared/postgres.rb +675 -279
  93. data/lib/sequel/adapters/shared/progress.rb +5 -8
  94. data/lib/sequel/adapters/shared/sqlite.rb +285 -96
  95. data/lib/sequel/adapters/sqlite.rb +101 -39
  96. data/lib/sequel/adapters/swift/mysql.rb +10 -12
  97. data/lib/sequel/adapters/swift/postgres.rb +13 -79
  98. data/lib/sequel/adapters/swift/sqlite.rb +9 -6
  99. data/lib/sequel/adapters/swift.rb +28 -19
  100. data/lib/sequel/adapters/tinytds.rb +174 -22
  101. data/lib/sequel/adapters/utils/emulate_offset_with_row_number.rb +77 -0
  102. data/lib/sequel/adapters/utils/pg_types.rb +81 -0
  103. data/lib/sequel/adapters/utils/stored_procedures.rb +1 -11
  104. data/lib/sequel/ast_transformer.rb +194 -0
  105. data/lib/sequel/connection_pool/sharded_single.rb +11 -1
  106. data/lib/sequel/connection_pool/sharded_threaded.rb +33 -2
  107. data/lib/sequel/connection_pool/single.rb +5 -0
  108. data/lib/sequel/connection_pool/threaded.rb +43 -14
  109. data/lib/sequel/connection_pool.rb +10 -2
  110. data/lib/sequel/core.rb +143 -11
  111. data/lib/sequel/database/connecting.rb +38 -28
  112. data/lib/sequel/database/dataset.rb +4 -4
  113. data/lib/sequel/database/dataset_defaults.rb +63 -2
  114. data/lib/sequel/database/logging.rb +7 -2
  115. data/lib/sequel/database/misc.rb +190 -46
  116. data/lib/sequel/database/query.rb +272 -110
  117. data/lib/sequel/database/schema_generator.rb +103 -36
  118. data/lib/sequel/database/schema_methods.rb +300 -67
  119. data/lib/sequel/dataset/actions.rb +344 -90
  120. data/lib/sequel/dataset/features.rb +101 -8
  121. data/lib/sequel/dataset/graph.rb +42 -15
  122. data/lib/sequel/dataset/misc.rb +52 -25
  123. data/lib/sequel/dataset/mutation.rb +12 -7
  124. data/lib/sequel/dataset/prepared_statements.rb +68 -30
  125. data/lib/sequel/dataset/query.rb +305 -54
  126. data/lib/sequel/dataset/sql.rb +720 -292
  127. data/lib/sequel/dataset.rb +8 -0
  128. data/lib/sequel/exceptions.rb +4 -0
  129. data/lib/sequel/extensions/_pretty_table.rb +83 -0
  130. data/lib/sequel/extensions/arbitrary_servers.rb +109 -0
  131. data/lib/sequel/extensions/blank.rb +4 -0
  132. data/lib/sequel/extensions/columns_introspection.rb +72 -0
  133. data/lib/sequel/extensions/constraint_validations.rb +451 -0
  134. data/lib/sequel/{core_sql.rb → extensions/core_extensions.rb} +30 -46
  135. data/lib/sequel/extensions/eval_inspect.rb +173 -0
  136. data/lib/sequel/extensions/inflector.rb +4 -0
  137. data/lib/sequel/extensions/looser_typecasting.rb +5 -4
  138. data/lib/sequel/extensions/migration.rb +100 -11
  139. data/lib/sequel/extensions/named_timezones.rb +9 -0
  140. data/lib/sequel/extensions/null_dataset.rb +94 -0
  141. data/lib/sequel/extensions/pagination.rb +4 -0
  142. data/lib/sequel/extensions/pg_array.rb +537 -0
  143. data/lib/sequel/extensions/pg_array_ops.rb +263 -0
  144. data/lib/sequel/extensions/pg_auto_parameterize.rb +175 -0
  145. data/lib/sequel/extensions/pg_hstore.rb +313 -0
  146. data/lib/sequel/extensions/pg_hstore_ops.rb +293 -0
  147. data/lib/sequel/extensions/pg_inet.rb +113 -0
  148. data/lib/sequel/extensions/pg_interval.rb +191 -0
  149. data/lib/sequel/extensions/pg_json.rb +208 -0
  150. data/lib/sequel/extensions/pg_range.rb +512 -0
  151. data/lib/sequel/extensions/pg_range_ops.rb +150 -0
  152. data/lib/sequel/extensions/pg_row.rb +572 -0
  153. data/lib/sequel/extensions/pg_row_ops.rb +182 -0
  154. data/lib/sequel/extensions/pg_statement_cache.rb +317 -0
  155. data/lib/sequel/extensions/pretty_table.rb +17 -72
  156. data/lib/sequel/extensions/query.rb +8 -4
  157. data/lib/sequel/extensions/query_literals.rb +79 -0
  158. data/lib/sequel/extensions/schema_caching.rb +76 -0
  159. data/lib/sequel/extensions/schema_dumper.rb +282 -76
  160. data/lib/sequel/extensions/select_remove.rb +39 -0
  161. data/lib/sequel/extensions/server_block.rb +140 -0
  162. data/lib/sequel/extensions/split_array_nil.rb +65 -0
  163. data/lib/sequel/extensions/sql_expr.rb +8 -110
  164. data/lib/sequel/extensions/string_date_time.rb +4 -0
  165. data/lib/sequel/extensions/thread_local_timezones.rb +10 -4
  166. data/lib/sequel/extensions/to_dot.rb +99 -83
  167. data/lib/sequel/model/associations.rb +1263 -409
  168. data/lib/sequel/model/base.rb +624 -171
  169. data/lib/sequel/model/errors.rb +1 -1
  170. data/lib/sequel/model/exceptions.rb +24 -2
  171. data/lib/sequel/model/inflections.rb +1 -1
  172. data/lib/sequel/model.rb +30 -11
  173. data/lib/sequel/no_core_ext.rb +2 -0
  174. data/lib/sequel/plugins/active_model.rb +13 -1
  175. data/lib/sequel/plugins/association_pks.rb +22 -4
  176. data/lib/sequel/plugins/caching.rb +25 -18
  177. data/lib/sequel/plugins/class_table_inheritance.rb +4 -4
  178. data/lib/sequel/plugins/composition.rb +44 -12
  179. data/lib/sequel/plugins/constraint_validations.rb +198 -0
  180. data/lib/sequel/plugins/dataset_associations.rb +100 -0
  181. data/lib/sequel/plugins/defaults_setter.rb +72 -0
  182. data/lib/sequel/plugins/dirty.rb +214 -0
  183. data/lib/sequel/plugins/eager_each.rb +59 -0
  184. data/lib/sequel/plugins/force_encoding.rb +6 -6
  185. data/lib/sequel/plugins/hook_class_methods.rb +1 -1
  186. data/lib/sequel/plugins/identity_map.rb +134 -15
  187. data/lib/sequel/plugins/instance_filters.rb +10 -0
  188. data/lib/sequel/plugins/instance_hooks.rb +1 -1
  189. data/lib/sequel/plugins/json_serializer.rb +58 -6
  190. data/lib/sequel/plugins/list.rb +13 -2
  191. data/lib/sequel/plugins/many_through_many.rb +103 -51
  192. data/lib/sequel/plugins/many_to_one_pk_lookup.rb +71 -0
  193. data/lib/sequel/plugins/nested_attributes.rb +150 -66
  194. data/lib/sequel/plugins/optimistic_locking.rb +8 -0
  195. data/lib/sequel/plugins/pg_row.rb +121 -0
  196. data/lib/sequel/plugins/pg_typecast_on_load.rb +65 -0
  197. data/lib/sequel/plugins/prepared_statements.rb +167 -0
  198. data/lib/sequel/plugins/prepared_statements_associations.rb +87 -0
  199. data/lib/sequel/plugins/prepared_statements_safe.rb +82 -0
  200. data/lib/sequel/plugins/prepared_statements_with_pk.rb +59 -0
  201. data/lib/sequel/plugins/rcte_tree.rb +31 -17
  202. data/lib/sequel/plugins/schema.rb +8 -3
  203. data/lib/sequel/plugins/serialization.rb +98 -49
  204. data/lib/sequel/plugins/serialization_modification_detection.rb +63 -0
  205. data/lib/sequel/plugins/sharding.rb +21 -54
  206. data/lib/sequel/plugins/single_table_inheritance.rb +5 -3
  207. data/lib/sequel/plugins/static_cache.rb +99 -0
  208. data/lib/sequel/plugins/subclasses.rb +29 -3
  209. data/lib/sequel/plugins/tactical_eager_loading.rb +7 -7
  210. data/lib/sequel/plugins/timestamps.rb +1 -1
  211. data/lib/sequel/plugins/tree.rb +3 -3
  212. data/lib/sequel/plugins/typecast_on_load.rb +9 -12
  213. data/lib/sequel/plugins/update_primary_key.rb +2 -2
  214. data/lib/sequel/plugins/validation_class_methods.rb +1 -1
  215. data/lib/sequel/plugins/validation_helpers.rb +55 -4
  216. data/lib/sequel/plugins/xml_serializer.rb +15 -4
  217. data/lib/sequel/sql.rb +649 -122
  218. data/lib/sequel/timezones.rb +67 -40
  219. data/lib/sequel/version.rb +1 -1
  220. data/spec/adapters/db2_spec.rb +146 -0
  221. data/spec/adapters/firebird_spec.rb +1 -1
  222. data/spec/adapters/mssql_spec.rb +194 -66
  223. data/spec/adapters/mysql_spec.rb +475 -306
  224. data/spec/adapters/oracle_spec.rb +92 -117
  225. data/spec/adapters/postgres_spec.rb +1982 -325
  226. data/spec/adapters/spec_helper.rb +9 -6
  227. data/spec/adapters/sqlite_spec.rb +203 -75
  228. data/spec/core/connection_pool_spec.rb +218 -93
  229. data/spec/core/database_spec.rb +956 -522
  230. data/spec/core/dataset_spec.rb +1631 -1242
  231. data/spec/core/expression_filters_spec.rb +690 -334
  232. data/spec/core/mock_adapter_spec.rb +453 -0
  233. data/spec/core/object_graph_spec.rb +88 -129
  234. data/spec/core/schema_generator_spec.rb +4 -4
  235. data/spec/core/schema_spec.rb +556 -53
  236. data/spec/core/spec_helper.rb +7 -48
  237. data/spec/core_extensions_spec.rb +626 -0
  238. data/spec/extensions/active_model_spec.rb +13 -0
  239. data/spec/extensions/arbitrary_servers_spec.rb +110 -0
  240. data/spec/extensions/association_autoreloading_spec.rb +18 -10
  241. data/spec/extensions/association_dependencies_spec.rb +15 -25
  242. data/spec/extensions/association_pks_spec.rb +66 -32
  243. data/spec/extensions/association_proxies_spec.rb +4 -4
  244. data/spec/extensions/boolean_readers_spec.rb +25 -25
  245. data/spec/extensions/caching_spec.rb +47 -51
  246. data/spec/extensions/class_table_inheritance_spec.rb +31 -83
  247. data/spec/extensions/columns_introspection_spec.rb +91 -0
  248. data/spec/extensions/composition_spec.rb +18 -13
  249. data/spec/extensions/constraint_validations_plugin_spec.rb +196 -0
  250. data/spec/extensions/constraint_validations_spec.rb +316 -0
  251. data/spec/extensions/dataset_associations_spec.rb +199 -0
  252. data/spec/extensions/defaults_setter_spec.rb +88 -0
  253. data/spec/extensions/dirty_spec.rb +155 -0
  254. data/spec/extensions/eager_each_spec.rb +34 -0
  255. data/spec/extensions/eval_inspect_spec.rb +67 -0
  256. data/spec/extensions/force_encoding_spec.rb +4 -2
  257. data/spec/extensions/hook_class_methods_spec.rb +97 -128
  258. data/spec/extensions/identity_map_spec.rb +142 -24
  259. data/spec/extensions/inflector_spec.rb +0 -4
  260. data/spec/extensions/instance_filters_spec.rb +11 -21
  261. data/spec/extensions/instance_hooks_spec.rb +72 -0
  262. data/spec/extensions/json_serializer_spec.rb +49 -12
  263. data/spec/extensions/lazy_attributes_spec.rb +16 -20
  264. data/spec/extensions/list_spec.rb +49 -40
  265. data/spec/extensions/looser_typecasting_spec.rb +7 -7
  266. data/spec/extensions/many_through_many_spec.rb +368 -254
  267. data/spec/extensions/many_to_one_pk_lookup_spec.rb +140 -0
  268. data/spec/extensions/migration_spec.rb +140 -35
  269. data/spec/extensions/named_timezones_spec.rb +29 -11
  270. data/spec/extensions/nested_attributes_spec.rb +268 -89
  271. data/spec/extensions/null_dataset_spec.rb +85 -0
  272. data/spec/extensions/optimistic_locking_spec.rb +24 -21
  273. data/spec/extensions/pg_array_ops_spec.rb +112 -0
  274. data/spec/extensions/pg_array_spec.rb +320 -0
  275. data/spec/extensions/pg_auto_parameterize_spec.rb +65 -0
  276. data/spec/extensions/pg_hstore_ops_spec.rb +140 -0
  277. data/spec/extensions/pg_hstore_spec.rb +194 -0
  278. data/spec/extensions/pg_inet_spec.rb +47 -0
  279. data/spec/extensions/pg_interval_spec.rb +72 -0
  280. data/spec/extensions/pg_json_spec.rb +99 -0
  281. data/spec/extensions/pg_range_ops_spec.rb +56 -0
  282. data/spec/extensions/pg_range_spec.rb +395 -0
  283. data/spec/extensions/pg_row_ops_spec.rb +58 -0
  284. data/spec/extensions/pg_row_plugin_spec.rb +49 -0
  285. data/spec/extensions/pg_row_spec.rb +323 -0
  286. data/spec/extensions/pg_statement_cache_spec.rb +208 -0
  287. data/spec/extensions/pg_typecast_on_load_spec.rb +58 -0
  288. data/spec/extensions/prepared_statements_associations_spec.rb +111 -0
  289. data/spec/extensions/prepared_statements_safe_spec.rb +61 -0
  290. data/spec/extensions/prepared_statements_spec.rb +87 -0
  291. data/spec/extensions/prepared_statements_with_pk_spec.rb +31 -0
  292. data/spec/extensions/pretty_table_spec.rb +7 -6
  293. data/spec/extensions/query_literals_spec.rb +167 -0
  294. data/spec/extensions/query_spec.rb +9 -3
  295. data/spec/extensions/rcte_tree_spec.rb +50 -43
  296. data/spec/extensions/schema_caching_spec.rb +41 -0
  297. data/spec/extensions/schema_dumper_spec.rb +434 -49
  298. data/spec/extensions/schema_spec.rb +30 -49
  299. data/spec/extensions/select_remove_spec.rb +38 -0
  300. data/spec/extensions/serialization_modification_detection_spec.rb +72 -0
  301. data/spec/extensions/serialization_spec.rb +86 -48
  302. data/spec/extensions/server_block_spec.rb +90 -0
  303. data/spec/extensions/sharding_spec.rb +69 -143
  304. data/spec/extensions/single_table_inheritance_spec.rb +23 -29
  305. data/spec/extensions/skip_create_refresh_spec.rb +1 -1
  306. data/spec/extensions/spec_helper.rb +34 -67
  307. data/spec/extensions/split_array_nil_spec.rb +24 -0
  308. data/spec/extensions/sql_expr_spec.rb +29 -60
  309. data/spec/extensions/static_cache_spec.rb +145 -0
  310. data/spec/extensions/subclasses_spec.rb +14 -0
  311. data/spec/extensions/tactical_eager_loading_spec.rb +17 -19
  312. data/spec/extensions/thread_local_timezones_spec.rb +22 -2
  313. data/spec/extensions/timestamps_spec.rb +6 -6
  314. data/spec/extensions/to_dot_spec.rb +8 -11
  315. data/spec/extensions/touch_spec.rb +13 -14
  316. data/spec/extensions/tree_spec.rb +11 -26
  317. data/spec/extensions/typecast_on_load_spec.rb +9 -6
  318. data/spec/extensions/update_primary_key_spec.rb +30 -24
  319. data/spec/extensions/validation_class_methods_spec.rb +58 -67
  320. data/spec/extensions/validation_helpers_spec.rb +31 -37
  321. data/spec/extensions/xml_serializer_spec.rb +29 -4
  322. data/spec/files/transaction_specified_migrations/001_create_alt_basic.rb +4 -0
  323. data/spec/files/transaction_specified_migrations/002_create_basic.rb +4 -0
  324. data/spec/files/transaction_unspecified_migrations/001_create_alt_basic.rb +3 -0
  325. data/spec/files/transaction_unspecified_migrations/002_create_basic.rb +3 -0
  326. data/spec/integration/associations_test.rb +659 -21
  327. data/spec/integration/database_test.rb +11 -5
  328. data/spec/integration/dataset_test.rb +717 -129
  329. data/spec/integration/eager_loader_test.rb +38 -54
  330. data/spec/integration/migrator_test.rb +2 -3
  331. data/spec/integration/model_test.rb +81 -2
  332. data/spec/integration/plugin_test.rb +604 -147
  333. data/spec/integration/prepared_statement_test.rb +272 -128
  334. data/spec/integration/schema_test.rb +367 -57
  335. data/spec/integration/spec_helper.rb +42 -32
  336. data/spec/integration/timezone_test.rb +38 -12
  337. data/spec/integration/transaction_test.rb +183 -8
  338. data/spec/integration/type_test.rb +31 -8
  339. data/spec/model/association_reflection_spec.rb +207 -8
  340. data/spec/model/associations_spec.rb +1206 -693
  341. data/spec/model/base_spec.rb +334 -100
  342. data/spec/model/dataset_methods_spec.rb +45 -27
  343. data/spec/model/eager_loading_spec.rb +828 -692
  344. data/spec/model/hooks_spec.rb +355 -67
  345. data/spec/model/model_spec.rb +251 -179
  346. data/spec/model/plugins_spec.rb +24 -13
  347. data/spec/model/record_spec.rb +506 -232
  348. data/spec/model/spec_helper.rb +16 -77
  349. data/spec/model/validations_spec.rb +38 -2
  350. data/spec/rcov.opts +2 -0
  351. metadata +209 -80
  352. data/spec/core/core_sql_spec.rb +0 -451
@@ -1,86 +1,23 @@
1
1
  require 'rubygems'
2
- unless Object.const_defined?('Sequel')
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/core'
4
+ require 'sequel/no_core_ext'
5
5
  end
6
- unless Sequel.const_defined?('Model')
7
- $:.unshift(File.join(File.dirname(File.expand_path(__FILE__)), "../../lib/"))
8
- require 'sequel/model'
9
- end
10
-
11
- class MockDataset < Sequel::Dataset
12
- def insert(*args)
13
- @db.execute insert_sql(*args)
14
- end
15
-
16
- def update(*args)
17
- @db.execute update_sql(*args)
18
- 1
19
- end
20
-
21
- def delete(*args)
22
- @db.execute delete_sql(*args)
23
- 1
24
- end
25
-
26
- def fetch_rows(sql)
27
- return if sql =~ /information_schema/
28
- @db.execute(sql)
29
- yield({:id => 1, :x => 1})
30
- end
31
6
 
32
- def quoted_identifier(c)
33
- "\"#{c}\""
34
- end
7
+ if ENV['SEQUEL_COLUMNS_INTROSPECTION']
8
+ Sequel.extension :columns_introspection
9
+ Sequel::Dataset.introspect_all_columns
35
10
  end
36
11
 
37
- class MockDatabase < Sequel::Database
38
- @@quote_identifiers = false
39
- self.identifier_input_method = nil
40
- self.identifier_output_method = nil
41
- attr_reader :sqls
42
-
43
- def execute(sql, opts={})
44
- @sqls ||= []
45
- @sqls << sql
46
- end
47
-
48
- def reset
49
- @sqls = []
50
- end
51
-
52
- def schema(table_name, opts)
53
- if table_name
54
- [[:id, {:primary_key=>true}]]
55
- else
56
- {table_name=>[[:id, {:primary_key=>true}]]}
57
- end
58
- end
59
-
60
- def transaction(opts={})
61
- return yield if @transactions.include?(Thread.current)
62
- execute('BEGIN')
63
- begin
64
- @transactions << Thread.current
65
- yield
66
- rescue Exception => e
67
- execute('ROLLBACK')
68
- transaction_error(e)
69
- ensure
70
- unless e
71
- execute('COMMIT')
72
- end
73
- @transactions.delete(Thread.current)
74
- end
75
- end
76
-
77
- def dataset(opts=nil); MockDataset.new(self, opts); end
78
- end
12
+ Sequel.quote_identifiers = false
13
+ Sequel.identifier_input_method = nil
14
+ Sequel.identifier_output_method = nil
79
15
 
80
16
  class << Sequel::Model
17
+ attr_writer :db_schema
81
18
  alias orig_columns columns
82
19
  def columns(*cols)
83
- return if cols.empty?
20
+ return super if cols.empty?
84
21
  define_method(:columns){cols}
85
22
  @dataset.instance_variable_set(:@columns, cols) if @dataset
86
23
  def_column_accessor(*cols)
@@ -88,10 +25,12 @@ class << Sequel::Model
88
25
  @db_schema = {}
89
26
  cols.each{|c| @db_schema[c] = {}}
90
27
  end
91
- def simple_table
92
- nil
93
- end
94
28
  end
95
29
 
96
30
  Sequel::Model.use_transactions = false
97
- Sequel::Model.db = MODEL_DB = MockDatabase.new
31
+ Sequel::Model.cache_anonymous_models = false
32
+
33
+ db = Sequel.mock(:fetch=>{:id => 1, :x => 1}, :numrows=>1, :autoid=>proc{|sql| 10})
34
+ def db.schema(*) [[:id, {:primary_key=>true}]] end
35
+ def db.reset() sqls end
36
+ Sequel::Model.db = MODEL_DB = db
@@ -61,6 +61,17 @@ describe Sequel::Model::Errors do
61
61
  msgs.should include('blow blieuh', 'blow blich', 'blay bliu')
62
62
  end
63
63
 
64
+ specify "should not add column names for LiteralStrings" do
65
+ @errors.full_messages.should == []
66
+
67
+ @errors[:blow] << 'blieuh'
68
+ @errors[:blow] << Sequel.lit('blich')
69
+ @errors[:blay] << 'bliu'
70
+ msgs = @errors.full_messages
71
+ msgs.size.should == 3
72
+ msgs.should include('blow blieuh', 'blich', 'blay bliu')
73
+ end
74
+
64
75
  specify "should return the number of error messages using #count" do
65
76
  @errors.count.should == 0
66
77
  @errors.add(:a, 'b')
@@ -117,6 +128,28 @@ describe Sequel::Model do
117
128
  @o.errors[:blah].should be_empty
118
129
  end
119
130
 
131
+ specify "should allow raising of ValidationFailed with a Model instance with errors" do
132
+ @o.errors.add(:score, 'is too low')
133
+ begin
134
+ raise Sequel::ValidationFailed, @o
135
+ rescue Sequel::ValidationFailed => e
136
+ end
137
+ e.model.should equal(@o)
138
+ e.errors.should equal(@o.errors)
139
+ e.message.should == 'score is too low'
140
+ end
141
+
142
+ specify "should allow raising of ValidationFailed with an Errors instance" do
143
+ @o.errors.add(:score, 'is too low')
144
+ begin
145
+ raise Sequel::ValidationFailed, @o.errors
146
+ rescue Sequel::ValidationFailed => e
147
+ end
148
+ e.model.should be_nil
149
+ e.errors.should equal(@o.errors)
150
+ e.message.should == 'score is too low'
151
+ end
152
+
120
153
  specify "should allow raising of ValidationFailed with a string" do
121
154
  proc{raise Sequel::ValidationFailed, "no reason"}.should raise_error(Sequel::ValidationFailed, "no reason")
122
155
  end
@@ -154,8 +187,11 @@ describe "Model#save" do
154
187
  MODEL_DB.sqls.should == ['UPDATE people SET x = 6 WHERE (id = 4)']
155
188
  end
156
189
 
157
- specify "should raise error if validations fail and raise_on_save_faiure is true" do
158
- proc{@m.save}.should raise_error(Sequel::ValidationFailed){|e| e.errors.should == @m.errors }
190
+ specify "should raise error if validations fail and raise_on_save_failure is true" do
191
+ proc{@m.save}.should(raise_error(Sequel::ValidationFailed) do |e|
192
+ e.model.should equal(@m)
193
+ e.errors.should equal(@m.errors)
194
+ end)
159
195
  end
160
196
 
161
197
  specify "should raise error if validations fail and :raise_on_failure option is true" do
data/spec/rcov.opts CHANGED
@@ -4,3 +4,5 @@ gems
4
4
  spec
5
5
  --exclude
6
6
  00*
7
+ --threshold
8
+ 100
metadata CHANGED
@@ -1,50 +1,48 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: sequel
3
- version: !ruby/object:Gem::Version
4
- hash: 83
5
- prerelease: false
6
- segments:
7
- - 3
8
- - 21
9
- - 0
10
- version: 3.21.0
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.39.0
5
+ prerelease:
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Jeremy Evans
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2011-03-01 00:00:00 -08:00
19
- default_executable:
12
+ date: 2012-09-01 00:00:00.000000000 Z
20
13
  dependencies: []
21
-
22
14
  description: The Database Toolkit for Ruby
23
15
  email: code@jeremyevans.net
24
- executables:
16
+ executables:
25
17
  - sequel
26
18
  extensions: []
27
-
28
- extra_rdoc_files:
19
+ extra_rdoc_files:
29
20
  - README.rdoc
30
21
  - CHANGELOG
31
22
  - MIT-LICENSE
23
+ - doc/active_record.rdoc
32
24
  - doc/advanced_associations.rdoc
25
+ - doc/association_basics.rdoc
33
26
  - doc/cheat_sheet.rdoc
27
+ - doc/dataset_basics.rdoc
34
28
  - doc/dataset_filtering.rdoc
29
+ - doc/migration.rdoc
30
+ - doc/model_hooks.rdoc
35
31
  - doc/opening_databases.rdoc
36
32
  - doc/prepared_statements.rdoc
33
+ - doc/querying.rdoc
37
34
  - doc/reflection.rdoc
38
35
  - doc/sharding.rdoc
39
36
  - doc/sql.rdoc
40
- - doc/virtual_rows.rdoc
41
- - doc/dataset_basics.rdoc
42
- - doc/association_basics.rdoc
43
- - doc/querying.rdoc
44
- - doc/migration.rdoc
45
37
  - doc/validations.rdoc
46
- - doc/model_hooks.rdoc
47
- - doc/active_record.rdoc
38
+ - doc/virtual_rows.rdoc
39
+ - doc/mass_assignment.rdoc
40
+ - doc/testing.rdoc
41
+ - doc/schema_modification.rdoc
42
+ - doc/transactions.rdoc
43
+ - doc/thread_safety.rdoc
44
+ - doc/object_model.rdoc
45
+ - doc/core_extensions.rdoc
48
46
  - doc/release_notes/1.0.txt
49
47
  - doc/release_notes/1.1.txt
50
48
  - doc/release_notes/1.3.txt
@@ -65,14 +63,6 @@ extra_rdoc_files:
65
63
  - doc/release_notes/2.9.0.txt
66
64
  - doc/release_notes/3.0.0.txt
67
65
  - doc/release_notes/3.1.0.txt
68
- - doc/release_notes/3.2.0.txt
69
- - doc/release_notes/3.3.0.txt
70
- - doc/release_notes/3.4.0.txt
71
- - doc/release_notes/3.5.0.txt
72
- - doc/release_notes/3.6.0.txt
73
- - doc/release_notes/3.7.0.txt
74
- - doc/release_notes/3.8.0.txt
75
- - doc/release_notes/3.9.0.txt
76
66
  - doc/release_notes/3.10.0.txt
77
67
  - doc/release_notes/3.11.0.txt
78
68
  - doc/release_notes/3.12.0.txt
@@ -83,19 +73,51 @@ extra_rdoc_files:
83
73
  - doc/release_notes/3.17.0.txt
84
74
  - doc/release_notes/3.18.0.txt
85
75
  - doc/release_notes/3.19.0.txt
76
+ - doc/release_notes/3.2.0.txt
86
77
  - doc/release_notes/3.20.0.txt
87
78
  - doc/release_notes/3.21.0.txt
88
- files:
79
+ - doc/release_notes/3.22.0.txt
80
+ - doc/release_notes/3.23.0.txt
81
+ - doc/release_notes/3.24.0.txt
82
+ - doc/release_notes/3.25.0.txt
83
+ - doc/release_notes/3.3.0.txt
84
+ - doc/release_notes/3.4.0.txt
85
+ - doc/release_notes/3.5.0.txt
86
+ - doc/release_notes/3.6.0.txt
87
+ - doc/release_notes/3.7.0.txt
88
+ - doc/release_notes/3.8.0.txt
89
+ - doc/release_notes/3.9.0.txt
90
+ - doc/release_notes/3.26.0.txt
91
+ - doc/release_notes/3.27.0.txt
92
+ - doc/release_notes/3.28.0.txt
93
+ - doc/release_notes/3.29.0.txt
94
+ - doc/release_notes/3.30.0.txt
95
+ - doc/release_notes/3.31.0.txt
96
+ - doc/release_notes/3.32.0.txt
97
+ - doc/release_notes/3.33.0.txt
98
+ - doc/release_notes/3.34.0.txt
99
+ - doc/release_notes/3.35.0.txt
100
+ - doc/release_notes/3.36.0.txt
101
+ - doc/release_notes/3.37.0.txt
102
+ - doc/release_notes/3.38.0.txt
103
+ - doc/release_notes/3.39.0.txt
104
+ files:
89
105
  - MIT-LICENSE
90
106
  - CHANGELOG
91
107
  - README.rdoc
92
108
  - Rakefile
93
109
  - bin/sequel
110
+ - doc/active_record.rdoc
94
111
  - doc/advanced_associations.rdoc
112
+ - doc/association_basics.rdoc
95
113
  - doc/cheat_sheet.rdoc
114
+ - doc/dataset_basics.rdoc
96
115
  - doc/dataset_filtering.rdoc
116
+ - doc/migration.rdoc
117
+ - doc/model_hooks.rdoc
97
118
  - doc/opening_databases.rdoc
98
119
  - doc/prepared_statements.rdoc
120
+ - doc/querying.rdoc
99
121
  - doc/reflection.rdoc
100
122
  - doc/release_notes/1.0.txt
101
123
  - doc/release_notes/1.1.txt
@@ -117,14 +139,6 @@ files:
117
139
  - doc/release_notes/2.9.0.txt
118
140
  - doc/release_notes/3.0.0.txt
119
141
  - doc/release_notes/3.1.0.txt
120
- - doc/release_notes/3.2.0.txt
121
- - doc/release_notes/3.3.0.txt
122
- - doc/release_notes/3.4.0.txt
123
- - doc/release_notes/3.5.0.txt
124
- - doc/release_notes/3.6.0.txt
125
- - doc/release_notes/3.7.0.txt
126
- - doc/release_notes/3.8.0.txt
127
- - doc/release_notes/3.9.0.txt
128
142
  - doc/release_notes/3.10.0.txt
129
143
  - doc/release_notes/3.11.0.txt
130
144
  - doc/release_notes/3.12.0.txt
@@ -135,18 +149,45 @@ files:
135
149
  - doc/release_notes/3.17.0.txt
136
150
  - doc/release_notes/3.18.0.txt
137
151
  - doc/release_notes/3.19.0.txt
152
+ - doc/release_notes/3.2.0.txt
138
153
  - doc/release_notes/3.20.0.txt
139
154
  - doc/release_notes/3.21.0.txt
155
+ - doc/release_notes/3.22.0.txt
156
+ - doc/release_notes/3.23.0.txt
157
+ - doc/release_notes/3.24.0.txt
158
+ - doc/release_notes/3.25.0.txt
159
+ - doc/release_notes/3.3.0.txt
160
+ - doc/release_notes/3.4.0.txt
161
+ - doc/release_notes/3.5.0.txt
162
+ - doc/release_notes/3.6.0.txt
163
+ - doc/release_notes/3.7.0.txt
164
+ - doc/release_notes/3.8.0.txt
165
+ - doc/release_notes/3.9.0.txt
166
+ - doc/release_notes/3.26.0.txt
167
+ - doc/release_notes/3.27.0.txt
168
+ - doc/release_notes/3.28.0.txt
169
+ - doc/release_notes/3.29.0.txt
170
+ - doc/release_notes/3.30.0.txt
171
+ - doc/release_notes/3.31.0.txt
172
+ - doc/release_notes/3.32.0.txt
173
+ - doc/release_notes/3.33.0.txt
174
+ - doc/release_notes/3.34.0.txt
175
+ - doc/release_notes/3.35.0.txt
176
+ - doc/release_notes/3.36.0.txt
177
+ - doc/release_notes/3.37.0.txt
178
+ - doc/release_notes/3.38.0.txt
179
+ - doc/release_notes/3.39.0.txt
140
180
  - doc/sharding.rdoc
141
181
  - doc/sql.rdoc
142
- - doc/virtual_rows.rdoc
143
- - doc/dataset_basics.rdoc
144
- - doc/association_basics.rdoc
145
- - doc/querying.rdoc
146
- - doc/migration.rdoc
147
182
  - doc/validations.rdoc
148
- - doc/model_hooks.rdoc
149
- - doc/active_record.rdoc
183
+ - doc/virtual_rows.rdoc
184
+ - doc/mass_assignment.rdoc
185
+ - doc/testing.rdoc
186
+ - doc/schema_modification.rdoc
187
+ - doc/transactions.rdoc
188
+ - doc/thread_safety.rdoc
189
+ - doc/object_model.rdoc
190
+ - doc/core_extensions.rdoc
150
191
  - spec/adapters/firebird_spec.rb
151
192
  - spec/adapters/informix_spec.rb
152
193
  - spec/adapters/mssql_spec.rb
@@ -155,16 +196,17 @@ files:
155
196
  - spec/adapters/postgres_spec.rb
156
197
  - spec/adapters/spec_helper.rb
157
198
  - spec/adapters/sqlite_spec.rb
199
+ - spec/adapters/db2_spec.rb
158
200
  - spec/core/connection_pool_spec.rb
159
- - spec/core/core_sql_spec.rb
160
- - spec/core/database_spec.rb
161
201
  - spec/core/dataset_spec.rb
202
+ - spec/core/database_spec.rb
162
203
  - spec/core/expression_filters_spec.rb
204
+ - spec/core/schema_spec.rb
163
205
  - spec/core/object_graph_spec.rb
164
206
  - spec/core/schema_generator_spec.rb
165
- - spec/core/schema_spec.rb
166
207
  - spec/core/spec_helper.rb
167
208
  - spec/core/version_spec.rb
209
+ - spec/core/mock_adapter_spec.rb
168
210
  - spec/extensions/active_model_spec.rb
169
211
  - spec/extensions/association_dependencies_spec.rb
170
212
  - spec/extensions/association_proxies_spec.rb
@@ -198,7 +240,6 @@ files:
198
240
  - spec/extensions/tactical_eager_loading_spec.rb
199
241
  - spec/extensions/thread_local_timezones_spec.rb
200
242
  - spec/extensions/timestamps_spec.rb
201
- - spec/extensions/touch_spec.rb
202
243
  - spec/extensions/typecast_on_load_spec.rb
203
244
  - spec/extensions/validation_class_methods_spec.rb
204
245
  - spec/extensions/validation_helpers_spec.rb
@@ -211,11 +252,49 @@ files:
211
252
  - spec/extensions/update_primary_key_spec.rb
212
253
  - spec/extensions/association_pks_spec.rb
213
254
  - spec/extensions/json_serializer_spec.rb
255
+ - spec/extensions/eager_each_spec.rb
214
256
  - spec/extensions/list_spec.rb
215
257
  - spec/extensions/tree_spec.rb
216
258
  - spec/extensions/xml_serializer_spec.rb
217
259
  - spec/extensions/to_dot_spec.rb
218
260
  - spec/extensions/association_autoreloading_spec.rb
261
+ - spec/extensions/serialization_modification_detection_spec.rb
262
+ - spec/extensions/defaults_setter_spec.rb
263
+ - spec/extensions/prepared_statements_spec.rb
264
+ - spec/extensions/prepared_statements_safe_spec.rb
265
+ - spec/extensions/prepared_statements_with_pk_spec.rb
266
+ - spec/extensions/prepared_statements_associations_spec.rb
267
+ - spec/extensions/dataset_associations_spec.rb
268
+ - spec/extensions/arbitrary_servers_spec.rb
269
+ - spec/extensions/touch_spec.rb
270
+ - spec/extensions/server_block_spec.rb
271
+ - spec/extensions/pg_auto_parameterize_spec.rb
272
+ - spec/extensions/pg_statement_cache_spec.rb
273
+ - spec/extensions/pg_array_spec.rb
274
+ - spec/extensions/pg_array_ops_spec.rb
275
+ - spec/extensions/pg_hstore_spec.rb
276
+ - spec/extensions/pg_hstore_ops_spec.rb
277
+ - spec/extensions/schema_caching_spec.rb
278
+ - spec/extensions/null_dataset_spec.rb
279
+ - spec/extensions/many_to_one_pk_lookup_spec.rb
280
+ - spec/extensions/select_remove_spec.rb
281
+ - spec/extensions/static_cache_spec.rb
282
+ - spec/extensions/query_literals_spec.rb
283
+ - spec/extensions/dirty_spec.rb
284
+ - spec/extensions/pg_json_spec.rb
285
+ - spec/extensions/pg_inet_spec.rb
286
+ - spec/extensions/eval_inspect_spec.rb
287
+ - spec/extensions/pg_range_spec.rb
288
+ - spec/extensions/split_array_nil_spec.rb
289
+ - spec/extensions/pg_range_ops_spec.rb
290
+ - spec/extensions/pg_interval_spec.rb
291
+ - spec/extensions/columns_introspection_spec.rb
292
+ - spec/extensions/pg_row_ops_spec.rb
293
+ - spec/extensions/pg_row_plugin_spec.rb
294
+ - spec/extensions/pg_row_spec.rb
295
+ - spec/extensions/pg_typecast_on_load_spec.rb
296
+ - spec/extensions/constraint_validations_plugin_spec.rb
297
+ - spec/extensions/constraint_validations_spec.rb
219
298
  - spec/integration/associations_test.rb
220
299
  - spec/integration/database_test.rb
221
300
  - spec/integration/dataset_test.rb
@@ -284,6 +363,11 @@ files:
284
363
  - spec/files/reversible_migrations/003_reversible.rb
285
364
  - spec/files/reversible_migrations/004_reversible.rb
286
365
  - spec/files/reversible_migrations/005_reversible.rb
366
+ - spec/files/transaction_specified_migrations/001_create_alt_basic.rb
367
+ - spec/files/transaction_specified_migrations/002_create_basic.rb
368
+ - spec/files/transaction_unspecified_migrations/001_create_alt_basic.rb
369
+ - spec/files/transaction_unspecified_migrations/002_create_basic.rb
370
+ - spec/core_extensions_spec.rb
287
371
  - lib/sequel.rb
288
372
  - lib/sequel/adapters/ado.rb
289
373
  - lib/sequel/adapters/ado/mssql.rb
@@ -304,6 +388,15 @@ files:
304
388
  - lib/sequel/adapters/jdbc/postgresql.rb
305
389
  - lib/sequel/adapters/jdbc/sqlite.rb
306
390
  - lib/sequel/adapters/jdbc/as400.rb
391
+ - lib/sequel/adapters/jdbc/informix.rb
392
+ - lib/sequel/adapters/jdbc/jtds.rb
393
+ - lib/sequel/adapters/jdbc/sqlserver.rb
394
+ - lib/sequel/adapters/jdbc/db2.rb
395
+ - lib/sequel/adapters/jdbc/transactions.rb
396
+ - lib/sequel/adapters/jdbc/firebird.rb
397
+ - lib/sequel/adapters/jdbc/hsqldb.rb
398
+ - lib/sequel/adapters/jdbc/derby.rb
399
+ - lib/sequel/adapters/jdbc/progress.rb
307
400
  - lib/sequel/adapters/mysql.rb
308
401
  - lib/sequel/adapters/odbc.rb
309
402
  - lib/sequel/adapters/odbc/mssql.rb
@@ -317,21 +410,29 @@ files:
317
410
  - lib/sequel/adapters/shared/progress.rb
318
411
  - lib/sequel/adapters/shared/sqlite.rb
319
412
  - lib/sequel/adapters/shared/access.rb
413
+ - lib/sequel/adapters/shared/informix.rb
414
+ - lib/sequel/adapters/shared/mysql_prepared_statements.rb
415
+ - lib/sequel/adapters/shared/db2.rb
416
+ - lib/sequel/adapters/shared/firebird.rb
320
417
  - lib/sequel/adapters/sqlite.rb
321
418
  - lib/sequel/adapters/utils/stored_procedures.rb
419
+ - lib/sequel/adapters/utils/emulate_offset_with_row_number.rb
420
+ - lib/sequel/adapters/utils/pg_types.rb
322
421
  - lib/sequel/adapters/mysql2.rb
323
422
  - lib/sequel/adapters/swift.rb
324
423
  - lib/sequel/adapters/swift/mysql.rb
325
424
  - lib/sequel/adapters/swift/postgres.rb
326
425
  - lib/sequel/adapters/swift/sqlite.rb
327
426
  - lib/sequel/adapters/tinytds.rb
427
+ - lib/sequel/adapters/ibmdb.rb
428
+ - lib/sequel/adapters/mock.rb
328
429
  - lib/sequel/connection_pool.rb
329
430
  - lib/sequel/connection_pool/sharded_single.rb
330
431
  - lib/sequel/connection_pool/sharded_threaded.rb
331
432
  - lib/sequel/connection_pool/single.rb
332
433
  - lib/sequel/connection_pool/threaded.rb
333
434
  - lib/sequel/core.rb
334
- - lib/sequel/core_sql.rb
435
+ - lib/sequel/sql.rb
335
436
  - lib/sequel/database.rb
336
437
  - lib/sequel/database/schema_generator.rb
337
438
  - lib/sequel/database/schema_methods.rb
@@ -364,6 +465,31 @@ files:
364
465
  - lib/sequel/extensions/string_date_time.rb
365
466
  - lib/sequel/extensions/thread_local_timezones.rb
366
467
  - lib/sequel/extensions/to_dot.rb
468
+ - lib/sequel/extensions/arbitrary_servers.rb
469
+ - lib/sequel/extensions/server_block.rb
470
+ - lib/sequel/extensions/pg_auto_parameterize.rb
471
+ - lib/sequel/extensions/pg_statement_cache.rb
472
+ - lib/sequel/extensions/pg_array.rb
473
+ - lib/sequel/extensions/pg_json.rb
474
+ - lib/sequel/extensions/pg_array_ops.rb
475
+ - lib/sequel/extensions/pg_hstore.rb
476
+ - lib/sequel/extensions/pg_hstore_ops.rb
477
+ - lib/sequel/extensions/schema_caching.rb
478
+ - lib/sequel/extensions/null_dataset.rb
479
+ - lib/sequel/extensions/_pretty_table.rb
480
+ - lib/sequel/extensions/columns_introspection.rb
481
+ - lib/sequel/extensions/select_remove.rb
482
+ - lib/sequel/extensions/core_extensions.rb
483
+ - lib/sequel/extensions/query_literals.rb
484
+ - lib/sequel/extensions/pg_inet.rb
485
+ - lib/sequel/extensions/eval_inspect.rb
486
+ - lib/sequel/extensions/pg_range.rb
487
+ - lib/sequel/extensions/split_array_nil.rb
488
+ - lib/sequel/extensions/pg_range_ops.rb
489
+ - lib/sequel/extensions/pg_interval.rb
490
+ - lib/sequel/extensions/pg_row.rb
491
+ - lib/sequel/extensions/pg_row_ops.rb
492
+ - lib/sequel/extensions/constraint_validations.rb
367
493
  - lib/sequel/metaprogramming.rb
368
494
  - lib/sequel/model.rb
369
495
  - lib/sequel/model/associations.rb
@@ -408,54 +534,57 @@ files:
408
534
  - lib/sequel/plugins/json_serializer.rb
409
535
  - lib/sequel/plugins/list.rb
410
536
  - lib/sequel/plugins/tree.rb
537
+ - lib/sequel/plugins/static_cache.rb
411
538
  - lib/sequel/plugins/xml_serializer.rb
412
539
  - lib/sequel/plugins/association_autoreloading.rb
413
- - lib/sequel/sql.rb
540
+ - lib/sequel/plugins/serialization_modification_detection.rb
541
+ - lib/sequel/plugins/defaults_setter.rb
542
+ - lib/sequel/plugins/prepared_statements.rb
543
+ - lib/sequel/plugins/prepared_statements_safe.rb
544
+ - lib/sequel/plugins/prepared_statements_with_pk.rb
545
+ - lib/sequel/plugins/prepared_statements_associations.rb
546
+ - lib/sequel/plugins/dataset_associations.rb
547
+ - lib/sequel/plugins/many_to_one_pk_lookup.rb
548
+ - lib/sequel/plugins/dirty.rb
549
+ - lib/sequel/plugins/eager_each.rb
550
+ - lib/sequel/plugins/pg_row.rb
551
+ - lib/sequel/plugins/pg_typecast_on_load.rb
552
+ - lib/sequel/plugins/constraint_validations.rb
414
553
  - lib/sequel/timezones.rb
415
554
  - lib/sequel/version.rb
555
+ - lib/sequel/ast_transformer.rb
556
+ - lib/sequel/no_core_ext.rb
416
557
  - lib/sequel_core.rb
417
558
  - lib/sequel_model.rb
418
- has_rdoc: true
419
559
  homepage: http://sequel.rubyforge.org
420
560
  licenses: []
421
-
422
561
  post_install_message:
423
- rdoc_options:
562
+ rdoc_options:
424
563
  - --quiet
425
564
  - --line-numbers
426
565
  - --inline-source
427
566
  - --title
428
- - "Sequel: The Database Toolkit for Ruby"
567
+ - ! 'Sequel: The Database Toolkit for Ruby'
429
568
  - --main
430
569
  - README.rdoc
431
- require_paths:
570
+ require_paths:
432
571
  - lib
433
- required_ruby_version: !ruby/object:Gem::Requirement
572
+ required_ruby_version: !ruby/object:Gem::Requirement
434
573
  none: false
435
- requirements:
436
- - - ">="
437
- - !ruby/object:Gem::Version
438
- hash: 63
439
- segments:
440
- - 1
441
- - 8
442
- - 4
443
- version: 1.8.4
444
- required_rubygems_version: !ruby/object:Gem::Requirement
574
+ requirements:
575
+ - - ! '>='
576
+ - !ruby/object:Gem::Version
577
+ version: 1.8.7
578
+ required_rubygems_version: !ruby/object:Gem::Requirement
445
579
  none: false
446
- requirements:
447
- - - ">="
448
- - !ruby/object:Gem::Version
449
- hash: 3
450
- segments:
451
- - 0
452
- version: "0"
580
+ requirements:
581
+ - - ! '>='
582
+ - !ruby/object:Gem::Version
583
+ version: '0'
453
584
  requirements: []
454
-
455
585
  rubyforge_project: sequel
456
- rubygems_version: 1.3.7
586
+ rubygems_version: 1.8.23
457
587
  signing_key:
458
588
  specification_version: 3
459
589
  summary: The Database Toolkit for Ruby
460
590
  test_files: []
461
-