click_house-client 0.3.3 → 0.3.5

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: 89b9f94076ca41a87e6fce5920af4b5a1dd7631603caf113e8c7a0e159647d6f
4
- data.tar.gz: fe57a32f688677b39a622d622dab878b83475d8796dd35841c09db039b9a1213
3
+ metadata.gz: 367399ecdf2269b9e6f19e43a87fbd003d9dfef81f73b4a13c547504370d9a7b
4
+ data.tar.gz: ffeab53a479dab3ba47bf36f41e16d1557feeeaf1920ff5a08b7df8ab3230c58
5
5
  SHA512:
6
- metadata.gz: a293a5a0f8b584232e99edc14d57357a1970bf0fd7df94e63bf1bee147c7a3bcbe4af3a23b6a58f3e8a692fa0d9ba51740b978ea3464180857bf5fb5f04cb6b4
7
- data.tar.gz: 4213d754f77d414d02801dded486c42d0a2e4ac319c49a026f08bd7e6fc6ddecd4435ebc6eb217694495654e04943e481e08bcf7ccabcdb95563b7e2ad3fbdc9
6
+ metadata.gz: 5e96f9e290e3ff323c3546db0ba726c16888cb002cc1433fcd130bad5c7a86f2af86edc45c99039686eac404b1792fc7929610d140697ec3be160069ed6f37f3
7
+ data.tar.gz: 39d56bf5810a44e3586902f8291dab8cfc78f049e3750a34c2ddd6610bec94537143379670487749d506b81fbf2c5c511b252191ad7eed8012c516aff53ddcdb
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- click_house-client (0.3.2)
4
+ click_house-client (0.3.5)
5
5
  activerecord (>= 7.0, < 9.0)
6
6
  activesupport (>= 7.0, < 9.0)
7
7
  addressable (~> 2.8)
@@ -133,7 +133,7 @@ CHECKSUMS
133
133
  base64 (0.3.0) sha256=27337aeabad6ffae05c265c450490628ef3ebd4b67be58257393227588f5a97b
134
134
  benchmark (0.4.1) sha256=d4ef40037bba27f03b28013e219b950b82bace296549ec15a78016552f8d2cce
135
135
  bigdecimal (3.2.2) sha256=39085f76b495eb39a79ce07af716f3a6829bc35eb44f2195e2753749f2fa5adc
136
- click_house-client (0.3.2)
136
+ click_house-client (0.3.5)
137
137
  concurrent-ruby (1.3.5) sha256=813b3e37aca6df2a21a3b9f1d497f8cbab24a2b94cab325bffe65ee0f6cbebc6
138
138
  connection_pool (2.5.3) sha256=cfd74a82b9b094d1ce30c4f1a346da23ee19dc8a062a16a85f58eab1ced4305b
139
139
  diff-lcs (1.5.0) sha256=49b934001c8c6aedb37ba19daec5c634da27b318a7a3c654ae979d6ba1929b67
@@ -60,10 +60,12 @@ module ClickHouse
60
60
  def select(*fields)
61
61
  deep_clone.tap do |new_instance|
62
62
  existing_fields = new_instance.manager.projections.filter_map do |projection|
63
- if projection.is_a?(Arel::Attributes::Attribute)
64
- projection.name.to_s
65
- elsif projection.to_s == '*'
63
+ if projection.respond_to?(:to_s) && projection.to_s == '*'
66
64
  nil
65
+ elsif projection.is_a?(Arel::Attributes::Attribute)
66
+ projection.name.to_s
67
+ elsif projection.is_a?(Arel::Expressions)
68
+ projection
67
69
  end
68
70
  end
69
71
 
@@ -89,8 +91,14 @@ module ClickHouse
89
91
  validate_order_direction!(direction)
90
92
 
91
93
  deep_clone.tap do |new_instance|
92
- table_field = new_instance.table[field]
93
- new_order = direction.to_s.casecmp('desc').zero? ? table_field.desc : table_field.asc
94
+ order_node = case field
95
+ when Arel::Nodes::SqlLiteral, Arel::Nodes::Node, Arel::Attribute
96
+ field
97
+ else
98
+ new_instance.table[field]
99
+ end
100
+
101
+ new_order = direction.to_s.casecmp('desc').zero? ? order_node.desc : order_node.asc
94
102
  new_instance.manager.order(new_order)
95
103
  end
96
104
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module ClickHouse
4
4
  module Client
5
- VERSION = "0.3.3"
5
+ VERSION = "0.3.5"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: click_house-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.3
4
+ version: 0.3.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - group::optimize
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-07-28 00:00:00.000000000 Z
11
+ date: 2025-07-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord