Band names for arrow exported images#9099
Conversation
|
@paleolimbot am I right to say array metadata was not really designed to pass application metadata? What are your thoughts on what's being done here? |
e768bbf to
28c7645
Compare
14ac76c to
7d2abbd
Compare
This metadata is available in nanoarrow, but not pyarrow or arro3
|
Cool! It's true that field metadata at anything other the top-level struct has a medium chance of getting propagated through various Arrow operations. If you used the two metadata fields Feel free to ping on anything if you have a question! |
ce3c7c9 to
9e415c7
Compare
| img2 = img.copy() | ||
| px = img2.load() |
There was a problem hiding this comment.
| img2 = img.copy() | |
| px = img2.load() | |
| px = img.load() |
Or are you using copy() because you're testing that the data in img2 is still correct after img is no longer used?
There was a problem hiding this comment.
This is to ensure we haven't over freed the memory, as we're refcounting on the arrow usages.
Co-authored-by: Andrew Murray <3112309+radarhere@users.noreply.github.com>
This PR contains the following updates: | Package | Change | Age | Confidence | |---|---|---|---| | [pillow](https://github.com/python-pillow/Pillow) ([changelog](https://github.com/python-pillow/Pillow/releases)) | `<12.0.0,>=11.0.0` -> `<12.0.1,>=12.0.0` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>python-pillow/Pillow (pillow)</summary> ### [`v12.0.0`](https://github.com/python-pillow/Pillow/releases/tag/12.0.0) [Compare Source](python-pillow/Pillow@11.3.0...12.0.0) <https://pillow.readthedocs.io/en/stable/releasenotes/12.0.0.html> #### Removals - Remove support for FreeType <= 2.9.0 [#​9159](python-pillow/Pillow#9159) \[[@​radarhere](https://github.com/radarhere)] - Drop support for Python 3.9 [#​9119](python-pillow/Pillow#9119) \[[@​hugovk](https://github.com/hugovk)] - Remove deprecations for Pillow 12.0.0 [#​9053](python-pillow/Pillow#9053) \[[@​radarhere](https://github.com/radarhere)] #### Deprecations - Deprecate Image.\_show [#​9186](python-pillow/Pillow#9186) \[[@​radarhere](https://github.com/radarhere)] - Deprecate ImageCmsProfile product\_name and product\_info [#​8995](python-pillow/Pillow#8995) \[[@​lukegb](https://github.com/lukegb)] #### Documentation - ImagingHistogramInstance can use two bands [#​9251](python-pillow/Pillow#9251) \[[@​radarhere](https://github.com/radarhere)] - Update 12.0.0 release notes [#​9247](python-pillow/Pillow#9247) \[[@​hugovk](https://github.com/hugovk)] - Added ImageDraw alpha channel examples [#​9201](python-pillow/Pillow#9201) \[[@​radarhere](https://github.com/radarhere)] - Update Python version [#​9230](python-pillow/Pillow#9230) \[[@​radarhere](https://github.com/radarhere)] - Updated macOS tested Pillow versions [#​9209](python-pillow/Pillow#9209) \[[@​radarhere](https://github.com/radarhere)] - Add GitHub profile link to release notes [#​9197](python-pillow/Pillow#9197) \[[@​radarhere](https://github.com/radarhere)] - Split versionadded info [#​9190](python-pillow/Pillow#9190) \[[@​radarhere](https://github.com/radarhere)] - Document ImageFile.MAXBLOCK [#​9163](python-pillow/Pillow#9163) \[[@​radarhere](https://github.com/radarhere)] - Updated macOS version in CI targets [#​9157](python-pillow/Pillow#9157) \[[@​radarhere](https://github.com/radarhere)] - Fix typos [#​9135](python-pillow/Pillow#9135) \[[@​radarhere](https://github.com/radarhere)] - Added "Colors" to concepts [#​9067](python-pillow/Pillow#9067) \[[@​radarhere](https://github.com/radarhere)] - Update macOS tested Pillow versions [#​9068](python-pillow/Pillow#9068) \[[@​radarhere](https://github.com/radarhere)] - Thanks, folks! [#​9056](python-pillow/Pillow#9056) \[[@​aclark4life](https://github.com/aclark4life)] - Setup nit: "fork" should be lowercased [#​9055](python-pillow/Pillow#9055) \[[@​aclark4life](https://github.com/aclark4life)] #### Dependencies - Update dependency cibuildwheel to v3.2.1 [#​9246](python-pillow/Pillow#9246) \[@​[renovate\[bot\]](https://github.com/apps/renovate)] - \[pre-commit.ci] pre-commit autoupdate [#​9233](python-pillow/Pillow#9233) \[@​[pre-commit-ci\[bot\]](https://github.com/apps/pre-commit-ci)] - Update harfbuzz to 12.1.0 [#​9218](python-pillow/Pillow#9218) \[[@​radarhere](https://github.com/radarhere)] - Update libtiff to 4.7.1 [#​9222](python-pillow/Pillow#9222) \[[@​radarhere](https://github.com/radarhere)] - Update FreeType to 2.14.1 on macOS and Linux wheels [#​9217](python-pillow/Pillow#9217) \[[@​radarhere](https://github.com/radarhere)] - Update dependency cibuildwheel to v3.2.0 [#​9219](python-pillow/Pillow#9219) \[@​[renovate\[bot\]](https://github.com/apps/renovate)] - Update Ghostscript to 10.6.0 [#​9202](python-pillow/Pillow#9202) \[[@​radarhere](https://github.com/radarhere)] - Update openjpeg to 2.5.4 [#​9215](python-pillow/Pillow#9215) \[[@​radarhere](https://github.com/radarhere)] - Update harfbuzz to 11.5.0 [#​9203](python-pillow/Pillow#9203) \[[@​radarhere](https://github.com/radarhere)] - Update dependency mypy to v1.18.2 [#​9213](python-pillow/Pillow#9213) \[@​[renovate\[bot\]](https://github.com/apps/renovate)] - Update dependency mypy to v1.18.1 [#​9207](python-pillow/Pillow#9207) \[@​[renovate\[bot\]](https://github.com/apps/renovate)] - Update github-actions [#​9194](python-pillow/Pillow#9194) \[@​[renovate\[bot\]](https://github.com/apps/renovate)] - Updated harfbuzz to 11.4.5 [#​9150](python-pillow/Pillow#9150) \[[@​radarhere](https://github.com/radarhere)] - Update zlib-ng to 2.2.5 [#​9140](python-pillow/Pillow#9140) \[[@​radarhere](https://github.com/radarhere)] - Update raqm to 0.10.3 [#​9137](python-pillow/Pillow#9137) \[[@​radarhere](https://github.com/radarhere)] - Update libjpeg-turbo to 3.1.2 [#​9188](python-pillow/Pillow#9188) \[[@​radarhere](https://github.com/radarhere)] - \[pre-commit.ci] pre-commit autoupdate [#​9180](python-pillow/Pillow#9180) \[@​[pre-commit-ci\[bot\]](https://github.com/apps/pre-commit-ci)] - Update dependency cibuildwheel to v3.1.4 [#​9164](python-pillow/Pillow#9164) \[@​[renovate\[bot\]](https://github.com/apps/renovate)] - Update actions/checkout action to v5 [#​9156](python-pillow/Pillow#9156) \[@​[renovate\[bot\]](https://github.com/apps/renovate)] - Update actions/download-artifact action to v5 [#​9141](python-pillow/Pillow#9141) \[@​[renovate\[bot\]](https://github.com/apps/renovate)] - Updated harfbuzz to 11.3.3 [#​9103](python-pillow/Pillow#9103) \[[@​radarhere](https://github.com/radarhere)] - \[pre-commit.ci] pre-commit autoupdate [#​9131](python-pillow/Pillow#9131) \[@​[pre-commit-ci\[bot\]](https://github.com/apps/pre-commit-ci)] - Updated libimagequant to 4.4.0 [#​9074](python-pillow/Pillow#9074) \[[@​radarhere](https://github.com/radarhere)] - Update dependency mypy to v1.17.1 [#​9130](python-pillow/Pillow#9130) \[@​[renovate\[bot\]](https://github.com/apps/renovate)] - Update dependency cibuildwheel to v3.1.3 [#​9129](python-pillow/Pillow#9129) \[@​[renovate\[bot\]](https://github.com/apps/renovate)] - Update dependency cibuildwheel to v3.1.2 [#​9118](python-pillow/Pillow#9118) \[@​[renovate\[bot\]](https://github.com/apps/renovate)] - Updated libpng to 1.6.50 [#​9058](python-pillow/Pillow#9058) \[[@​radarhere](https://github.com/radarhere)] - Update cygwin/cygwin-install-action action to v6 [#​9108](python-pillow/Pillow#9108) \[@​[renovate\[bot\]](https://github.com/apps/renovate)] - Update dependency mypy to v1.17.0 [#​9092](python-pillow/Pillow#9092) \[@​[renovate\[bot\]](https://github.com/apps/renovate)] - Updated libwebp to 1.6.0 [#​9082](python-pillow/Pillow#9082) \[[@​radarhere](https://github.com/radarhere)] - Update dependency cibuildwheel to v3.0.1 [#​9075](python-pillow/Pillow#9075) \[@​[renovate\[bot\]](https://github.com/apps/renovate)] - \[pre-commit.ci] pre-commit autoupdate [#​9073](python-pillow/Pillow#9073) \[@​[pre-commit-ci\[bot\]](https://github.com/apps/pre-commit-ci)] #### Testing - Check return types [#​9045](python-pillow/Pillow#9045) \[[@​radarhere](https://github.com/radarhere)] - Upgrade from macos-13 [#​9212](python-pillow/Pillow#9212) \[[@​radarhere](https://github.com/radarhere)] - Wheels CI: Check number of expected dists [#​9239](python-pillow/Pillow#9239) \[[@​hugovk](https://github.com/hugovk)] - Assert image type [#​8845](python-pillow/Pillow#8845) \[[@​radarhere](https://github.com/radarhere)] - Test GD transparency [#​9196](python-pillow/Pillow#9196) \[[@​radarhere](https://github.com/radarhere)] - Test mode when saving PPM images [#​9195](python-pillow/Pillow#9195) \[[@​radarhere](https://github.com/radarhere)] - Test unsupported BMP bitfields layout [#​9193](python-pillow/Pillow#9193) \[[@​radarhere](https://github.com/radarhere)] - Update Ghostscript to 10.6.0 [#​9202](python-pillow/Pillow#9202) \[[@​radarhere](https://github.com/radarhere)] - Use monkeypatch [#​9192](python-pillow/Pillow#9192) \[[@​radarhere](https://github.com/radarhere)] - Always check XMLPacket value [#​9113](python-pillow/Pillow#9113) \[[@​radarhere](https://github.com/radarhere)] - Rename variable to not shadow import [#​9124](python-pillow/Pillow#9124) \[[@​radarhere](https://github.com/radarhere)] - Removed unused code [#​9182](python-pillow/Pillow#9182) \[[@​radarhere](https://github.com/radarhere)] - Add has\_feature\_version helper [#​9172](python-pillow/Pillow#9172) \[[@​radarhere](https://github.com/radarhere)] - Replace print with assert [#​9171](python-pillow/Pillow#9171) \[[@​radarhere](https://github.com/radarhere)] - Add Debian 13 Trixie [#​9147](python-pillow/Pillow#9147) \[[@​hugovk](https://github.com/hugovk)] - Do not import from Tests directory in checks [#​9143](python-pillow/Pillow#9143) \[[@​radarhere](https://github.com/radarhere)] - Improve features test coverage [#​9077](python-pillow/Pillow#9077) \[[@​radarhere](https://github.com/radarhere)] - Remove WebP feature handling [#​9096](python-pillow/Pillow#9096) \[[@​radarhere](https://github.com/radarhere)] - Update for pyroma 5.0 [#​9093](python-pillow/Pillow#9093) \[[@​radarhere](https://github.com/radarhere)] - Improve WmfImagePlugin test coverage [#​9090](python-pillow/Pillow#9090) \[[@​radarhere](https://github.com/radarhere)] - Improve DdsImagePlugin test coverage [#​9091](python-pillow/Pillow#9091) \[[@​radarhere](https://github.com/radarhere)] - Improve ImageMath test coverage [#​9087](python-pillow/Pillow#9087) \[[@​radarhere](https://github.com/radarhere)] - Fix unclosed file warning [#​9065](python-pillow/Pillow#9065) \[[@​radarhere](https://github.com/radarhere)] - Pyroma now supports PEP 639 [#​9064](python-pillow/Pillow#9064) \[[@​radarhere](https://github.com/radarhere)] #### Type hints - Install arro3 dependencies when type checking [#​9254](python-pillow/Pillow#9254) \[[@​radarhere](https://github.com/radarhere)] - Check return types [#​9045](python-pillow/Pillow#9045) \[[@​radarhere](https://github.com/radarhere)] - Assert image type [#​8845](python-pillow/Pillow#8845) \[[@​radarhere](https://github.com/radarhere)] - Move imports into TYPE\_CHECKING [#​9123](python-pillow/Pillow#9123) \[[@​radarhere](https://github.com/radarhere)] - Remove support for NumPy 1.20 when type checking [#​9125](python-pillow/Pillow#9125) \[[@​radarhere](https://github.com/radarhere)] #### Other changes - Use macos-14 for iOS arm64 simulator [#​9258](python-pillow/Pillow#9258) \[[@​hugovk](https://github.com/hugovk)] - Use enums for Modes and RawModes in C [#​9256](python-pillow/Pillow#9256) \[[@​radarhere](https://github.com/radarhere)] - Add ImageText [#​9098](python-pillow/Pillow#9098) \[[@​radarhere](https://github.com/radarhere)] - Shift bits before making value negative [#​9255](python-pillow/Pillow#9255) \[[@​radarhere](https://github.com/radarhere)] - Support saving variable length rational TIFF tags by default [#​9241](python-pillow/Pillow#9241) \[[@​radarhere](https://github.com/radarhere)] - Added four private SGI TIFF tags [#​9245](python-pillow/Pillow#9245) \[[@​radarhere](https://github.com/radarhere)] - Band names for arrow exported images [#​9099](python-pillow/Pillow#9099) \[[@​wiredfool](https://github.com/wiredfool)] - Use macos-latest for iOS arm64 simulator [#​9250](python-pillow/Pillow#9250) \[[@​radarhere](https://github.com/radarhere)] - If pasting an image onto itself at a lower position, copy from bottom [#​8882](python-pillow/Pillow#8882) \[[@​radarhere](https://github.com/radarhere)] - Removed unused access for I;32L and I;32B [#​9238](python-pillow/Pillow#9238) \[[@​radarhere](https://github.com/radarhere)] - Corrected scientific-python-nightly-wheels pattern [#​9252](python-pillow/Pillow#9252) \[[@​radarhere](https://github.com/radarhere)] - Run sdist when scheduled, but do not upload to scientific-python-nightly-wheels index [#​9248](python-pillow/Pillow#9248) \[[@​radarhere](https://github.com/radarhere)] - Removed shebang lines and executable flags [#​9179](python-pillow/Pillow#9179) \[[@​radarhere](https://github.com/radarhere)] - Remove Pillow version from PDF comment [#​9176](python-pillow/Pillow#9176) \[[@​radarhere](https://github.com/radarhere)] - Support saving variable length rational TIFF tags [#​9111](python-pillow/Pillow#9111) \[[@​radarhere](https://github.com/radarhere)] - Build Python 3.14 on macOS 10.15 [#​9234](python-pillow/Pillow#9234) \[[@​radarhere](https://github.com/radarhere)] - Test largest CUR cursor [#​9191](python-pillow/Pillow#9191) \[[@​radarhere](https://github.com/radarhere)] - Do not unnecessarily update FLI \_\_offset [#​9184](python-pillow/Pillow#9184) \[[@​radarhere](https://github.com/radarhere)] - Fill alpha channel when quantizing RGB images [#​9133](python-pillow/Pillow#9133) \[[@​radarhere](https://github.com/radarhere)] - Allow RGBA palettes to work with ImageOps.expand() [#​9138](python-pillow/Pillow#9138) \[[@​radarhere](https://github.com/radarhere)] - Fixed loading rotated PCD images [#​9177](python-pillow/Pillow#9177) \[[@​radarhere](https://github.com/radarhere)] - Cast before shifting bits [#​9236](python-pillow/Pillow#9236) \[[@​radarhere](https://github.com/radarhere)] - Use \_ensure\_mutable() [#​9200](python-pillow/Pillow#9200) \[[@​radarhere](https://github.com/radarhere)] - Seek past BeginBinary data when parsing EPS metadata [#​9211](python-pillow/Pillow#9211) \[[@​radarhere](https://github.com/radarhere)] - Do not allow negative offset with memory mapping [#​9235](python-pillow/Pillow#9235) \[[@​radarhere](https://github.com/radarhere)] - Clear C image when MPO frame image size changes [#​9208](python-pillow/Pillow#9208) \[[@​radarhere](https://github.com/radarhere)] - When converting RGBA to PA, use RGB to P quantization [#​9153](python-pillow/Pillow#9153) \[[@​radarhere](https://github.com/radarhere)] - Remove use of sudo from libavif and raqm install scripts [#​9231](python-pillow/Pillow#9231) \[[@​radarhere](https://github.com/radarhere)] - Load image palette into Python after converting to PA [#​9152](python-pillow/Pillow#9152) \[[@​radarhere](https://github.com/radarhere)] - Check all reserved bytes in FLI header [#​9183](python-pillow/Pillow#9183) \[[@​radarhere](https://github.com/radarhere)] - Limit length of read operation in ImageFont.\_load\_pilfont\_data() [#​9181](python-pillow/Pillow#9181) \[[@​radarhere](https://github.com/radarhere)] - Python 3.9 wheels are no longer needed [#​9214](python-pillow/Pillow#9214) \[[@​radarhere](https://github.com/radarhere)] - Remove unused Image \_expand() [#​9227](python-pillow/Pillow#9227) \[[@​radarhere](https://github.com/radarhere)] - Updated FreeType to 2.14.1 on Windows [#​9206](python-pillow/Pillow#9206) \[[@​radarhere](https://github.com/radarhere)] - Only deprecate fromarray mode for changing data types [#​9063](python-pillow/Pillow#9063) \[[@​radarhere](https://github.com/radarhere)] - Fix reading RGB and CMYK IPTC images [#​9088](python-pillow/Pillow#9088) \[[@​radarhere](https://github.com/radarhere)] - Install zstd for libtiff on Linux wheels [#​9097](python-pillow/Pillow#9097) \[[@​radarhere](https://github.com/radarhere)] - Improve WalImageFile test coverage [#​9189](python-pillow/Pillow#9189) \[[@​radarhere](https://github.com/radarhere)] - ImageMorph operations must have length 1 [#​9102](python-pillow/Pillow#9102) \[[@​radarhere](https://github.com/radarhere)] - Set correct size for rotated PCD images after opening [#​9086](python-pillow/Pillow#9086) \[[@​radarhere](https://github.com/radarhere)] - Simplify check for GBR width and height [#​9089](python-pillow/Pillow#9089) \[[@​radarhere](https://github.com/radarhere)] - Make in parallel when building libjpeg-turbo and openjpeg for macOS and Linux wheels [#​9144](python-pillow/Pillow#9144) \[[@​radarhere](https://github.com/radarhere)] - Fix ZeroDivisionError in ImageStat [#​9105](python-pillow/Pillow#9105) \[[@​radarhere](https://github.com/radarhere)] - When deleting EXIF IFD tag, delete IFD data [#​9083](python-pillow/Pillow#9083) \[[@​radarhere](https://github.com/radarhere)] - Allow alpha\_composite to use LA images [#​9066](python-pillow/Pillow#9066) \[[@​radarhere](https://github.com/radarhere)] - Improve \_accept length check [#​9170](python-pillow/Pillow#9170) \[[@​radarhere](https://github.com/radarhere)] - Do not set core to DeferredError [#​9166](python-pillow/Pillow#9166) \[[@​radarhere](https://github.com/radarhere)] - Use macos-14 for iOS arm64 simulator [#​9161](python-pillow/Pillow#9161) \[[@​radarhere](https://github.com/radarhere)] - Make in parallel when building brotli and libavif for macOS and Linux wheels [#​9142](python-pillow/Pillow#9142) \[[@​radarhere](https://github.com/radarhere)] - Use Python 3.14 for gcc problem matching [#​9134](python-pillow/Pillow#9134) \[[@​radarhere](https://github.com/radarhere)] - Add libavif support for iOS [#​9117](python-pillow/Pillow#9117) \[[@​freakboy3742](https://github.com/freakboy3742)] - Restore pyroma test for iOS [#​9116](python-pillow/Pillow#9116) \[[@​freakboy3742](https://github.com/freakboy3742)] - Use correct bands for two band histograms [#​9054](python-pillow/Pillow#9054) \[[@​radarhere](https://github.com/radarhere)] - Add support for Python 3.14 [#​9120](python-pillow/Pillow#9120) \[[@​hugovk](https://github.com/hugovk)] - Drop support for PyPy3.10 [#​9112](python-pillow/Pillow#9112) \[[@​radarhere](https://github.com/radarhere)] - Add parallel compile from pybind11 [#​8990](python-pillow/Pillow#8990) \[[@​wiredfool](https://github.com/wiredfool)] - Remove unused \_save\_cjpeg [#​9084](python-pillow/Pillow#9084) \[[@​radarhere](https://github.com/radarhere)] - Ensure dynamic libjpeg libraries are not linked [#​9081](python-pillow/Pillow#9081) \[[@​freakboy3742](https://github.com/freakboy3742)] - Remove reference to libtiff 3.x [#​9072](python-pillow/Pillow#9072) \[[@​radarhere](https://github.com/radarhere)] - Restored manylinux2014 wheels [#​9059](python-pillow/Pillow#9059) \[[@​radarhere](https://github.com/radarhere)] </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDkuMiIsInVwZGF0ZWRJblZlciI6IjQxLjE0OS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJ0eXBlL2RlcGVuZGVuY2llcyJdfQ==--> Reviewed-on: https://git.tainton.uk/repos/webexmemebot/pulls/519 Co-authored-by: renovate[bot] <renovate-bot@git.tainton.uk> Co-committed-by: renovate[bot] <renovate-bot@git.tainton.uk>
Addresses #8329 (comment) . see also #8329 (comment)
Changes proposed in this pull request:
For multiband images, we issue:
This metadata is accessible using
pa.array(img).type.field(0).metadataFor single band images we emit:
This metadata is not apparently accessible via pyarrow or arro3, but is accessible via nanoarrow.
The ultimate goal is to be able to have:
@rok