From b566808b44a2d0b2a3a16f6bc5840d3826bb95fe Mon Sep 17 00:00:00 2001
From: David Higgins <zoul0813@gmail.com>
Date: Thu, 3 May 2018 06:09:49 -0400
Subject: [PATCH] fixes #255 - added null check to array_filter to allow `0`
 values to pass through (#258)

Example `['from' => 0, 'to' => 0]` is a valid aggregate range
---
 src/Aggregation/Bucketing/DateRangeAggregation.php   | 5 ++++-
 src/Aggregation/Bucketing/GeoDistanceAggregation.php | 5 ++++-
 src/Aggregation/Bucketing/Ipv4RangeAggregation.php   | 5 ++++-
 src/Aggregation/Bucketing/RangeAggregation.php       | 5 ++++-
 4 files changed, 16 insertions(+), 4 deletions(-)

diff --git a/src/Aggregation/Bucketing/DateRangeAggregation.php b/src/Aggregation/Bucketing/DateRangeAggregation.php
index d02b3d7..00184c9 100644
--- a/src/Aggregation/Bucketing/DateRangeAggregation.php
+++ b/src/Aggregation/Bucketing/DateRangeAggregation.php
@@ -86,7 +86,10 @@ class DateRangeAggregation extends AbstractAggregation
                 'from' => $from,
                 'to' => $to,
                 'key' => $key,
-            ]
+            ],
+            function ($v) {
+                return !is_null($v);
+            }
         );
 
         if (empty($range)) {
diff --git a/src/Aggregation/Bucketing/GeoDistanceAggregation.php b/src/Aggregation/Bucketing/GeoDistanceAggregation.php
index 2d6a095..6772ea5 100644
--- a/src/Aggregation/Bucketing/GeoDistanceAggregation.php
+++ b/src/Aggregation/Bucketing/GeoDistanceAggregation.php
@@ -132,7 +132,10 @@ class GeoDistanceAggregation extends AbstractAggregation
             [
                 'from' => $from,
                 'to' => $to,
-            ]
+            ],
+            function ($v) {
+                return !is_null($v);
+            }
         );
 
         if (empty($range)) {
diff --git a/src/Aggregation/Bucketing/Ipv4RangeAggregation.php b/src/Aggregation/Bucketing/Ipv4RangeAggregation.php
index d9bcd0b..0579aaf 100644
--- a/src/Aggregation/Bucketing/Ipv4RangeAggregation.php
+++ b/src/Aggregation/Bucketing/Ipv4RangeAggregation.php
@@ -65,7 +65,10 @@ class Ipv4RangeAggregation extends AbstractAggregation
             [
                 'from' => $from,
                 'to' => $to,
-            ]
+            ],
+            function ($v) {
+                return !is_null($v);
+            }
         );
 
         $this->ranges[] = $range;
diff --git a/src/Aggregation/Bucketing/RangeAggregation.php b/src/Aggregation/Bucketing/RangeAggregation.php
index ab87c99..fb7d756 100644
--- a/src/Aggregation/Bucketing/RangeAggregation.php
+++ b/src/Aggregation/Bucketing/RangeAggregation.php
@@ -84,7 +84,10 @@ class RangeAggregation extends AbstractAggregation
             [
                 'from' => $from,
                 'to' => $to,
-            ]
+            ],
+            function ($v) {
+                return !is_null($v);
+            }
         );
 
         if ($this->keyed && !empty($key)) {
-- 
GitLab