activerecord-refined 0.10.2 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +1 -1
  3. data/README.md +19 -22
  4. data/activerecord-refined.gemspec +4 -3
  5. data/docs/conditions.md +3 -1
  6. data/docs/ctes.md +2 -2
  7. data/docs/expressions.md +37 -20
  8. data/docs/functions.md +14 -10
  9. data/docs/index.md +2 -17
  10. data/docs/windows.md +2 -2
  11. data/examples/expressions.rb +21 -15
  12. data/lib/active_record/refined/ast/arithmetics.rb +137 -0
  13. data/lib/active_record/refined/ast/conditions.rb +451 -0
  14. data/lib/active_record/refined/ast/expressions.rb +304 -0
  15. data/lib/active_record/refined/ast/functions.rb +254 -0
  16. data/lib/active_record/refined/ast/grouping.rb +63 -0
  17. data/lib/active_record/refined/ast/json.rb +530 -0
  18. data/lib/active_record/refined/ast/node.rb +298 -0
  19. data/lib/active_record/refined/ast/ordering.rb +104 -0
  20. data/lib/active_record/refined/ast/predications.rb +384 -0
  21. data/lib/active_record/refined/ast/windows.rb +126 -0
  22. data/lib/active_record/refined/ast.rb +39 -2364
  23. data/lib/active_record/refined/block_context.rb +671 -0
  24. data/lib/active_record/refined/block_syntax.rb +128 -0
  25. data/lib/active_record/refined/dialect/mysql_compat.rb +16 -0
  26. data/lib/active_record/refined/dialect/mysqlish_json_functions.rb +45 -0
  27. data/lib/active_record/refined/dialect/oracle.rb +1 -7
  28. data/lib/active_record/refined/dialect/postgresql.rb +8 -0
  29. data/lib/active_record/refined/dialect/sql_server.rb +29 -5
  30. data/lib/active_record/refined/dialect/sqlite.rb +23 -0
  31. data/lib/active_record/refined/dialect.rb +132 -66
  32. data/lib/active_record/refined/query_methods.rb +444 -0
  33. data/lib/{activerecord-refined → active_record/refined}/version.rb +3 -2
  34. data/lib/active_record/refined/writes.rb +72 -0
  35. data/lib/active_record/refined.rb +7 -1270
  36. data/lib/activerecord-refined.rb +0 -4
  37. metadata +36 -5
@@ -1,11 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "activerecord-refined/version"
4
3
  require "active_record"
5
- require "bigdecimal"
6
4
  require "active_record/relation"
7
- require "active_record/refined/ast"
8
- require "active_record/refined/dialect"
9
5
  require "active_record/refined"
10
6
 
11
7
  ActiveRecord::QueryMethods.prepend ActiveRecord::Refined::QueryMethods
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activerecord-refined
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.2
4
+ version: 0.12.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shugo Maeda
@@ -16,7 +16,7 @@ dependencies:
16
16
  -
17
17
  - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: "7.0"
19
+ version: "7.2"
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
@@ -24,7 +24,7 @@ dependencies:
24
24
  -
25
25
  - ">="
26
26
  - !ruby/object:Gem::Version
27
- version: "7.0"
27
+ version: "7.2"
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: sqlite3
30
30
  requirement: !ruby/object:Gem::Requirement
@@ -73,6 +73,22 @@ dependencies:
73
73
  - ">="
74
74
  - !ruby/object:Gem::Version
75
75
  version: "0"
76
+ - !ruby/object:Gem::Dependency
77
+ name: simplecov
78
+ requirement: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ -
81
+ - ">="
82
+ - !ruby/object:Gem::Version
83
+ version: "0"
84
+ type: :development
85
+ prerelease: false
86
+ version_requirements: !ruby/object:Gem::Requirement
87
+ requirements:
88
+ -
89
+ - ">="
90
+ - !ruby/object:Gem::Version
91
+ version: "0"
76
92
  - !ruby/object:Gem::Dependency
77
93
  name: bump
78
94
  requirement: !ruby/object:Gem::Requirement
@@ -268,16 +284,31 @@ files:
268
284
  - examples/writes.rb
269
285
  - lib/active_record/refined.rb
270
286
  - lib/active_record/refined/ast.rb
287
+ - lib/active_record/refined/ast/arithmetics.rb
288
+ - lib/active_record/refined/ast/conditions.rb
289
+ - lib/active_record/refined/ast/expressions.rb
290
+ - lib/active_record/refined/ast/functions.rb
291
+ - lib/active_record/refined/ast/grouping.rb
292
+ - lib/active_record/refined/ast/json.rb
293
+ - lib/active_record/refined/ast/node.rb
294
+ - lib/active_record/refined/ast/ordering.rb
295
+ - lib/active_record/refined/ast/predications.rb
296
+ - lib/active_record/refined/ast/windows.rb
297
+ - lib/active_record/refined/block_context.rb
298
+ - lib/active_record/refined/block_syntax.rb
271
299
  - lib/active_record/refined/dialect.rb
272
300
  - lib/active_record/refined/dialect/mariadb.rb
273
301
  - lib/active_record/refined/dialect/mysql.rb
274
302
  - lib/active_record/refined/dialect/mysql_compat.rb
303
+ - lib/active_record/refined/dialect/mysqlish_json_functions.rb
275
304
  - lib/active_record/refined/dialect/oracle.rb
276
305
  - lib/active_record/refined/dialect/postgresql.rb
277
306
  - lib/active_record/refined/dialect/sql_server.rb
278
307
  - lib/active_record/refined/dialect/sqlite.rb
308
+ - lib/active_record/refined/query_methods.rb
309
+ - lib/active_record/refined/version.rb
310
+ - lib/active_record/refined/writes.rb
279
311
  - lib/activerecord-refined.rb
280
- - lib/activerecord-refined/version.rb
281
312
  homepage: "https://github.com/shugo/activerecord-refined"
282
313
  licenses:
283
314
  - MIT
@@ -299,7 +330,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
299
330
  - !ruby/object:Gem::Version
300
331
  version: "0"
301
332
  requirements: []
302
- rubygems_version: 4.1.0.dev
333
+ rubygems_version: 4.1.0.beta1
303
334
  specification_version: 4
304
335
  summary: Write Active Record queries as Ruby expressions
305
336
  test_files: []