uproot 5.4.2__tar.gz → 5.5.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (293) hide show
  1. {uproot-5.4.2 → uproot-5.5.0}/.github/workflows/build-test.yml +2 -2
  2. {uproot-5.4.2 → uproot-5.5.0}/.readthedocs.yml +1 -1
  3. {uproot-5.4.2 → uproot-5.5.0}/PKG-INFO +3 -4
  4. {uproot-5.4.2 → uproot-5.5.0}/README.md +1 -1
  5. {uproot-5.4.2 → uproot-5.5.0}/pyproject.toml +1 -2
  6. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/_util.py +4 -1
  7. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/source/fsspec.py +1 -15
  8. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/version.py +2 -2
  9. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/writing/_cascadetree.py +10 -2
  10. {uproot-5.4.2 → uproot-5.5.0}/.all-contributorsrc +0 -0
  11. {uproot-5.4.2 → uproot-5.5.0}/.github/ISSUE_TEMPLATE/bug-report.md +0 -0
  12. {uproot-5.4.2 → uproot-5.5.0}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  13. {uproot-5.4.2 → uproot-5.5.0}/.github/ISSUE_TEMPLATE/documentation.md +0 -0
  14. {uproot-5.4.2 → uproot-5.5.0}/.github/ISSUE_TEMPLATE/feature-request.md +0 -0
  15. {uproot-5.4.2 → uproot-5.5.0}/.github/dependabot.yml +0 -0
  16. {uproot-5.4.2 → uproot-5.5.0}/.github/workflows/build-distributions.yml +0 -0
  17. {uproot-5.4.2 → uproot-5.5.0}/.github/workflows/deploy.yml +0 -0
  18. {uproot-5.4.2 → uproot-5.5.0}/.github/workflows/semantic-pr-title.yml +0 -0
  19. {uproot-5.4.2 → uproot-5.5.0}/.github/workflows/upload-nightly-wheels.yml +0 -0
  20. {uproot-5.4.2 → uproot-5.5.0}/.gitignore +0 -0
  21. {uproot-5.4.2 → uproot-5.5.0}/.pre-commit-config.yaml +0 -0
  22. {uproot-5.4.2 → uproot-5.5.0}/CITATION.cff +0 -0
  23. {uproot-5.4.2 → uproot-5.5.0}/LICENSE +0 -0
  24. {uproot-5.4.2 → uproot-5.5.0}/dev/example-objects.py +0 -0
  25. {uproot-5.4.2 → uproot-5.5.0}/dev/make-models.py +0 -0
  26. {uproot-5.4.2 → uproot-5.5.0}/docs-img/diagrams/abstraction-layers.png +0 -0
  27. {uproot-5.4.2 → uproot-5.5.0}/docs-img/diagrams/abstraction-layers.svg +0 -0
  28. {uproot-5.4.2 → uproot-5.5.0}/docs-img/diagrams/example-dask-graph.png +0 -0
  29. {uproot-5.4.2 → uproot-5.5.0}/docs-img/diagrams/uproot-awkward-timeline.png +0 -0
  30. {uproot-5.4.2 → uproot-5.5.0}/docs-img/diagrams/uproot-awkward-timeline.svg +0 -0
  31. {uproot-5.4.2 → uproot-5.5.0}/docs-img/logo/logo-300px-white.png +0 -0
  32. {uproot-5.4.2 → uproot-5.5.0}/docs-img/logo/logo-300px.png +0 -0
  33. {uproot-5.4.2 → uproot-5.5.0}/docs-img/logo/logo-600px.png +0 -0
  34. {uproot-5.4.2 → uproot-5.5.0}/docs-img/logo/logo.svg +0 -0
  35. {uproot-5.4.2 → uproot-5.5.0}/docs-img/photos/switcheroo.jpg +0 -0
  36. {uproot-5.4.2 → uproot-5.5.0}/docs-sphinx/_templates/breadcrumbs.html +0 -0
  37. {uproot-5.4.2 → uproot-5.5.0}/docs-sphinx/basic.rst +0 -0
  38. {uproot-5.4.2 → uproot-5.5.0}/docs-sphinx/conf.py +0 -0
  39. {uproot-5.4.2 → uproot-5.5.0}/docs-sphinx/index.rst +0 -0
  40. {uproot-5.4.2 → uproot-5.5.0}/docs-sphinx/make_changelog.py +0 -0
  41. {uproot-5.4.2 → uproot-5.5.0}/docs-sphinx/prepare_docstrings.py +0 -0
  42. {uproot-5.4.2 → uproot-5.5.0}/docs-sphinx/requirements.txt +0 -0
  43. {uproot-5.4.2 → uproot-5.5.0}/docs-sphinx/uproot3-to-4.rst +0 -0
  44. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/__init__.py +0 -0
  45. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/_awkwardforth.py +0 -0
  46. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/_dask.py +0 -0
  47. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behavior.py +0 -0
  48. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/RooCurve.py +0 -0
  49. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/RooHist.py +0 -0
  50. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/TAxis.py +0 -0
  51. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/TBranch.py +0 -0
  52. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/TBranchElement.py +0 -0
  53. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/TDatime.py +0 -0
  54. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/TGraph.py +0 -0
  55. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/TGraphAsymmErrors.py +0 -0
  56. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/TGraphErrors.py +0 -0
  57. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/TH1.py +0 -0
  58. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/TH2.py +0 -0
  59. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/TH2Poly.py +0 -0
  60. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/TH3.py +0 -0
  61. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/TParameter.py +0 -0
  62. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/TProfile.py +0 -0
  63. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/TProfile2D.py +0 -0
  64. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/TProfile3D.py +0 -0
  65. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/TTree.py +0 -0
  66. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/behaviors/__init__.py +0 -0
  67. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/cache.py +0 -0
  68. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/compression.py +0 -0
  69. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/const.py +0 -0
  70. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/containers.py +0 -0
  71. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/deserialization.py +0 -0
  72. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/dynamic.py +0 -0
  73. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/exceptions.py +0 -0
  74. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/extras.py +0 -0
  75. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/interpretation/__init__.py +0 -0
  76. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/interpretation/grouped.py +0 -0
  77. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/interpretation/identify.py +0 -0
  78. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/interpretation/jagged.py +0 -0
  79. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/interpretation/library.py +0 -0
  80. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/interpretation/numerical.py +0 -0
  81. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/interpretation/objects.py +0 -0
  82. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/interpretation/strings.py +0 -0
  83. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/language/__init__.py +0 -0
  84. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/language/python.py +0 -0
  85. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/model.py +0 -0
  86. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/RNTuple.py +0 -0
  87. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TArray.py +0 -0
  88. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TAtt.py +0 -0
  89. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TBasket.py +0 -0
  90. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TBranch.py +0 -0
  91. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TClonesArray.py +0 -0
  92. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TDatime.py +0 -0
  93. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TGraph.py +0 -0
  94. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TH.py +0 -0
  95. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/THashList.py +0 -0
  96. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TLeaf.py +0 -0
  97. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TList.py +0 -0
  98. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TMatrixT.py +0 -0
  99. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TNamed.py +0 -0
  100. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TObjArray.py +0 -0
  101. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TObjString.py +0 -0
  102. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TObject.py +0 -0
  103. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TRef.py +0 -0
  104. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TString.py +0 -0
  105. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TTable.py +0 -0
  106. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TTime.py +0 -0
  107. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/TTree.py +0 -0
  108. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/models/__init__.py +0 -0
  109. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/pyroot.py +0 -0
  110. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/reading.py +0 -0
  111. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/serialization.py +0 -0
  112. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/sink/__init__.py +0 -0
  113. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/sink/file.py +0 -0
  114. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/source/__init__.py +0 -0
  115. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/source/chunk.py +0 -0
  116. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/source/coalesce.py +0 -0
  117. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/source/cursor.py +0 -0
  118. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/source/file.py +0 -0
  119. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/source/futures.py +0 -0
  120. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/source/http.py +0 -0
  121. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/source/object.py +0 -0
  122. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/source/s3.py +0 -0
  123. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/source/xrootd.py +0 -0
  124. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/streamers.py +0 -0
  125. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/writing/__init__.py +0 -0
  126. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/writing/_cascade.py +0 -0
  127. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/writing/_cascadentuple.py +0 -0
  128. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/writing/_dask_write.py +0 -0
  129. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/writing/identify.py +0 -0
  130. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/writing/interpret.py +0 -0
  131. {uproot-5.4.2 → uproot-5.5.0}/src/uproot/writing/writable.py +0 -0
  132. {uproot-5.4.2 → uproot-5.5.0}/tests/__init__.py +0 -0
  133. {uproot-5.4.2 → uproot-5.5.0}/tests/conftest.py +0 -0
  134. {uproot-5.4.2 → uproot-5.5.0}/tests/samples/h_dynamic.pkl +0 -0
  135. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0001_source_class.py +0 -0
  136. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0006_notify_when_downloaded.py +0 -0
  137. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0007_single_chunk_interface.py +0 -0
  138. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0008_start_interpretation.py +0 -0
  139. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0009_nested_directories.py +0 -0
  140. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0010_start_streamers.py +0 -0
  141. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0011_generate_classes_from_streamers.py +0 -0
  142. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0013_rntuple_anchor.py +0 -0
  143. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0014_all_ttree_versions.py +0 -0
  144. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0016_interpretations.py +0 -0
  145. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0017_multi_basket_multi_branch_fetch.py +0 -0
  146. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0018_array_fetching_interface.py +0 -0
  147. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0022_number_of_branches.py +0 -0
  148. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0023_more_interpretations_1.py +0 -0
  149. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0023_ttree_versions.py +0 -0
  150. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0028_fallback_to_read_streamer.py +0 -0
  151. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0029_more_string_types.py +0 -0
  152. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0031_test_stl_containers.py +0 -0
  153. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0033_more_interpretations_2.py +0 -0
  154. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0034_generic_objects_in_ttrees.py +0 -0
  155. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0035_datatype_generality.py +0 -0
  156. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0038_memberwise_serialization.py +0 -0
  157. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0043_iterate_function.py +0 -0
  158. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0044_concatenate_function.py +0 -0
  159. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0046_histograms_bh_hist.py +0 -0
  160. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0053_parents_should_not_be_bases.py +0 -0
  161. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0058_detach_model_objects_from_files.py +0 -0
  162. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0066_fix_http_fallback_freeze.py +0 -0
  163. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0067_common_entry_offsets.py +0 -0
  164. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0081_dont_parse_colons.py +0 -0
  165. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0087_memberwise_splitting_not_implemented_messages.py +0 -0
  166. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0088_read_with_http.py +0 -0
  167. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0099_read_from_file_object.py +0 -0
  168. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0112_fix_pandas_with_cut.py +0 -0
  169. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0118_fix_name_fetch_again.py +0 -0
  170. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0123_atlas_issues.py +0 -0
  171. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0126_turn_unknown_emptyarrays_into_known_types.py +0 -0
  172. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0167_use_the_common_histogram_interface.py +0 -0
  173. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0172_allow_allocators_in_vector_typenames.py +0 -0
  174. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0173_empty_and_multiprocessing_bugs.py +0 -0
  175. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0182_complain_about_missing_files.py +0 -0
  176. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0194_fix_lost_cuts_in_iterate.py +0 -0
  177. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0220_contiguous_byte_ranges_in_http.py +0 -0
  178. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0228_read_TProfiles.py +0 -0
  179. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0240_read_TGraphAsymmErrors.py +0 -0
  180. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0278_specializations_for_TParameter.py +0 -0
  181. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0302_pickle.py +0 -0
  182. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0303_empty_jagged_array.py +0 -0
  183. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0320_start_working_on_ROOT_writing.py +0 -0
  184. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0322_writablefile_infrastructure.py +0 -0
  185. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0329_update_existing_root_files.py +0 -0
  186. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0335_empty_ttree_division_by_zero.py +0 -0
  187. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0341_manipulate_streamer_info.py +0 -0
  188. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0344_writabledirectory_can_read.py +0 -0
  189. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0345_bulk_copy_method.py +0 -0
  190. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0349_write_TObjString.py +0 -0
  191. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0350_read_RooCurve_RooHist.py +0 -0
  192. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0351_write_TList.py +0 -0
  193. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0352_write_THashList.py +0 -0
  194. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0384_move_behavior_of_and_fix_383.py +0 -0
  195. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0398_dimensions_in_leaflist.py +0 -0
  196. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0405_write_a_histogram.py +0 -0
  197. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0406_write_a_ttree.py +0 -0
  198. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0407_read_TDatime.py +0 -0
  199. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0412_write_multidimensional_numpy_to_ttree.py +0 -0
  200. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0414_write_jagged_arrays.py +0 -0
  201. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0416_writing_compressed_data.py +0 -0
  202. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0418_read_TTable.py +0 -0
  203. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0420_pyroot_uproot_interoperability.py +0 -0
  204. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0422_hist_integration.py +0 -0
  205. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0430_global_index_for_tuples_of_DataFrames.py +0 -0
  206. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0438_TClonesArray_is_not_AsGrouped.py +0 -0
  207. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0439_check_awkward_before_numpy.py +0 -0
  208. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0442_regular_TClonesArray.py +0 -0
  209. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0472_tstreamerinfo_for_ttree.py +0 -0
  210. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0475_remember_to_update_freesegments.py +0 -0
  211. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0484_manually_add_model_for_TMatrixTSym_double_.py +0 -0
  212. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0487_implement_asdtypeinplace.py +0 -0
  213. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0498_create_leaf_branch_in_extend.py +0 -0
  214. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0519_remove_memmap_copy.py +0 -0
  215. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0520_dynamic_classes_cant_be_abc_subclasses.py +0 -0
  216. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0569_fBits_is_4_bytes.py +0 -0
  217. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0576_unicode_in_names.py +0 -0
  218. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0578_dask_for_numpy.py +0 -0
  219. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0580_round_trip_for_no_flow_histograms.py +0 -0
  220. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0589_explicitly_interpret_RVec_type.py +0 -0
  221. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0603_dask_delayed_open.py +0 -0
  222. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0609_num_enteries_func.py +0 -0
  223. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0610_awkward_form.py +0 -0
  224. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0630_rntuple_basics.py +0 -0
  225. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0637_setup_tests_for_AwkwardForth.py +0 -0
  226. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0643_reading_vector_pair_TLorentzVector_int.py +0 -0
  227. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0651_implement_transformed_axis.py +0 -0
  228. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0652_dask_for_awkward.py +0 -0
  229. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0662_rntuple_stl_containers.py +0 -0
  230. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0692_fsspec_reading.py +0 -0
  231. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0692_fsspec_writing.py +0 -0
  232. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0700_dask_empty_arrays.py +0 -0
  233. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0705_rntuple_writing_metadata.py +0 -0
  234. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0750_avoid_empty_TBasket_issue.py +0 -0
  235. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0755_dask_awkward_column_projection.py +0 -0
  236. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0791_protect_uproot_project_columns_from_dask_node_names.py +0 -0
  237. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0798_DAOD_PHYSLITE.py +0 -0
  238. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0808_fix_awkward_form_for_AsStridedObjects.py +0 -0
  239. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0816_separate_AwkwardForth_machines_by_TBranch.py +0 -0
  240. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0832_ak_add_doc_should_also_add_to_typetracer.py +0 -0
  241. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0840_support_tleafG.py +0 -0
  242. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0841_fix_814.py +0 -0
  243. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0844_fix_delete_hist_from_root.py +0 -0
  244. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0852_fix_strided_interp_extra_offsets.py +0 -0
  245. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0870_writing_arrays_of_type_unknown_fix_822.py +0 -0
  246. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0876_uproot_dask_blind_steps.py +0 -0
  247. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0886_fix_awkward_form_breadcrumbs.py +0 -0
  248. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0910_fix_906_members_non_numerical_branches.py +0 -0
  249. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0911_fix_interp_array_non_numerical_objs_issue_880.py +0 -0
  250. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0912_fix_pandas_and_double_nested_vectors_issue_885.py +0 -0
  251. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0916_read_from_s3.py +0 -0
  252. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0927_dont_assume_uproot_in_global_scope_in_TPython_Eval.py +0 -0
  253. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0930_expressions_in_pandas.py +0 -0
  254. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0940_feat_add_TLeafC_string_support.py +0 -0
  255. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0962_RNTuple_update.py +0 -0
  256. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0965_inverted_axes_variances_hist_888.py +0 -0
  257. {uproot-5.4.2 → uproot-5.5.0}/tests/test_0976_path_object_split.py +0 -0
  258. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1000-write-TProfiles.py +0 -0
  259. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1043_const_std_string.py +0 -0
  260. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1058_dask_awkward_report.py +0 -0
  261. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1063_dask_distributed.py +0 -0
  262. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1070_pandas_dataframe_building_performance_fix.py +0 -0
  263. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1085_dask_write.py +0 -0
  264. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1102_any_locks_in_models_must_be_transient.py +0 -0
  265. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1114_fix_attempt_to_concatenate_numpy_with_awkward.py +0 -0
  266. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1120_check_decompression_executor_pass_for_dask.py +0 -0
  267. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1127_fix_allow_colon_in_key_names.py +0 -0
  268. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1128_TGraph_writing.py +0 -0
  269. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1146_split_ranges_for_large_files_over_http.py +0 -0
  270. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1154_classof_using_relative_path.py +0 -0
  271. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1160_std_string_in_TDirectory.py +0 -0
  272. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1180_read_free_floating_vector_issue_1179.py +0 -0
  273. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1181_support_for_stl_list.py +0 -0
  274. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1182_add_support_for_bitset.py +0 -0
  275. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1183_ttime_custom.py +0 -0
  276. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1186_dtype_might_raise_ValueError.py +0 -0
  277. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1189_dask_failing_on_duplicate_keys.py +0 -0
  278. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1191_rntuple_fixes.py +0 -0
  279. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1198_coalesce.py +0 -0
  280. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1207_fix_title_of_TBranch_with_counter.py +0 -0
  281. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1212_dont_let_update_mess_up_file_version.py +0 -0
  282. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1221_AwkwardForth_bug.py +0 -0
  283. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1223_more_rntuple_types.py +0 -0
  284. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1250_rntuple_improvements.py +0 -0
  285. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1254_test_threadpool_executor_for_dask.py +0 -0
  286. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1264_write_NumPy_array_of_strings.py +0 -0
  287. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1275_fix_TStreamerLoop_code_generation.py +0 -0
  288. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1285_rntuple_multicluster_concatenation.py +0 -0
  289. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1318_dont_compare_big_endian_in_awkward.py +0 -0
  290. {uproot-5.4.2 → uproot-5.5.0}/tests/test_1321_pandas_changed_api_again.py +0 -0
  291. {uproot-5.4.2 → uproot-5.5.0}/tests-wasm/__init__.py +0 -0
  292. {uproot-5.4.2 → uproot-5.5.0}/tests-wasm/test_1272_basic_functionality.py +0 -0
  293. {uproot-5.4.2 → uproot-5.5.0}/tests-wasm/utils.py +0 -0
@@ -16,7 +16,7 @@ jobs:
16
16
  fail-fast: false
17
17
  matrix:
18
18
  platform: [windows-latest, macos-latest, ubuntu-latest]
19
- python-version: ['3.8', '3.9', '3.10', '3.11', '3.12']
19
+ python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
20
20
 
21
21
  runs-on: ${{ matrix.platform }}
22
22
  timeout-minutes: 30
@@ -41,7 +41,7 @@ jobs:
41
41
  run: python -c "import sys; assert '.'.join(str(s) for s in sys.version_info[:2]) == '${{ matrix.python-version }}', f'{version} incorrect!'"
42
42
 
43
43
  - name: Install ROOT
44
- if: matrix.python-version == 3.8 && runner.os != 'macOS' && runner.os != 'Windows'
44
+ if: matrix.python-version == 3.9 && runner.os != 'macOS' && runner.os != 'Windows'
45
45
  run: |
46
46
  conda env list
47
47
  mamba install root
@@ -6,7 +6,7 @@ sphinx:
6
6
  build:
7
7
  os: ubuntu-22.04
8
8
  tools:
9
- python: '3.8'
9
+ python: '3.9'
10
10
 
11
11
  python:
12
12
  install:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: uproot
3
- Version: 5.4.2
3
+ Version: 5.5.0
4
4
  Summary: ROOT I/O in pure Python and NumPy.
5
5
  Project-URL: Download, https://github.com/scikit-hep/uproot5/releases
6
6
  Project-URL: Homepage, https://github.com/scikit-hep/uproot5
@@ -18,7 +18,6 @@ Classifier: Operating System :: Unix
18
18
  Classifier: Programming Language :: Python
19
19
  Classifier: Programming Language :: Python :: 3
20
20
  Classifier: Programming Language :: Python :: 3 :: Only
21
- Classifier: Programming Language :: Python :: 3.8
22
21
  Classifier: Programming Language :: Python :: 3.9
23
22
  Classifier: Programming Language :: Python :: 3.10
24
23
  Classifier: Programming Language :: Python :: 3.11
@@ -30,7 +29,7 @@ Classifier: Topic :: Scientific/Engineering :: Mathematics
30
29
  Classifier: Topic :: Scientific/Engineering :: Physics
31
30
  Classifier: Topic :: Software Development
32
31
  Classifier: Topic :: Utilities
33
- Requires-Python: >=3.8
32
+ Requires-Python: >=3.9
34
33
  Requires-Dist: awkward>=2.4.6
35
34
  Requires-Dist: cramjam>=2.5.0
36
35
  Requires-Dist: fsspec
@@ -77,7 +76,7 @@ Description-Content-Type: text/markdown
77
76
 
78
77
  [![PyPI version](https://badge.fury.io/py/uproot.svg)](https://pypi.org/project/uproot)
79
78
  [![Conda-Forge](https://img.shields.io/conda/vn/conda-forge/uproot)](https://github.com/conda-forge/uproot-feedstock)
80
- [![Python 3.8‒3.12](https://img.shields.io/badge/python-3.8%E2%80%923.12-blue)](https://www.python.org)
79
+ [![Python 3.9‒3.13](https://img.shields.io/badge/python-3.9%E2%80%923.13-blue)](https://www.python.org)
81
80
  [![BSD-3 Clause License](https://img.shields.io/badge/license-BSD%203--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)
82
81
  [![Continuous integration tests](https://github.com/scikit-hep/uproot5/actions/workflows/build-test.yml/badge.svg)](https://github.com/scikit-hep/uproot5/actions)
83
82
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  [![PyPI version](https://badge.fury.io/py/uproot.svg)](https://pypi.org/project/uproot)
4
4
  [![Conda-Forge](https://img.shields.io/conda/vn/conda-forge/uproot)](https://github.com/conda-forge/uproot-feedstock)
5
- [![Python 3.8‒3.12](https://img.shields.io/badge/python-3.8%E2%80%923.12-blue)](https://www.python.org)
5
+ [![Python 3.9‒3.13](https://img.shields.io/badge/python-3.9%E2%80%923.13-blue)](https://www.python.org)
6
6
  [![BSD-3 Clause License](https://img.shields.io/badge/license-BSD%203--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)
7
7
  [![Continuous integration tests](https://github.com/scikit-hep/uproot5/actions/workflows/build-test.yml/badge.svg)](https://github.com/scikit-hep/uproot5/actions)
8
8
 
@@ -24,7 +24,6 @@ classifiers = [
24
24
  "Programming Language :: Python",
25
25
  "Programming Language :: Python :: 3",
26
26
  "Programming Language :: Python :: 3 :: Only",
27
- "Programming Language :: Python :: 3.8",
28
27
  "Programming Language :: Python :: 3.9",
29
28
  "Programming Language :: Python :: 3.10",
30
29
  "Programming Language :: Python :: 3.11",
@@ -53,7 +52,7 @@ dynamic = [
53
52
  license = "BSD-3-Clause"
54
53
  name = "uproot"
55
54
  readme = "README.md"
56
- requires-python = ">=3.8"
55
+ requires-python = ">=3.9"
57
56
 
58
57
  [project.optional-dependencies]
59
58
  dev = [
@@ -91,7 +91,10 @@ def ensure_numpy(array, types=(numpy.bool_, numpy.integer, numpy.floating)):
91
91
  else:
92
92
  try:
93
93
  out = numpy.asarray(array)
94
- except (ValueError, numpy.VisibleDeprecationWarning) as err:
94
+ except (
95
+ ValueError,
96
+ getattr(numpy, "exceptions", numpy).VisibleDeprecationWarning,
97
+ ) as err:
95
98
  raise TypeError("cannot be converted to a NumPy array") from err
96
99
  if not issubclass(out.dtype.type, types):
97
100
  raise TypeError(f"cannot be converted to a NumPy array of type {types}")
@@ -133,24 +133,10 @@ class FSSpecSource(uproot.source.chunk.Source):
133
133
  self._num_requested_chunks += len(ranges)
134
134
  self._num_requested_bytes += sum(stop - start for start, stop in ranges)
135
135
 
136
- try:
137
- # not available in python 3.8
138
- to_thread = asyncio.to_thread
139
- except AttributeError:
140
- import contextvars
141
- import functools
142
-
143
- async def to_thread(func, /, *args, **kwargs):
144
- loop = asyncio.get_running_loop()
145
- ctx = contextvars.copy_context()
146
- func_call = functools.partial(ctx.run, func, *args, **kwargs)
147
- return await loop.run_in_executor(None, func_call)
148
-
149
136
  async def async_wrapper_thread(blocking_func, *args, **kwargs):
150
137
  if not callable(blocking_func):
151
138
  raise TypeError("blocking_func must be callable")
152
- # TODO: when python 3.8 is dropped, use `asyncio.to_thread` instead (also remove the try/except block above)
153
- return await to_thread(blocking_func, *args, **kwargs)
139
+ return await asyncio.to_thread(blocking_func, *args, **kwargs)
154
140
 
155
141
  def submit(request_ranges: list[tuple[int, int]]):
156
142
  paths = [self._file_path] * len(request_ranges)
@@ -12,5 +12,5 @@ __version__: str
12
12
  __version_tuple__: VERSION_TUPLE
13
13
  version_tuple: VERSION_TUPLE
14
14
 
15
- __version__ = version = '5.4.2'
16
- __version_tuple__ = version_tuple = (5, 4, 2)
15
+ __version__ = version = '5.5.0'
16
+ __version_tuple__ = version_tuple = (5, 5, 0)
@@ -548,12 +548,20 @@ class Tree:
548
548
  try:
549
549
  with warnings.catch_warnings():
550
550
  warnings.simplefilter(
551
- "error", category=numpy.VisibleDeprecationWarning
551
+ "error",
552
+ category=getattr(
553
+ numpy, "exceptions", numpy
554
+ ).VisibleDeprecationWarning,
552
555
  )
553
556
  v = numpy.array(v) # noqa: PLW2901 (overwriting v)
554
557
  if v.dtype == numpy.dtype("O"):
555
558
  raise Exception
556
- except (numpy.VisibleDeprecationWarning, Exception):
559
+ except (
560
+ getattr(
561
+ numpy, "exceptions", numpy
562
+ ).VisibleDeprecationWarning,
563
+ Exception,
564
+ ):
557
565
  try:
558
566
  awkward = uproot.extras.awkward()
559
567
  except ModuleNotFoundError as err:
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes