sequel 3.0.0 → 3.1.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 (87) hide show
  1. data/CHANGELOG +100 -0
  2. data/README.rdoc +3 -3
  3. data/bin/sequel +102 -19
  4. data/doc/reflection.rdoc +83 -0
  5. data/doc/release_notes/3.1.0.txt +406 -0
  6. data/lib/sequel/adapters/ado.rb +11 -0
  7. data/lib/sequel/adapters/amalgalite.rb +5 -20
  8. data/lib/sequel/adapters/do.rb +44 -36
  9. data/lib/sequel/adapters/firebird.rb +29 -43
  10. data/lib/sequel/adapters/jdbc.rb +17 -27
  11. data/lib/sequel/adapters/mysql.rb +35 -40
  12. data/lib/sequel/adapters/odbc.rb +4 -23
  13. data/lib/sequel/adapters/oracle.rb +22 -19
  14. data/lib/sequel/adapters/postgres.rb +6 -15
  15. data/lib/sequel/adapters/shared/mssql.rb +1 -1
  16. data/lib/sequel/adapters/shared/mysql.rb +29 -10
  17. data/lib/sequel/adapters/shared/oracle.rb +6 -8
  18. data/lib/sequel/adapters/shared/postgres.rb +28 -72
  19. data/lib/sequel/adapters/shared/sqlite.rb +5 -3
  20. data/lib/sequel/adapters/sqlite.rb +5 -20
  21. data/lib/sequel/adapters/utils/savepoint_transactions.rb +80 -0
  22. data/lib/sequel/adapters/utils/unsupported.rb +0 -12
  23. data/lib/sequel/core.rb +12 -3
  24. data/lib/sequel/core_sql.rb +1 -8
  25. data/lib/sequel/database.rb +107 -43
  26. data/lib/sequel/database/schema_generator.rb +1 -0
  27. data/lib/sequel/database/schema_methods.rb +38 -4
  28. data/lib/sequel/dataset.rb +6 -0
  29. data/lib/sequel/dataset/convenience.rb +2 -2
  30. data/lib/sequel/dataset/graph.rb +2 -2
  31. data/lib/sequel/dataset/prepared_statements.rb +3 -8
  32. data/lib/sequel/dataset/sql.rb +93 -19
  33. data/lib/sequel/extensions/blank.rb +2 -1
  34. data/lib/sequel/extensions/inflector.rb +4 -3
  35. data/lib/sequel/extensions/migration.rb +13 -2
  36. data/lib/sequel/extensions/pagination.rb +4 -0
  37. data/lib/sequel/extensions/pretty_table.rb +4 -0
  38. data/lib/sequel/extensions/query.rb +4 -0
  39. data/lib/sequel/extensions/schema_dumper.rb +100 -24
  40. data/lib/sequel/extensions/string_date_time.rb +3 -4
  41. data/lib/sequel/model.rb +2 -1
  42. data/lib/sequel/model/associations.rb +96 -38
  43. data/lib/sequel/model/base.rb +14 -14
  44. data/lib/sequel/model/plugins.rb +32 -21
  45. data/lib/sequel/plugins/caching.rb +13 -15
  46. data/lib/sequel/plugins/identity_map.rb +107 -0
  47. data/lib/sequel/plugins/lazy_attributes.rb +65 -0
  48. data/lib/sequel/plugins/many_through_many.rb +188 -0
  49. data/lib/sequel/plugins/schema.rb +13 -0
  50. data/lib/sequel/plugins/serialization.rb +53 -37
  51. data/lib/sequel/plugins/single_table_inheritance.rb +1 -1
  52. data/lib/sequel/plugins/tactical_eager_loading.rb +61 -0
  53. data/lib/sequel/plugins/validation_class_methods.rb +28 -7
  54. data/lib/sequel/plugins/validation_helpers.rb +31 -24
  55. data/lib/sequel/sql.rb +16 -0
  56. data/lib/sequel/version.rb +1 -1
  57. data/spec/adapters/ado_spec.rb +47 -1
  58. data/spec/adapters/firebird_spec.rb +39 -36
  59. data/spec/adapters/mysql_spec.rb +25 -9
  60. data/spec/adapters/postgres_spec.rb +11 -24
  61. data/spec/core/database_spec.rb +54 -13
  62. data/spec/core/dataset_spec.rb +147 -29
  63. data/spec/core/object_graph_spec.rb +6 -1
  64. data/spec/core/schema_spec.rb +34 -0
  65. data/spec/core/spec_helper.rb +0 -2
  66. data/spec/extensions/caching_spec.rb +7 -0
  67. data/spec/extensions/identity_map_spec.rb +158 -0
  68. data/spec/extensions/lazy_attributes_spec.rb +113 -0
  69. data/spec/extensions/many_through_many_spec.rb +813 -0
  70. data/spec/extensions/migration_spec.rb +4 -4
  71. data/spec/extensions/schema_dumper_spec.rb +114 -13
  72. data/spec/extensions/schema_spec.rb +19 -3
  73. data/spec/extensions/serialization_spec.rb +28 -0
  74. data/spec/extensions/single_table_inheritance_spec.rb +25 -1
  75. data/spec/extensions/spec_helper.rb +2 -7
  76. data/spec/extensions/tactical_eager_loading_spec.rb +65 -0
  77. data/spec/extensions/validation_class_methods_spec.rb +10 -5
  78. data/spec/integration/dataset_test.rb +39 -6
  79. data/spec/integration/eager_loader_test.rb +7 -7
  80. data/spec/integration/spec_helper.rb +0 -1
  81. data/spec/integration/transaction_test.rb +28 -1
  82. data/spec/model/association_reflection_spec.rb +29 -3
  83. data/spec/model/associations_spec.rb +1 -0
  84. data/spec/model/eager_loading_spec.rb +70 -1
  85. data/spec/model/plugins_spec.rb +236 -50
  86. data/spec/model/spec_helper.rb +0 -2
  87. metadata +18 -5
@@ -8,8 +8,6 @@ unless Sequel.const_defined?('Model')
8
8
  require 'sequel/model'
9
9
  end
10
10
 
11
- Sequel.virtual_row_instance_eval = true
12
-
13
11
  class MockDataset < Sequel::Dataset
14
12
  def insert(*args)
15
13
  @db.execute insert_sql(*args)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sequel
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.0
4
+ version: 3.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeremy Evans
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-05-04 00:00:00 -07:00
12
+ date: 2009-06-04 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies: []
15
15
 
@@ -30,6 +30,7 @@ extra_rdoc_files:
30
30
  - doc/schema.rdoc
31
31
  - doc/sharding.rdoc
32
32
  - doc/virtual_rows.rdoc
33
+ - doc/reflection.rdoc
33
34
  - doc/release_notes/2.10.0.txt
34
35
  - doc/release_notes/2.9.0.txt
35
36
  - doc/release_notes/2.8.0.txt
@@ -49,6 +50,7 @@ extra_rdoc_files:
49
50
  - doc/release_notes/2.11.0.txt
50
51
  - doc/release_notes/2.12.0.txt
51
52
  - doc/release_notes/3.0.0.txt
53
+ - doc/release_notes/3.1.0.txt
52
54
  files:
53
55
  - COPYING
54
56
  - CHANGELOG
@@ -81,7 +83,9 @@ files:
81
83
  - doc/release_notes/2.11.0.txt
82
84
  - doc/release_notes/2.12.0.txt
83
85
  - doc/release_notes/3.0.0.txt
86
+ - doc/release_notes/3.1.0.txt
84
87
  - doc/virtual_rows.rdoc
88
+ - doc/reflection.rdoc
85
89
  - spec/adapters
86
90
  - spec/adapters/ado_spec.rb
87
91
  - spec/adapters/informix_spec.rb
@@ -116,12 +120,12 @@ files:
116
120
  - spec/model/association_reflection_spec.rb
117
121
  - spec/model/associations_spec.rb
118
122
  - spec/model/base_spec.rb
123
+ - spec/model/plugins_spec.rb
119
124
  - spec/model/dataset_methods_spec.rb
120
125
  - spec/model/eager_loading_spec.rb
121
126
  - spec/model/hooks_spec.rb
122
127
  - spec/model/inflector_spec.rb
123
128
  - spec/model/model_spec.rb
124
- - spec/model/plugins_spec.rb
125
129
  - spec/model/record_spec.rb
126
130
  - spec/model/spec_helper.rb
127
131
  - spec/model/validations_spec.rb
@@ -145,6 +149,10 @@ files:
145
149
  - spec/extensions/serialization_spec.rb
146
150
  - spec/extensions/validation_helpers_spec.rb
147
151
  - spec/extensions/schema_dumper_spec.rb
152
+ - spec/extensions/identity_map_spec.rb
153
+ - spec/extensions/tactical_eager_loading_spec.rb
154
+ - spec/extensions/lazy_attributes_spec.rb
155
+ - spec/extensions/many_through_many_spec.rb
148
156
  - lib/sequel.rb
149
157
  - lib/sequel_core.rb
150
158
  - lib/sequel_model.rb
@@ -157,6 +165,10 @@ files:
157
165
  - lib/sequel/plugins/validation_class_methods.rb
158
166
  - lib/sequel/plugins/serialization.rb
159
167
  - lib/sequel/plugins/validation_helpers.rb
168
+ - lib/sequel/plugins/identity_map.rb
169
+ - lib/sequel/plugins/tactical_eager_loading.rb
170
+ - lib/sequel/plugins/lazy_attributes.rb
171
+ - lib/sequel/plugins/many_through_many.rb
160
172
  - lib/sequel/extensions
161
173
  - lib/sequel/extensions/string_date_time.rb
162
174
  - lib/sequel/extensions/inflector.rb
@@ -201,6 +213,7 @@ files:
201
213
  - lib/sequel/adapters/utils/date_format.rb
202
214
  - lib/sequel/adapters/utils/stored_procedures.rb
203
215
  - lib/sequel/adapters/utils/unsupported.rb
216
+ - lib/sequel/adapters/utils/savepoint_transactions.rb
204
217
  - lib/sequel/adapters/amalgalite.rb
205
218
  - lib/sequel/connection_pool.rb
206
219
  - lib/sequel/core.rb
@@ -216,16 +229,16 @@ files:
216
229
  - lib/sequel/dataset/prepared_statements.rb
217
230
  - lib/sequel/dataset/sql.rb
218
231
  - lib/sequel/dataset/graph.rb
232
+ - lib/sequel/model.rb
219
233
  - lib/sequel/exceptions.rb
220
234
  - lib/sequel/metaprogramming.rb
221
- - lib/sequel/model.rb
222
235
  - lib/sequel/model
223
236
  - lib/sequel/model/associations.rb
224
237
  - lib/sequel/model/base.rb
238
+ - lib/sequel/model/plugins.rb
225
239
  - lib/sequel/model/errors.rb
226
240
  - lib/sequel/model/exceptions.rb
227
241
  - lib/sequel/model/inflections.rb
228
- - lib/sequel/model/plugins.rb
229
242
  - lib/sequel/sql.rb
230
243
  - lib/sequel/version.rb
231
244
  has_rdoc: true