activerecord-summarize 0.2.2 → 0.2.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 +4 -4
- data/Gemfile.lock +1 -1
- data/lib/activerecord/summarize/version.rb +1 -1
- data/lib/activerecord/summarize.rb +5 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 86517402b9294b544b4d452e8198a49e23148141bf1614cdedff938970a32213
|
4
|
+
data.tar.gz: d87578a41a70e44cce3efea3114a1e465ecf2428af4f2aa8be86556fff55a655
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fd7587584640872da28f5cf78d16f547f6965d9227f665a65658a1ecf5349ad1cb9bb06ddcba57e777acda9d03133f5f83a9bf0095b0e24c853428d98db28ed0
|
7
|
+
data.tar.gz: 42f7a3c1f745f41edb882d681c85ea02c3672739a4edff781b6af0756c99ff0923348b89438969392a2b659ab3bf4613acc9454c5817ef278db0684918de3521
|
data/Gemfile.lock
CHANGED
@@ -127,6 +127,10 @@ module ActiveRecord::Summarize
|
|
127
127
|
# grouped_query = groups.any? ? from_where.group(*groups) : from_where
|
128
128
|
grouped_query = groups.any? ? from_where.group(*1..groups.size) : from_where
|
129
129
|
data = grouped_query.pluck(*groups, *value_selects)
|
130
|
+
# .pluck(:one_column) returns an array of values instead of an array of arrays,
|
131
|
+
# which breaks the aggregation and assignment below in case anyone ever asks
|
132
|
+
# `summarize` for only one thing.
|
133
|
+
data = data.map { |d| [d] } if (groups.size + value_selects.size) == 1
|
130
134
|
|
131
135
|
# Aggregate & assign results
|
132
136
|
group_idx = groups.each_with_index.to_h
|
@@ -136,7 +140,7 @@ module ActiveRecord::Summarize
|
|
136
140
|
case group_columns.size
|
137
141
|
when 0 then [
|
138
142
|
0,
|
139
|
-
->(memo, row) { memo + row[value_column] }
|
143
|
+
->(memo, row) { memo + (row[value_column] || 0) }
|
140
144
|
]
|
141
145
|
when 1 then [
|
142
146
|
Hash.new(0), # Default 0 makes the reducer much cleaner, but we have to clean it up later
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: activerecord-summarize
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Joshua Paine
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-05-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activerecord
|