rom-sql 3.2.0 → 3.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +216 -101
- data/LICENSE +1 -1
- data/README.md +12 -54
- data/lib/rom/plugins/relation/sql/postgres/full_text_search.rb +53 -0
- data/lib/rom/plugins/relation/sql/postgres/streaming.rb +108 -0
- data/lib/rom/sql/associations/many_to_many.rb +1 -1
- data/lib/rom/sql/attribute.rb +17 -2
- data/lib/rom/sql/attribute_aliasing.rb +28 -0
- data/lib/rom/sql/extensions/postgres.rb +1 -0
- data/lib/rom/sql/extensions/postgres/commands.rb +1 -1
- data/lib/rom/sql/function.rb +13 -4
- data/lib/rom/sql/gateway.rb +3 -0
- data/lib/rom/sql/projection_dsl.rb +1 -1
- data/lib/rom/sql/relation.rb +1 -1
- data/lib/rom/sql/relation/reading.rb +13 -1
- data/lib/rom/sql/schema.rb +13 -1
- data/lib/rom/sql/tasks/migration_tasks.rake +1 -1
- data/lib/rom/sql/type_extensions.rb +1 -1
- data/lib/rom/sql/version.rb +1 -1
- metadata +21 -41
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 77e9a1c6c69b4539e55608281a06efbb7cac1b8c5723ab96be497aa982ed6677
|
4
|
+
data.tar.gz: 3d1690050c29b5a09f3e72fc952eb32b1e7e5b3e421d0bd157cdeec11bb98c14
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9f1c1f6c059d88c2b5ad4872aea4f071799fdabab42d45a1a8fea4393361925883d4286a6543e58fa5ada1d22cee9fab691086e3f1a82a0f1ceecfac11ef918d
|
7
|
+
data.tar.gz: 42dcefd8414fc1b5a2afe818efff6ed3a410d0aea790ff9400b6f42127990781174ee83944d5791114d3b6fd49208c9a839e76d7afb3007cc19e5b3be2705172
|
data/CHANGELOG.md
CHANGED
@@ -1,13 +1,82 @@
|
|
1
|
+
<!--- DO NOT EDIT THIS FILE - IT'S AUTOMATICALLY GENERATED VIA DEVTOOLS --->
|
2
|
+
|
3
|
+
## 3.4.0 2021-03-19
|
4
|
+
|
5
|
+
|
6
|
+
### Added
|
7
|
+
|
8
|
+
- `Relation#unordered` (@radar)
|
9
|
+
|
10
|
+
|
11
|
+
[Compare v3.3.3...v3.4.0](https://github.com/rom-rb/rom-sql/compare/v3.3.3...v3.4.0)
|
12
|
+
|
13
|
+
## 3.3.3 2021-03-05
|
14
|
+
|
15
|
+
|
16
|
+
### Added
|
17
|
+
|
18
|
+
- Support for streaming composite relations (@ianks)
|
19
|
+
|
20
|
+
|
21
|
+
[Compare v3.3.2...v3.3.3](https://github.com/rom-rb/rom-sql/compare/v3.3.2...v3.3.3)
|
22
|
+
|
23
|
+
## 3.3.2 2021-01-06
|
24
|
+
|
25
|
+
|
26
|
+
### Fixed
|
27
|
+
|
28
|
+
- Function qualification methods no longer lose options (issue #390 fixed via #391) (@solnic)
|
29
|
+
|
30
|
+
|
31
|
+
[Compare v3.3.1...v3.3.2](https://github.com/rom-rb/rom-sql/compare/v3.3.1...v3.3.2)
|
32
|
+
|
33
|
+
## 3.3.1 2020-12-29
|
34
|
+
|
35
|
+
|
36
|
+
### Fixed
|
37
|
+
|
38
|
+
- `:pg_streaming` plugin no longer crashes when there's no sequel_pg and now you need to require the plugin explicitly (@solnic)
|
39
|
+
|
40
|
+
|
41
|
+
[Compare v3.3.0...v3.3.1](https://github.com/rom-rb/rom-sql/compare/v3.3.0...v3.3.1)
|
42
|
+
|
43
|
+
## 3.3.0 2020-12-28
|
44
|
+
|
45
|
+
|
46
|
+
### Added
|
47
|
+
|
48
|
+
- `Relation#full_text_search` that provides an API for [PostgreSQL's Full Text Search](https://www.postgresql.org/docs/9.5/textsearch.html) (@ianks)
|
49
|
+
|
50
|
+
```ruby
|
51
|
+
# Don't forget to activate the plugin
|
52
|
+
conf.plugin(:sql, relations: :pg_full_text_search)
|
53
|
+
|
54
|
+
posts.full_text_search([:title], 'tutorials', language: 'english')
|
55
|
+
# => [{ title: 'A Tutorial about SQL', ... }]
|
56
|
+
```
|
57
|
+
- Support for `:pg_streaming` extension (@ianks)
|
58
|
+
|
59
|
+
### Fixed
|
60
|
+
|
61
|
+
- `Relation#join` no longer crashes when aliased relation is used with a block (issue #369) (@abrthel)
|
62
|
+
- Attributes aliases are properly handled when constructing queries with SQL functions (issue #370 fixed via #373) (@abrthel)
|
63
|
+
|
64
|
+
|
65
|
+
[Compare v3.2.0...v3.3.0](https://github.com/rom-rb/rom-sql/compare/v3.2.0...v3.3.0)
|
66
|
+
|
1
67
|
## 3.2.0 2020-01-11
|
2
68
|
|
69
|
+
|
3
70
|
### Fixed
|
4
71
|
|
5
72
|
- Keyword warnings on Ruby 2.7 (@flash-gordon)
|
6
73
|
|
74
|
+
|
7
75
|
[Compare v3.1.0...v3.2.0](https://github.com/rom-rb/rom-sql/compare/v3.1.0...v3.2.0)
|
8
76
|
|
9
77
|
## 3.1.0 2019-12-16
|
10
78
|
|
79
|
+
|
11
80
|
### Added
|
12
81
|
|
13
82
|
- `.nullify` that turns the result set of any relation into an empty set. Analogue of `ActiveRecord#none` (@ianks + @flash-gordon)
|
@@ -29,18 +98,22 @@
|
|
29
98
|
- Properly qualify relations when in `Relation#union` (@ianks)
|
30
99
|
- `Relation#query` no longer removes order in the relation (@DNNX)
|
31
100
|
|
101
|
+
|
32
102
|
[Compare v3.0.1...v3.1.0](https://github.com/rom-rb/rom-sql/compare/v3.0.1...v3.1.0)
|
33
103
|
|
34
104
|
## 3.0.1 2019-05-05
|
35
105
|
|
106
|
+
|
36
107
|
### Fixed
|
37
108
|
|
38
109
|
- Using joins with a relation object as the target and a block-based conditions produces correct query now (issue #331) (solnic)
|
39
110
|
|
111
|
+
|
40
112
|
[Compare v3.0.0...v3.0.1](https://github.com/rom-rb/rom-sql/compare/v3.0.0...v3.0.1)
|
41
113
|
|
42
114
|
## 3.0.0 2019-04-24
|
43
115
|
|
116
|
+
|
44
117
|
### Added
|
45
118
|
|
46
119
|
- Join DSL so that you can use arbitrary conditions when joining relations (flash-gordon)
|
@@ -66,7 +139,6 @@
|
|
66
139
|
# searching for `true` result
|
67
140
|
users.select_append { string::case(id.is(1) => 'one', else: 'else').as(:one_or_else) }
|
68
141
|
```
|
69
|
-
|
70
142
|
- Relations can be accessed in DSLs with keyword arguments (flash-gordon)
|
71
143
|
```ruby
|
72
144
|
users.join(posts).select_append { |posts: | posts[:title] }
|
@@ -79,30 +151,29 @@
|
|
79
151
|
```
|
80
152
|
- `Relation#unfiltered` returns an unrestricted relation (removes restrictions from `WHERE` and `HAVING`) (flash-gordon)
|
81
153
|
- Support for `WITHIN GROUP` in the function DSL has been enhanced with block syntax (flash-gordon)
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
```
|
89
|
-
|
154
|
+
- ```ruby
|
155
|
+
- # previously available version
|
156
|
+
- households.project { float::percentile_cont(0.5).within_group(income).as(:percentile) }
|
157
|
+
- # using the new syntax
|
158
|
+
- households.project { float::percentile_cont(0.5).within_group { income }.as(:percentile) }
|
159
|
+
- ```
|
90
160
|
- Support for migrator options ie `ROM::Configuration.new(:sql, migrator: { path: "my_migrations" })` (rawburt)
|
91
161
|
- `Relation#pluck` works with multiple args too (timriley)
|
92
162
|
|
93
|
-
### Changed
|
94
|
-
|
95
|
-
- [BREAKING] Updated to work with `dry-types 1.0.0` (flash-gordon)
|
96
|
-
- [BREAKING] `Types::Int` is now `Types::Integer` (GustavoCaso)
|
97
|
-
|
98
163
|
### Fixed
|
99
164
|
|
100
165
|
- Using `Relation#inner_join` with has-many-through produces correct query (issue #279) (doriantaylor + solnic)
|
101
166
|
- Aliased attributes are handled correctly in `Relation#where` (waiting-for-dev)
|
102
167
|
|
168
|
+
### Changed
|
169
|
+
|
170
|
+
- [BREAKING] Updated to work with `dry-types 1.0.0` (flash-gordon)
|
171
|
+
- [BREAKING] `Types::Int` is now `Types::Integer` (GustavoCaso)
|
172
|
+
|
103
173
|
[Compare v2.5.0...v3.0.0](https://github.com/rom-rb/rom-sql/compare/v2.5.0...v3.0.0)
|
104
174
|
|
105
|
-
##
|
175
|
+
## 2.5.0 2018-06-08
|
176
|
+
|
106
177
|
|
107
178
|
### Added
|
108
179
|
|
@@ -111,22 +182,26 @@
|
|
111
182
|
tasks = relations[:tasks]
|
112
183
|
users = relations[:users]
|
113
184
|
user_tasks = tasks.where(tasks[:user_id].is(users[:id])
|
114
|
-
tasks_count = user_tasks.select { integer::count(id) }
|
185
|
+
tasks_count = user_tasks.select { integer::count(id) }.query
|
115
186
|
users.select_append(tasks_count.as(:tasks_count))
|
116
187
|
```
|
117
188
|
|
189
|
+
|
118
190
|
[Compare v2.4.0...v2.5.0](https://github.com/rom-rb/rom-sql/compare/v2.4.0...v2.5.0)
|
119
191
|
|
120
|
-
##
|
192
|
+
## 2.4.0 2018-02-18
|
193
|
+
|
121
194
|
|
122
195
|
### Added
|
123
196
|
|
124
197
|
- Support for functions with `Any` return type (GustavoCaso)
|
125
198
|
- New `Relation#as_hash` method (GustavoCaso)
|
126
199
|
|
200
|
+
|
127
201
|
[Compare v2.3.0...v2.4.0](https://github.com/rom-rb/rom-sql/compare/v2.3.0...v2.4.0)
|
128
202
|
|
129
|
-
##
|
203
|
+
## 2.3.0 2017-11-17
|
204
|
+
|
130
205
|
|
131
206
|
### Added
|
132
207
|
|
@@ -138,23 +213,22 @@
|
|
138
213
|
- Aliased attributes are handled correctly in PG's commands (cflipse)
|
139
214
|
- Command extensions are properly applied in multi-adapter setups (solnic)
|
140
215
|
|
141
|
-
### Internal
|
142
|
-
|
143
|
-
- Custom SQL-specific mapper compiler was added, which is used starting from rom-core 4.1.0 (solnic)
|
144
|
-
- Command's `:timestamp` plugin was removed, as it was moved to rom-core (GustavoCaso)
|
145
216
|
|
146
217
|
[Compare v2.2.1...v2.3.0](https://github.com/rom-rb/rom-sql/compare/v2.2.1...v2.3.0)
|
147
218
|
|
148
|
-
##
|
219
|
+
## 2.2.1 2017-11-10
|
220
|
+
|
149
221
|
|
150
222
|
### Fixed
|
151
223
|
|
152
224
|
- Instrumentation works with all db interactions (not just queries that materialize relations) (solnic)
|
153
225
|
- Typo in `MissingEnv` exception message (romatr)
|
154
226
|
|
227
|
+
|
155
228
|
[Compare v2.2.0...v2.2.1](https://github.com/rom-rb/rom-sql/compare/v2.2.0...v2.2.1)
|
156
229
|
|
157
|
-
##
|
230
|
+
## 2.2.0 2017-11-02
|
231
|
+
|
158
232
|
|
159
233
|
### Added
|
160
234
|
|
@@ -167,9 +241,11 @@
|
|
167
241
|
- Custom schema is used correctly in command results (solnic)
|
168
242
|
- Schemas no longer finalize PKs (this is done in core schema already) (solnic)
|
169
243
|
|
244
|
+
|
170
245
|
[Compare v2.1.0...v2.2.0](https://github.com/rom-rb/rom-sql/compare/v2.1.0...v2.2.0)
|
171
246
|
|
172
|
-
##
|
247
|
+
## 2.1.0 2017-10-23
|
248
|
+
|
173
249
|
|
174
250
|
### Added
|
175
251
|
|
@@ -183,9 +259,11 @@
|
|
183
259
|
- Schema inference works with primary keys that have custom types (ie an enum PK column) (v-kolesnikov)
|
184
260
|
- Ruby warnings are gone (solnic)
|
185
261
|
|
262
|
+
|
186
263
|
[Compare v2.0.0...v2.1.0](https://github.com/rom-rb/rom-sql/compare/v2.0.0...v2.1.0)
|
187
264
|
|
188
|
-
##
|
265
|
+
## 2.0.0 2017-10-18
|
266
|
+
|
189
267
|
|
190
268
|
### Added
|
191
269
|
|
@@ -203,7 +281,6 @@
|
|
203
281
|
end
|
204
282
|
end
|
205
283
|
```
|
206
|
-
|
207
284
|
- Support for composite indexes in the auto-restrictions plugin (flash-gordon)
|
208
285
|
- `SQL::Gateway#call` calls a SQL function (flash-gordon)
|
209
286
|
|
@@ -211,19 +288,16 @@
|
|
211
288
|
gateway.(:upper, 'foo') # => "FOO"
|
212
289
|
gateway.(:pg_advisory_xact_lock, 1234) # => nil
|
213
290
|
```
|
214
|
-
|
215
291
|
- `SQL::Gateway#run` executes a SQL string, e.g. a DDL statement (flash-gordon)
|
216
292
|
|
217
293
|
```ruby
|
218
294
|
gateway.run('set session IntervalStyle to default')
|
219
295
|
```
|
220
|
-
|
221
296
|
- `SQL::Relation#exists` joins a relation with the `EXISTS` operator (flash-gordon)
|
222
297
|
|
223
298
|
```ruby
|
224
299
|
users.exists(posts) # => users with posts
|
225
300
|
```
|
226
|
-
|
227
301
|
- Support for processing a relation in batches (flash-gordon)
|
228
302
|
|
229
303
|
```ruby
|
@@ -233,26 +307,22 @@
|
|
233
307
|
call(name: users[:first_name].concat(users[:last_name])
|
234
308
|
end
|
235
309
|
```
|
236
|
-
|
237
310
|
- `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)
|
238
311
|
|
239
312
|
```ruby
|
240
313
|
users.import(authors.select { first_name.concat(last_name).as(:name) })
|
241
314
|
```
|
242
|
-
|
243
315
|
- Support for `tinytext`, `text`, `mediumtext`, and `longtext data types in MySQL (panthomakos)
|
244
316
|
- The new `pg_explain` plugin for getting query plans on PostgreSQL (flash-gordon)
|
245
317
|
|
246
318
|
```ruby
|
247
319
|
users.by_pk(1).explain(format: :json, analyze: true)
|
248
320
|
```
|
249
|
-
|
250
321
|
- Support for window function calls
|
251
322
|
|
252
323
|
```ruby
|
253
324
|
employees.select { [dep_no, salary, integer::avg(salary).over(partition: dep_no, order: id).as(:avg_salary)] }
|
254
325
|
```
|
255
|
-
|
256
326
|
- Function result can be negated, also `ROM::SQL::Function#not` was added (flash-gordon)
|
257
327
|
|
258
328
|
```ruby
|
@@ -260,6 +330,13 @@
|
|
260
330
|
users.where { lower(name).not('John') }
|
261
331
|
```
|
262
332
|
|
333
|
+
### Fixed
|
334
|
+
|
335
|
+
- Self-ref associations work correctly with custom FKs (solnic)
|
336
|
+
- Aliased associations with custom FKs work correctly (solnic)
|
337
|
+
- Defining a custom dataset block no longer prevents default views like `by_pk` to be defined (solnic)
|
338
|
+
- `Relation#group` uses canonical schema now (solnic)
|
339
|
+
|
263
340
|
### Changed
|
264
341
|
|
265
342
|
- [BREAKING] based on rom 4.0 now (flash-gordon + solnic)
|
@@ -273,16 +350,10 @@
|
|
273
350
|
- Schemas are qualified by default (solnic)
|
274
351
|
- `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)
|
275
352
|
|
276
|
-
|
277
|
-
|
278
|
-
- Self-ref associations work correctly with custom FKs (solnic)
|
279
|
-
- Aliased associations with custom FKs work correctly (solnic)
|
280
|
-
- Defining a custom dataset block no longer prevents default views like `by_pk` to be defined (solnic)
|
281
|
-
- `Relation#group` uses canonical schema now (solnic)
|
353
|
+
[Compare v1.3.3...v2.0.0](https://github.com/rom-rb/rom-sql/compare/v1.3.3...v2.0.0)
|
282
354
|
|
283
|
-
|
355
|
+
## 1.3.3 2017-05-30
|
284
356
|
|
285
|
-
## v1.3.3 2017-05-30
|
286
357
|
|
287
358
|
### Added
|
288
359
|
|
@@ -293,7 +364,6 @@
|
|
293
364
|
```ruby
|
294
365
|
users.select { string::cast(id, 'varchar').as(:id_str) }
|
295
366
|
```
|
296
|
-
|
297
367
|
- Support for`EXISTS` (v-kolesnikov)
|
298
368
|
|
299
369
|
```ruby
|
@@ -305,9 +375,11 @@
|
|
305
375
|
|
306
376
|
- Fixed a regression introduced in v1.3.2 caused by doing way more work processing the default dataset (flash-gordon)
|
307
377
|
|
378
|
+
|
308
379
|
[Compare v1.3.2...v1.3.3](https://github.com/rom-rb/rom-sql/compare/v1.3.2...v1.3.3)
|
309
380
|
|
310
|
-
##
|
381
|
+
## 1.3.2 2017-05-13
|
382
|
+
|
311
383
|
|
312
384
|
### Added
|
313
385
|
|
@@ -319,9 +391,11 @@
|
|
319
391
|
|
320
392
|
- A bunch of warnings from Sequel 4.46
|
321
393
|
|
394
|
+
|
322
395
|
[Compare v1.3.1...v1.3.2](https://github.com/rom-rb/rom-sql/compare/v1.3.1...v1.3.2)
|
323
396
|
|
324
|
-
##
|
397
|
+
## 1.3.1 2017-05-05
|
398
|
+
|
325
399
|
|
326
400
|
### Changed
|
327
401
|
|
@@ -329,7 +403,8 @@
|
|
329
403
|
|
330
404
|
[Compare v1.3.0...v1.3.1](https://github.com/rom-rb/rom-sql/compare/v1.3.0...v1.3.1)
|
331
405
|
|
332
|
-
##
|
406
|
+
## 1.3.0 2017-05-02
|
407
|
+
|
333
408
|
|
334
409
|
### Added
|
335
410
|
|
@@ -361,7 +436,8 @@
|
|
361
436
|
|
362
437
|
[Compare v1.2.2...v1.3.0](https://github.com/rom-rb/rom-sql/compare/v1.2.2...v1.3.0)
|
363
438
|
|
364
|
-
##
|
439
|
+
## 1.2.2 2017-03-25
|
440
|
+
|
365
441
|
|
366
442
|
### Changed
|
367
443
|
|
@@ -369,15 +445,18 @@
|
|
369
445
|
|
370
446
|
[Compare v1.2.1...v1.2.2](https://github.com/rom-rb/rom-sql/compare/v1.2.1...v1.2.2)
|
371
447
|
|
372
|
-
##
|
448
|
+
## 1.2.1 2017-03-09
|
449
|
+
|
373
450
|
|
374
451
|
### Fixed
|
375
452
|
|
376
453
|
- Allow for joining by a `RelationProxy` instance from `rom-repository` (davydovanton)
|
377
454
|
|
455
|
+
|
378
456
|
[Compare v1.2.0...v1.2.1](https://github.com/rom-rb/rom-sql/compare/v1.2.0...v1.2.1)
|
379
457
|
|
380
|
-
##
|
458
|
+
## 1.2.0 2017-03-07
|
459
|
+
|
381
460
|
|
382
461
|
### Added
|
383
462
|
|
@@ -385,25 +464,31 @@
|
|
385
464
|
- Support for passing parent tuple(s) as `parent` option in `Command#with_association` (solnic)
|
386
465
|
- Support for join using assocation name (flash-gordon)
|
387
466
|
|
467
|
+
|
388
468
|
[Compare v1.1.2...v1.2.0](https://github.com/rom-rb/rom-sql/compare/v1.1.2...v1.2.0)
|
389
469
|
|
390
|
-
##
|
470
|
+
## 1.1.2 2017-03-02
|
471
|
+
|
391
472
|
|
392
473
|
### Fixed
|
393
474
|
|
394
475
|
- Fix grouping by a function in the block DSL (flash-gordon)
|
395
476
|
|
477
|
+
|
396
478
|
[Compare v1.1.1...v1.1.2](https://github.com/rom-rb/rom-sql/compare/v1.1.1...v1.1.2)
|
397
479
|
|
398
|
-
##
|
480
|
+
## 1.1.1 2017-03-01
|
481
|
+
|
399
482
|
|
400
483
|
### Fixed
|
401
484
|
|
402
485
|
- Restriction conditions with an array as a value are handled correctly by attribute types (solnic)
|
403
486
|
|
487
|
+
|
404
488
|
[Compare v1.1.0...v1.1.1](https://github.com/rom-rb/rom-sql/compare/v1.1.0...v1.1.1)
|
405
489
|
|
406
|
-
##
|
490
|
+
## 1.1.0 2017-03-01
|
491
|
+
|
407
492
|
|
408
493
|
### Added
|
409
494
|
|
@@ -417,29 +502,34 @@
|
|
417
502
|
- Missing `group` method was added to legacy `SequelAPI` module (solnic)
|
418
503
|
- Associations properly maintain `order` if it was set (solnic)
|
419
504
|
|
420
|
-
[Compare v1.0.3...v1.1.0](https://github.com/rom-rb/rom-sql/compare/v1.0.3...v1.1.0)
|
421
505
|
|
422
|
-
|
506
|
+
[Compare v1.0.3...v1.1.0](https://github.com/rom-rb/rom-sql/compare/v1.0.3...v1.1.0)
|
423
507
|
|
424
|
-
|
508
|
+
## 1.0.3 2017-02-23
|
425
509
|
|
426
|
-
- `AutoCombine#preload` uses better restriction for `ManyToOne` association which greatly speeds up loading bigger amounts of data (solnic + flash-gordon)
|
427
510
|
|
428
511
|
### Fixed
|
429
512
|
|
430
513
|
- Fix the usage of timestamp in command chains (cflipse)
|
431
514
|
|
515
|
+
### Changed
|
516
|
+
|
517
|
+
- `AutoCombine#preload` uses better restriction for `ManyToOne` association which greatly speeds up loading bigger amounts of data (solnic + flash-gordon)
|
518
|
+
|
432
519
|
[Compare v1.0.2...v1.0.3](https://github.com/rom-rb/rom-sql/compare/v1.0.2...v1.0.3)
|
433
520
|
|
434
|
-
##
|
521
|
+
## 1.0.2 2017-02-16
|
522
|
+
|
435
523
|
|
436
524
|
### Added
|
437
525
|
|
438
526
|
- Support for selecting literal strings via `` select { `'foo'`.as(:bar) } `` (solnic)
|
439
527
|
|
528
|
+
|
440
529
|
[Compare v1.0.1...v1.0.2](https://github.com/rom-rb/rom-sql/compare/v1.0.1...v1.0.2)
|
441
530
|
|
442
|
-
##
|
531
|
+
## 1.0.1 2017-02-09
|
532
|
+
|
443
533
|
|
444
534
|
### Added
|
445
535
|
|
@@ -452,11 +542,10 @@
|
|
452
542
|
|
453
543
|
- Missing primary key now leads to a more meaningful error (flash-gordon)
|
454
544
|
|
455
|
-
[Compare v1.0.0...v1.0.1](https://github.com/rom-rb/rom-sql/compare/v1.0.0...v1.0.1)
|
456
545
|
|
457
|
-
|
546
|
+
[Compare v1.0.0...v1.0.1](https://github.com/rom-rb/rom-sql/compare/v1.0.0...v1.0.1)
|
458
547
|
|
459
|
-
|
548
|
+
## 1.0.0 2017-01-29
|
460
549
|
|
461
550
|
Please refer to [the upgrading guide](https://github.com/rom-rb/rom-sql/wiki/Upgrading-from-0.9.x-to-1.0.0) if you're moving from 0.9.x to 1.0.0.
|
462
551
|
|
@@ -496,16 +585,19 @@ Please refer to [the upgrading guide](https://github.com/rom-rb/rom-sql/wiki/Upg
|
|
496
585
|
|
497
586
|
[Compare v0.9.1...v1.0.0](https://github.com/rom-rb/rom-sql/compare/v0.9.1...v1.0.0)
|
498
587
|
|
499
|
-
##
|
588
|
+
## 0.9.1 2016-12-23
|
589
|
+
|
500
590
|
|
501
591
|
### Added
|
502
592
|
|
503
593
|
- Support for PG enums in schema inferrer (flash-gordon)
|
504
594
|
- `ROM::SQL::Relation#read` method which accepts an SQL string and returns a new relation (solnic)
|
505
595
|
|
596
|
+
|
506
597
|
[Compare v0.9.0...v0.9.1](https://github.com/rom-rb/rom-sql/compare/v0.9.0...v0.9.1)
|
507
598
|
|
508
|
-
##
|
599
|
+
## 0.9.0 2016-11-08
|
600
|
+
|
509
601
|
|
510
602
|
### Added
|
511
603
|
|
@@ -515,6 +607,10 @@ Please refer to [the upgrading guide](https://github.com/rom-rb/rom-sql/wiki/Upg
|
|
515
607
|
- Automatically infer PG arrays and JSON(B) types (jodosha + flash-gordon)
|
516
608
|
- Support for `Relation#having` (cflipse)
|
517
609
|
|
610
|
+
### Fixed
|
611
|
+
|
612
|
+
- Floats are inferred by schemas (cflipse)
|
613
|
+
|
518
614
|
### Changed
|
519
615
|
|
520
616
|
- Inferred types in schemas **are no longer strict** (flash-gordon)
|
@@ -522,13 +618,10 @@ Please refer to [the upgrading guide](https://github.com/rom-rb/rom-sql/wiki/Upg
|
|
522
618
|
- Make `OneToOne` inherit from `OneToMany` (beauby)
|
523
619
|
- Default dataset will use column names from schema if it's available (solnic)
|
524
620
|
|
525
|
-
### Fixed
|
526
|
-
|
527
|
-
- Floats are inferred by schemas (cflipse)
|
528
|
-
|
529
621
|
[Compare v0.8.0...v0.9.0](https://github.com/rom-rb/rom-sql/compare/v0.8.0...v0.9.0)
|
530
622
|
|
531
|
-
##
|
623
|
+
## 0.8.0 2016-07-27
|
624
|
+
|
532
625
|
|
533
626
|
### Added
|
534
627
|
|
@@ -544,19 +637,20 @@ Please refer to [the upgrading guide](https://github.com/rom-rb/rom-sql/wiki/Upg
|
|
544
637
|
- Support for arbitrary dataset and FK names in schemas (flash-gordon)
|
545
638
|
- Support for native upserts in PostgreSQL >= 9.5 via `Commands::Postgres::Upsert` (gotar + flash-gordon)
|
546
639
|
|
640
|
+
### Fixed
|
641
|
+
|
642
|
+
- `Create` command properly materialize result when `:one` is set (AMHOL)
|
643
|
+
|
547
644
|
### Changed
|
548
645
|
|
549
646
|
- `Create` and `Update` commands have `:schema` plugin enabled by default which sets input handler based on schema definition automatically (solnic)
|
550
647
|
- `associates` command plugin uses schema associations now (solnic)
|
551
648
|
- Dropped MRI 2.0.x support
|
552
649
|
|
553
|
-
### Fixed
|
554
|
-
|
555
|
-
- `Create` command properly materialize result when `:one` is set (AMHOL)
|
556
|
-
|
557
650
|
[Compare v0.7.0...v0.8.0](https://github.com/rom-rb/rom-sql/compare/v0.7.0...v0.8.0)
|
558
651
|
|
559
|
-
##
|
652
|
+
## 0.7.0 2016-01-06
|
653
|
+
|
560
654
|
|
561
655
|
### Added
|
562
656
|
|
@@ -583,37 +677,42 @@ Please refer to [the upgrading guide](https://github.com/rom-rb/rom-sql/wiki/Upg
|
|
583
677
|
|
584
678
|
[Compare v0.6.1...v0.7.0](https://github.com/rom-rb/rom-sql/compare/v0.6.1...v0.7.0)
|
585
679
|
|
586
|
-
##
|
680
|
+
## 0.6.1 2015-09-23
|
681
|
+
|
587
682
|
|
588
683
|
### Added
|
589
684
|
|
590
685
|
- `Gateway` accepts `:extensions` as an option (c0)
|
591
686
|
|
687
|
+
|
592
688
|
[Compare v0.6.0...v0.6.1](https://github.com/rom-rb/rom-sql/compare/v0.6.0...v0.6.1)
|
593
689
|
|
594
|
-
##
|
690
|
+
## 0.6.0 2015-08-19
|
595
691
|
|
596
692
|
Internal updates to fix deprecation warnings from ROM 0.9.0.
|
597
693
|
|
694
|
+
|
598
695
|
[Compare v0.5.3...v0.6.0](https://github.com/rom-rb/rom-sql/compare/v0.5.3...v0.6.0)
|
599
696
|
|
600
|
-
##
|
697
|
+
## 0.5.3 2015-07-23
|
698
|
+
|
601
699
|
|
602
700
|
### Added
|
603
701
|
|
604
702
|
- `Relation#multi_insert` (draxxxeus)
|
605
703
|
|
606
|
-
### Changed
|
607
|
-
|
608
|
-
- Command that receives many tuples will use `multi_insert` now (draxxxeus)
|
609
|
-
|
610
704
|
### Fixed
|
611
705
|
|
612
706
|
- Relation name and join key fixes for `many_to_one` macro (jamesmoriarty)
|
613
707
|
|
708
|
+
### Changed
|
709
|
+
|
710
|
+
- Command that receives many tuples will use `multi_insert` now (draxxxeus)
|
711
|
+
|
614
712
|
[Compare v0.5.2...v0.5.3](https://github.com/rom-rb/rom-sql/compare/v0.5.2...v0.5.3)
|
615
713
|
|
616
|
-
##
|
714
|
+
## 0.5.2 2015-06-22
|
715
|
+
|
617
716
|
|
618
717
|
### Added
|
619
718
|
|
@@ -626,19 +725,21 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
|
|
626
725
|
|
627
726
|
[Compare v0.5.1...v0.5.2](https://github.com/rom-rb/rom-sql/compare/v0.5.1...v0.5.2)
|
628
727
|
|
629
|
-
##
|
728
|
+
## 0.5.1 2015-05-25
|
630
729
|
|
631
|
-
### Changed
|
632
|
-
|
633
|
-
- Relations won't be finalized when table(s) is/are missing (solnic)
|
634
730
|
|
635
731
|
### Fixed
|
636
732
|
|
637
733
|
- Wrap errors when calling commands with `[]`-syntax (kwando)
|
638
734
|
|
735
|
+
### Changed
|
736
|
+
|
737
|
+
- Relations won't be finalized when table(s) is/are missing (solnic)
|
738
|
+
|
639
739
|
[Compare v0.5.0...v0.5.1](https://github.com/rom-rb/rom-sql/compare/v0.5.0...v0.5.1)
|
640
740
|
|
641
|
-
##
|
741
|
+
## 0.5.0 2015-05-22
|
742
|
+
|
642
743
|
|
643
744
|
### Added
|
644
745
|
|
@@ -657,17 +758,20 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
|
|
657
758
|
- `Commands::Update#set` has been deprecated (solnic)
|
658
759
|
- `Commands::Update#to` has been deprecated (solnic)
|
659
760
|
|
660
|
-
[Compare v0.4.3...v0.5.0](https://github.com/rom-rb/rom-sql/compare/v0.4.
|
761
|
+
[Compare v0.4.3...v0.5.0](https://github.com/rom-rb/rom-sql/compare/v0.4.3...v0.5.0)
|
762
|
+
|
763
|
+
## 0.4.3 2015-05-17
|
661
764
|
|
662
|
-
## v0.4.3 2015-05-17
|
663
765
|
|
664
766
|
### Fixed
|
665
767
|
|
666
768
|
- `transaction` doesn't swallow errors now other than CommandError (solnic)
|
667
769
|
|
770
|
+
|
668
771
|
[Compare v0.4.2...v0.4.3](https://github.com/rom-rb/rom-sql/compare/v0.4.2...v0.4.3)
|
669
772
|
|
670
|
-
##
|
773
|
+
## 0.4.2 2015-05-17
|
774
|
+
|
671
775
|
|
672
776
|
### Added
|
673
777
|
|
@@ -687,16 +791,19 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
|
|
687
791
|
|
688
792
|
[Compare v0.4.1...v0.4.2](https://github.com/rom-rb/rom-sql/compare/v0.4.1...v0.4.2)
|
689
793
|
|
690
|
-
##
|
794
|
+
## 0.4.1 2015-04-04
|
795
|
+
|
691
796
|
|
692
797
|
### Added
|
693
798
|
|
694
799
|
- Database error handling for update and delete commands (kwando + solnic)
|
695
800
|
- Migration interface as a repository plugin (gotar + solnic)
|
696
801
|
|
802
|
+
|
697
803
|
[Compare v0.4.0...v0.4.1](https://github.com/rom-rb/rom-sql/compare/v0.4.0...v0.4.1)
|
698
804
|
|
699
|
-
##
|
805
|
+
## 0.4.0 2015-03-22
|
806
|
+
|
700
807
|
|
701
808
|
### Added
|
702
809
|
|
@@ -707,34 +814,39 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
|
|
707
814
|
- Pagination plugin (solnic)
|
708
815
|
- Allow reuse of established Sequel connections (splattael)
|
709
816
|
|
710
|
-
### Changed
|
711
|
-
|
712
|
-
- Use ROM's own inflector which uses either ActiveSupport or Inflecto backends (mjtko)
|
713
|
-
|
714
817
|
### Fixed
|
715
818
|
|
716
819
|
- Indentation in Rails logger (morgoth)
|
717
820
|
|
821
|
+
### Changed
|
822
|
+
|
823
|
+
- Use ROM's own inflector which uses either ActiveSupport or Inflecto backends (mjtko)
|
824
|
+
|
718
825
|
[Compare v0.3.2...v0.4.0](https://github.com/rom-rb/rom-sql/compare/v0.3.2...v0.4.0)
|
719
826
|
|
720
|
-
##
|
827
|
+
## 0.3.2 2015-01-01
|
828
|
+
|
721
829
|
|
722
830
|
### Fixed
|
723
831
|
|
724
832
|
- Checking tuple count in commands (solnic)
|
725
833
|
|
834
|
+
|
726
835
|
[Compare v0.3.1...v0.3.2](https://github.com/rom-rb/rom-sql/compare/v0.3.1...v0.3.2)
|
727
836
|
|
728
|
-
##
|
837
|
+
## 0.3.1 2014-12-31
|
838
|
+
|
729
839
|
|
730
840
|
### Added
|
731
841
|
|
732
842
|
- `Adapter#disconnect` (solnic)
|
733
843
|
- Support for extra connection options (solnic)
|
734
844
|
|
845
|
+
|
735
846
|
[Compare v0.3.0...v0.3.1](https://github.com/rom-rb/rom-sql/compare/v0.3.0...v0.3.1)
|
736
847
|
|
737
|
-
##
|
848
|
+
## 0.3.0 2014-12-19
|
849
|
+
|
738
850
|
|
739
851
|
### Changed
|
740
852
|
|
@@ -743,7 +855,8 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
|
|
743
855
|
|
744
856
|
[Compare v0.2.0...v0.3.0](https://github.com/rom-rb/rom-sql/compare/v0.2.0...v0.3.0)
|
745
857
|
|
746
|
-
##
|
858
|
+
## 0.2.0 2014-12-06
|
859
|
+
|
747
860
|
|
748
861
|
### Added
|
749
862
|
|
@@ -751,9 +864,11 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
|
|
751
864
|
- Support for ActiveSupport::Notifications with a log subscriber (solnic)
|
752
865
|
- New `ROM::SQL::Adapter#dataset?(name)` checking if a given table exists (solnic)
|
753
866
|
|
867
|
+
|
754
868
|
[Compare v0.1.1...v0.2.0](https://github.com/rom-rb/rom-sql/compare/v0.1.1...v0.2.0)
|
755
869
|
|
756
|
-
##
|
870
|
+
## 0.1.1 2014-11-24
|
871
|
+
|
757
872
|
|
758
873
|
### Fixed
|
759
874
|
|
@@ -765,6 +880,6 @@ Internal updates to fix deprecation warnings from ROM 0.9.0.
|
|
765
880
|
|
766
881
|
[Compare v0.1.0...v0.1.1](https://github.com/rom-rb/rom-sql/compare/v0.1.0...v0.1.1)
|
767
882
|
|
768
|
-
##
|
883
|
+
## 0.1.0 2014-11-24
|
769
884
|
|
770
885
|
First release powered by Sequel
|