Skip to content

Commit

Permalink
fix(types): allow running from Python 3.7 (#542)
Browse files Browse the repository at this point in the history
  • Loading branch information
henryiii committed Mar 23, 2021
1 parent a2a7205 commit 67b96f0
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 14 deletions.
6 changes: 6 additions & 0 deletions docs/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# What's new in boost-histogram

## UPCOMING

* Support running type checking from Python < 3.8 [#542][]

[#542]: https://github.com/scikit-hep/boost-histogram/pull/542

## Version 1.0

### Version 1.0.1
Expand Down
16 changes: 6 additions & 10 deletions src/boost_histogram/_core/accumulators.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ class WeightedSum(_BaseAccumulator):
def value(self) -> float: ...
@property
def variance(self) -> float: ...
def __iadd__(self: T, val: float, /) -> T: ...
def __iadd__(self: T, arg0: float) -> T: ...
def fill(self: T, value: ArrayLike, variance: ArrayLike | None = None) -> T: ...
@staticmethod
def _make(self: T, a: ArrayLike, b: ArrayLike) -> T: ...
Expand All @@ -32,7 +32,7 @@ class Sum(_BaseAccumulator):
def __init__(self, value: float | None) -> None: ...
@property
def value(self) -> float: ...
def __iadd__(self: T, val: float, /) -> T: ...
def __iadd__(self: T, arg0: float) -> T: ...
def fill(self: T, value: ArrayLike) -> T: ...
@property
def _small(self) -> float: ...
Expand Down Expand Up @@ -63,11 +63,11 @@ class WeightedMean(_BaseAccumulator):
def fill(self: T, value: ArrayLike, *, weight: ArrayLike | None = None) -> T: ...
@staticmethod
def _make(
self: T, a: ArrayLike, b: ArrayLike, c: ArrayLike, d: ArrayLike, /
self: T, arg0: ArrayLike, arg1: ArrayLike, arg2: ArrayLike, arg3: ArrayLike
) -> T: ...
@staticmethod
def _array(
self: T, a: ArrayLike, b: ArrayLike, c: ArrayLike, d: ArrayLike, /
self: T, arg0: ArrayLike, arg1: ArrayLike, arg2: ArrayLike, arg3: ArrayLike
) -> T: ...
def __getitem__(self, key: str) -> float: ...
def __setitem__(self, key: str, value: float) -> None: ...
Expand All @@ -87,12 +87,8 @@ class Mean(_BaseAccumulator):
) -> T: ...
def fill(self: T, value: ArrayLike, *, weight: ArrayLike | None = None) -> T: ...
@staticmethod
def _make(
self: T, a: ArrayLike, b: ArrayLike, c: ArrayLike, d: ArrayLike, /
) -> T: ...
def _make(self: T, arg0: ArrayLike, arg1: ArrayLike, arg2: ArrayLike) -> T: ...
@staticmethod
def _array(
self: T, a: ArrayLike, b: ArrayLike, c: ArrayLike, d: ArrayLike, /
) -> T: ...
def _array(self: T, arg0: ArrayLike, arg1: ArrayLike, arg2: ArrayLike) -> T: ...
def __getitem__(self, key: str) -> float: ...
def __setitem__(self, key: str, value: float) -> None: ...
8 changes: 4 additions & 4 deletions tests/test_accumulators.py
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ def test_mean():


float_st = st.floats(
allow_nan=False, allow_infinity=False, min_value=-1e5, max_value=1e5
allow_nan=False, allow_infinity=False, min_value=-1e4, max_value=1e4
)
simple_list_st = st.lists(float_st, min_size=1, max_size=10)

Expand Down Expand Up @@ -129,7 +129,7 @@ def test_sum_mean(list1, list2):
st.lists(float_st, min_size=n, max_size=n),
st.lists(
st.floats(
allow_nan=False, allow_infinity=False, min_value=1e-2, max_value=1e3
allow_nan=False, allow_infinity=False, min_value=1e-2, max_value=1e2
),
min_size=n,
max_size=n,
Expand All @@ -151,12 +151,12 @@ def test_sum_weighed_mean(pair1, pair2):

ab = a + b
assert ab.value == approx(c.value)
assert ab.variance == approx(c.variance, nan_ok=True, abs=1e-7, rel=1e-3)
assert ab.variance == approx(c.variance, nan_ok=True, abs=1e-3, rel=1e-2)
assert ab.sum_of_weights == approx(c.sum_of_weights)
assert ab.sum_of_weights_squared == approx(c.sum_of_weights_squared)

a += b
assert a.value == approx(c.value)
assert a.variance == approx(c.variance, nan_ok=True, abs=1e-7, rel=1e-3)
assert a.variance == approx(c.variance, nan_ok=True, abs=1e-3, rel=1e-2)
assert a.sum_of_weights == approx(c.sum_of_weights)
assert a.sum_of_weights_squared == approx(c.sum_of_weights_squared)

0 comments on commit 67b96f0

Please sign in to comment.