Skip to content

Version 2.9.1

Latest

Choose a tag to compare

@TaiSakuma TaiSakuma released this 08 Jun 13:08
· 1 commit to main since this release

New features

  • feat: improve and test big-endian support by @ikrommyd in #3676
  • feat: implement array compatibility/interface protocols for virtual array and placeholder array (for better errors) by @ikrommyd in #3839
  • feat: reimplement reducers kernels using cccl by @maxymnaumchyk in #3840
  • feat: implement byteswap as an nplike function by @aashirvad08 in #3845
  • feat: lazy parents allocation by @ianna in #3860
  • feat: extend Python reducers with offset support (precursor to parent removal) by @ianna in #3865
  • feat: pass 'offsets' to reducer kernels (precursor to parent removal) by @maxymnaumchyk in #3883
  • feat: reducer max for axis==None by @ianna in #3884
  • feat: improve and fix delayed length calculations and add delayed length calculation for layouts that need it by @ikrommyd in #3889
  • feat: pickle in native byteorder and pass byteorder through pickling and unpickling by @ikrommyd in #3893
  • feat: customly overload the reducers that call cuda-compute kernels by @maxymnaumchyk in #3894
  • feat: add axis=None specialization for Min reducer + small refactoring for existing specializatons by @ikrommyd in #3896
  • feat: cuda.compute combinations kernel study by @ianna in #3908
  • feat: add missing_repeat kernel implementation using cuda.compute by @maxymnaumchyk in #3922
  • feat: add index_rpad_and_clip kernels implementations using cuda.compute by @maxymnaumchyk in #3923
  • feat: allow generator expressions in highlevel operations that accept iterable of arrays as input by @ikrommyd in #3938
  • feat: add awkward.* aliases to objects.inv for intersphinx by @TaiSakuma in #3958
  • feat: properly handle numpy functions that return default containers of numpy arrays in __array_function__ by @ikrommyd in #3991
  • feat: lazy concatenation of virtual arrays by @ikrommyd in #4010
  • feat: migrate awkward_index_rpad_and_clip_axis0 to cuda.compute by @danielfrg in #4012
  • feat: migrate awkward_reduce_sum_complex to cuda.compute by @danielfrg in #4016
  • feat: migrate awkward_reduce_max_complex to cuda.compute by @danielfrg in #4018

Bug-fixes and performance

  • fix: temporarily use unary_transform instead of segmented_reduce by @maxymnaumchyk in #3814
  • fix: C++ errors in ak.from_rdataframe by @bendavid in #3851
  • fix: Fix multiple CUDA out-of-bounds accesses and kernel memory management issues by @ianna in #3858
  • fix: harden CUDA/CPU kernels against out-of-bounds writes in ListOffsetArray by @ianna in #3859
  • fix: add offsets for UnmaskedArray reducer by @ianna in #3874
  • fix: GrowableBuffer cleanup compiler warnings by @ianna in #3881
  • fix: fix typetracer's maximum implementation by @ikrommyd in #3895
  • fix: fix ASAN detected buffer overflows in awkward-cpp by @ikrommyd in #3898
  • fix: Numba-CUDA refactoring -- CUDATargetContext is spinned off to FunctionDescriptor by @ianna in #3902
  • fix: return shallow copy of fields list when .fields is being accessed from highlevel array/record by @ikrommyd in #3906
  • fix: handle union array simplification returning back indexed arrays in ak.almost_equal by @ikrommyd in #3909
  • fix: ak.array_equal with datetimes and timedeltas with NaTs by @ikrommyd in #3921
  • fix: consistent byteorder settings by @ikrommyd in #3954
  • fix: couple of fixes in tests that arose from running them in parallel threads by @ikrommyd in #3961
  • fix: proper comparison in ak.almost_equal between record array fields by @ikrommyd in #3962
  • fix: restore docstring cross-references lost in autoapi migration by @TaiSakuma in #3972
  • fix: race condition in record array CUDA kernel by @ianna in #3982
  • fix: ensure jax backend uses arrays on cpu only by @ikrommyd in #3990
  • fix: array attrs not being validated at creation and being of inconsistent type by @ikrommyd in #3996
  • perf: optimize CPU kernels and fix segfault when concatenating arrays with None values by @ianna in #3875
  • perf: restructure CUDA unit tests by @ianna in #3935

Other

  • chore: ignore jax deprecation warning in pytest by @ikrommyd in #3864
  • chore: Update Python version from 3.10 to 3.14 in ROOT workflow by @ianna in #3876
  • chore: pin ROOT to 6.36.06 in workflow by @ianna in #3886
  • chore: Increase coverage target from 20% to 98% by @ianna in #3897
  • chore: update pre-commit hooks by @pre-commit-ci[bot] in #3900
  • chore: delete nvidia channel from GPU ci as it is outdated by @ikrommyd in #3903
  • chore: upgrade hypothesis-awkward to >=0.10 by @TaiSakuma in #3936
  • chore: pin hypothesis-awkward to exact version by @TaiSakuma in #3942
  • chore: update pre-commit hooks by @pre-commit-ci[bot] in #3951
  • chore: prepare for numpy 2.5 compatibility by @ikrommyd in #3976
  • chore: update pre-commit hooks by @pre-commit-ci[bot] in #3993
  • chore: Use kw-only arguments in all cuda.compute invocations by @shwina in #3994
  • chore: bump hypothesis-awkward from 0.16.0 to 0.18.0 by @TaiSakuma in #3995
  • chore: update pre-commit hooks by @pre-commit-ci[bot] in #4076
  • chore(ci): harden ci config by @ariostas in #4075
  • chore(deps): bump aws-actions/configure-aws-credentials from 5 to 6 in the actions group by @dependabot[bot] in #3857
  • chore(deps): bump the actions group with 3 updates by @dependabot[bot] in #3899
  • chore(deps): bump pypa/cibuildwheel from 3.3 to 3.4 in the actions group by @dependabot[bot] in #3905
  • chore(deps): bump the actions group across 1 directory with 3 updates by @dependabot[bot] in #3940
  • chore(deps): bump hypothesis-awkward from 0.10.0 to 0.12.0 by @dependabot[bot] in #3945
  • chore(deps): bump hypothesis-awkward from 0.12.0 to 0.13.0 by @dependabot[bot] in #3952
  • chore(deps): bump pypa/gh-action-pypi-publish from 1.13.0 to 1.14.0 in the actions group by @dependabot[bot] in #3963
  • chore(deps): bump hypothesis-awkward from 0.13.0 to 0.14.0 by @dependabot[bot] in #3968
  • chore(deps): bump hypothesis-awkward from 0.14.0 to 0.15.0 by @dependabot[bot] in #3974
  • chore(deps): bump the actions group with 2 updates by @dependabot[bot] in #3979
  • chore(deps): bump hypothesis-awkward from 0.15.0 to 0.16.0 by @dependabot[bot] in #3984
  • chore(deps): bump the actions group with 2 updates by @dependabot[bot] in #3987
  • chore(deps): bump aws-actions/configure-aws-credentials from 6.1.1 to 6.1.3 in the actions group by @dependabot[bot] in #4077
  • ci: windows ARM build by @henryiii in #3855
  • ci: remove xfail from tests that work with cupy 14, pin cupy >= 14 in CI, and split cuda tests with virtual arrays in a separate CI task by @ikrommyd in #3890
  • ci: use self-hosted CI for codecov by @ariostas in #3901
  • ci: fix issues with self-hosted CI by @ariostas in #3933
  • ci: add dependabot config for hypothesis-awkward by @TaiSakuma in #3944
  • ci: use reusable workflows by @ariostas in #3969
  • ci: bump setup-uv to maintained tag scheme by @henryiii in #3970
  • ci: fix some issues with reusable workflows by @ariostas in #3983
  • ci: fix build wheels workflow by @ariostas in #4074
  • docs: Add an example argmax reducer using cccl by @maxymnaumchyk in #3763
  • docs: remove colour in intro cards by @agoose77 in #3926
  • docs: update ak.flatten docstring to Google style by @TaiSakuma in #3946
  • docs: replace prepare_docstrings.py with sphinx-autoapi by @TaiSakuma in #3948
  • docs: add :: to docstrings for proper RST code blocks by @TaiSakuma in #3965
  • docs: show private members in autoapi-generated docs by @TaiSakuma in #3966
  • docs: add summary lines to 13 structural operation docstrings by @TaiSakuma in #3986
  • test: introduce property-based testing with to_buffers/from_buffers roundtrip by @TaiSakuma in #3887
  • test: add property-based tests for ak.array_equal by @TaiSakuma in #3891
  • test: add cuda testing for ak.nan_to_num by @ikrommyd in #3892

New Contributors

Full Changelog: v2.9.0...v2.9.1