sequel_core 2.2.0 → 3.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (66) hide show
  1. metadata +30 -101
  2. data/CHANGELOG +0 -1519
  3. data/COPYING +0 -19
  4. data/README +0 -313
  5. data/Rakefile +0 -158
  6. data/bin/sequel +0 -117
  7. data/doc/cheat_sheet.rdoc +0 -225
  8. data/doc/dataset_filtering.rdoc +0 -182
  9. data/lib/sequel_core.rb +0 -136
  10. data/lib/sequel_core/adapters/adapter_skeleton.rb +0 -68
  11. data/lib/sequel_core/adapters/ado.rb +0 -90
  12. data/lib/sequel_core/adapters/db2.rb +0 -160
  13. data/lib/sequel_core/adapters/dbi.rb +0 -127
  14. data/lib/sequel_core/adapters/informix.rb +0 -89
  15. data/lib/sequel_core/adapters/jdbc.rb +0 -110
  16. data/lib/sequel_core/adapters/mysql.rb +0 -486
  17. data/lib/sequel_core/adapters/odbc.rb +0 -167
  18. data/lib/sequel_core/adapters/odbc_mssql.rb +0 -106
  19. data/lib/sequel_core/adapters/openbase.rb +0 -76
  20. data/lib/sequel_core/adapters/oracle.rb +0 -182
  21. data/lib/sequel_core/adapters/postgres.rb +0 -560
  22. data/lib/sequel_core/adapters/sqlite.rb +0 -270
  23. data/lib/sequel_core/connection_pool.rb +0 -194
  24. data/lib/sequel_core/core_ext.rb +0 -197
  25. data/lib/sequel_core/core_sql.rb +0 -184
  26. data/lib/sequel_core/database.rb +0 -462
  27. data/lib/sequel_core/database/schema.rb +0 -156
  28. data/lib/sequel_core/dataset.rb +0 -457
  29. data/lib/sequel_core/dataset/callback.rb +0 -13
  30. data/lib/sequel_core/dataset/convenience.rb +0 -245
  31. data/lib/sequel_core/dataset/pagination.rb +0 -96
  32. data/lib/sequel_core/dataset/query.rb +0 -41
  33. data/lib/sequel_core/dataset/schema.rb +0 -15
  34. data/lib/sequel_core/dataset/sql.rb +0 -889
  35. data/lib/sequel_core/deprecated.rb +0 -26
  36. data/lib/sequel_core/exceptions.rb +0 -42
  37. data/lib/sequel_core/migration.rb +0 -187
  38. data/lib/sequel_core/object_graph.rb +0 -216
  39. data/lib/sequel_core/pretty_table.rb +0 -71
  40. data/lib/sequel_core/schema.rb +0 -2
  41. data/lib/sequel_core/schema/generator.rb +0 -239
  42. data/lib/sequel_core/schema/sql.rb +0 -326
  43. data/lib/sequel_core/sql.rb +0 -812
  44. data/lib/sequel_core/worker.rb +0 -68
  45. data/spec/adapters/informix_spec.rb +0 -96
  46. data/spec/adapters/mysql_spec.rb +0 -765
  47. data/spec/adapters/oracle_spec.rb +0 -222
  48. data/spec/adapters/postgres_spec.rb +0 -441
  49. data/spec/adapters/sqlite_spec.rb +0 -413
  50. data/spec/connection_pool_spec.rb +0 -363
  51. data/spec/core_ext_spec.rb +0 -156
  52. data/spec/core_sql_spec.rb +0 -427
  53. data/spec/database_spec.rb +0 -963
  54. data/spec/dataset_spec.rb +0 -2933
  55. data/spec/expression_filters_spec.rb +0 -316
  56. data/spec/migration_spec.rb +0 -261
  57. data/spec/object_graph_spec.rb +0 -230
  58. data/spec/pretty_table_spec.rb +0 -58
  59. data/spec/rcov.opts +0 -6
  60. data/spec/schema_generator_spec.rb +0 -122
  61. data/spec/schema_spec.rb +0 -422
  62. data/spec/spec.opts +0 -0
  63. data/spec/spec_config.rb +0 -7
  64. data/spec/spec_config.rb.example +0 -8
  65. data/spec/spec_helper.rb +0 -55
  66. data/spec/worker_spec.rb +0 -96
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sequel_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.0
4
+ version: 3.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeremy Evans
@@ -9,114 +9,43 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-07-05 00:00:00 -07:00
12
+ date: 2010-02-05 00:00:00 -08:00
13
13
  default_executable:
14
- dependencies: []
15
-
16
- description: "The Database Toolkit for Ruby: Core Library and Adapters"
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: sequel
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 3.8.0
24
+ version:
25
+ description:
17
26
  email: code@jeremyevans.net
18
- executables:
19
- - sequel
27
+ executables: []
28
+
20
29
  extensions: []
21
30
 
22
- extra_rdoc_files:
23
- - README
24
- - CHANGELOG
25
- - COPYING
26
- - doc/cheat_sheet.rdoc
27
- - doc/dataset_filtering.rdoc
28
- files:
29
- - COPYING
30
- - README
31
- - Rakefile
32
- - bin/sequel
33
- - doc/cheat_sheet.rdoc
34
- - doc/dataset_filtering.rdoc
35
- - spec/adapters
36
- - spec/adapters/informix_spec.rb
37
- - spec/adapters/mysql_spec.rb
38
- - spec/adapters/oracle_spec.rb
39
- - spec/adapters/postgres_spec.rb
40
- - spec/adapters/sqlite_spec.rb
41
- - spec/dataset_spec.rb
42
- - spec/core_ext_spec.rb
43
- - spec/core_sql_spec.rb
44
- - spec/database_spec.rb
45
- - spec/schema_spec.rb
46
- - spec/migration_spec.rb
47
- - spec/pretty_table_spec.rb
48
- - spec/rcov.opts
49
- - spec/schema_generator_spec.rb
50
- - spec/spec_helper.rb
51
- - spec/spec.opts
52
- - spec/spec_config.rb.example
53
- - spec/spec_config.rb
54
- - spec/worker_spec.rb
55
- - spec/connection_pool_spec.rb
56
- - spec/object_graph_spec.rb
57
- - spec/expression_filters_spec.rb
58
- - lib/sequel_core.rb
59
- - lib/sequel_core
60
- - lib/sequel_core/adapters
61
- - lib/sequel_core/adapters/adapter_skeleton.rb
62
- - lib/sequel_core/adapters/ado.rb
63
- - lib/sequel_core/adapters/db2.rb
64
- - lib/sequel_core/adapters/dbi.rb
65
- - lib/sequel_core/adapters/informix.rb
66
- - lib/sequel_core/adapters/jdbc.rb
67
- - lib/sequel_core/adapters/mysql.rb
68
- - lib/sequel_core/adapters/odbc.rb
69
- - lib/sequel_core/adapters/odbc_mssql.rb
70
- - lib/sequel_core/adapters/openbase.rb
71
- - lib/sequel_core/adapters/oracle.rb
72
- - lib/sequel_core/adapters/postgres.rb
73
- - lib/sequel_core/adapters/sqlite.rb
74
- - lib/sequel_core/dataset.rb
75
- - lib/sequel_core/core_ext.rb
76
- - lib/sequel_core/core_sql.rb
77
- - lib/sequel_core/database.rb
78
- - lib/sequel_core/exceptions.rb
79
- - lib/sequel_core/dataset
80
- - lib/sequel_core/dataset/callback.rb
81
- - lib/sequel_core/dataset/convenience.rb
82
- - lib/sequel_core/dataset/sql.rb
83
- - lib/sequel_core/dataset/pagination.rb
84
- - lib/sequel_core/dataset/query.rb
85
- - lib/sequel_core/dataset/schema.rb
86
- - lib/sequel_core/object_graph.rb
87
- - lib/sequel_core/migration.rb
88
- - lib/sequel_core/worker.rb
89
- - lib/sequel_core/pretty_table.rb
90
- - lib/sequel_core/schema.rb
91
- - lib/sequel_core/schema
92
- - lib/sequel_core/schema/generator.rb
93
- - lib/sequel_core/schema/sql.rb
94
- - lib/sequel_core/connection_pool.rb
95
- - lib/sequel_core/deprecated.rb
96
- - lib/sequel_core/database
97
- - lib/sequel_core/database/schema.rb
98
- - lib/sequel_core/sql.rb
99
- - CHANGELOG
31
+ extra_rdoc_files: []
32
+
33
+ files: []
34
+
100
35
  has_rdoc: true
101
- homepage: http://sequel.rubyforge.org
36
+ homepage: http://sequel.rubyforge.org/
37
+ licenses: []
38
+
102
39
  post_install_message:
103
- rdoc_options:
104
- - --quiet
105
- - --line-numbers
106
- - --inline-source
107
- - --title
108
- - "Sequel: The Database Toolkit for Ruby: Core Library and Adapters"
109
- - --main
110
- - README
111
- - --exclude
112
- - ^(examples|extras)/
40
+ rdoc_options: []
41
+
113
42
  require_paths:
114
43
  - lib
115
44
  required_ruby_version: !ruby/object:Gem::Requirement
116
45
  requirements:
117
46
  - - ">="
118
47
  - !ruby/object:Gem::Version
119
- version: 1.8.4
48
+ version: "0"
120
49
  version:
121
50
  required_rubygems_version: !ruby/object:Gem::Requirement
122
51
  requirements:
@@ -126,10 +55,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
126
55
  version:
127
56
  requirements: []
128
57
 
129
- rubyforge_project: sequel
130
- rubygems_version: 1.0.1
58
+ rubyforge_project:
59
+ rubygems_version: 1.3.5
131
60
  signing_key:
132
- specification_version: 2
133
- summary: "The Database Toolkit for Ruby: Core Library and Adapters"
61
+ specification_version: 3
62
+ summary: "Old Name: sequel_core, New Name: sequel"
134
63
  test_files: []
135
64
 
data/CHANGELOG DELETED
@@ -1,1519 +0,0 @@
1
- === 2.2.0 (2008-07-05)
2
-
3
- * Filter blocks now yield a SQL::VirtualRow argument, which is useful if another library defines operator methods on Symbol (jeremyevans)
4
-
5
- * Add Symbol#identifier method, to make x__a be treated as "x__a" instead of "x"."a" (jeremyevans)
6
-
7
- * Dataset#update no longer takes a block, please use a hash argument with the expression syntax instead (jeremyevans)
8
-
9
- * ParseTree support has been removed from Sequel (jeremyevans)
10
-
11
- * Database#drop_column is now supported in the SQLite adapter (abhay)
12
-
13
- * Tinyint columns can now be considered integers instead of booleans by setting Sequel.convert_tinyint_to_bool = false (samsouder)
14
-
15
- * Allow the use of URL parameters in connection strings (jeremyevans)
16
-
17
- * Ignore any previously selected columns when using Dataset#graph for the first time (jeremyevans)
18
-
19
- * Dataset#graph now accepts a block which is passed to join_table (jeremyevans)
20
-
21
- * Make Dataset#columns ignore any filtering, ordering, and distinct clauses (jeremyevans)
22
-
23
- * Use the safer connection-specific string escaping methods for PostgreSQL (jeremyevans)
24
-
25
- * Database#transaction now yields a connection when using the Postgres adapter, just like it does for other adapters (jeremyevans)
26
-
27
- * Dataset#count now works for a limited dataset (divoxx)
28
-
29
- * Database#add_index is now supported in the SQLite adapter (abhay)
30
-
31
- * Sequel's MySQL adapter should no longer conflict with ActiveRecord's use of MySQL (careo)
32
-
33
- * Treat Hash as expression instead of column alias when used in DISTINCT, ORDER BY, and GROUP BY clauses (jeremyevans)
34
-
35
- * PostgreSQL bytea fields are now fully supported (dlee)
36
-
37
- * For PostgreSQL, don't raise an error when assigning a value to a SERIAL PRIMARY KEY field when inserting records (jeremyevans)
38
-
39
- === 2.1.0 (2008-06-17)
40
-
41
- * Support bitwise operators for NumericExpressions: &, |, ^, ~, <<, >> (jeremyevans)
42
-
43
- * No longer raise an error for Dataset#filter(true) or Dataset#filter(false) (jeremyevans)
44
-
45
- * Allow Dataset #filter, #or, #exclude and other methods that call them to use both the block and regular arguments (jeremyevans)
46
-
47
- * ParseTree support is now officially deprecated, use Sequel.use_parse_tree = false to use the expression (blockless) filters inside blocks (jeremyevans)
48
-
49
- * Remove :pool_reuse_connections ConnectionPool/Database option, MySQL users need to be careful with nested queries (jeremyevans)
50
-
51
- * Allow Dataset#graph :select option to take an array of columns to select (jeremyevans)
52
-
53
- * Allow Dataset#to_hash to be called with only one argument, allowing for easy creation of lookup tables for a single key (jeremyevans)
54
-
55
- * Allow join_table to accept a block providing the aliases and previous joins, that allows you to specify arbitrary conditions properly qualified (jeremyevans)
56
-
57
- * Support NATURAL, CROSS, and USING joins in join_table (jeremyevans)
58
-
59
- * Make sure HAVING comes before ORDER BY, per the SQL standard and at least MySQL, PostgreSQL, and SQLite (juco)
60
-
61
- * Add cast_numeric and cast_string methods for use in the Sequel DSL, that have default types and wrap the object in the correct class (jeremyevans)
62
-
63
- * Add Symbol#qualify, for adding a table/schema qualifier to a column/table name (jeremyevans)
64
-
65
- * Remove Module#metaprivate, since it duplicates the standard Module#private_class_method (jeremyevans)
66
-
67
- * Support the SQL CASE expression via Array#case and Hash#case (jeremyevans)
68
-
69
- * Support the SQL EXTRACT function: :date.extract(:year) (jeremyevans)
70
-
71
- * Convert numeric fields to BigDecimal in PostgreSQL adapter (jeremyevans)
72
-
73
- * Add :decimal fields to the schema parser (jeremyevans)
74
-
75
- * The expr argument in join table now allows the same argument as filter, so it can take a string or a blockless filter expression (brushbox, jeremyevans)
76
-
77
- * No longer assume the expr argument to join_table references the primary key column (jeremyevans)
78
-
79
- * Rename the Sequel.time_class setting to Sequel.datetime_class (jeremyevans)
80
-
81
- * Add savepoint/nesting support to postgresql transactions (elven)
82
-
83
- * Use the specified table alias when joining a dataset, instead of the automatically generated alias (brushbox)
84
-
85
- === 2.0.1 (2008-06-04)
86
-
87
- * Have PostgreSQL money type use BigDecimal instead of Float (jeremyevans)
88
-
89
- * Have the PostgreSQL and MySQL adapters use the Sequel.time_class setting for datetime/timestamp types (jeremyevans)
90
-
91
- * Add Sequel.time_class and String#to_sequel_time, used for converting time values from the database to either Time (default) or DateTime (jeremyevans)
92
-
93
- * Make identifier quoting uppercase by default, to work better with the SQL standard, override in PostgreSQL (jeremyevans) (#232)
94
-
95
- * Add StringExpression#+, for simple SQL string concatenation (:x.sql_string + :y) (jeremyevans)
96
-
97
- * Make StringMethods.like to a case sensensitive search on MySQL (use ilike for the old behavior) (jeremyevans)
98
-
99
- * Add StringMethods.ilike, for case insensitive pattern matching (jeremyevans)
100
-
101
- * Refactor ComplexExpression into three subclasses and a few modules, so operators that don't make sense are not defined for the class (jeremyevans)
102
-
103
- === 2.0.0 (2008-06-01)
104
-
105
- * Refactor String inflection support, you must use String.inflections instead of Inflector.inflections now (jeremyevans)
106
-
107
- * Allow connection to ODBC-MSSQL via a URL (petersumskas) (#230)
108
-
109
- * Comprehensive update of all documentation, except for the block filters and adapters (jeremyevans)
110
-
111
- * Handle Date and DateTime value literalization correctly in adapters (jeremyevans)
112
-
113
- * Literalize DateTime values the same as Time values (jeremyevans)
114
-
115
- * MySQL tinyints are now returned as boolean values instead of integers (jeremyevans)
116
-
117
- * Set additional MySQL charset options required for creating tables and databases (tmm1)
118
-
119
- * Remove methods deprecated in 1.5.0 (jeremyevans)
120
-
121
- * Add Module#metaattr_accessor for creating attr_accessors for the metaclass (jeremyevans)
122
-
123
- * Add SQL string concatenation support to blockless filters, via Array#sql_string_join (jeremyevans)
124
-
125
- * Add Pagination#last_page? and Pagination#first_page? (apeiros)
126
-
127
- * Add limited column reflection support, tested on PostgreSQL, MySQL, and SQLite (jeremyevans)
128
-
129
- * Allow the use of :schema__table___table_alias syntax for tables, similar to the column support (jeremyevans)
130
-
131
- * Merge metaid gem into core_ext.rb and clean it up, so sequel now has no external dependencies (jeremyevans)
132
-
133
- * Add Dataset#as, so using a dataset as a column with an alias is not deprecated (jeremyevans)
134
-
135
- * Add Dataset#invert, which returns a dataset with inverted HAVING and WHERE clauses (jeremyevans)
136
-
137
- * Add blockless filter syntax support (jeremyevans)
138
-
139
- * Passing an array to Dataset#order and Dataset#select no longer works, you need to pass multiple arguments (jeremyevans)
140
-
141
- * You should use '?' instead of '(?)' when using interpolated strings with array arguments (jeremyevans)
142
-
143
- * Dataset.literal now surrounds the literalization of arrays with parentheses (jeremyevans)
144
-
145
- * Add echo option (back?) to sequel command line tool, via -E or --echo (jeremyevans)
146
-
147
- * Allow databases to have multiple loggers (jeremyevans)
148
-
149
- * The sequel command line tool now also accepts a path to a database config YAML file in addition to a URI (mtodd)
150
-
151
- * Major update of the postgresql adapter (jdavis, jeremyevans) (#225)
152
-
153
- * Make returning inside of a database transaction commit the transaction (ahoward, jeremyevans)
154
-
155
- * Dataset#to_table_reference is now protected, and it has a different API (jeremyevans)
156
-
157
- * Dataset#join_table and related functions now take an explicit optional table_alias argument, you can no longer include the table alias in the table argument (jeremyevans)
158
-
159
- * Aliased and/or qualified columns with embedded spaces can now be specified as symbols (jeremyevans)
160
-
161
- * When identifier quoting is enabled, the SQL standard double quote is used by default (jeremyevans)
162
-
163
- * When identifier quoting is enabled, quote tables as well as columns (jeremyevans)
164
-
165
- * Make identifier quoting optional, enabled by default (jeremyevans)
166
-
167
- * Allow Sequel::Database.connect and related methods to take a block that disconnects the database when the block finishes (jeremyevans)
168
-
169
- * Add Dataset#unfiltered, for removing filters from dataset (jeremyevans)
170
-
171
- * Add add_foreign_key and add_primary_key methods to the AlterTableGenerator (jeremyevans)
172
-
173
- * Allow migration files to have more than 3 digits (jeremyevans)
174
-
175
- * Add methods directly to Dataset instead of including modules (jeremyevans)
176
-
177
- * Make some Dataset instance methods private: invert_order, insert_default_values_sql (jeremyevans)
178
-
179
- * Don't add methods that depend on ParseTree unless you can load ParseTree (jeremyevans)
180
-
181
- * Don't wipeout the cached columns every time a dataset is cloned, but only on changes to :select, :sql, :from, or :join (jeremyevans)
182
-
183
- * Fix Oracle Adapter (yasushi.abe)
184
-
185
- * Fixed sqlite uri so that sqlite:// works just like file:// (2 slashes for a relative path, 3 for an absolute) (dlee)
186
-
187
- * Raise a Sequel::Error if an invalid limit or offset is used (jeremyevans)
188
-
189
- * Refactor and beef up Dataset#first and Dataset#last, with some change in functionality (jeremyevans)
190
-
191
- * Add String#to_datetime, for consistency (jeremyevans)
192
-
193
- * Fix Range#interval so that it returns 1 less for an exclusive range
194
-
195
- * Change SQLite adapter so it doesn't swallow exceptions other than SQLite3::Exception (such as Interrupt) (jeremyevans)
196
-
197
- * Change PostgreSQL and MySQL adapters to raise Sequel::Error instead of database specific errors if a database error occurs (jeremyevans)
198
-
199
- * Using a memory database with SQLite now defaults to a single connection, so all queries it uses run against the same database (jeremyevans)
200
-
201
- * Fix attempting to query MySQL using the same connection being used to concurrently execute another query (jeremyevans)
202
-
203
- * Add options to the connection pool to configure reusing connections and converting exceptions (jeremyevans)
204
-
205
- * Use the database driver provided string quoting methods for MySQL and SQLite (jeremyevans) (#223)
206
-
207
- * Add ColumnAll#==, for checking the equality of two ColumnAlls (jeremyevans)
208
-
209
- * Allow an array of arrays instead of a hash when specifying conditions (jeremyevans)
210
-
211
- * Add Sequel::DBI::Database#lowercase, for lowercasing column names (jamesearl)
212
-
213
- * Remove Dataset#extend_with_destroy, which may break code that uses Dataset#set_model directly and expects the destroy method to be added (jeremyevans)
214
-
215
- * Fix some issues when running on Ruby 1.9 (Zverok, jeremyevans)
216
-
217
- * Make the DBI adapter work (partially) with PostgreSQL (Seb)
218
-
219
- === 1.5.1 (2008-04-30)
220
-
221
- * Have Dataset#graph give a nil value instead of a hash with all nil values if no matching rows exist in the graphed table (jeremyevans)
222
-
223
- === 1.5.0 (2008-04-29)
224
-
225
- * Set a timeout in the Sqlite adapter, default to 5 seconds (hrvoje.marjanovic) (#218)
226
-
227
- * Document that calling Sequel::ODBC::Database#execute manually requires you to manually drop the returned object (jeremyevans) (#217)
228
-
229
- * Paginating an already paginated/limited dataset now raises an error (jeremyevans)
230
-
231
- * Add support for PostgreSQL partial indexes (dlee)
232
-
233
- * Added support for arbitrary index types (including spatial indexes) (dlee)
234
-
235
- * Quote column names in SQL generated for SQLite (tmm1)
236
-
237
- * Deprecate Object#rollback! (jeremyevans)
238
-
239
- * Make some Dataset methods private (qualified_column_name, column_list, table_ref, source_list) (jeremyevans)
240
-
241
- * Deprecate Dataset methods #set_options, #set_row_proc, #remove_row_proc, and #clone_merge (jeremyevans)
242
-
243
- * Add Symbol#*, a replacement for Symbol#all (jeremyevans)
244
-
245
- * Deprecate including ColumnMethods in Object, include it in Symbol, String, and Sequel::SQL::Expression (jeremyevans)
246
-
247
- * Deprecate Symbol#method_missing, and #AS, #DESC, #ASC, #ALL, and #all from ColumnMethods (jeremyevans)
248
-
249
- * Fix table joining in MySQL (jeremyevans)
250
-
251
- * Deprecate Sequel.method_missing and Object#Sequel, add real Sequel.adapter methods (jeremyevans)
252
-
253
- * Move dataset methods applicable only to paginated datasets into Sequel::Dataset::Pagination (jeremyevans)
254
-
255
- * Make Sequel::Dataset::Sequelizer methods private (jeremyevans)
256
-
257
- * Deprecate Dataset#method_missing, add real mutation methods (e.g. filter!) (jeremyevans)
258
-
259
- * Fix connecting to an MSSQL server via ODBC using domain user credentials (jeremyevans) (#216)
260
-
261
- * No longer depend on the assistance gem, merge in the ConnectionPool and .blank methods (jeremyevans)
262
-
263
- * No longer depend on ParseTree, RubyInline, or ruby2ruby, but you still need them if you want to use the block filters (jeremyevans)
264
-
265
- * Fix JDBC adapter by issuing index things start at 1 (pdamer)
266
-
267
- * Fix connecting to a database via the ADO adapter (now requires options instead of URI) (timuckun, jeremyevans) (#204)
268
-
269
- * Support storing microseconds in postgres timestamp fields (schnarch...@rootimage.msu.edu) (#215)
270
-
271
- * Allow joining of multiple datasets, by making the table alias different for each dataset joined (jeremyevans)
272
-
273
- * SECURITY: Fix backslash escaping of strings (dlee)
274
-
275
- * Add ability to create a graph of objects from a query, with the result split into corresponding tables (jeremyevans) (#113)
276
-
277
- * Add attr_accessor for dataset row_proc (jeremyevans)
278
-
279
- * Don't redefine Dataset#each when adding a transform or row_proc (jeremyevans)
280
-
281
- * Remove array_keys.rb from sequel_core, it was partially broken (since the arrays came from hashes), and redefined Dataset#each (jeremyevans)
282
-
283
- * Fix MySQL default values insert (matt.binary) (#196)
284
-
285
- * Fix ODBC adapter improperly escaping date and timestamp values (leo.borisenko) (#165)
286
-
287
- * Fix renaming columns on MySQL with type :varchar (jeremyevans) (#206)
288
-
289
- * Add Sequel::SQL::Function#==, for comparing SQL Functions (jeremyevans) (#209)
290
-
291
- * Update Informix adapter to work with Ruby/Informix 0.7.0 (gerardo.santana@gmail.com)
292
-
293
- * Remove sequel_core's knowledge of Sequel::Model (jeremyevans)
294
-
295
- * Use "\n" instead of $/ (since $/ can be redefined in ways we do not want) (jeremyevans)
296
-
297
- === 1.4.0 (2008-04-08)
298
-
299
- * Merge 3 mysql patches from the bugtracker (mvyver) (#200, #201, #202).
300
-
301
- * Merge 2 postgresql patches from the bugtracker (a...@mellowtone.co.jp) (#211, 212).
302
-
303
- * Allow overriding of default posgres spec database via ENV['SEQUEL_PG_SPEC_DB'] (jeremyevans).
304
-
305
- * Allow using the Sequel::Model as the first argument in a dataset join selection (jeremyevans) (#170).
306
-
307
- * Add simple callback mechanism to make model eager loading implementation easier (jeremyevans).
308
-
309
- * Added Sequel::Error::InvalidOperation class for invalid operations (#198).
310
-
311
- * Implemented MySQL::Database#server_version (#199).
312
-
313
- * Added spec configuration for MySQL socket file.
314
-
315
- * Fixed transform with array tuples in postgres adapter.
316
-
317
- * Changed spec configuration to Database objects instead of URIs in order to support custom options for spec databases.
318
-
319
- * Renamed schema files.
320
-
321
- * Fixed Dataset#from to work correctly with SQL functions (#193).
322
-
323
- === 1.3 (2008-03-08)
324
-
325
- * Added configuration file for running specs (#186).
326
-
327
- * Changed Database#drop_index to accept fixed arity (#173).
328
-
329
- * Changed column definition sql to put UNSIGNED constraint before unique in order to satisfy MySQL (#171).
330
-
331
- * Enhanced MySQL adapter to support load data local infile_, added compress option for mysql connection by default (#172).
332
-
333
- * Fixed bug when inserting hashes in array tuples mode.
334
-
335
- * Changed SQLite adapter to catch RuntimeError raised when executing a statement and raise an Error::InvalidStatement with the offending SQL and error message (#188).
336
-
337
- * Added Error::InvalidStatement class.
338
-
339
- * Fixed Dataset#reverse to not raise for unordered dataset (#189).
340
-
341
- * Added Dataset#unordered method and changed #order to remove order if nil is specified (#190).
342
-
343
- * Fixed reversing order of ASC expression (#164).
344
-
345
- * Added support for :null => true option when defining table columns (#192).
346
-
347
- * Fixed Symbol#method_missing to accept variable arity (#185).
348
-
349
- === 1.2.1 (2008-02-29)
350
-
351
- * Added add_constraint and drop_constraint functionality to Database#alter_table (#182).
352
-
353
- * Enhanced Dataset#multi_insert to accept datasets (#179).
354
-
355
- * Added MySQL::Database#use method for switching database (#180).
356
-
357
- * Enhanced Database.uri_to_options to accept uri strings (#178).
358
-
359
- * Added Dataset#columns! method that always makes a roundtrip to the DB (#177).
360
-
361
- * Added new Dataset#each_page method that iterates over all pages in the result set (#175).
362
-
363
- * Added Dataset#reverse alias to Dataset#reverse_order (#174).
364
-
365
- * Fixed Dataset#transform_load and #transform_save to create a trasnformed copy of the supplied hash instead of transforming it in place (#184).
366
-
367
- * Implemented MySQL::Dataset#replace (#163).
368
-
369
- === 1.2 (2008-02-15)
370
-
371
- * Added support for :varchar[100] like type declarations in #create_table.
372
-
373
- * Fixed #rename_column in mysql adapter to support types like varchar(255) (#159).
374
-
375
- * Added support for order and limit in DELETE statement in MySQL adapter (#160).
376
-
377
- * Added checks to Dataset#multi_insert to prevent work if no values are given (#162).
378
-
379
- * Override ruby2ruby implementation of Proc#to_sexp which leaks memory (#161).
380
-
381
- * Added log option, help for sequel script (#157).
382
-
383
- === 1.1 (2008-02-15)
384
-
385
- * Fixed Dataset#join_table to support joining of datasets (#156).
386
-
387
- * Changed Dataset#empty? to use EXISTS condition instead of counting records, for much better performance (#158).
388
-
389
- * Implemented insertion of multiple records in a single statement for postgres adapter. This feature is available only in postgres 8.2 and newer.
390
-
391
- * Implemented Postgres::Database#server_version.
392
-
393
- * Implemented Database#get, short for dataset.get(...).
394
-
395
- * Refactored Dataset#multi_insert, added #import alias, added support for calling #multi_insert using array of columns and array of value arrays (thanks David Lee).
396
-
397
- * Implemented Dataset#get, a replacement for select(column).first[column].
398
-
399
- * Implemented Dataset#grep method, poor man's text search.
400
-
401
- === 1.0.10 (2008-02-13)
402
-
403
- * Fixed Datset#group_and_count to work inside a query block (#152).
404
-
405
- * Changed datasets with transforms to automatically transform hash filters (#155).
406
-
407
- * Changed Marshal stock transform to use Base64 encoding with backward-compatibility to support existing marshaled values (#154).
408
-
409
- * Added support for inserting multiple records in a single statement using #multi_insert in MySQL adapter (#153).
410
-
411
- * Added support for :slice option (same as :commit_every) in Dataset#multi_insert.
412
-
413
- * Changed Dataset#all to accept opts and iteration block.
414
-
415
- === 1.0.9 (2008-02-10)
416
-
417
- * Implemented Dataset#inspect and Database#inspect (#151).
418
-
419
- * Added full-text searching for odbc_mssql adapter (thanks Joseph Love).
420
-
421
- * Added AlterTableGenerator#add_full_text_index method.
422
-
423
- * Implemented full_text indexing and searching for PostgreSQL adapter (thanks David Lee).
424
-
425
- * Implemented full_text indexing and searching for MySQL adapter (thanks David Lee).
426
-
427
- * Fixed Dataset#insert_sql to work with array subscript references (thanks Jim Morris).
428
-
429
- === 1.0.8 (2008-02-08)
430
-
431
- * Added support for multiple choices in string matching expressions (#147).
432
-
433
- * Renamed Dataset#clone_merge to Dataset#clone, works with or without options for merging (#148).
434
-
435
- * Fixed MySQL::Database#<< method to always free the result in order to allow multiple calls in a row (#149). Same also for PostgreSQL adapter.
436
-
437
- === 1.0.7 (2008-02-05)
438
-
439
- * Added support for conditional filters (using if else statements) inside block filters (thanks Kee).
440
-
441
- === 1.0.6 (2008-02-05)
442
-
443
- * Removed code pollution introduced in revs 814, 817 (really bad patch, IMO).
444
-
445
- * Fixed joining datasets using aliased tables (#140).
446
-
447
- * Added support additional field types in postgresql adapter (#146).
448
-
449
- * Added support for date field types in postgresql adapter (#145).
450
-
451
- * Fixed Dataset#count to work correctly for grouped datasets (#144).
452
-
453
- * Added Dataset#select_more, Dataset#order_more methods (#129).
454
-
455
- === 1.0.5 (2008-01-25)
456
-
457
- * Added support for instantiating models by using the load constructor method.
458
-
459
- === 1.0.4.1 (2008-01-24)
460
-
461
- * Fixed bin/sequel to require sequel_model if available.
462
-
463
- === 1.0.4 (2008-01-24)
464
-
465
- * Added Dataset#select_all method.
466
-
467
- * Changed ODBC::Database to support connection using driver and database name, also added support for untitled columns in ODBC::Dataset (thanks Leonid Borisenko).
468
-
469
- * Fixed MySQL adapter to correctly format foreign key definitions (#123).
470
-
471
- * Changed MySQL::Dataset to allow HAVING clause on ungrouped datasets, and put HAVING clause before ORDER BY clause (#133).
472
-
473
- * Changed Dataset#group_and_count to accept multiple columns (#134).
474
-
475
- * Fixed database spec to open YAML file in binary mode (#131).
476
-
477
- * Cleaned up gem spec (#132).
478
-
479
- * Added Dataset#table_exists? convenience method.
480
-
481
- === 1.0.3 (2008-01-17)
482
-
483
- * Added support for UNSIGNED constraint, used in MySQL? (#127).
484
-
485
- * Implemented constraint definitions inside Database#create_table.
486
-
487
- * Fixed postgres adapter to define PGconn#async_exec as alias to #exec if not defined (for pure-ruby postgres driver).
488
-
489
- * Added String#to_date. Updated mysql adapter to use String#to_date for mysql date types (thanks drfreeze).
490
-
491
- === 1.0.2 (2008-01-14)
492
-
493
- * Removed ConnectionPool, NumericExtensions. Added dependency on assistance.
494
-
495
- === 1.0.1 (2008-01-12)
496
-
497
- * Changed postgres adapter to quote column references using double quotes.
498
-
499
- * Applied patch for oracle adapter: fix behavior of limit and offset, transactions, #table_exists?, #tables and additional specs (thanks Liming Lian #122).
500
-
501
- * Allow for additional filters on a grouped dataset (#119 and #120)
502
-
503
- * Changed mysql adapter to default to localhost if :host option is not specified (#114).
504
-
505
- * Refactored Sequelizer to use Proc#to_sexp (method provided by r2r).
506
-
507
- * Enhanced Database.connect to accept options with string keys, so it can now accept options loaded from YAML files. Database.connect also automatically converts :username option into :user for compatibility with existing YAML configuration files for AR and DataMapper.
508
-
509
- === 1.0.0.1 (2008-01-03)
510
-
511
- * Changed MySQL adapter to support specifying socket option.
512
-
513
- * Added support for limiting and paginating datasets with fixed SQL, gotten with DB#fetch (thanks Ruy Diaz).
514
-
515
- * Added new Dataset#from_self method that returns a dataset selecting from the original dataset.
516
-
517
- === 1.0 (2008-01-02)
518
-
519
- * Removed deprecated adapter stubs.
520
-
521
- * Removed Sequel::Model() stub.
522
-
523
- * Changed name to sequel_core.
524
-
525
- * 100% code coverage.
526
-
527
- * Fixed error behavior when sequel_model is not available.
528
-
529
- * Fixed error behavior when parse_tree or ruby2ruby are not available.
530
-
531
- === 0.5.0.2 (2008-01-01)
532
-
533
- * Fixed String#to_time to raise error correctly for invalid time stamps.
534
-
535
- * Improved code coverage - now at 99.2%.
536
-
537
- === 0.5.0.1 (2007-12-31)
538
-
539
- * Added a stub for Sequel::Model that auto-loads sequel_model.
540
-
541
- * Changed Sequel.method_missing and Database.adapter_class to raise AdapterNotFound if an adapter could not be loaded.
542
-
543
- * Fixed behavior of error trap in sequel command line tool.
544
-
545
- === 0.5 (2007-12-30)
546
-
547
- * Removed model code into separate sub-project. Rearranged trunk into core, model and model_plugins.
548
-
549
- === 0.4.5 (2007-12-25)
550
-
551
- * Added rdoc for new alter_table functionality (#109).
552
-
553
- * Fixed update_sql with array sub-item keys (#110).
554
-
555
- * Refactored model specs.
556
-
557
- * Added Model#update as alias to #set.
558
-
559
- * Refactored validations code. Renamed Model.validations? into Model.has_validations?.
560
-
561
- * Added initial Model validations (Thanks Lance Carlson)
562
-
563
- * Added Database#set_column_default method (thanks Jim Morris.)
564
-
565
- * Removed warning on uninitialized @transform value (thanks Jim Morris).
566
-
567
- === 0.4.4.2 (2007-12-20)
568
-
569
- * Fixed parsing errors in Ruby 1.9.
570
-
571
- * Fixed sync problem in connection_pool_spec.
572
-
573
- * Changed String#to_time to raise Error::InvalidValue if Time.parse fails.
574
-
575
- * Refactored sequel error classes.
576
-
577
- === 0.4.4.1 (2007-12-19)
578
-
579
- * Fixed schema generation code to use field quoting and support adapter-specific literalization of default values (#108).
580
-
581
- === 0.4.4 (2007-12-17)
582
-
583
- * Implemented Database#rename_table (#104).
584
-
585
- * Fixed drop_index in mysql adapter (#103).
586
-
587
- * Added ALTER TABLE specs for postgres, sqlite and mysql adapters. Added custom alter_table behavior for sqlite and mysql adapters (#101, #102).
588
-
589
- * Added direct Database API for altering tables.
590
-
591
- * Added Database#alter_table method with support for adding, dropping, renaming, modifying columns and adding and droppping indexes.
592
-
593
- * Added #unique schema method for defining unique indexes (thanks Dado).
594
-
595
- * Implemented unfolding of #each calls inside sequelizer blocks (thanks Jim Morris).
596
-
597
- === 0.4.3 (2007-12-15)
598
-
599
- * Fixed Dataset#update to accept strings (#98).
600
-
601
- * Fixed Model.[] to raise for boolean argument (#97).
602
-
603
- * Added Database#add_index method (thanks coda.hale).
604
-
605
- * Added error reporting for filtering on comparison not in a block (thanks Jim Morris).
606
-
607
- * Added support for inline index definition (thanks Dado).
608
-
609
- * Added Database#create_table! method for forcibly creating a table (thanks Dado).
610
-
611
- * Added support for using Dataset#update with block.
612
-
613
- * Changed subscript access to use | operator.
614
-
615
- * Fixed subscript access in sequelizer.
616
-
617
- * Added support for subscript access using Symbol#/ operator.
618
-
619
- === 0.4.2.2 (2007-12-10)
620
-
621
- * Improved code coverage.
622
-
623
- * Fixed Dataset#count to work properly with datasets with fixed SQL (when using #fetch).
624
-
625
- * Added Model.create_with_params method that filters the given parameters accordring to the model's columns (thanks Aman Gupta).
626
-
627
- === 0.4.2.1 (2007-12-09)
628
-
629
- * Refactored and fixed Dataset#reverse_order to work with field quoting (thanks Christian).
630
-
631
- * Fixed problem with field quoting in insert statements.
632
-
633
- * Changed sequelizer code to silently fail on any error when requiring parsetree and ruby2ruby.
634
-
635
- * Added Database#create_view, #create_or_replace_view and #drop_view methods. Also implemented Dataset#create_view and #create_or_replace_view convenience methods.
636
-
637
- * Keep DRY by re-using Model#[]= from method_missing.
638
-
639
- * Added Model.fetch alias for DB.fetch.set_model(Model)
640
-
641
- === 0.4.2 (2007-12-07)
642
-
643
- * Implemented Model#save_changes.
644
-
645
- * Extended Model#save to accept specific columns to update.
646
-
647
- * Implemented experimental JDBC adapter.
648
-
649
- * Added adapter skeleton as starting point for new adapters.
650
-
651
- * Cleaned-up adapters and moved automatic requiring of 'sequel' to adapter stubs.
652
-
653
- === 0.4.1.3 (2007-12-05)
654
-
655
- * Better plugin conventions.
656
-
657
- * Added experimental OpenBase adapter.
658
-
659
- * Fixed Sequel.<xxx> methods to accept options hash as well as database name. Fixed Sequel.connect to accept options hash as well as URI (Wayne).
660
-
661
- === 0.4.1.2 (2007-12-04)
662
-
663
- * Added release rake task (using RubyForge).
664
-
665
- * Changed Model.is to accept variable arity.
666
-
667
- * Implemented plugin loading for model classes.
668
-
669
- * Fixed odbc-mssql and odbc adapters (thanks Dusty.)
670
-
671
- * Implemented odbc-mssql adapter (thanks Dusty.)
672
-
673
- === 0.4.1.1 (2007-11-27)
674
-
675
- * Fixed #first and #last functionality in Informix::Dataset (thanks Gerardo Santana).
676
-
677
- === 0.4.1 (2007-11-25)
678
-
679
- * Put adapter files in lib/sequel/adapters. Requiring sequel/<adapter> is now deprecated. Users can now just require 'sequel' and adapters are automagically loaded (#93).
680
-
681
- === 0.4.0 (2007-11-24)
682
-
683
- * Reorganized lib directory structure.
684
-
685
- * Added support for dbi-xxx URI schemes (#86).
686
-
687
- * Fixed problem in Database#uri where setting the password would raise an error (#87).
688
-
689
- * Improved Dataset#insert_sql to correctly handle string keys (#92).
690
-
691
- * Improved error-handling for worker threads. Errors are saved to an array and are accessible through #errors (#91).
692
-
693
- * Dataset#uniq/distinct can now accept a column list for DISTINCT ON clauses.
694
-
695
- * Fixed Model.all.
696
-
697
- * Fixed literalization of strings with escape sequences in postgres adapter (#90).
698
-
699
- * Added support for literalizing BigDecimal values (#89).
700
-
701
- * Fixed column qualification for joined datasets (thanks Christian).
702
-
703
- * Implemented experimental informix adapter.
704
-
705
- === 0.3.4.1 (2007-11-10)
706
-
707
- * Changed Dataset#select_sql to support queries without a FROM clause.
708
-
709
- === 0.3.4 (2007-11-10)
710
-
711
- * Fixed MySQL adapter to allow calling stored procedures (thanks Sebastian).
712
-
713
- * Changed Dataset#each to always return self.
714
-
715
- * Fixed SQL functions without arguments in block filters.
716
-
717
- * Implemented super-cool Symbol#cast_as method.
718
-
719
- * Fixed error message in command-line tool if failed to load adapter (#85).
720
-
721
- * Refactored code relating to column references for better extendibility (#88).
722
-
723
- * Tiny fix to Model#run_hooks.
724
-
725
- === 0.3.3 (2007-11-04)
726
-
727
- * Revised code to generate SQL statements without trailing semicolons.
728
-
729
- * Added Sequel::Worker implementation of a simple worker thread for asynchronous execution.
730
-
731
- * Added spec for Oracle adapter.
732
-
733
- * Fixed Oracle adapter to format INSERT statements without semicolons (thanks Liming Lian).
734
-
735
- * Renamed alias to Array#keys as Array#columns instead of Array#fields.
736
-
737
- * Renamed FieldCompositionMethods as ColumnCompositionMethods.
738
-
739
- * Implemented Sequel::NumericExtensions to provide stuff like 30.days.ago.
740
-
741
- === 0.3.2 (2007-11-01)
742
-
743
- * Added #to_column_name as alias to #to_field_name, #column_title as alias to #field_title.
744
-
745
- * Added Dataset#interval method for getting interval between minimum/maximum values for a column.
746
-
747
- * Fixed Oracle::Database#execute (#84).
748
-
749
- * Added group_and_count as general implementation for count_by_xxx.
750
-
751
- * Added count_by magic method.
752
-
753
- * Added Dataset#range method for getting the minimum/maximum values for a column.
754
-
755
- * Fixed timestamp translation in SQLite adapter (#83).
756
-
757
- * Experimental DB2 adapter.
758
-
759
- * Added Dataset#set as alias to Dataset#update.
760
-
761
- * Removed long deprecated expressions.rb code.
762
-
763
- * Better documentation.
764
-
765
- * Implemented Dataset magic methods: order_by_xxx, group_by_xxx, filter_by_xxx, all_by_xxx, first_by_xxx, last_by_xxx.
766
-
767
- * Changed Model.create and Model.new to accept a block.
768
-
769
- === 0.3.1 (2007-10-30)
770
-
771
- * Typo fixes (#79).
772
-
773
- * Added require 'yaml' to dataset.rb (#78).
774
-
775
- * Changed postgres adapter to use the ruby-postgres library's type conversion if available (#76).
776
-
777
- * Fixed string literalization in mysql adapter for strings with comment backslashes in them (#75).
778
-
779
- * Fixed ParseTree dependency to work with version 2.0.0 and later (#74).
780
-
781
- * foreign_key definitions now accept :key option for specifying the remote key (#73).
782
-
783
- * Fixed Model#method_missing to not raise error for columns not in the table but for which a value exists (#77).
784
-
785
- * New documentation for Model.
786
-
787
- * Implemented Oracle adapter based on ruby-oci8 library.
788
-
789
- * Implemented Model#pk_hash. Is it really necessary?
790
-
791
- * Deprecated Model#pkey. Implemented better Model#pk method.
792
-
793
- * Specs and docs for Model.one_to_one, Model.one_to_many macros.
794
-
795
- === 0.3.0.1 (2007-10-20)
796
-
797
- * Changed Database#fetch to return a modified dataset.
798
-
799
- === 0.3 (2007-10-20)
800
-
801
- * Added stock transforms to Dataset#transform. Refactored Model.serialize.
802
-
803
- * Added Database#logger= method for setting the database logger object.
804
-
805
- * Fixed Model.[] to act as shortcut to Model.find when a hash is given (#71).
806
-
807
- * Added support for old and new decimal types in MySQL adapter, and updated MYSQL_TYPES with MySQL 5.0 constants (#72).
808
-
809
- * Implemented Database#disconnect method for all adapters.
810
-
811
- * Fixed small bug in ArrayKeys module.
812
-
813
- * Implemented model caching by primary key.
814
-
815
- * Separated Model.find and Model.[] functionality. Model.find takes a filter. Model.[] is strictly for finding by primary keys.
816
-
817
- * Enhanced Dataset#first to accept a filter block. Model#find can also now accept a filter block.
818
-
819
- * Changed Database#[] to act as shortcut to #fetch if a string is given.
820
-
821
- * Renamed Database#each to #fetch. If no block is given, the method returns an enumerator.
822
-
823
- * Changed Dataset#join methods to correctly literalize values in join conditions (#70).
824
-
825
- * Fixed #filter with ranges to correctly literalize field names (#69).
826
-
827
- * Implemented Database#each method for quickly retrieving records with arbitrary SQL (thanks Aman Gupta).
828
-
829
- * Fixed bug in postgres adapter where a LiteralString would be literalized as a regular String.
830
-
831
- * Fixed SQLite insert with subquery (#68).
832
-
833
- * Reverted back to hashes as default mode. Added Sequel.use_array_tuples and Sequel.use_hash_tuples methods.
834
-
835
- * Fixed problem with arrays with keys when using #delete.
836
-
837
- * Implemented ArrayKeys as substitute for ArrayFields.
838
-
839
- * Added Dataset#each_hash method.
840
-
841
- * Rewrote SQLite::Database#transaction to use sqlite3-ruby library implementation of transactions.
842
-
843
- * Fixed Model.destroy_all to work correctly in cases where no before_destroy hook is defined and an after_destroy hook is defined.
844
-
845
- * Restored Model.has_hooks? implementation.
846
-
847
- * Changed Database#<< to strip comments and whitespace only when an array is given.
848
-
849
- * Changed Schema::Generator#primary_key to accept calls with the type argument omitted.
850
-
851
- * Hooks can now be prepended or appended by choice.
852
-
853
- * Changed Model.subset to define filter method on the underlying dataset instead of the model class.
854
-
855
- * Fixed Dataset#transform to work with array fields.
856
-
857
- * Added Dataset#to_csv method.
858
-
859
- * PrettyTable can now extract column names from arrayfields.
860
-
861
- * Converted ado, dbi, odbc adapters to use arrayfields instead of hashes.
862
-
863
- * Fixed composite key support.
864
-
865
- * Fixed Dataset#insert_sql, update_sql to support array fields.
866
-
867
- * Converted sqlite, mysql, postgres adapters to use arrayfields instead of hashes.
868
-
869
- * Extended Dataset#from to auto alias sub-queries.
870
-
871
- * Extended Dataset#from to accept hash for aliasing tables.
872
-
873
- * Added before_update, after_update hooks.
874
-
875
- === 0.2.1.1 (2007-10-07)
876
-
877
- * Added Date literalization to sqlite adapter (#60).
878
-
879
- * Changed Model.serialize to allow calling it after the class is defined (#59).
880
-
881
- * Fixed after_create hooks to allow calling save inside the hook (#58).
882
-
883
- * Fixed MySQL quoting of sql functions (#57).
884
-
885
- * Implemented rollback! global method for cancelling transactions in progress.
886
-
887
- * Fixed =~ operator in Sequelizer.
888
-
889
- * Fixed ODBC::Dataset#fetch_rows (thanks Dusty).
890
-
891
- * Renamed Model.recreate_table to create_table!. recreate_table is deprecated and will issue a warning (#56).
892
-
893
- === 0.2.1 (2007-09-24)
894
-
895
- * Added default implementation of Model.primary_key_hash.
896
-
897
- * Fixed Sequel::Model() to set dataset for inherited classes.
898
-
899
- * Rewrote Model.serialize to use Dataset#transform.
900
-
901
- * Implemented Dataset#transform.
902
-
903
- * Added gem spec for Windows (without ParseTree dependency).
904
-
905
- * Added support for dynamic strings in Sequelizer (#49).
906
-
907
- * Query branch merged into trunk.
908
-
909
- * Implemented self-changing methods.
910
-
911
- * Add support for ternary operator to Sequelizer.
912
-
913
- * Fixed sequelizer to evaluate expressions if they don't involve symbols or literal strings.
914
-
915
- * Added protection against using #each, #delete, #insert, #update inside query blocks.
916
-
917
- * Improved Model#method_missing to deal with invalid attributes.
918
-
919
- * Implemented Dataset#query.
920
-
921
- * Added Dataset#group_by as alias for Dataset#group.
922
-
923
- * Added Dataset#order_by as alias for Dataset#order.
924
-
925
- * More model refactoring. Added support for composite keys.
926
-
927
- * Added Dataset#empty? method (#46).
928
-
929
- * Fixed Symbol#to_field_name to support names with numbers and upper-case characters (#45).
930
-
931
- * Added install_no_doc rake task.
932
-
933
- * Partial refactoring of model code.
934
-
935
- * Refactored dataset-model association and added Dataset#set_row_filter method.
936
-
937
- * Added support for case-sensitive regexps to mysql adapter.
938
-
939
- * Changed mysql adapter to support encoding option as well.
940
-
941
- * Added charset/encoding option to postgres adapter.
942
-
943
- * Implemented Model.serialize (thanks Aman Gupta.)
944
-
945
- * Changed Model.create to INSERT DEFAULT VALUES instead of (id) VALUES (null) (brings back #41.)
946
-
947
- * Fixed Model.new to work without arguments.
948
-
949
- * Added Model.no_primary_key method to allow models without primary keys.
950
-
951
- * Added Model#this method (#42 thanks Duane Johnson).
952
-
953
- * Fixed Dataset#insert_sql to use DEFAULT VALUES clause if argument is an empty hash.
954
-
955
- * Fixed Model.create to work correctly when no argument is passed (#41).
956
-
957
- === 0.2.0.2 (2007-09-07)
958
-
959
- * Dataset#insert can now accept subqueries.
960
-
961
- * Changed Migrator.apply to return the version.
962
-
963
- * Changed Sequel::Model() to cache intermediate classes so descendant classes can be reopened (#39).
964
-
965
- * Added :charset option to MySQL adapter (#40).
966
-
967
- * Fixed Dataset#exclude to add parens around NOT expression (#38).
968
-
969
- * Fixed use of sub-queries with all comparison operators in block filters (#38).
970
-
971
- * Fixed arithmetic expressions in block filters to not be literalized.
972
-
973
- * Changed Symbol#method_missing to return LiteralString.
974
-
975
- * Changed PrettyTable to right-align numbers.
976
-
977
- * Fixed Model.create_table (thanks Duane Johnson.)
978
-
979
- === 0.2.0.1 (2007-09-04)
980
-
981
- * Improved support for invoking methods with inline procs inside block filters.
982
-
983
- === 0.2.0 (2007-09-02)
984
-
985
- * Fixed Model.drop_table (thanks Duane Johnson.)
986
-
987
- * Dataset#each can now return rows for arbitrary SQL by specifying :sql option.
988
-
989
- * Added spec for postgres adapter.
990
-
991
- * Fixed Model.method_missing to work with new SQL generation.
992
-
993
- * Fixed #compare_expr to support regexps.
994
-
995
- * Fixed postgres, mysql adapters to support regexps.
996
-
997
- * More specs for block filters. Updated README.
998
-
999
- * Added support for globals and $X macros in block filters.
1000
-
1001
- * Fixed Sequelizer to not fail if ParseTree or Ruby2Ruby gems are missing.
1002
-
1003
- * Renamed String#expr into String#lit (#expr should be deprecated in future versions).
1004
-
1005
- * Renamed Sequel::ExpressionString into LiteralString.
1006
-
1007
- * Fixed Symbol#[] to return an ExpressionString, so as not to be literalized.
1008
-
1009
- * Renamed Dataset::Expressions to Dataset::Sequelizer.
1010
-
1011
- * Renamed Expressions#format_re_expression to match_expr.
1012
-
1013
- * Renamed Expressions#format_eq_expression to compare_expr.
1014
-
1015
- * Added support for Regexp in MySQL adapter.
1016
-
1017
- * Refactored Regexp expressions into a separate #format_re_expression method.
1018
-
1019
- * Added support for arithmetic in proc filters.
1020
-
1021
- * Added support for nested proc expressions, more specs.
1022
-
1023
- * Added support for SQL function using symbols, e.g. :sum[:x].
1024
-
1025
- * Fixed deadlock bug in ConnectionPool.
1026
-
1027
- * Removed deprecated old expressions.rb.
1028
-
1029
- * Rewrote Proc filter feature using ParseTree.
1030
-
1031
- * Added support for additional functions on columns using Symbol#method_missing.
1032
-
1033
- * Added support for supplying filter block to DB#[] method, to allow stuff like DB[:nodes] {:path =~ /^icex1/}.
1034
-
1035
- === 0.1.9.12 (2007-08-26)
1036
-
1037
- * Added spec for PrettyTable.
1038
-
1039
- * Added specs for Schema::Generator and Model (#36 thanks technoweenie).
1040
-
1041
- * Fixed Sequel::Model.set_schema (#36 thanks technoweenie.)
1042
-
1043
- * Added support for no options on Schema::Generator#foreign_key (#36 thanks technoweenie.)
1044
-
1045
- * Implemented (restored?) Schema::Generator#primary_key_name (#36 thanks technoweenie.)
1046
-
1047
- * Better spec code coverage.
1048
-
1049
- === 0.1.9.11 (2007-08-24)
1050
-
1051
- * Changed Dataset#set_model to allow supplying additional arguments to the model's initialize method (#35). Thanks Sunny Hirai.
1052
-
1053
- === 0.1.9.10 (2007-08-22)
1054
-
1055
- * Changed schema generation code to generate separate statements for CREATE TABLE and each CREATE INDEX (#34).
1056
-
1057
- * Refactored Dataset::SQL#field_name for better support of different field quoting standards by specific adapters.
1058
-
1059
- * Added #current_page_record_count for paginated datasets.
1060
-
1061
- * Removed Database#literal and included Dataset::SQL instead.
1062
-
1063
- * Sequel::Dataset:SQL#field_name can now take a hash (as well as #select and any method that uses #field_name) for aliasing column names. E.g. DB[:test].select(:_qqa => 'Date').sql #=> 'SELECT _qqa AS Date FROM test'.
1064
-
1065
- * Moved SingleThreadedPool to lib/sequel/connection_pool.rb.
1066
-
1067
- * Changed SQLite::Dataset to return affected rows for #delete and #update (#33).
1068
-
1069
- * ADO adapter: Added use of Enumerable for Recordset#Fields, playing it safe and moving to the first row before getting results, and changing the auto_increment constant to work for MSSQL.
1070
-
1071
- === 0.1.9.9 (2007-08-18)
1072
-
1073
- * New ADO adapter by cdcarter (#31).
1074
-
1075
- * Added automatic column aliasing to #avg, #sum, #min and #max (#30).
1076
-
1077
- * Fixed broken Sequel::DBI::Dataset#fetch_rows (#29 thanks cdcarter.)
1078
-
1079
- === 0.1.9.8 (2007-08-15)
1080
-
1081
- * Fixed DBI adapter.
1082
-
1083
- === 0.1.9.7 (2007-08-15)
1084
-
1085
- * Added support for executing batch statements in sqlite adapter.
1086
-
1087
- * Changed #current_page_record_range to return 0..0 for an invalid page.
1088
-
1089
- * Fixed joining of aliased tables.
1090
-
1091
- * Improved Symbol#to_field_name to prevent false positives.
1092
-
1093
- * Implemented Dataset#multi_insert with :commit_every option.
1094
-
1095
- * More docs for Dataset#set_model.
1096
-
1097
- * Implemented automatic creation of convenience methods for each adapter (e.g. Sequel.sqlite etc.)
1098
-
1099
- === 0.1.9.6 (2007-08-13)
1100
-
1101
- * Refactored schema definition code. Gets rid of famous primary_key problem as well as other issues (e.g. issue #22).
1102
-
1103
- * Added #pagination_record_count, #page_range and #current_page_record_range for paginated datasets.
1104
-
1105
- * Changed MySQL adapter to automatically reconnect (issue #26).
1106
-
1107
- * Changed Sequel() to accept variable arity.
1108
-
1109
- * Added :elements option to column definition, in order to support ENUM and SET types.
1110
-
1111
- === 0.1.9.5 (2007-08-12)
1112
-
1113
- * Fixed migration docs.
1114
-
1115
- * Removed dependency on PGconn in Schema class.
1116
-
1117
- === 0.1.9.4 (2007-08-11)
1118
-
1119
- * Added Sequel.dbi convenience method for using DBI connection strings to open DBI databases.
1120
-
1121
- === 0.1.9.3 (2007-08-10)
1122
-
1123
- * Added support for specifying field size in schema definitions (thanks Florian Aßmann.)
1124
-
1125
- * Added migration code based on work by Florian Aßmann.
1126
-
1127
- * Reintroduced metaid dependency. No need to keep a local copy of it.
1128
-
1129
- === 0.1.9.2 (2007-07-24)
1130
-
1131
- * Removed metaid dependency. Re-factored requires in lib/sequel.rb.
1132
-
1133
- === 0.1.9.1 (2007-07-22)
1134
-
1135
- * Improved robustness of MySQL::Dataset#field_name.
1136
-
1137
- * Added Sequel.single_threaded= convenience method.
1138
-
1139
- === 0.1.9 (2007-07-21)
1140
-
1141
- * Fixed #update_sql and #insert_sql to support field quoting by calling #field_name.
1142
-
1143
- * Implemented automatic data type conversion in mysql adapter.
1144
-
1145
- * Added support for boolean literals in mysql adapter.
1146
-
1147
- * Added support for ORDER and LIMIT clauses in UPDATE statements in mysql adapter.
1148
-
1149
- * Implemented correct field quoting (using back-ticks) in mysql adapter.
1150
-
1151
- * Wrote basic MySQL spec.
1152
-
1153
- * Fixd MySQL::Dataset to return correct data types with symbols as hash keys.
1154
-
1155
- * Removed discunctional MySQL::Database#transaction.
1156
-
1157
- * Added support for single threaded operation.
1158
-
1159
- * Fixed bug in Dataset#format_eq_expression where Range objects would not be literalized correctly.
1160
-
1161
- * Added parens around postgres LIKE expressions using regexps.
1162
-
1163
- === 0.1.8 (2007-07-10)
1164
-
1165
- * Implemented Dataset#columns for retrieving the columns in the result set.
1166
-
1167
- * Updated Model with changes to how model-associated datasets work.
1168
-
1169
- * Beefed-up specs. Coverage is now at 95.0%.
1170
-
1171
- * Added support for polymorphic datasets.
1172
-
1173
- * The adapter dataset interface was simplified and standardized. Only four methods need be overriden: fetch_rows, update, insert and delete.
1174
-
1175
- * The Dataset class was refactored. The bulk of the dataset code was moved into separate modules.
1176
-
1177
- * Renamed Dataset#hash_column to Dataset#to_hash.
1178
-
1179
- * Added some common pragmas to sqlite adapter.
1180
-
1181
- * Added Postgres::Dataset#analyze for EXPLAIN ANALYZE queries.
1182
-
1183
- * Fixed broken Postgres::Dataset#explain.
1184
-
1185
- === 0.1.7
1186
-
1187
- * Removed db.synchronize wrapping calls in sqlite adapter.
1188
-
1189
- * Implemented Model.join method to restrict returned columns to the model table (thanks Pedro Gutierrez).
1190
-
1191
- * Implemented Dataset#paginate method.
1192
-
1193
- * Fixed after_destroy hook.
1194
-
1195
- * Improved Dataset#first and #last to accept a filter hash.
1196
-
1197
- * Added Dataset#[]= method.
1198
-
1199
- * Added Sequel() convenience method.
1200
-
1201
- * Fixed Dataset#first to include a LIMIT clause for a single record.
1202
-
1203
- * Small fix to Postgres driver to return a primary_key value for the inserted record if it is specified in the insertion values (thanks Florian Aßmann and Pedro Gutierrez).
1204
-
1205
- * Fixed Symbol#DESC to support qualified notation (thanks Pedro Gutierrez).
1206
-
1207
- === 0.1.6
1208
-
1209
- * Fixed Model#method_missing to raise for an invalid attribute.
1210
-
1211
- * Fixed PrettyTable to print model objects (thanks snok.)
1212
-
1213
- * Fixed ODBC timestamp conversion to return DateTime rather than Time object (thanks snok.)
1214
-
1215
- * Fixed Model.method_missing (thanks snok.)
1216
-
1217
- * Model.method_missing now creates stubs for calling Model.dataset methods. Methods like Model.each etc are removed.
1218
-
1219
- * Changed default join type to INNER JOIN (thanks snok.)
1220
-
1221
- * Added support for literal expressions, e.g. DB[:items].filter(:col1 => 'col2 - 10'.expr).
1222
-
1223
- * Added Dataset#and.
1224
-
1225
- * SQLite adapter opens a memory DB if no database is specified, e.g. Sequel.open 'sqlite:/'.
1226
-
1227
- * Added Dataset#or, pretty nifty.
1228
-
1229
- === 0.1.5
1230
-
1231
- * Fixed Dataset#join to support multiple joins. Added #left_outer_join, #right_outer_join, #full_outer_join, #inner_join methods.
1232
-
1233
- === 0.1.4
1234
-
1235
- * Added String#split_sql.
1236
-
1237
- * Implemented Array#to_sql and String#to_sql. Database#to_sql can now take an array of strings and convert into an SQL string. Comments and excessive white-space are removed.
1238
-
1239
- * Improved Schema generator to support data types as method names:
1240
- DB.create_table :test do
1241
- integer :abc
1242
- text :def
1243
- ...
1244
- end
1245
-
1246
- * Implemented ODBC adapter.
1247
-
1248
- === 0.1.3
1249
-
1250
- * Implemented DBI adapter.
1251
-
1252
- * Refactored database connection code. Now handled through Database#connect.
1253
-
1254
- === 0.1.2
1255
-
1256
- * The first opened database is automatically assigned to to Model.db.
1257
-
1258
- * Removed SequelConnectionError. Exception class errors are converted to RuntimeError.
1259
-
1260
- * Added support for UNION, INTERSECT and EXCEPT set operations.
1261
-
1262
- * Fixed Dataset#single_record to return nil if no record is found.
1263
-
1264
- * Updated specs to conform to RSpec 1.0.
1265
-
1266
- * Added Model#find_or_create method.
1267
-
1268
- * Fixed MySQL::Dataset#query_single (thanks Dries Harnie.)
1269
-
1270
- * Added Model.subset method. Fixed Model.filter and Model.exclude to accept blocks.
1271
-
1272
- * Added Database#uri method.
1273
-
1274
- * Refactored and removed deprecated code in postgres adapter.
1275
-
1276
- ===0.1.1
1277
-
1278
- * More documentation for Dataset.
1279
-
1280
- * Added Dataset#size as alias to Dataset#count.
1281
-
1282
- * Changed Database#<< to call execute (instead of being an alias). Thus it will work for descendants as well.
1283
-
1284
- * Fixed Sequel.open to accept variable arity.
1285
-
1286
- * Refactored Model#refresh, Model.create. Removed Model#reload.
1287
-
1288
- * Refactored Model hooks.
1289
-
1290
- * Cleaned up Dataset API.
1291
-
1292
- === 0.1.0
1293
-
1294
- * Changed Database#create_table to only accept a block. Nobody's gonna use the other way.
1295
-
1296
- * Removed Dataset#[]= method. Too confusing and not really useful.
1297
-
1298
- * Fixed ConnectionPool#hold to wrap exceptions only once.
1299
-
1300
- * Dataset#where_list Renamed Dataset#expression_list.
1301
-
1302
- * Added support for qualified fields in Proc expressions (e.g. filter {items.id == 1}.)
1303
-
1304
- * Added like? and in? Proc expression operators.
1305
-
1306
- * Added require 'date' in dataset.rb. Is this a 1.8.5 thing?
1307
-
1308
- * Refactored Dataset to use literal strings instead of format strings (slight performance improvement and better readability.)
1309
-
1310
- * Added support for literalizing Date objects.
1311
-
1312
- * Refactored literalization of Time objects.
1313
-
1314
- === 0.0.20
1315
-
1316
- * Refactored Dataset where clause construction to use expressions.
1317
-
1318
- * Implemented Proc expressions (adapted from a great idea by Sam Smoot.)
1319
-
1320
- * Fixed Model#map.
1321
-
1322
- * Documentation for ConnectionPool.
1323
-
1324
- * Specs for Database.
1325
-
1326
- === 0.0.19
1327
-
1328
- * More specs for Dataset.
1329
-
1330
- * Fixed Dataset#invert_order to work correctly with strings.
1331
-
1332
- * Fixed Model#== to check equality of values.
1333
-
1334
- * Added Model#exclude and Model#order.
1335
-
1336
- * Fixed Dataset#order and Dataset#group to behave correctly when supplied with qualified field name symbols.
1337
-
1338
- * Removed Database#literal. Shouldn't have been there.
1339
-
1340
- * Added SQLite::Dataset#explain. Returns an array of opcode hashes.
1341
-
1342
- * Specs for ConnectionPool.
1343
-
1344
- === 0.0.18
1345
-
1346
- * Implemented SequelError and SequelConnectionError classes. ConnectionPool#hold now catches any connection errors and reraises them SequelConnectionError.
1347
-
1348
- * Removed duplication in Database#[].
1349
-
1350
- * :from and :select options are now always arrays (patch by Alex Bradbury.)
1351
-
1352
- * Fixed Dataset#exclude to work correctly (patch and specs by Alex Bradbury.)
1353
-
1354
- === 0.0.17
1355
-
1356
- * Fixed Postgres::Database#tables to return table names as symbols (caused problem when using Database#table_exists?).
1357
-
1358
- * Fixed Dataset#from to have variable arity, like Dataset#select and Dataset#where (patch by Alex Bradbury.)
1359
-
1360
- * Added support for GROUP BY and HAVING clauses (patches by Alex Bradbury.) Refactored Dataset#filter.
1361
-
1362
- * More specs.
1363
-
1364
- * Refactored Dataset#where for better composability.
1365
-
1366
- * Added Dataset#[]= method.
1367
-
1368
- * Added support for DISTINCT and OFFSET clauses (patches by Alex Bradbury.) Dataset#limit now accepts ranges. Added Dataset#uniq and distinct methods.
1369
-
1370
- === 0.0.16
1371
-
1372
- * More documentation.
1373
-
1374
- * Added support for subqueries in Dataset#literal.
1375
-
1376
- * Added support for Model.all_by_XXX methods through Model.method_missing.
1377
-
1378
- * Added basic SQL logging to Database.
1379
-
1380
- * Added Enumerable#send_each convenience method.
1381
-
1382
- * Changed Dataset#destroy to return the number of deleted records.
1383
-
1384
- === 0.0.15
1385
-
1386
- * Improved Dataset#insert_sql to allow arrays as well as hashes.
1387
-
1388
- * Database#drop_table now accepts a list of table names.
1389
-
1390
- * Added Model#id to to return the id column.
1391
-
1392
- === 0.0.14
1393
-
1394
- * Fixed Model's attribute accessors (hopefully for the last time).
1395
-
1396
- * Changed Model.db and Model.db= to allow different databases for different model classes.
1397
-
1398
- * Fixed bug in aggregate methods (max, min, etc) for datasets using record classes.
1399
-
1400
- === 0.0.13
1401
-
1402
- * Fixed Model#method_missing to do both find, filter and attribute accessors. duh.
1403
-
1404
- * Fixed bug in Dataset#literal when quoting arrays of strings (thanks Douglas Koszerek.)
1405
-
1406
- === 0.0.12
1407
-
1408
- * Model#save now correctly performs an INSERT for new objects.
1409
-
1410
- * Added Model#reload for reloading an object from the database.
1411
-
1412
- * Added Dataset#naked method for getting a version of a dataset that fetches records as hashes.
1413
-
1414
- * Implemented attribute accessors for column values ala ActiveRecord models.
1415
-
1416
- * Fixed filtering using nil values (e.g. dataset.filter(:parent_id => nil)).
1417
-
1418
- === 0.0.11
1419
-
1420
- * Renamed Model.schema to Model.set_schema and Model.get_schema to Model.schema.
1421
-
1422
- * Improved Model class to allow descendants of model clases (thanks Pedro Gutierrez.)
1423
-
1424
- * Removed require 'postgres' in schema.rb (thanks Douglas Koszerek.)
1425
-
1426
- === 0.0.10
1427
-
1428
- * Added some examples.
1429
-
1430
- * Added Dataset#print method for pretty-printing tables.
1431
-
1432
- === 0.0.9
1433
-
1434
- * Fixed Postgres::Database#tables and #locks methods.
1435
-
1436
- * Added PGconn#last_insert_id method that should support all 7.x and 8.x versions of Postgresql.
1437
-
1438
- * Added Dataset#exists method for EXISTS where clauses.
1439
-
1440
- * Changed behavior of Dataset#literal to regard symbols as field names.
1441
-
1442
- * Refactored and DRY'd Dataset#literal and overrides therof. Added support for subqueries in where clause.
1443
-
1444
- === 0.0.8
1445
-
1446
- * Fixed Dataset#reverse_order to provide chainability. This method can be called without arguments to invert the current order or with arguments to provide a descending order.
1447
-
1448
- * Fixed literal representation of literals in SQLite adapter (thanks Christian Neukirchen!)
1449
-
1450
- * Refactored insert code in Postgres adapter (in preparation for fetching the last insert id for pre-8.1 versions).
1451
-
1452
- === 0.0.7
1453
-
1454
- * Fixed bug in Model.schema, duh!
1455
-
1456
- === 0.0.6
1457
-
1458
- * Added Dataset#sql as alias to Dataset#select_sql.
1459
-
1460
- * Dataset#where and Dataset#exclude can now be used for refining dataset conditions, enabling stuff like posts.where(:title => 'abcdef').exclude(:user_id => 3).
1461
-
1462
- * Implemented Dataset#exclude method.
1463
-
1464
- * Added Sequel::Schema#auto_primary_key method for setting an automatic primary key to be added to every table definition. Changed the schema generator to not define a primary key by default.
1465
-
1466
- * Changed Sequel::Database#table_exists? to rely on the tables method if it is available.
1467
-
1468
- * Implemented SQLite::Database#tables.
1469
-
1470
- === 0.0.5
1471
-
1472
- * Added Dataset#[] method. Refactored Model#find and Model#[].
1473
-
1474
- * Renamed Pool#conn_maker to Pool#connection_proc.
1475
-
1476
- * Added automatic require 'sequel' to all adapters for convenience.
1477
-
1478
- === 0.0.4
1479
-
1480
- * Added preliminary MySQL support.
1481
-
1482
- * Code cleanup.
1483
-
1484
- === 0.0.3
1485
-
1486
- * Add Dataset#sum method.
1487
-
1488
- * Added support for exclusive ranges (thanks Christian Neukirchen.)
1489
-
1490
- * Added sequel console for quick'n'dirty access to databases.
1491
-
1492
- * Fixed small bug in Dataset#qualified_field_name for better join support.
1493
-
1494
- === 0.0.2
1495
-
1496
- * Added Sequel.open as alias to Sequel.connect.
1497
-
1498
- * Refactored Dataset#where_equal_condition into Dataset#where_condition, allowing arrays and ranges, e.g. posts.filter(:stamp => (3.days.ago)..(1.day.ago)), or posts.filter(:category => ['ruby', 'postgres', 'linux']).
1499
-
1500
- * Added Model#[]= method for changing column values and Model#save
1501
- method for saving them.
1502
-
1503
- * Added Dataset#destroy for deleting each record individually as support for models. Renamed Model#delete to Model#destroy (and Model#destroy_all) ala ActiveRecord.
1504
-
1505
- * Refactored Dataset#first and Dataset#last code. These methods can now accept the number of records to fetch.
1506
-
1507
- === 0.0.1
1508
-
1509
- * More documentation for Dataset.
1510
-
1511
- * Renamed Database#query to Database#dataset.
1512
-
1513
- * Added Dataset#insert_multiple for inserting multiple records.
1514
-
1515
- * Added Dataset#<< as shorthand for inserting records.
1516
-
1517
- * Added Database#<< method for executing arbitrary SQL.
1518
-
1519
- * Imported Sequel code.