rom-sql 3.0.1 → 3.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9ca5db918213ed1a81ec7e5b526849393a4f6223cb4107a2ee1ea54cc6148b81
4
- data.tar.gz: e1742760f02aad6e90025742b3d8d91c2f52d94e495b398e4886431b82d61a71
3
+ metadata.gz: 4f52d96de5f0817d048ca81908d0e1548fde8437314ce2842732fa0de1bc2a45
4
+ data.tar.gz: e194b0a48c85a5a4651dcc1ff073f34e256aad05d22ff8255d16c17418948acf
5
5
  SHA512:
6
- metadata.gz: 73d5948cbae27d6032552805bcad6365d52c18784d0cfeb86391890e89de9d5902c4154898ab96bfc32481aec8e5e6f555febc38faecd8983163a0902897b4ad
7
- data.tar.gz: 7ada4412f647ff39c116044320bdb253fcebc5696caed50cb8158e1be8f440d221af2b601708f1fc06297e818c1e1e1af61d0fbeaa8bb9c949d87f7df7d9aca9
6
+ metadata.gz: 7b9c43411663f8c89bc6df66df77afae600c1b053deb786b23aa7aabafcce6692b8265a11fe9431ea985cdff4d186d8d27cad7407729e2ddf8db8fc38dbb8d09
7
+ data.tar.gz: 9ccb96a9bf4d8d2a6dd638313317fd992e925b1ad5bd4447813e74f6ff2e4a916a10376f37e8982bb0ac09647299a412bbcd27be2f95966f7d28d27e23789559
@@ -1,8 +1,33 @@
1
+ ## 3.1.0 2019-12-16
2
+
3
+ ### Added
4
+
5
+ - `.nullify` that turns the result set of any relation into an empty set. Analogue of `ActiveRecord#none` (@ianks + @flash-gordon)
6
+
7
+ ```ruby
8
+ # Don't forget to activate the plugin
9
+ conf.relation(:users) do
10
+ use :nullify
11
+ end
12
+
13
+ users.nullify.count # => will always be 0
14
+ users.nullify.to_a # => will always be empty ([])
15
+ ```
16
+
17
+ ### Fixed
18
+
19
+ - Make `Relation#wrap` respect association views (@ianks)
20
+ - Primitive JSON-compatible values such as Integer and String are automatically coerced to correct JSONB values and back if you're using a recent Sequel version (>= 5.2.0) (@flash-gordon)
21
+ - Properly qualify relations when in `Relation#union` (@ianks)
22
+ - `Relation#query` no longer removes order in the relation (@DNNX)
23
+
24
+ [Compare v3.0.1...v3.1.0](https://github.com/rom-rb/rom-sql/compare/v3.0.1...v3.1.0)
25
+
1
26
  ## 3.0.1 2019-05-05
2
27
 
3
28
  ### Fixed
4
29
 
5
- * Using joins with a relation object as the target and a block-based conditions produces correct query now (issue #331) (solnic)
30
+ - Using joins with a relation object as the target and a block-based conditions produces correct query now (issue #331) (solnic)
6
31
 
7
32
  [Compare v3.0.0...v3.0.1](https://github.com/rom-rb/rom-sql/compare/v3.0.0...v3.0.1)
8
33
 
@@ -10,7 +35,7 @@
10
35
 
11
36
  ### Added
12
37
 
13
- * Join DSL so that you can use arbitrary conditions when joining relations (flash-gordon)
38
+ - Join DSL so that you can use arbitrary conditions when joining relations (flash-gordon)
14
39
  ```ruby
15
40
  users.join(tasks) { |users:, tasks:|
16
41
  tasks[:user_id].is(users[:id]) & users[:name].is('John')
@@ -24,7 +49,8 @@
24
49
  users[:id].is(authors[:id])
25
50
  }.select(:name)
26
51
  ```
27
- * Support for `CASE` expression (wmaciejak + flash-gordon)
52
+ - Support for `CASE` expression (wmaciejak + flash-gordon)
53
+
28
54
  ```ruby
29
55
  # matching expression result
30
56
  users.select_append { id.case(1 => string('one'), else: string('something else')).as(:one_or_else) }
@@ -32,31 +58,34 @@
32
58
  # searching for `true` result
33
59
  users.select_append { string::case(id.is(1) => 'one', else: 'else').as(:one_or_else) }
34
60
  ```
35
- * Relations can be accessed in DSLs with keyword arguments (flash-gordon)
61
+
62
+ - Relations can be accessed in DSLs with keyword arguments (flash-gordon)
36
63
  ```ruby
37
64
  users.join(posts).select_append { |posts: | posts[:title] }
38
65
  ```
39
- * Support for `.exists` in the projection DSL (flash-gordon)
66
+ - Support for `.exists` in the projection DSL (flash-gordon)
40
67
  ```ruby
41
68
  users.select_append { |posts: |
42
69
  exists(posts.where(posts[:user_id] => id)).as(:has_posts)
43
70
  }
44
71
  ```
45
- * `Relation#unfiltered` returns an unrestricted relation (removes restrictions from `WHERE` and `HAVING`) (flash-gordon)
46
- * Support for `WITHIN GROUP` in the function DSL has been enhanced with block syntax (flash-gordon)
47
- ```ruby
48
- # previously available version
49
- households.project { float::percentile_cont(0.5).within_group(income).as(:percentile) }
50
- # using the new syntax
51
- households.project { float::percentile_cont(0.5).within_group { income }.as(:percentile) }
52
- ```
53
- * Support for migrator options ie `ROM::Configuration.new(:sql, migrator: { path: "my_migrations" })` (rawburt)
54
- * `Relation#pluck` works with multiple args too (timriley)
72
+ - `Relation#unfiltered` returns an unrestricted relation (removes restrictions from `WHERE` and `HAVING`) (flash-gordon)
73
+ - Support for `WITHIN GROUP` in the function DSL has been enhanced with block syntax (flash-gordon)
74
+
75
+ ```ruby
76
+ # previously available version
77
+ households.project { float::percentile_cont(0.5).within_group(income).as(:percentile) }
78
+ # using the new syntax
79
+ households.project { float::percentile_cont(0.5).within_group { income }.as(:percentile) }
80
+ ```
81
+
82
+ - Support for migrator options ie `ROM::Configuration.new(:sql, migrator: { path: "my_migrations" })` (rawburt)
83
+ - `Relation#pluck` works with multiple args too (timriley)
55
84
 
56
85
  ### Changed
57
86
 
58
- * [BREAKING] Updated to work with `dry-types 1.0.0` (flash-gordon)
59
- * [BREAKING] `Types::Int` is now `Types::Integer` (GustavoCaso)
87
+ - [BREAKING] Updated to work with `dry-types 1.0.0` (flash-gordon)
88
+ - [BREAKING] `Types::Int` is now `Types::Integer` (GustavoCaso)
60
89
 
61
90
  ### Fixed
62
91
 
@@ -69,7 +98,7 @@
69
98
 
70
99
  ### Added
71
100
 
72
- * Support for subqueries in `SELECT` and `WHERE` :tada: (flash-gordon)
101
+ - Support for subqueries in `SELECT` and `WHERE` :tada: (flash-gordon)
73
102
  ```ruby
74
103
  tasks = relations[:tasks]
75
104
  users = relations[:users]
@@ -84,8 +113,8 @@
84
113
 
85
114
  ### Added
86
115
 
87
- * Support for functions with `Any` return type (GustavoCaso)
88
- * New `Relation#as_hash` method (GustavoCaso)
116
+ - Support for functions with `Any` return type (GustavoCaso)
117
+ - New `Relation#as_hash` method (GustavoCaso)
89
118
 
90
119
  [Compare v2.3.0...v2.4.0](https://github.com/rom-rb/rom-sql/compare/v2.3.0...v2.4.0)
91
120
 
@@ -93,18 +122,18 @@
93
122
 
94
123
  ### Added
95
124
 
96
- * Command's `:timestamp` plugin now supports passing options (GustavoCaso)
97
- * Configuration supports hash with connection options (Kjarrigan + solnic)
125
+ - Command's `:timestamp` plugin now supports passing options (GustavoCaso)
126
+ - Configuration supports hash with connection options (Kjarrigan + solnic)
98
127
 
99
128
  ### Fixed
100
129
 
101
- * Aliased attributes are handled correctly in PG's commands (cflipse)
102
- * Command extensions are properly applied in multi-adapter setups (solnic)
130
+ - Aliased attributes are handled correctly in PG's commands (cflipse)
131
+ - Command extensions are properly applied in multi-adapter setups (solnic)
103
132
 
104
133
  ### Internal
105
134
 
106
- * Custom SQL-specific mapper compiler was added, which is used starting from rom-core 4.1.0 (solnic)
107
- * Command's `:timestamp` plugin was removed, as it was moved to rom-core (GustavoCaso)
135
+ - Custom SQL-specific mapper compiler was added, which is used starting from rom-core 4.1.0 (solnic)
136
+ - Command's `:timestamp` plugin was removed, as it was moved to rom-core (GustavoCaso)
108
137
 
109
138
  [Compare v2.2.1...v2.3.0](https://github.com/rom-rb/rom-sql/compare/v2.2.1...v2.3.0)
110
139
 
@@ -112,8 +141,8 @@
112
141
 
113
142
  ### Fixed
114
143
 
115
- * Instrumentation works with all db interactions (not just queries that materialize relations) (solnic)
116
- * Typo in `MissingEnv` exception message (romatr)
144
+ - Instrumentation works with all db interactions (not just queries that materialize relations) (solnic)
145
+ - Typo in `MissingEnv` exception message (romatr)
117
146
 
118
147
  [Compare v2.2.0...v2.2.1](https://github.com/rom-rb/rom-sql/compare/v2.2.0...v2.2.1)
119
148
 
@@ -121,14 +150,14 @@
121
150
 
122
151
  ### Added
123
152
 
124
- * Relation registry is passed as an argument to DSL blocks (in `select`, `where`, `order` etc.), which enables syntax like `select { |r| [id, r.tasks[:title]] }` (solnic)
125
- * Support for self-referenced many-to-many associations (solnic)
126
- * PG's geometric types include meta data about db types (GustavoCaso)
153
+ - Relation registry is passed as an argument to DSL blocks (in `select`, `where`, `order` etc.), which enables syntax like `select { |r| [id, r.tasks[:title]] }` (solnic)
154
+ - Support for self-referenced many-to-many associations (solnic)
155
+ - PG's geometric types include meta data about db types (GustavoCaso)
127
156
 
128
157
  ### Fixed
129
158
 
130
- * Custom schema is used correctly in command results (solnic)
131
- * Schemas no longer finalize PKs (this is done in core schema already) (solnic)
159
+ - Custom schema is used correctly in command results (solnic)
160
+ - Schemas no longer finalize PKs (this is done in core schema already) (solnic)
132
161
 
133
162
  [Compare v2.1.0...v2.2.0](https://github.com/rom-rb/rom-sql/compare/v2.1.0...v2.2.0)
134
163
 
@@ -136,15 +165,15 @@
136
165
 
137
166
  ### Added
138
167
 
139
- * Support for PG's range types (v-kolesnikov)
140
- * Support for PG's `ltree` (GustavoCaso + solnic)
141
- * Support for the `FILTER` clause (flash-gordon)
142
- * PG's array types will use custom types for processing members ie `ltree[]` will use `LTree` type (solnic)
168
+ - Support for PG's range types (v-kolesnikov)
169
+ - Support for PG's `ltree` (GustavoCaso + solnic)
170
+ - Support for the `FILTER` clause (flash-gordon)
171
+ - PG's array types will use custom types for processing members ie `ltree[]` will use `LTree` type (solnic)
143
172
 
144
173
  ### Fixed
145
174
 
146
- * Schema inference works with primary keys that have custom types (ie an enum PK column) (v-kolesnikov)
147
- * Ruby warnings are gone (solnic)
175
+ - Schema inference works with primary keys that have custom types (ie an enum PK column) (v-kolesnikov)
176
+ - Ruby warnings are gone (solnic)
148
177
 
149
178
  [Compare v2.0.0...v2.1.0](https://github.com/rom-rb/rom-sql/compare/v2.0.0...v2.1.0)
150
179
 
@@ -152,9 +181,9 @@
152
181
 
153
182
  ### Added
154
183
 
155
- * Support for schema plugins (flash-gordon)
156
- * Support for auto migrations (flash-gordon)
157
- * Add DLS for describing table indexes (flash-gordon)
184
+ - Support for schema plugins (flash-gordon)
185
+ - Support for auto migrations (flash-gordon)
186
+ - Add DLS for describing table indexes (flash-gordon)
158
187
 
159
188
  ```ruby
160
189
  schema do
@@ -167,27 +196,27 @@
167
196
  end
168
197
  ```
169
198
 
170
- * Support for composite indexes in the auto-restrictions plugin (flash-gordon)
171
- * `SQL::Gateway#call` calls a SQL function (flash-gordon)
199
+ - Support for composite indexes in the auto-restrictions plugin (flash-gordon)
200
+ - `SQL::Gateway#call` calls a SQL function (flash-gordon)
172
201
 
173
202
  ```ruby
174
203
  gateway.(:upper, 'foo') # => "FOO"
175
204
  gateway.(:pg_advisory_xact_lock, 1234) # => nil
176
205
  ```
177
206
 
178
- * `SQL::Gateway#run` executes a SQL string, e.g. a DDL statement (flash-gordon)
207
+ - `SQL::Gateway#run` executes a SQL string, e.g. a DDL statement (flash-gordon)
179
208
 
180
209
  ```ruby
181
210
  gateway.run('set session IntervalStyle to default')
182
211
  ```
183
212
 
184
- * `SQL::Relation#exists` joins a relation with the `EXISTS` operator (flash-gordon)
213
+ - `SQL::Relation#exists` joins a relation with the `EXISTS` operator (flash-gordon)
185
214
 
186
215
  ```ruby
187
216
  users.exists(posts) # => users with posts
188
217
  ```
189
218
 
190
- * Support for processing a relation in batches (flash-gordon)
219
+ - Support for processing a relation in batches (flash-gordon)
191
220
 
192
221
  ```ruby
193
222
  users.each_batch(size: 100) do |rel|
@@ -197,52 +226,51 @@
197
226
  end
198
227
  ```
199
228
 
200
- * `SQL::Relation#import` inserts data from another relation using the `INSERT ... AS SELECT` syntax which is often far more effective than row-by-row processing and an ordinary multi-insert. Relations defined on another gateway are also supported, and in this case, the implementation falls back to the multi-insert strategy (flash-gordon)
229
+ - `SQL::Relation#import` inserts data from another relation using the `INSERT ... AS SELECT` syntax which is often far more effective than row-by-row processing and an ordinary multi-insert. Relations defined on another gateway are also supported, and in this case, the implementation falls back to the multi-insert strategy (flash-gordon)
201
230
 
202
231
  ```ruby
203
232
  users.import(authors.select { first_name.concat(last_name).as(:name) })
204
233
  ```
205
234
 
206
- * Support for `tinytext`, `text`, `mediumtext`, and `longtext data types in MySQL (panthomakos)
207
- * The new `pg_explain` plugin for getting query plans on PostgreSQL (flash-gordon)
235
+ - Support for `tinytext`, `text`, `mediumtext`, and `longtext data types in MySQL (panthomakos)
236
+ - The new `pg_explain` plugin for getting query plans on PostgreSQL (flash-gordon)
208
237
 
209
238
  ```ruby
210
239
  users.by_pk(1).explain(format: :json, analyze: true)
211
240
  ```
212
241
 
213
- * Support for window function calls
242
+ - Support for window function calls
214
243
 
215
244
  ```ruby
216
245
  employees.select { [dep_no, salary, integer::avg(salary).over(partition: dep_no, order: id).as(:avg_salary)] }
217
246
  ```
218
247
 
219
- * Function result can be negated, also `ROM::SQL::Function#not` was added (flash-gordon)
248
+ - Function result can be negated, also `ROM::SQL::Function#not` was added (flash-gordon)
220
249
 
221
250
  ```ruby
222
251
  users.where { !lower(name).is('John') }
223
252
  users.where { lower(name).not('John') }
224
253
  ```
225
254
 
226
-
227
255
  ### Changed
228
256
 
229
- * [BREAKING] based on rom 4.0 now (flash-gordon + solnic)
230
- * [BREAKING] `Associates` command plugin requires associations now (solnic)
231
- * [BREAKING] `Command#transaction` is gone in favor of `Relation#transaction` (solnic)
232
- * [BREAKING] `PG::JSONArray`, `PG::JSONBArray`, `PG::JSONHash`, and `PG::JSONBHash` types were dropped, use `PG::JSON` and `PG::JSONB` instead (flash-gordon)
233
- * [BREAKING] The `pg_hstore` extension now doesn't get loaded automatically, use the `:extension` option to load it on config initialization (flash-gordon)
234
- * `ManyToOne` no longer uses a join (solnic)
235
- * `AutoCombine` and `AutoWrap` plugins were removed as this functionality is provided by core API (solnic)
236
- * Foreign keys are indexed by default (flash-gordon)
237
- * Schemas are qualified by default (solnic)
238
- * `PG::JSON`, `PG::JSONB`, and `PG::Array` now all have read types so that they return plain Hash/Array values instead of Sequel's wrappers (flash-gordon)
257
+ - [BREAKING] based on rom 4.0 now (flash-gordon + solnic)
258
+ - [BREAKING] `Associates` command plugin requires associations now (solnic)
259
+ - [BREAKING] `Command#transaction` is gone in favor of `Relation#transaction` (solnic)
260
+ - [BREAKING] `PG::JSONArray`, `PG::JSONBArray`, `PG::JSONHash`, and `PG::JSONBHash` types were dropped, use `PG::JSON` and `PG::JSONB` instead (flash-gordon)
261
+ - [BREAKING] The `pg_hstore` extension now doesn't get loaded automatically, use the `:extension` option to load it on config initialization (flash-gordon)
262
+ - `ManyToOne` no longer uses a join (solnic)
263
+ - `AutoCombine` and `AutoWrap` plugins were removed as this functionality is provided by core API (solnic)
264
+ - Foreign keys are indexed by default (flash-gordon)
265
+ - Schemas are qualified by default (solnic)
266
+ - `PG::JSON`, `PG::JSONB`, and `PG::Array` now all have read types so that they return plain Hash/Array values instead of Sequel's wrappers (flash-gordon)
239
267
 
240
268
  ### Fixed
241
269
 
242
- * Self-ref associations work correctly with custom FKs (solnic)
243
- * Aliased associations with custom FKs work correctly (solnic)
244
- * Defining a custom dataset block no longer prevents default views like `by_pk` to be defined (solnic)
245
- * `Relation#group` uses canonical schema now (solnic)
270
+ - Self-ref associations work correctly with custom FKs (solnic)
271
+ - Aliased associations with custom FKs work correctly (solnic)
272
+ - Defining a custom dataset block no longer prevents default views like `by_pk` to be defined (solnic)
273
+ - `Relation#group` uses canonical schema now (solnic)
246
274
 
247
275
  [Compare v1.3.3...master](https://github.com/rom-rb/rom-sql/compare/v1.3.3...master)
248
276
 
@@ -250,15 +278,15 @@
250
278
 
251
279
  ### Added
252
280
 
253
- * `Relation#lock`, row-level locking using the `SELECT FOR UPDATE` clause (flash-gordon)
254
- * `get` and `get_text` methods for the `PG::JSON` type (flash-gordon)
255
- * Support for converting data type with `CAST` using the function DSL (flash-gordon)
281
+ - `Relation#lock`, row-level locking using the `SELECT FOR UPDATE` clause (flash-gordon)
282
+ - `get` and `get_text` methods for the `PG::JSON` type (flash-gordon)
283
+ - Support for converting data type with `CAST` using the function DSL (flash-gordon)
256
284
 
257
285
  ```ruby
258
286
  users.select { string::cast(id, 'varchar').as(:id_str) }
259
287
  ```
260
288
 
261
- * Support for`EXISTS` (v-kolesnikov)
289
+ - Support for`EXISTS` (v-kolesnikov)
262
290
 
263
291
  ```ruby
264
292
  subquery = tasks.where(tasks[:user_id].qualified => users[:id].qualified)
@@ -267,7 +295,7 @@
267
295
 
268
296
  ### Fixed
269
297
 
270
- * Fixed a regression introduced in v1.3.2 caused by doing way more work processing the default dataset (flash-gordon)
298
+ - Fixed a regression introduced in v1.3.2 caused by doing way more work processing the default dataset (flash-gordon)
271
299
 
272
300
  [Compare v1.3.2...v1.3.3](https://github.com/rom-rb/rom-sql/compare/v1.3.2...v1.3.3)
273
301
 
@@ -275,13 +303,13 @@
275
303
 
276
304
  ### Added
277
305
 
278
- * Support for filtering with a SQL function in the `WHERE` clause. Be sure you're using it wisely and don't call it on large datasets ;) (flash-gordon)
279
- * `Void` type for calling functions without returning value (flash-gordon)
280
- * Support for [`PG::Array` transformations and queries](https://github.com/rom-rb/rom-sql/blob/15019a40e2cf2a224476184c4cddab4062a2cc01/lib/rom/sql/extensions/postgres/types.rb#L23-L148) (flash-gordon)
306
+ - Support for filtering with a SQL function in the `WHERE` clause. Be sure you're using it wisely and don't call it on large datasets ;) (flash-gordon)
307
+ - `Void` type for calling functions without returning value (flash-gordon)
308
+ - Support for [`PG::Array` transformations and queries](https://github.com/rom-rb/rom-sql/blob/15019a40e2cf2a224476184c4cddab4062a2cc01/lib/rom/sql/extensions/postgres/types.rb#L23-L148) (flash-gordon)
281
309
 
282
310
  ### Fixed
283
311
 
284
- * A bunch of warnings from Sequel 4.46
312
+ - A bunch of warnings from Sequel 4.46
285
313
 
286
314
  [Compare v1.3.1...v1.3.2](https://github.com/rom-rb/rom-sql/compare/v1.3.1...v1.3.2)
287
315
 
@@ -289,7 +317,7 @@
289
317
 
290
318
  ### Changed
291
319
 
292
- * [internal] Compatibility with `dry-core` v0.3.0 (flash-gordon)
320
+ - [internal] Compatibility with `dry-core` v0.3.0 (flash-gordon)
293
321
 
294
322
  [Compare v1.3.0...v1.3.1](https://github.com/rom-rb/rom-sql/compare/v1.3.0...v1.3.1)
295
323
 
@@ -297,22 +325,22 @@
297
325
 
298
326
  ### Added
299
327
 
300
- * New `Relation#exist?` predicate checks if the relation has at least one tuple (flash-gordon)
301
- * Support for [JSONB transformations and queries](https://github.com/rom-rb/rom-sql/blob/15019a40e2cf2a224476184c4cddab4062a2cc01/lib/rom/sql/extensions/postgres/types.rb#L170-L353) using native DSL (flash-gordon)
302
- * Add `ROM::SQL::Attribute#not` for negated boolean equality expressions (AMHOL)
303
- * Add `ROM::SQL::Attribute#!` for negated attribute's sql expressions (solnic)
304
- * Inferrer gets limit constraints for string data types and stores them in type's meta (v-kolesnikov)
328
+ - New `Relation#exist?` predicate checks if the relation has at least one tuple (flash-gordon)
329
+ - Support for [JSONB transformations and queries](https://github.com/rom-rb/rom-sql/blob/15019a40e2cf2a224476184c4cddab4062a2cc01/lib/rom/sql/extensions/postgres/types.rb#L170-L353) using native DSL (flash-gordon)
330
+ - Add `ROM::SQL::Attribute#not` for negated boolean equality expressions (AMHOL)
331
+ - Add `ROM::SQL::Attribute#!` for negated attribute's sql expressions (solnic)
332
+ - Inferrer gets limit constraints for string data types and stores them in type's meta (v-kolesnikov)
305
333
 
306
334
  ### Fixed
307
335
 
308
- * Fixed usage of PostgreSQL's commands with a composite relation (flash-gordon)
309
- * Translation of `true/false/nil` equality checks to `is/is not` SQL statements in `ROM::SQL::Attribute#is` (AMHOL)
310
- * `associates` command plugin coerces parent collections to hashes correctly (aarek+solnic)
311
- * `by_pk` works correctly even when PK is not projected (solnic)
336
+ - Fixed usage of PostgreSQL's commands with a composite relation (flash-gordon)
337
+ - Translation of `true/false/nil` equality checks to `is/is not` SQL statements in `ROM::SQL::Attribute#is` (AMHOL)
338
+ - `associates` command plugin coerces parent collections to hashes correctly (aarek+solnic)
339
+ - `by_pk` works correctly even when PK is not projected (solnic)
312
340
 
313
341
  ### Changed
314
342
 
315
- * Global private interface `SQL::Gateway.instance` has been deprecated. Now if you run migrations
343
+ - Global private interface `SQL::Gateway.instance` has been deprecated. Now if you run migrations
316
344
  with ROM you should set up a ROM config in the `db:setup` task with something similar to
317
345
 
318
346
  ```ruby
@@ -329,7 +357,7 @@
329
357
 
330
358
  ### Changed
331
359
 
332
- * Updated `dry-initializer` (flash-gordon)
360
+ - Updated `dry-initializer` (flash-gordon)
333
361
 
334
362
  [Compare v1.2.1...v1.2.2](https://github.com/rom-rb/rom-sql/compare/v1.2.1...v1.2.2)
335
363
 
@@ -337,7 +365,7 @@
337
365
 
338
366
  ### Fixed
339
367
 
340
- * Allow for joining by a `RelationProxy` instance from `rom-repository` (davydovanton)
368
+ - Allow for joining by a `RelationProxy` instance from `rom-repository` (davydovanton)
341
369
 
342
370
  [Compare v1.2.0...v1.2.1](https://github.com/rom-rb/rom-sql/compare/v1.2.0...v1.2.1)
343
371
 
@@ -345,9 +373,9 @@
345
373
 
346
374
  ### Added
347
375
 
348
- * Support for configuring multiple associations for a command (solnic)
349
- * Support for passing parent tuple(s) as `parent` option in `Command#with_association` (solnic)
350
- * Support for join using assocation name (flash-gordon)
376
+ - Support for configuring multiple associations for a command (solnic)
377
+ - Support for passing parent tuple(s) as `parent` option in `Command#with_association` (solnic)
378
+ - Support for join using assocation name (flash-gordon)
351
379
 
352
380
  [Compare v1.1.2...v1.2.0](https://github.com/rom-rb/rom-sql/compare/v1.1.2...v1.2.0)
353
381
 
@@ -355,7 +383,7 @@
355
383
 
356
384
  ### Fixed
357
385
 
358
- * Fix grouping by a function in the block DSL (flash-gordon)
386
+ - Fix grouping by a function in the block DSL (flash-gordon)
359
387
 
360
388
  [Compare v1.1.1...v1.1.2](https://github.com/rom-rb/rom-sql/compare/v1.1.1...v1.1.2)
361
389
 
@@ -363,7 +391,7 @@
363
391
 
364
392
  ### Fixed
365
393
 
366
- * Restriction conditions with an array as a value are handled correctly by attribute types (solnic)
394
+ - Restriction conditions with an array as a value are handled correctly by attribute types (solnic)
367
395
 
368
396
  [Compare v1.1.0...v1.1.1](https://github.com/rom-rb/rom-sql/compare/v1.1.0...v1.1.1)
369
397
 
@@ -371,15 +399,15 @@
371
399
 
372
400
  ### Added
373
401
 
374
- * Added inferring for database indices (flash-gordon)
375
- * Restriction conditions are now coerced using schema attributes (solnic)
376
- * `:instrumentation` relation plugin that can be configured with any instrumentation backend (solnic)
377
- * `:auto_restrictions` relation plugin, which defines `by_*` views restricting relations by their indexed attributes (solnic)
402
+ - Added inferring for database indices (flash-gordon)
403
+ - Restriction conditions are now coerced using schema attributes (solnic)
404
+ - `:instrumentation` relation plugin that can be configured with any instrumentation backend (solnic)
405
+ - `:auto_restrictions` relation plugin, which defines `by_*` views restricting relations by their indexed attributes (solnic)
378
406
 
379
407
  ### Fixed
380
408
 
381
- * Missing `group` method was added to legacy `SequelAPI` module (solnic)
382
- * Associations properly maintain `order` if it was set (solnic)
409
+ - Missing `group` method was added to legacy `SequelAPI` module (solnic)
410
+ - Associations properly maintain `order` if it was set (solnic)
383
411
 
384
412
  [Compare v1.0.3...v1.1.0](https://github.com/rom-rb/rom-sql/compare/v1.0.3...v1.1.0)
385
413
 
@@ -387,11 +415,11 @@
387
415
 
388
416
  ### Changed
389
417
 
390
- * `AutoCombine#preload` uses better restriction for `ManyToOne` association which greatly speeds up loading bigger amounts of data (solnic + flash-gordon)
418
+ - `AutoCombine#preload` uses better restriction for `ManyToOne` association which greatly speeds up loading bigger amounts of data (solnic + flash-gordon)
391
419
 
392
420
  ### Fixed
393
421
 
394
- * Fix the usage of timestamp in command chains (cflipse)
422
+ - Fix the usage of timestamp in command chains (cflipse)
395
423
 
396
424
  [Compare v1.0.2...v1.0.3](https://github.com/rom-rb/rom-sql/compare/v1.0.2...v1.0.3)
397
425
 
@@ -399,7 +427,7 @@
399
427
 
400
428
  ### Added
401
429
 
402
- * Support for selecting literal strings via ``select { `'foo'`.as(:bar) }`` (solnic)
430
+ - Support for selecting literal strings via `` select { `'foo'`.as(:bar) } `` (solnic)
403
431
 
404
432
  [Compare v1.0.1...v1.0.2](https://github.com/rom-rb/rom-sql/compare/v1.0.1...v1.0.2)
405
433
 
@@ -407,14 +435,14 @@
407
435
 
408
436
  ### Added
409
437
 
410
- * Support for inferring the PostgreSQL `hstore` data type (flash-gordon)
411
- * Support for the rest of geometric PostgreSQL data types (box, lseg, polygon, etc.) (Morozzzko)
412
- * Added inferring for timestamp types with specified precision (flash-gordon)
413
- * Added `ROM::SQL::Attribute#in` to support range checks in conditions (flash-gordon)
438
+ - Support for inferring the PostgreSQL `hstore` data type (flash-gordon)
439
+ - Support for the rest of geometric PostgreSQL data types (box, lseg, polygon, etc.) (Morozzzko)
440
+ - Added inferring for timestamp types with specified precision (flash-gordon)
441
+ - Added `ROM::SQL::Attribute#in` to support range checks in conditions (flash-gordon)
414
442
 
415
443
  ### Fixed
416
444
 
417
- * Missing primary key now leads to a more meaningful error (flash-gordon)
445
+ - Missing primary key now leads to a more meaningful error (flash-gordon)
418
446
 
419
447
  [Compare v1.0.0...v1.0.1](https://github.com/rom-rb/rom-sql/compare/v1.0.0...v1.0.1)
420
448
 
@@ -426,37 +454,37 @@ Please refer to [the upgrading guide](https://github.com/rom-rb/rom-sql/wiki/Upg
426
454
 
427
455
  ### Added
428
456
 
429
- * [BREAKING] All relations have schemas (inferred by default, but still possible to override and/or extend) (solnic)
430
- * [BREAKING] Schemas are used when defining relation views (solnic)
431
- * [BREAKING] Default dataset is set up based on schema (solnic)
432
- * Extended query API with support for schema attributes (solnic)
433
- * Schemas can project relations automatically (solnic)
434
- * New `Schema#qualified` (solnic)
435
- * New `Relation#assoc` method which is a shortcut for accessing relation created by the given association (solnic)
436
- * Schema attribute types are now SQL-specific and compatible with query DSL (ie you can pass relation attributes to `select` and they will be automatically converted to valid SQL expressions) (solnic)
437
- * Associations support setting custom `view` that will be used to extend association relation (solnic)
438
- * Associations support setting custom `foreign_key` names (solnic)
439
- * Update commands has `:associates` plugin enabled (solnic)
440
- * Support for self-referencing associations (ie categories have_many child categories) (solnic)
441
- * Inferrers for mysql and sqlite were added (flash-gordon)
442
- * PG's auto-inferrer can handle `inet`/`cidr`/`point` data types in a two-way manner, i.e. converting them back and forth on reading and writing (flash-gordon)
443
- * Support for inferring more PG types: `macaddr`, `xml` (flash-gordon)
444
- * `ROM::SQL::Relation::SequelAPI` extension for backward-compatible query API (this will be deprecated in 1.1.0 and removed in 2.0.0) (solnic)
445
- * Added `Object` type for `SQLite` which is used by the inferrer for columns without a type affinity (flash-gordon)
446
- * Support for composite PKs in the default `by_pk` view (solnic)
457
+ - [BREAKING] All relations have schemas (inferred by default, but still possible to override and/or extend) (solnic)
458
+ - [BREAKING] Schemas are used when defining relation views (solnic)
459
+ - [BREAKING] Default dataset is set up based on schema (solnic)
460
+ - Extended query API with support for schema attributes (solnic)
461
+ - Schemas can project relations automatically (solnic)
462
+ - New `Schema#qualified` (solnic)
463
+ - New `Relation#assoc` method which is a shortcut for accessing relation created by the given association (solnic)
464
+ - Schema attribute types are now SQL-specific and compatible with query DSL (ie you can pass relation attributes to `select` and they will be automatically converted to valid SQL expressions) (solnic)
465
+ - Associations support setting custom `view` that will be used to extend association relation (solnic)
466
+ - Associations support setting custom `foreign_key` names (solnic)
467
+ - Update commands has `:associates` plugin enabled (solnic)
468
+ - Support for self-referencing associations (ie categories have_many child categories) (solnic)
469
+ - Inferrers for mysql and sqlite were added (flash-gordon)
470
+ - PG's auto-inferrer can handle `inet`/`cidr`/`point` data types in a two-way manner, i.e. converting them back and forth on reading and writing (flash-gordon)
471
+ - Support for inferring more PG types: `macaddr`, `xml` (flash-gordon)
472
+ - `ROM::SQL::Relation::SequelAPI` extension for backward-compatible query API (this will be deprecated in 1.1.0 and removed in 2.0.0) (solnic)
473
+ - Added `Object` type for `SQLite` which is used by the inferrer for columns without a type affinity (flash-gordon)
474
+ - Support for composite PKs in the default `by_pk` view (solnic)
447
475
 
448
476
  ### Changed
449
477
 
450
- * [BREAKING] `Relation#header` has been removed in favor of schemas (solnic)
451
- * [BREAKING] `Relation#base` has been removed as now a vanilla relation *is a base relation view* (solnic)
452
- * [BREAKING] Deprecated `Relation.primary_key` has been removed in favor of schema (solnic)
453
- * [BREAKING] Deprecated `Commands::Update#change` has been removed (solnic)
454
- * [BREAKING] Deprecated `Commands.validator` has been removed (solnic)
455
- * [BREAKING] `assoc_macros` plugin has been removed, please use associations from now (solnic)
456
- * Default `by_pk` uses schema attributes, it will raise exception if PK attribute is missing in the schema (solnic)
457
- * [internal] Associations use schemas for relation projections (solnic)
458
- * [internal] `select`, `select_append`, `project`, `inner_join` and `left_join` use schemas internally (solnic)
459
- * [internal] Deprecation and constants are now based on dry-core (flash-gordon)
478
+ - [BREAKING] `Relation#header` has been removed in favor of schemas (solnic)
479
+ - [BREAKING] `Relation#base` has been removed as now a vanilla relation _is a base relation view_ (solnic)
480
+ - [BREAKING] Deprecated `Relation.primary_key` has been removed in favor of schema (solnic)
481
+ - [BREAKING] Deprecated `Commands::Update#change` has been removed (solnic)
482
+ - [BREAKING] Deprecated `Commands.validator` has been removed (solnic)
483
+ - [BREAKING] `assoc_macros` plugin has been removed, please use associations from now (solnic)
484
+ - Default `by_pk` uses schema attributes, it will raise exception if PK attribute is missing in the schema (solnic)
485
+ - [internal] Associations use schemas for relation projections (solnic)
486
+ - [internal] `select`, `select_append`, `project`, `inner_join` and `left_join` use schemas internally (solnic)
487
+ - [internal] Deprecation and constants are now based on dry-core (flash-gordon)
460
488
 
461
489
  [Compare v0.9.1...v1.0.0](https://github.com/rom-rb/rom-sql/compare/v0.9.1...v1.0.0)
462
490
 
@@ -464,8 +492,8 @@ Please refer to [the upgrading guide](https://github.com/rom-rb/rom-sql/wiki/Upg
464
492
 
465
493
  ### Added
466
494
 
467
- * Support for PG enums in schema inferrer (flash-gordon)
468
- * `ROM::SQL::Relation#read` method which accepts an SQL string and returns a new relation (solnic)
495
+ - Support for PG enums in schema inferrer (flash-gordon)
496
+ - `ROM::SQL::Relation#read` method which accepts an SQL string and returns a new relation (solnic)
469
497
 
470
498
  [Compare v0.9.0...v0.9.1](https://github.com/rom-rb/rom-sql/compare/v0.9.0...v0.9.1)
471
499
 
@@ -473,22 +501,22 @@ Please refer to [the upgrading guide](https://github.com/rom-rb/rom-sql/wiki/Upg
473
501
 
474
502
  ### Added
475
503
 
476
- * `Associations::{OneToMany,OneToOne}#associate` for merging FKs into child tuple (jodosha)
477
- * Added support for PostgreSQL types: UUID, Array, JSONB and Money (jodosha)
478
- * Support for DB specific schema inferrers (flash-gordon)
479
- * Automatically infer PG arrays and JSON(B) types (jodosha + flash-gordon)
480
- * Support for `Relation#having` (cflipse)
504
+ - `Associations::{OneToMany,OneToOne}#associate` for merging FKs into child tuple (jodosha)
505
+ - Added support for PostgreSQL types: UUID, Array, JSONB and Money (jodosha)
506
+ - Support for DB specific schema inferrers (flash-gordon)
507
+ - Automatically infer PG arrays and JSON(B) types (jodosha + flash-gordon)
508
+ - Support for `Relation#having` (cflipse)
481
509
 
482
510
  ### Changed
483
511
 
484
- * Inferred types in schemas **are no longer strict** (flash-gordon)
485
- * PG-specific types are handled by `:postgres` extension and it loads connection extensions automatically (flash-gordon)
486
- * Make `OneToOne` inherit from `OneToMany` (beauby)
487
- * Default dataset will use column names from schema if it's available (solnic)
512
+ - Inferred types in schemas **are no longer strict** (flash-gordon)
513
+ - PG-specific types are handled by `:postgres` extension and it loads connection extensions automatically (flash-gordon)
514
+ - Make `OneToOne` inherit from `OneToMany` (beauby)
515
+ - Default dataset will use column names from schema if it's available (solnic)
488
516
 
489
517
  ### Fixed
490
518
 
491
- * Floats are inferred by schemas (cflipse)
519
+ - Floats are inferred by schemas (cflipse)
492
520
 
493
521
  [Compare v0.8.0...v0.9.0](https://github.com/rom-rb/rom-sql/compare/v0.8.0...v0.9.0)
494
522
 
@@ -496,27 +524,27 @@ Please refer to [the upgrading guide](https://github.com/rom-rb/rom-sql/wiki/Upg
496
524
 
497
525
  ### Added
498
526
 
499
- * Support for relation schemas with SQL-specific data types (solnic + flash-gordon)
500
- * One-To-Many support in schemas (solnic + flash-gordon)
501
- * One-To-One support in schemas (solnic + flash-gordon)
502
- * One-To-One-Through support in schemas (solnic + flash-gordon)
503
- * Many-To-One support in schemas (solnic + flash-gordon)
504
- * Many-To-Many support in schemas (solnic + flash-gordon)
505
- * Support for `has_many`, `has_one` and `belongs_to` convenient methods in schema DSL (solnic)
506
- * Support for custom PG types: `Types::PG::Array`, `Types::PG::Hash`, `Types::PG::JSON`, and `Types::PG::Bytea` (solnic + flash-gordon)
507
- * Optional automatic schema inference for attributes and foreign keys based on DB metadata provided by Sequel (flash-gordon)
508
- * Support for arbitrary dataset and FK names in schemas (flash-gordon)
509
- * Support for native upserts in PostgreSQL >= 9.5 via `Commands::Postgres::Upsert` (gotar + flash-gordon)
527
+ - Support for relation schemas with SQL-specific data types (solnic + flash-gordon)
528
+ - One-To-Many support in schemas (solnic + flash-gordon)
529
+ - One-To-One support in schemas (solnic + flash-gordon)
530
+ - One-To-One-Through support in schemas (solnic + flash-gordon)
531
+ - Many-To-One support in schemas (solnic + flash-gordon)
532
+ - Many-To-Many support in schemas (solnic + flash-gordon)
533
+ - Support for `has_many`, `has_one` and `belongs_to` convenient methods in schema DSL (solnic)
534
+ - Support for custom PG types: `Types::PG::Array`, `Types::PG::Hash`, `Types::PG::JSON`, and `Types::PG::Bytea` (solnic + flash-gordon)
535
+ - Optional automatic schema inference for attributes and foreign keys based on DB metadata provided by Sequel (flash-gordon)
536
+ - Support for arbitrary dataset and FK names in schemas (flash-gordon)
537
+ - Support for native upserts in PostgreSQL >= 9.5 via `Commands::Postgres::Upsert` (gotar + flash-gordon)
510
538
 
511
539
  ### Changed
512
540
 
513
- * `Create` and `Update` commands have `:schema` plugin enabled by default which sets input handler based on schema definition automatically (solnic)
514
- * `associates` command plugin uses schema associations now (solnic)
515
- * Dropped MRI 2.0.x support
541
+ - `Create` and `Update` commands have `:schema` plugin enabled by default which sets input handler based on schema definition automatically (solnic)
542
+ - `associates` command plugin uses schema associations now (solnic)
543
+ - Dropped MRI 2.0.x support
516
544
 
517
545
  ### Fixed
518
546
 
519
- * `Create` command properly materialize result when `:one` is set (AMHOL)
547
+ - `Create` command properly materialize result when `:one` is set (AMHOL)
520
548
 
521
549
  [Compare v0.7.0...v0.8.0](https://github.com/rom-rb/rom-sql/compare/v0.7.0...v0.8.0)
522
550
 
@@ -524,26 +552,26 @@ Please refer to [the upgrading guide](https://github.com/rom-rb/rom-sql/wiki/Upg
524
552
 
525
553
  ### Added
526
554
 
527
- * Repository plugins have been imported:
528
- * `view` allows defining a relation view with an explicit header (solnic)
529
- * `base_view` defines a base view with all column names as the header (solnic)
530
- * `auto_combine` defines a generic `for_combine` method which eager-loads
555
+ - Repository plugins have been imported:
556
+ - `view` allows defining a relation view with an explicit header (solnic)
557
+ - `base_view` defines a base view with all column names as the header (solnic)
558
+ - `auto_combine` defines a generic `for_combine` method which eager-loads
531
559
  parent/children relation (solnic)
532
- * `auto-wrap` defines a generic `for_wrap` method which inner-joins
560
+ - `auto-wrap` defines a generic `for_wrap` method which inner-joins
533
561
  a parent/children relation (solnic)
534
- * Possibility to check for pending migrations (gotar)
535
- * `Relation#sum` interface (gotar)
536
- * `Relation#avg` interface (gotar)
537
- * `Relation#min` interface (gotar)
538
- * `Relation#max` interface (gotar)
539
- * `Relation#union` interface (spscream)
540
- * `primary_key` macro which allows setting a custom primary key when it cannot be
541
- inferred automatically (solnic)
562
+ - Possibility to check for pending migrations (gotar)
563
+ - `Relation#sum` interface (gotar)
564
+ - `Relation#avg` interface (gotar)
565
+ - `Relation#min` interface (gotar)
566
+ - `Relation#max` interface (gotar)
567
+ - `Relation#union` interface (spscream)
568
+ - `primary_key` macro which allows setting a custom primary key when it cannot be
569
+ inferred automatically (solnic)
542
570
 
543
571
  ### Changed
544
572
 
545
- * `ROM::SQL.gateway` renamed to `ROM::SQL::Gateway.instance` for migrations (endash)
546
- * Association macros are now an optional plugin (solnic)
573
+ - `ROM::SQL.gateway` renamed to `ROM::SQL::Gateway.instance` for migrations (endash)
574
+ - Association macros are now an optional plugin (solnic)
547
575
 
548
576
  [Compare v0.6.1...v0.7.0](https://github.com/rom-rb/rom-sql/compare/v0.6.1...v0.7.0)
549
577
 
@@ -551,7 +579,7 @@ Please refer to [the upgrading guide](https://github.com/rom-rb/rom-sql/wiki/Upg
551
579
 
552
580
  ### Added
553
581
 
554
- * `Gateway` accepts `:extensions` as an option (c0)
582
+ - `Gateway` accepts `:extensions` as an option (c0)
555
583
 
556
584
  [Compare v0.6.0...v0.6.1](https://github.com/rom-rb/rom-sql/compare/v0.6.0...v0.6.1)
557
585
 
@@ -565,15 +593,15 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
565
593
 
566
594
  ### Added
567
595
 
568
- * `Relation#multi_insert` (draxxxeus)
596
+ - `Relation#multi_insert` (draxxxeus)
569
597
 
570
598
  ### Changed
571
599
 
572
- * Command that receives many tuples will use `multi_insert` now (draxxxeus)
600
+ - Command that receives many tuples will use `multi_insert` now (draxxxeus)
573
601
 
574
602
  ### Fixed
575
603
 
576
- * Relation name and join key fixes for `many_to_one` macro (jamesmoriarty)
604
+ - Relation name and join key fixes for `many_to_one` macro (jamesmoriarty)
577
605
 
578
606
  [Compare v0.5.2...v0.5.3](https://github.com/rom-rb/rom-sql/compare/v0.5.2...v0.5.3)
579
607
 
@@ -581,12 +609,12 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
581
609
 
582
610
  ### Added
583
611
 
584
- * `Relation#invert` operation (nepalez)
612
+ - `Relation#invert` operation (nepalez)
585
613
 
586
614
  ### Changed
587
615
 
588
- * Migration tasks no longer require entire ROM env (solnic)
589
- * `Repository` => `Gateway` rename for ROM 0.8.0 compatibility (solnic)
616
+ - Migration tasks no longer require entire ROM env (solnic)
617
+ - `Repository` => `Gateway` rename for ROM 0.8.0 compatibility (solnic)
590
618
 
591
619
  [Compare v0.5.1...v0.5.2](https://github.com/rom-rb/rom-sql/compare/v0.5.1...v0.5.2)
592
620
 
@@ -594,11 +622,11 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
594
622
 
595
623
  ### Changed
596
624
 
597
- * Relations won't be finalized when table(s) is/are missing (solnic)
625
+ - Relations won't be finalized when table(s) is/are missing (solnic)
598
626
 
599
627
  ### Fixed
600
628
 
601
- * Wrap errors when calling commands with `[]`-syntax (kwando)
629
+ - Wrap errors when calling commands with `[]`-syntax (kwando)
602
630
 
603
631
  [Compare v0.5.0...v0.5.1](https://github.com/rom-rb/rom-sql/compare/v0.5.0...v0.5.1)
604
632
 
@@ -606,20 +634,20 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
606
634
 
607
635
  ### Added
608
636
 
609
- * Association macros support addition `:on` option (solnic)
610
- * `associates` plugin for `Create` command (solnic)
611
- * Support for NotNullConstraintError (solnic)
612
- * Support for UniqueConstraintConstraintError (solnic)
613
- * Support for ForeignKeyConstraintError (solnic)
614
- * Support for CheckConstraintError (solnic)
615
- * `Commands::Update#original` supports objects coercible to_h now (solnic)
637
+ - Association macros support addition `:on` option (solnic)
638
+ - `associates` plugin for `Create` command (solnic)
639
+ - Support for NotNullConstraintError (solnic)
640
+ - Support for UniqueConstraintConstraintError (solnic)
641
+ - Support for ForeignKeyConstraintError (solnic)
642
+ - Support for CheckConstraintError (solnic)
643
+ - `Commands::Update#original` supports objects coercible to_h now (solnic)
616
644
 
617
645
  ### Changed
618
646
 
619
- * [BREAKING] Constraint errors are no longer command errors which means `try` and
647
+ - [BREAKING] Constraint errors are no longer command errors which means `try` and
620
648
  `transaction` blocks will not catch them (solnic)
621
- * `Commands::Update#set` has been deprecated (solnic)
622
- * `Commands::Update#to` has been deprecated (solnic)
649
+ - `Commands::Update#set` has been deprecated (solnic)
650
+ - `Commands::Update#to` has been deprecated (solnic)
623
651
 
624
652
  [Compare v0.4.3...v0.5.0](https://github.com/rom-rb/rom-sql/compare/v0.4.2...v0.5.0)
625
653
 
@@ -627,7 +655,7 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
627
655
 
628
656
  ### Fixed
629
657
 
630
- * `transaction` doesn't swallow errors now other than CommandError (solnic)
658
+ - `transaction` doesn't swallow errors now other than CommandError (solnic)
631
659
 
632
660
  [Compare v0.4.2...v0.4.3](https://github.com/rom-rb/rom-sql/compare/v0.4.2...v0.4.3)
633
661
 
@@ -635,19 +663,19 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
635
663
 
636
664
  ### Added
637
665
 
638
- * Support for setting custom association name (solnic)
639
- * Support for `:conditions` option in association definition (solnic)
640
- * Better error message when accessing undefined associations (pdswan)
666
+ - Support for setting custom association name (solnic)
667
+ - Support for `:conditions` option in association definition (solnic)
668
+ - Better error message when accessing undefined associations (pdswan)
641
669
 
642
670
  ### Fixed
643
671
 
644
- * Correct `ROM::SQL::Plugin::Pagination::Pager#total_pages` when total is not
672
+ - Correct `ROM::SQL::Plugin::Pagination::Pager#total_pages` when total is not
645
673
  evenly divisible by page size (larribas)
646
- * `association_join` behaves correctly when dataset is different than register_as (nepalez)
674
+ - `association_join` behaves correctly when dataset is different than register_as (nepalez)
647
675
 
648
676
  ### Changed
649
677
 
650
- * `transaction` returns command failure objects when there was a rollback (solnic)
678
+ - `transaction` returns command failure objects when there was a rollback (solnic)
651
679
 
652
680
  [Compare v0.4.1...v0.4.2](https://github.com/rom-rb/rom-sql/compare/v0.4.1...v0.4.2)
653
681
 
@@ -655,8 +683,8 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
655
683
 
656
684
  ### Added
657
685
 
658
- * Database error handling for update and delete commands (kwando + solnic)
659
- * Migration interface as a repository plugin (gotar + solnic)
686
+ - Database error handling for update and delete commands (kwando + solnic)
687
+ - Migration interface as a repository plugin (gotar + solnic)
660
688
 
661
689
  [Compare v0.4.0...v0.4.1](https://github.com/rom-rb/rom-sql/compare/v0.4.0...v0.4.1)
662
690
 
@@ -664,20 +692,20 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
664
692
 
665
693
  ### Added
666
694
 
667
- * `ROM::SQL::Relation` which explictly defines an interface on top of Sequel (solnic + mcls)
668
- * Postgres-specific Create and Update commands that support RETURNING (gotar + solnic)
669
- * `Update#change` interface for skipping execution when there's no diff (solnic)
670
- * Experimental migration API using sequel/migrations (gotar)
671
- * Pagination plugin (solnic)
672
- * Allow reuse of established Sequel connections (splattael)
695
+ - `ROM::SQL::Relation` which explictly defines an interface on top of Sequel (solnic + mcls)
696
+ - Postgres-specific Create and Update commands that support RETURNING (gotar + solnic)
697
+ - `Update#change` interface for skipping execution when there's no diff (solnic)
698
+ - Experimental migration API using sequel/migrations (gotar)
699
+ - Pagination plugin (solnic)
700
+ - Allow reuse of established Sequel connections (splattael)
673
701
 
674
702
  ### Changed
675
703
 
676
- * Use ROM's own inflector which uses either ActiveSupport or Inflecto backends (mjtko)
704
+ - Use ROM's own inflector which uses either ActiveSupport or Inflecto backends (mjtko)
677
705
 
678
706
  ### Fixed
679
707
 
680
- * Indentation in Rails logger (morgoth)
708
+ - Indentation in Rails logger (morgoth)
681
709
 
682
710
  [Compare v0.3.2...v0.4.0](https://github.com/rom-rb/rom-sql/compare/v0.3.2...v0.4.0)
683
711
 
@@ -685,7 +713,7 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
685
713
 
686
714
  ### Fixed
687
715
 
688
- * Checking tuple count in commands (solnic)
716
+ - Checking tuple count in commands (solnic)
689
717
 
690
718
  [Compare v0.3.1...v0.3.2](https://github.com/rom-rb/rom-sql/compare/v0.3.1...v0.3.2)
691
719
 
@@ -693,8 +721,8 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
693
721
 
694
722
  ### Added
695
723
 
696
- * `Adapter#disconnect` (solnic)
697
- * Support for extra connection options (solnic)
724
+ - `Adapter#disconnect` (solnic)
725
+ - Support for extra connection options (solnic)
698
726
 
699
727
  [Compare v0.3.0...v0.3.1](https://github.com/rom-rb/rom-sql/compare/v0.3.0...v0.3.1)
700
728
 
@@ -702,8 +730,8 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
702
730
 
703
731
  ### Changed
704
732
 
705
- * `association_join` now uses Sequel's `graph` interface which qualifies columns automatically (solnic)
706
- * Delete command returns deleted tuples (solnic)
733
+ - `association_join` now uses Sequel's `graph` interface which qualifies columns automatically (solnic)
734
+ - Delete command returns deleted tuples (solnic)
707
735
 
708
736
  [Compare v0.2.0...v0.3.0](https://github.com/rom-rb/rom-sql/compare/v0.2.0...v0.3.0)
709
737
 
@@ -711,9 +739,9 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
711
739
 
712
740
  ### Added
713
741
 
714
- * Command API (solnic)
715
- * Support for ActiveSupport::Notifications with a log subscriber (solnic)
716
- * New `ROM::SQL::Adapter#dataset?(name)` checking if a given table exists (solnic)
742
+ - Command API (solnic)
743
+ - Support for ActiveSupport::Notifications with a log subscriber (solnic)
744
+ - New `ROM::SQL::Adapter#dataset?(name)` checking if a given table exists (solnic)
717
745
 
718
746
  [Compare v0.1.1...v0.2.0](https://github.com/rom-rb/rom-sql/compare/v0.1.1...v0.2.0)
719
747
 
@@ -721,11 +749,11 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
721
749
 
722
750
  ### Fixed
723
751
 
724
- * Equalizer in header (solnic)
752
+ - Equalizer in header (solnic)
725
753
 
726
754
  ### Changed
727
755
 
728
- * minor refactor in adapter (solnic)
756
+ - minor refactor in adapter (solnic)
729
757
 
730
758
  [Compare v0.1.0...v0.1.1](https://github.com/rom-rb/rom-sql/compare/v0.1.0...v0.1.1)
731
759