The pypi class has slightly changed the semantics of the PYPI_PACKAGE
variable[1], now PYPI_PACKAGE is the normalised package name and the new
variable PYPI_PACKAGE_SDIST is used when the source tarball doesn't match.
Update recipes as appropriate: this is mostly deleting now-redundant
assignments but some assignments are still needed where packages are not
uploaded using the modern standards.
[1] oe-core 98049bf86b6 ("classes/pypi: change PYPI_PACKAGE to be normalised")
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 1.8.0:
- Reading of entity groups: entity_groups key in info dictionary,
tells which images form a stereo pair in spatial photos.
- Decoding of embedded thumbnails: HeifImage.get_thumbnail method
and draft in the Pillow plugin, Image.thumbnail() uses them
instead of decoding the full image.
- Minimum required libheif version is 1.23.4.
- libheif was updated from the 1.23.3 to 1.23.4 version.
- libde265 was updated from the 1.1.2 to 1.1.3 version.
- Segmentation fault when opening a file whose metadata item type
is not valid UTF-8.
- Pillow plugin: load() of a multi-frame image reloaded the frame
data on every call, discarding in-place changes and failing after
thumbnail().
- A depth image of an item type that libheif cannot decode made the
whole file unreadable with libheif 1.23.4, such depth images are
now skipped.
- Type checkers treated the names imported from pillow_heif as
private since the py.typed marker was added in 1.7.0:
Pyright/Pylance and mypy --strict reported them as not exported,
Pyright/Pylance autocompletion did not offer them.
This work was sponsored by GOVCERT.LU.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upstream changes (release notes):
* 1.2.0: dropped Python 3.9; PREFERRED_DECODER must be a valid decoder.
* 1.3.0: pixel-aspect-ratio (pasp) read/write; free-threaded (no-GIL)
Python support; fix integer overflow in the encode path leading to a
heap OOB read (CVE-2026-28231).
* 1.4.0: track newer bundled libheif/libde265/libx265 (not used here -
the recipe builds against the system libraries); minimum libheif
raised to 1.19.0.
* 1.5.0: grid (tiled) image encoding via options.GRID_TILE_SIZE /
tile_size, info["tiling"] read-back, and PH_LIBHEIF_CMAKE_ARGS.
Refresh 0001-setup.py-support-cross-compiling.patch for 1.5.0: setup.py
context shifted, so the patch applied with fuzz and failed the patch-fuzz
QA check. Regenerated against 1.5.0 (same STAGING_INCDIR/STAGING_LIBDIR
changes).
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 1.1.1:
- libheif was updated from the 1.20.1 to 1.20.2 version.
- macOS: Wheels now support older macOS versions like Catalina
(x86_64 CPU) or Ventura (ARM CPU)
1.0.0 changelog:
- Support for YCbCr AUX images.
- AVIF support was dropped, as the new upcoming Pillow has
native AVIF support.
- libde265 was updated from the 1.0.15 to 1.0.16 version.
- Removed deprecated PyPy 3.9 wheels & added PyPy 3.11 wheels.
This work was sponsored by GOVCERT.LU.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Through the dependecy of libheif, enabling native&nativesdk for
python3-pillow-heif means enabling it for the whole codec ecosystem
(e.g. x265, ffmpeg, ...) which might be hard to do. So, disable the
native&nativesdk variants that never built in the first place.
Fixes these warnings from AB[0]:
WARNING: Nothing PROVIDES 'nativesdk-libheif' (but virtual:nativesdk:[...]/meta-openembedded/meta-multimedia/recipes-devtools/python/python3-pillow-heif_0.22.0.bb DEPENDS on or otherwise requires it). Close matches:
WARNING: Nothing PROVIDES 'libheif-native' (but virtual:native:[...]/meta-openembedded/meta-multimedia/recipes-devtools/python/python3-pillow-heif_0.22.0.bb DEPENDS on or otherwise requires it). Close matches:
WARNING: Nothing RPROVIDES 'nativesdk-python3-pillow-heif-dev' (but virtual:nativesdk:[...]/meta-openembedded/meta-multimedia/recipes-devtools/python/python3-pillow-heif_0.22.0.bb RDEPENDS on or otherwise requires it)
WARNING: Nothing RPROVIDES 'nativesdk-python3-pillow' (but virtual:nativesdk:[...]/meta-openembedded/meta-multimedia/recipes-devtools/python/python3-pillow-heif_0.22.0.bb RDEPENDS on or otherwise requires it)
WARNING: Nothing RPROVIDES 'nativesdk-python3-pillow-heif' (but virtual:nativesdk:[...]/meta-openembedded/meta-multimedia/recipes-devtools/python/python3-pillow-heif_0.22.0.bb RDEPENDS on or otherwise requires it)
WARNING: Nothing RPROVIDES 'python3-pillow-heif-native' (but virtual:native:[...]/meta-openembedded/meta-multimedia/recipes-devtools/python/python3-pillow-heif_0.22.0.bb RDEPENDS on or otherwise requires it)
WARNING: Nothing RPROVIDES 'python3-pillow-heif-dev-native' (but virtual:native:[...]/meta-openembedded/meta-multimedia/recipes-devtools/python/python3-pillow-heif_0.22.0.bb RDEPENDS on or otherwise requires it)
[0]: https://autobuilder.yoctoproject.org/valkyrie/#/builders/82/builds/377/steps/12/logs/warnings
Cc: Leon Anavi <leon.anavi@konsulko.com>
Cc: Alper Ak <alperyasinak1@gmail.com>
Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Move from meta-python to meta-multimedia which depends on layer
meta-python. This way the recipe will reside in the layer where
its main dependency libheif is.
This work was sponsored by GOVCERT.LU.
Suggested-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>