Release history

Note: Releases in the 4.3.x series were developed in parallel with v5.0 on a separate branch and are not included here. See the list of 4.x releases for details.

Unreleased (main branch on GitHub)

  • PR #1197: chore: update pre-commit hooks.

Release v5.3.3

Thursday, 11 April, 2024 (tar, zip)

This is the first release of Awkward Array that is compatible with NumPy 2.0.

## New features

## Bug-fixes and performance

## Other

Full Changelog: https://github.com/scikit-hep/uproot5/compare/v5.3.2…v5.3.3

  • PR #1195: fix: update for NumPy 2.0.

  • PR #1192: chore: update pre-commit hooks.

  • PR #1189: fix: dask failing for TTrees with duplicate TBranch names.

  • PR #1182: feat: add support for std::bitset

Release v5.3.2

Tuesday, 26 March, 2024 (tar, zip)

## New features

## Bug-fixes and performance

## Other

## New Contributors * @matthewfeickert made their first contribution in https://github.com/scikit-hep/uproot5/pull/1141 * @milesgranger made their first contribution in https://github.com/scikit-hep/uproot5/pull/1166 * @bojohnson5 made their first contribution in https://github.com/scikit-hep/uproot5/pull/1172 * @ariostas made their first contribution in https://github.com/scikit-hep/uproot5/pull/1115 * @djw9497 made their first contribution in https://github.com/scikit-hep/uproot5/pull/1186

Full Changelog: https://github.com/scikit-hep/uproot5/compare/v5.3.1…v5.3.2

  • PR #1186: fix: np.dtype(branch_type) might raise ValueError, not just TypeError.

  • PR #1184: chore: update pre-commit hooks.

  • PR #1187: docs: add djw9497 as a contributor for code.

  • PR #1183: feat: add support for TTime.

  • PR #1181: feat: add support for std::list.

  • PR #1180: feat: add support for reading free floating std::vector. (also: #1160)

  • PR #1169: chore: update pre-commit hooks.

  • PR #1115: feat: add support for RNTuple RC2.

Release v5.3.2rc1

Thursday, 21 March, 2024 (tar, zip)

The main purpose of this release is to make sure that the deployment machinery still works, now that the PYPI_PASSWORD had to be replaced.

Edit: it was successful: https://pypi.org/project/uproot/5.3.2rc1/

## New features

## Bug-fixes and performance

## Other

## New Contributors * @matthewfeickert made their first contribution in https://github.com/scikit-hep/uproot5/pull/1141 * @milesgranger made their first contribution in https://github.com/scikit-hep/uproot5/pull/1166 * @bojohnson5 made their first contribution in https://github.com/scikit-hep/uproot5/pull/1172

Full Changelog: https://github.com/scikit-hep/uproot5/compare/v5.3.1…v5.3.2rc1

  • PR #1162: Use cat_ranges in fsspec source.

  • PR #1172: feat: add __array__ method to ROOTRVec, STLVector, and STLSet.

  • PR #1166: fix: change expected xz/lzma module location on cramjam.

  • PR #1152: tests: allow aiohttp to leak HTTPS connections.

  • PR #1178: test: is the leading slash breaking Windows tests?

  • PR #1176: docs: add milesgranger as a contributor for code.

  • PR #1174: docs: add bojohnson5 as a contributor for code.

  • PR #1158: feat: Add extras for optional remote access dependencies.

  • PR #1141: ci: Add upload nightly wheel and dist build workflows.

  • PR #1163: fix: add new Executor arguments to ImplementsFormMappingInfo protocol.

  • PR #1154: feat: allow paths in classname_of, streamer_of, class_of and title_of.

  • PR #1161: feat: add option to use deflate lib.

  • PR #1160: feat: special case for reading std::string from a TDirectory.

  • PR #1156: feat: Record source performance counters in uproot.dask report.

  • PR #1146: feat: split ranges for large files read over http.

  • PR #1149: chore: drop dep that never is valid.

Release v5.3.1

Friday, 23 February, 2024 (tar, zip)

This is just to loosen the version constraint on cramjam, so that an Uproot 5.3.x can go into conda-forge without waiting for cramjam 2.8.1.

## New Features

_(none!)_

## Bug-fixes and performance

_(none!)_

## Other

Full Changelog: https://github.com/scikit-hep/uproot5/compare/v5.3.0…v5.3.1

  • PR #1145: chore: loosen cramjam version constraint to >=2.5.0.

Release v5.3.0rc2

Thursday, 22 February, 2024 (tar, zip)

## New features

## Bug-fixes and performance

## Other

## New Contributors * @YSelfTool made their first contribution in https://github.com/scikit-hep/uproot5/pull/1128

Full Changelog: https://github.com/scikit-hep/uproot5/compare/v5.3.0rc1…v5.3.0rc2

  • PR #1133: chore: update pre-commit hooks.

  • PR #1120: feat: expose decompression_executor and interpretation_executor in uproot dask.

  • PR #1131: docs: add YSelfTool as a contributor for code.

  • PR #1128: fix: allow writing generic UHI-compatible histograms.

  • PR #1127: fix: allow colon in key names.

Release v5.3.0rc1

Wednesday, 14 February, 2024 (tar, zip)

The main new feature (and motivation for a new minor release, 5.3.0), is that Uproot now strictly depends on the [cramjam](https://pypi.org/project/cramjam/) library for compression, rather than optionally depending on lz4, xxhash, and zstd (prompting users to install them when needed, rather than upfront when Uproot is installed).

## New features

## Bug-fixes and performance

## Other

Full Changelog: https://github.com/scikit-hep/uproot5/compare/v5.2.2…v5.3.0rc1

  • PR #1119: chore: update pre-commit hooks.

  • PR #1090: feat: use cramjam for lzma, lz4, and zstd, opt-in use of isal for zlib.

  • PR #1123: fix: test suite creates files not in tmp_path.

  • PR #1114: fix: attempt to concatenate numpy and awkward arrays.

  • PR #1122: fix: fix dask_write docs.

  • PR #1118: fix: missing ‘_fh’ and ‘_file’ attributes after unpickling.

  • PR #1110: chore: update pre-commit hooks.

Release v5.2.2

Friday, 26 January, 2024 (tar, zip)

## New features

## Bug-fixes and performance

## Other

## New Contributors * @zbilodea made their first contribution in https://github.com/scikit-hep/uproot5/pull/1085

Full Changelog: https://github.com/scikit-hep/uproot5/compare/v5.2.1…v5.2.2

  • PR #1105: adding dask_write to toc-tree.

  • PR #1088: fix: recorrds -> records.

  • PR #1104: fix: better path handling in uproot.dask_write.

  • PR #1092: chore: update pre-commit hooks.

  • PR #1103: fix: any Locks in Models must be transient.

  • PR #1100: fix: state of context[“forth”] after an entire TBasket is incomplete.

  • PR #1094: feat: allow user to supply tuple of allowed exceptions.

Earlier releases

Uproot versions 1 through 3 were in a different GitHub repository: scikit-hep/uproot3.

This was to allow users to transition from Awkward Array 0.x and Uproot 3.x, which had different interfaces (especially Awkward Array). The transition completed on December 1, 2020.

https://raw.githubusercontent.com/scikit-hep/uproot5/main/docs-img/diagrams/uproot-awkward-timeline.png