rom-sql 3.3.2 → 3.3.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ddc33a4e8bd74212636e3c07be5ee12ab1e8947d4e5f76a3981c31c577140697
4
- data.tar.gz: '097637bec7bac21c61128ed798ae0038e7f19ffed9579e89d596243f4b3f8bc0'
3
+ metadata.gz: bfe5975f2fc0756a0a3f8239916f58c4f6dc307a3af1d7cdd1d62bbcd7c4cfc1
4
+ data.tar.gz: 68c896292b5bde03e255552acb84d6952d21bb705bedc43f6f36811f5bb350c1
5
5
  SHA512:
6
- metadata.gz: 279b99442b0b5b6434c2d5cbf9817e1e04b62897cdf485cbbc1164259336d47bf621e98a2b2a5f648d61ef0e0fa7f5c9f7dfcec2b448f33db49f41b1e1295352
7
- data.tar.gz: 466bbb815b90464ada9de31e040e36d91e75c9a34d9d36d8bb85f639fc1808318d87ab91e037bf0ee69a03433a4326ef6640eda323b6bceaf5b0f473cbffa4e6
6
+ metadata.gz: d951459dc868955f1cddd1b77ac56f0aa8b71e556afd0cdea382241da0572a04c26da3f1fd9f73e49b53e93559e8b436d63681d0fefbe56f2e41e7284709012e
7
+ data.tar.gz: 7d151a47318bfe9ad5caeb5b0977dc31eb5f1577ed2707a43f4c88715c10bc0e00d4145571da8bff72e515ee1b7caa46911d0bfc896e570f303a1496f6436ae7
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  <!--- DO NOT EDIT THIS FILE - IT'S AUTOMATICALLY GENERATED VIA DEVTOOLS --->
2
2
 
3
- ## 3.3.2 2020-01-06
3
+ ## 3.3.3 2021-03-05
4
+
5
+
6
+ ### Added
7
+
8
+ - Support for streaming composite relations (@ianks)
9
+
10
+
11
+ [Compare v3.3.2...v3.3.3](https://github.com/rom-rb/rom-sql/compare/v3.3.2...v3.3.3)
12
+
13
+ ## 3.3.2 2021-01-06
4
14
 
5
15
 
6
16
  ### Fixed
data/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2015-2021 rom-rb team
3
+ Copyright (c) 2015-2020 rom-rb team
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy of
6
6
  this software and associated documentation files (the "Software"), to deal in
@@ -36,6 +36,7 @@ module ROM
36
36
  def self.included(klass)
37
37
  super
38
38
  ROM::Relation::Graph.include(Combined)
39
+ ROM::Relation::Composite.include(Composite)
39
40
  end
40
41
 
41
42
  if defined?(JRUBY_VERSION)
@@ -82,6 +83,16 @@ module ROM
82
83
  raise StreamingNotSupportedError, "not supported on combined relations"
83
84
  end
84
85
  end
86
+
87
+ module Composite
88
+ def stream_each
89
+ return to_enum unless block_given?
90
+
91
+ left.stream_each do |tuple|
92
+ yield right.call([tuple]).first
93
+ end
94
+ end
95
+ end
85
96
  end
86
97
  end
87
98
  end
@@ -73,23 +73,18 @@ module ROM
73
73
  #
74
74
  # @api private
75
75
  def qualified(table_alias = nil)
76
- new { |arg|
77
- arg.respond_to?(:qualified) ? arg.qualified(table_alias) : arg
78
- }
76
+ meta(
77
+ func: ::Sequel::SQL::Function.new(func.name, *func.args.map { |arg| arg.respond_to?(:qualified) ? arg.qualified(table_alias) : arg })
78
+ )
79
79
  end
80
80
 
81
81
  # @see Attribute#qualified_projection
82
82
  #
83
83
  # @api private
84
84
  def qualified_projection(table_alias = nil)
85
- new { |arg|
86
- arg.respond_to?(:qualified_projection) ? arg.qualified_projection(table_alias) : arg
87
- }
88
- end
89
-
90
- # @api private
91
- def new(&block)
92
- meta(func: ::Sequel::SQL::Function.new!(func.name, func.args.map(&block), func.opts))
85
+ meta(
86
+ func: ::Sequel::SQL::Function.new(func.name, *func.args.map { |arg| arg.respond_to?(:qualified_projection) ? arg.qualified_projection(table_alias) : arg })
87
+ )
93
88
  end
94
89
 
95
90
  # @see Attribute#qualified?
@@ -2,6 +2,6 @@
2
2
 
3
3
  module ROM
4
4
  module SQL
5
- VERSION = '3.3.2'.freeze
5
+ VERSION = '3.3.3'.freeze
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rom-sql
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.3.2
4
+ version: 3.3.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Piotr Solnica
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-01-06 00:00:00.000000000 Z
11
+ date: 2021-03-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sequel