diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index a1ce1bc9..e0291e1b 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -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 diff --git a/src/boost_histogram/_core/accumulators.pyi b/src/boost_histogram/_core/accumulators.pyi index cf38d65c..3cd00af2 100644 --- a/src/boost_histogram/_core/accumulators.pyi +++ b/src/boost_histogram/_core/accumulators.pyi @@ -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: ... @@ -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: ... @@ -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: ... @@ -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: ... diff --git a/tests/test_accumulators.py b/tests/test_accumulators.py index fc7c0da5..4eb9b21b 100644 --- a/tests/test_accumulators.py +++ b/tests/test_accumulators.py @@ -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) @@ -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, @@ -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)