Release
We've recently merged a pr that adds support for Python 3.11 and 3.12 as well as ARM wheels for MAC, so should cut a new release
Sounds good -- I'll push one out with the dask release later today
Seems like there was a release commit https://github.com/dask/crick/commit/2f442dd8eebf5ee7e3308815406efe0eb608c40f, but no tagged release or published package on PyPI yet.
Is the propagation of the release blocked?
- #51
It would be great to get a new release and wheels on PyPI soon that are built against Numpy 2.0, too:
- https://github.com/dask/crick/issues/53
I'd be happy to help expedite this, but I guess this is a maintainer's job only.
there are wheels on Pypi, i.e. https://pypi.org/project/crick/#history
Would be great if you could look into the pytest failures, that will certainly help
Ah, nice with PyPI - I guess I was just missing 0.0.6 from the GitHub releases.
Pytest failures - the ticket mentioned above is about some non-standard build process (for rpm). I'll have a look, but can probably not help there.
FWIW, on a quick local check, the test suite passes for me, for latest main.
pytest
========================================================================================================================================================================== test session starts ===========================================================================================================================================================================
platform darwin -- Python 3.9.12, pytest-8.3.2, pluggy-1.5.0 -- /home/.envs/crick-test/bin/python
cachedir: .pytest_cache
rootdir: /home/crick
configfile: setup.cfg
collected 97 items
crick/tests/test_space_saving.py::test_space_saving[float-data0] PASSED [ 1%]
crick/tests/test_space_saving.py::test_space_saving[int-data1] PASSED [ 2%]
crick/tests/test_space_saving.py::test_space_saving[object-data2] PASSED [ 3%]
crick/tests/test_space_saving.py::test_space_saving[object-data3] PASSED [ 4%]
crick/tests/test_space_saving.py::test_space_saving[object-data4] PASSED [ 5%]
crick/tests/test_space_saving.py::test_space_saving[float-data5] PASSED [ 6%]
crick/tests/test_space_saving.py::test_add_matches_update PASSED [ 7%]
crick/tests/test_space_saving.py::test_init PASSED [ 8%]
crick/tests/test_space_saving.py::test_algorithm PASSED [ 9%]
crick/tests/test_space_saving.py::test_object_reference_counting PASSED [ 10%]
crick/tests/test_space_saving.py::test_object_hash_errors PASSED [ 11%]
crick/tests/test_space_saving.py::test_weights PASSED [ 12%]
crick/tests/test_space_saving.py::test_add_raises PASSED [ 13%]
crick/tests/test_space_saving.py::test_update_raises PASSED [ 14%]
crick/tests/test_space_saving.py::test_topk_invariants PASSED [ 15%]
crick/tests/test_space_saving.py::test_serialize[float] PASSED [ 16%]
crick/tests/test_space_saving.py::test_serialize[int] PASSED [ 17%]
crick/tests/test_space_saving.py::test_serialize[object] PASSED [ 18%]
crick/tests/test_space_saving.py::test_merge_algorithm[s10-s20] PASSED [ 19%]
crick/tests/test_space_saving.py::test_merge_algorithm[s11-s21] PASSED [ 20%]
crick/tests/test_space_saving.py::test_merge_algorithm[s12-s22] PASSED [ 21%]
crick/tests/test_space_saving.py::test_merge_algorithm[s13-s23] PASSED [ 22%]
crick/tests/test_space_saving.py::test_merge_algorithm[s14-s24] PASSED [ 23%]
crick/tests/test_space_saving.py::test_merge_algorithm[s15-s25] PASSED [ 24%]
crick/tests/test_space_saving.py::test_merge_algorithm[s16-s26] PASSED [ 25%]
crick/tests/test_space_saving.py::test_merge_algorithm[s17-s27] PASSED [ 26%]
crick/tests/test_space_saving.py::test_merge_algorithm[s18-s28] PASSED [ 27%]
crick/tests/test_space_saving.py::test_merge_algorithm[s19-s29] PASSED [ 28%]
crick/tests/test_space_saving.py::test_merge_algorithm[s110-s210] PASSED [ 29%]
crick/tests/test_space_saving.py::test_merge_algorithm[s111-s211] PASSED [ 30%]
crick/tests/test_space_saving.py::test_merge_errors PASSED [ 31%]
crick/tests/test_stats.py::test_basic_stats[x0] PASSED [ 32%]
crick/tests/test_stats.py::test_basic_stats[x1] PASSED [ 34%]
crick/tests/test_stats.py::test_basic_stats[x2] PASSED [ 35%]
crick/tests/test_stats.py::test_basic_stats[x3] PASSED [ 36%]
crick/tests/test_stats.py::test_basic_stats[x4] PASSED [ 37%]
crick/tests/test_stats.py::test_skew[True-x0] PASSED [ 38%]
crick/tests/test_stats.py::test_skew[True-x1] PASSED [ 39%]
crick/tests/test_stats.py::test_skew[True-x2] PASSED [ 40%]
crick/tests/test_stats.py::test_skew[True-x3] PASSED [ 41%]
crick/tests/test_stats.py::test_skew[True-x4] PASSED [ 42%]
crick/tests/test_stats.py::test_skew[False-x0] PASSED [ 43%]
crick/tests/test_stats.py::test_skew[False-x1] PASSED [ 44%]
crick/tests/test_stats.py::test_skew[False-x2] PASSED [ 45%]
crick/tests/test_stats.py::test_skew[False-x3] PASSED [ 46%]
crick/tests/test_stats.py::test_skew[False-x4] PASSED [ 47%]
crick/tests/test_stats.py::test_kurt[True-True-x0] PASSED [ 48%]
crick/tests/test_stats.py::test_kurt[True-True-x1] PASSED [ 49%]
crick/tests/test_stats.py::test_kurt[True-True-x2] PASSED [ 50%]
crick/tests/test_stats.py::test_kurt[True-True-x3] PASSED [ 51%]
crick/tests/test_stats.py::test_kurt[True-True-x4] PASSED [ 52%]
crick/tests/test_stats.py::test_kurt[True-False-x0] PASSED [ 53%]
crick/tests/test_stats.py::test_kurt[True-False-x1] PASSED [ 54%]
crick/tests/test_stats.py::test_kurt[True-False-x2] PASSED [ 55%]
crick/tests/test_stats.py::test_kurt[True-False-x3] PASSED [ 56%]
crick/tests/test_stats.py::test_kurt[True-False-x4] PASSED [ 57%]
crick/tests/test_stats.py::test_kurt[False-True-x0] PASSED [ 58%]
crick/tests/test_stats.py::test_kurt[False-True-x1] PASSED [ 59%]
crick/tests/test_stats.py::test_kurt[False-True-x2] PASSED [ 60%]
crick/tests/test_stats.py::test_kurt[False-True-x3] PASSED [ 61%]
crick/tests/test_stats.py::test_kurt[False-True-x4] PASSED [ 62%]
crick/tests/test_stats.py::test_kurt[False-False-x0] PASSED [ 63%]
crick/tests/test_stats.py::test_kurt[False-False-x1] PASSED [ 64%]
crick/tests/test_stats.py::test_kurt[False-False-x2] PASSED [ 65%]
crick/tests/test_stats.py::test_kurt[False-False-x3] PASSED [ 67%]
crick/tests/test_stats.py::test_kurt[False-False-x4] PASSED [ 68%]
crick/tests/test_stats.py::test_pickle[x0] PASSED [ 69%]
crick/tests/test_stats.py::test_pickle[x1] PASSED [ 70%]
crick/tests/test_stats.py::test_repr PASSED [ 71%]
crick/tests/test_stats.py::test_weights PASSED [ 72%]
crick/tests/test_stats.py::test_add_update_errors PASSED [ 73%]
crick/tests/test_stats.py::test_merge PASSED [ 74%]
crick/tests/test_tdigest.py::test_distributions[data0] PASSED [ 75%]
crick/tests/test_tdigest.py::test_distributions[data1] PASSED [ 76%]
crick/tests/test_tdigest.py::test_distributions[data2] PASSED [ 77%]
crick/tests/test_tdigest.py::test_distributions[data3] PASSED [ 78%]
crick/tests/test_tdigest.py::test_distributions[data4] PASSED [ 79%]
crick/tests/test_tdigest.py::test_distributions[data5] PASSED [ 80%]
crick/tests/test_tdigest.py::test_distributions[data6] PASSED [ 81%]
crick/tests/test_tdigest.py::test_distributions[data7] PASSED [ 82%]
crick/tests/test_tdigest.py::test_init PASSED [ 83%]
crick/tests/test_tdigest.py::test_repr PASSED [ 84%]
crick/tests/test_tdigest.py::test_empty PASSED [ 85%]
crick/tests/test_tdigest.py::test_single PASSED [ 86%]
crick/tests/test_tdigest.py::test_nonfinite PASSED [ 87%]
crick/tests/test_tdigest.py::test_small_w PASSED [ 88%]
crick/tests/test_tdigest.py::test_update_non_numeric_errors PASSED [ 89%]
crick/tests/test_tdigest.py::test_quantile_and_cdf_non_numeric PASSED [ 90%]
crick/tests/test_tdigest.py::test_quantile_and_cdf_shape PASSED [ 91%]
crick/tests/test_tdigest.py::test_histogram PASSED [ 92%]
crick/tests/test_tdigest.py::test_histogram_small_n PASSED [ 93%]
crick/tests/test_tdigest.py::test_histogram_empty PASSED [ 94%]
crick/tests/test_tdigest.py::test_histogram_errors PASSED [ 95%]
crick/tests/test_tdigest.py::test_weights PASSED [ 96%]
crick/tests/test_tdigest.py::test_serialize PASSED [ 97%]
crick/tests/test_tdigest.py::test_merge PASSED [ 98%]
crick/tests/test_tdigest.py::test_scale PASSED [100%]
============================================================================================================================================================================ warnings summary ============================================================================================================================================================================
crick/tests/test_stats.py::test_skew[True-x3]
crick/tests/test_stats.py::test_skew[False-x3]
/Users/jonassolvsteen/Code/crick/crick/tests/test_stats.py:62: RuntimeWarning: Precision loss occurred in moment calculation due to catastrophic cancellation. This occurs when the data are nearly identical. Results may be unreliable.
sol = stats.skew(x[~np.isnan(x)], bias=bias) if len(x) else np.nan
crick/tests/test_stats.py::test_kurt[True-True-x3]
crick/tests/test_stats.py::test_kurt[True-False-x3]
crick/tests/test_stats.py::test_kurt[False-True-x3]
crick/tests/test_stats.py::test_kurt[False-False-x3]
/Users/jonassolvsteen/Code/crick/crick/tests/test_stats.py:85: RuntimeWarning: Precision loss occurred in moment calculation due to catastrophic cancellation. This occurs when the data are nearly identical. Results may be unreliable.
sol = stats.kurtosis(x[~np.isnan(x)], bias=bias, fisher=fisher)
-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
========================================================================================================================================================================== slowest 10 durations ==========================================================================================================================================================================
12.86s call crick/tests/test_stats.py::test_skew[True-x0]
0.03s call crick/tests/test_tdigest.py::test_merge
0.02s call crick/tests/test_tdigest.py::test_distributions[data0]
0.02s call crick/tests/test_tdigest.py::test_distributions[data1]
0.02s call crick/tests/test_tdigest.py::test_distributions[data2]
0.02s call crick/tests/test_tdigest.py::test_distributions[data5]
0.01s call crick/tests/test_tdigest.py::test_distributions[data6]
0.01s call crick/tests/test_tdigest.py::test_scale
0.01s call crick/tests/test_tdigest.py::test_serialize
0.01s call crick/tests/test_tdigest.py::test_distributions[data3]
==================================================================================================================================================================== 97 passed, 6 warnings in 13.30s =====================================================================================================================================================================
pip freeze
-e git+https://github.com/dask/crick.git@2f442dd8eebf5ee7e3308815406efe0eb608c40f#egg=crick
Cython==3.0.11
exceptiongroup==1.2.2
iniconfig==2.0.0
numpy==2.0.1
packaging==24.1
pluggy==1.5.0
pytest==8.3.2
scipy==1.13.1
tomli==2.0.1
I guess this ticket can be closed, perhaps after adding a GH release, if you like.
@jrbourbeau could you look into he GitHub release thing?
Here's a GitHub release for 0.0.6 https://github.com/dask/crick/releases/tag/0.0.6