This release cuts the per-call Python overhead of the numba implementation and
adds an out= parameter for writing results into caller-provided buffers.
Faster calls
- Jitted fast-path entry: for the common case of 1-d integer indices and
1-d data, bounds check, output-size detection, buffer allocation and the
aggregation kernel now run inside a single compiled call — Python-level
validation and allocation are skipped entirely on this path. - Cheaper dispatch everywhere: all implementations resolve known function
names through a single fused dispatch table, output dtype and fill-value
plans are memoized across calls, and input validation relies on cheap
attribute checks instead of the full dtype machinery.
New feature
out=: the numbaaggregate(named functions) anduaggregateaccept
an output array of matching shape and dtype and gather the result into it
with a jitted kernel — useful to avoid allocations in hot loops.
Full Changelog: v0.12.2...v0.12.3