Review: openexr 3.5.2+ds-1
Package Information
| Description | runtime files for the OpenEXR image library OpenEXR is a high dynamic-range (HDR) image file format developed by Industrial Light & Magic for use in computer imaging applications. OpenEXR's features include: * Higher dynamic range and colour precision than existing 8- and 10-bit image file formats. * Support for the "half" 16-bit floating-point pixel format. * Multiple lossless image compression algorithms. Some of the included codecs can achieve 2:1 lossless compression ratios on images with film grain. * Extensibility. New compression codecs and image types can easily be added by extending the C++ classes included in the OpenEXR software distribution. New image attributes (strings, vectors, integers, etc.) can be added to OpenEXR image headers without affecting backward compatibility with existing OpenEXR applications. This package contains the OpenEXR libraries. |
|---|---|
| Maintainer | Debian PhotoTools Maintainers <pkg-phototools-devel@lists.alioth.debian.org> |
| Changed By | Sébastien Noel <twolife@debian.org> |
| Distribution | experimental |
| Architecture | any all |
| VCS | git: https://salsa.debian.org/debian-phototools-team/openexr.git (browse) |
| Popcon Installs | 130738 |
| Binary NEW | Yes (new binary packages of a source already in sid) |
| Tracker | https://tracker.debian.org/pkg/openexr |
| Uploaded | 16 days ago |
New Package Report
.changes
| Version | 3.5.2+ds-1 |
|---|---|
| Changed-By | Sébastien Noel <twolife@debian.org> |
| Architecture | source amd64 all |
| Distribution | experimental |
| Date | Thu, 22 Oct 2026 11:59:05 +0200 |
| Source | openexr |
Changelog
openexr (3.5.2+ds-1) experimental; urgency=medium
.
* Team upload
* New upstream release
- Drop merged patches
- Refresh d/copyright
* Update package name to match soname bump:
- libopenexr-3-4-33 → libopenexr-3-5-34
* d/control: Add multi-arch:same to the dev package.dsc
| Section | libs |
|---|---|
| Priority | optional |
| Component | main |
| Package-List | libopenexr-3-5-34 deb libs optional arch=any libopenexr-dev deb libdevel optional arch=any libopenexr-doc deb doc optional arch=all profile=!nodoc profile:v1=!nodoc openexr deb graphics optional arch=any |
debian/copyright
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: openexr
Upstream-Contact: openexr-devel@nongnu.org
Source: https://www.openexr.com/
Files-Excluded: external
Comment: The external software can also be provided by system libraries.
Files: *
Copyright: 2002-2018, Industrial Light & Magic, a division of Lucas Digital Ltd. LLC
2019, Academy Software Foundation
2020-2026, Contributors to the OpenEXR Project
License: BSD-3-clause
Files: cmake/FindPythonPackage.cmake
Copyright: Contributors to the OpenColorIO Project.
License: BSD-3-clause
Files:
src/lib/OpenEXRCore/internal_b44_table.c
src/lib/OpenEXRCore/internal_b44_table_init.c
src/lib/OpenEXRCore/internal_dwa.c
src/lib/OpenEXRCore/internal_dwa_table.c
src/lib/OpenEXRCore/internal_dwa_table_init.c
src/lib/OpenEXR/ImfDwaCompressor.cpp
src/lib/OpenEXR/ImfDwaCompressor.h
src/lib/OpenEXR/ImfFastHuf.cpp
src/lib/OpenEXR/ImfFastHuf.h
src/lib/OpenEXR/ImfSystemSpecific.cpp
src/lib/OpenEXR/dwaLookups.cpp
src/test/OpenEXRCoreTest/dwaLookups.h
src/test/OpenEXRCoreTest/dwaQuantTables.h
src/test/OpenEXRTest/compareDwa.cpp
src/test/OpenEXRTest/compareDwa.h
src/test/OpenEXRTest/testRle.cpp
src/test/OpenEXRTest/testRle.h
Copyright:
DreamWorks Animation LLC.
Contributors to the OpenEXR Project
License: BSD-3-clause
Files: src/lib/OpenEXR/ImfOptimizedPixelReading.h
src/lib/OpenEXR/ImfSimd.h
Copyright:
Autodesk, Inc.
Contributors to the OpenEXR Project
License: BSD-3-clause
Files:
src/lib/OpenEXR/ImfPxr24Compressor.cpp
src/lib/OpenEXR/ImfPxr24Compressor.h
Copyright:
Pixar Animation Studios
Contributors to the OpenEXR Project
License: BSD-3-clause
Files:
src/lib/OpenEXR/ImfCompositeDeepScanLine.cpp
src/lib/OpenEXR/ImfCompositeDeepScanLine.h
src/lib/OpenEXR/ImfDeepCompositing.cpp
src/lib/OpenEXR/ImfDeepCompositing.h
src/lib/OpenEXR/ImfFloatVectorAttribute.h
src/lib/OpenEXR/ImfMultiView.cpp
src/lib/OpenEXR/ImfMultiView.h
src/lib/OpenEXR/ImfPartHelper.h
src/lib/OpenEXR/ImfStringVectorAttribute.cpp
src/lib/OpenEXR/ImfStringVectorAttribute.h
src/test/OpenEXRTest/testBadTypeAttributes.cpp
src/test/OpenEXRTest/testBadTypeAttributes.h
src/test/OpenEXRTest/testCompositeDeepScanLine.cpp
src/test/OpenEXRTest/testCompositeDeepScanLine.h
src/test/OpenEXRTest/testDeepScanLineMultipleRead.cpp
src/test/OpenEXRTest/testDeepScanLineMultipleRead.h
src/test/OpenEXRTest/testFutureProofing.h
src/test/OpenEXRTest/testMultiView.cpp
src/test/OpenEXRTest/testMultiView.h
src/test/OpenEXRTest/testOptimizedInterleavePatterns.cpp
src/test/OpenEXRTest/testOptimizedInterleavePatterns.h
src/test/OpenEXRTest/testPartHelper.cpp
src/test/OpenEXRTest/testPartHelper.h
Copyright:
Weta Digital Ltd
Contributors to the OpenEXR Project
License: BSD-3-clause
Files: src/wrappers/python/openexr_skbuild_plugin.py
Copyright: Contributors to the MaterialX Project
License: Apache-2.0
On Debian systems the full text of the Apache-2.0 license can be found in
/usr/share/common-licenses/Apache-2.0.
Files: debian/*
Copyright: 2014, Matteo F. Vescovi <mfv@debian.org>
2014, Mathieu Malaterre <malat@debian.org>
2009, Cyril Brulebois <kibi@debian.org>
2007, 2008, Adeodato Simó <dato@debian.org>
License: BSD-3-clause
License: BSD-3-clause
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
.
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
.
* Neither the name of foo nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
DFSG Assistant LLM REVIEW 0 blocker, 0 important, 2 minor
This is an LLM based review using a Debian Inference based workflow. It was not written by a member of the DFSG team and has not been checked by one. It is not a decision on the package: it may be wrong, and it may have missed things.
Reviewed 16 days ago.
Report
DFSG NEW review for openexr version 3.5.2+ds-1
Summary
- Licensing is DFSG-compliant and
debian/copyrightis accurate: Yes - Packaging is of good quality: Yes
- Issues: 0 blocker, 0 important, 2 minor
- debian/watch: version 5
- debian/copyright: machine-readable
- Scan before the review: 52 found (11 not listed by the scan, so not checked)
Licensing
The tree is uniformly BSD-3-clause. A tree-wide SPDX/Licence grep found only one non-BSD file, src/wrappers/python/openexr_skbuild_plugin.py (Apache-2.0, from MaterialX), which debian/copyright declares with the full Apache-2.0 text. The Files: * catch-all and the named-holder stanzas (Industrial Light & Magic/ASWF/Contributors, DreamWorks, Pixar, Weta Digital, Autodesk, OpenColorIO, MaterialX) match the copyright headers of the files they cover, which I spot-checked. debian/copyright is DEP-5 machine-readable. The .exr files flagged by the prescan are test data (source-form fixtures), not built objects. The DreamWorks DWA patent grant in PATENTS restricts only the optional patent licence, not copying/modification/distribution, so it is not a DFSG problem.
Packaging
Packaging is sound: compat 13, dh with cmake, hardening=+all, correct Build-Depends (all exist in the archive), Standards-Version 4.7.4 (current), sane binary split with Multi-Arch, SONAME-based soname Provides via substvars, a working autopkgtest, and clean repo metadata. Two minor issues: the openexr package installs several command-line tools without man pages, and libopenexr-doc retains stale sphinx-common/libjs-jquery Depends after the HTML docs were dropped.
Issues
minor packaging 1. Six installed OpenEXR tools have no manual page ◂
- Files:
debian/openexr.manpages,debian/manpages/ - Basis: checked, in the package or with a reference tool
- Evidence:
openexr.manpagesinstalls onlydebian/manpages/*.1(exrheader, exrenvmap, exrmakepreview, exrmaketiled, exrstdattr), whilesrc/bin/CMakeLists.txtinstalls 11 tools (OPENEXR_INSTALL_TOOLSdefault ON);openexr.installshipsusr/bin. - Problem: Policy 12.1: “Each program, utility, and function should have an associated manual page… considered as a bug”. exr2aces, exrinfo, exrmanifest, exrmetrics, exrmultipart and exrmultiview ship without any man page. Upstream generates man pages via help2man when OPENEXR_INSTALL_DOCS is set, but the Debian build leaves it off.
- Fix: Either enable OPENEXR_INSTALL_DOCS (requires help2man build-dep) and install the generated man pages, or add hand-written pages for the six missing tools.
minor packaging 2. libopenexr-doc has stale sphinx/query doc Depends ◂
- Files:
debian/control - Basis: checked, in the package or with a reference tool
- Evidence:
Depends: libjs-jquery, sphinx-common, ${misc:Depends}onlibopenexr-doc, which now ships onlyusr/share/doc/OpenEXR/examples/*(perlibopenexr-doc.examples); the changelog records “Drop html docs” in 3.4.6. - Problem: The package no longer ships HTML documentation, so the sphinx-common and libjs-jquery runtime Depends are unnecessary and pull in unrelated packages.
- Fix: Drop
sphinx-commonandlibjs-jqueryfrom libopenexr-doc's Depends (keep${misc:Depends}).
Verified ◂
- Tree-wide SPDX/Licence grep (with gitignore:false) shows every header is
SPDX-License-Identifier: BSD-3-Clause; the sole non-BSD SPDX issrc/wrappers/python/openexr_skbuild_plugin.py(Apache-2.0), correctly declared in debian/copyright with the common-licenses pointer. - Spot-checked the headers of the files named in the named-holder stanze of debian/copyright: ImfSimd.h (Autodesk), ImfPxr24Compressor.h (Pixar), ImfMultiView.h (Weta), ImfDwaCompressor.h / internal_dwa.c / testRle.cpp / ImfSystemSpecific.cpp (DreamWorks), FindPythonPackage.cmake (OpenColorIO), openexr_skbuild_plugin.py (MaterialX, Apache-2.0) — all match the Copyright holders and BSD-3-clause licence in their stanzas.
Files-Excluded: externalis honoured: there is noexternal/directory in the unpacked tree.- The prescan 'rare wording' hit
website/news.rst:846(“evaluation purposes only”) is a news announcement about an unstable branch, not a licence term — not an issue. - The prescan holder hit “Industial Light & Magic” in
website/test_images/ScanLines/*.rstmatches “Industrial Light & Magic” named in theFiles: *stanza. - All .exr files flagged as binary data (
src/test/OpenEXRTest/*.exr,src/test/bin/test_images/*.exr, pythontests/*.exr) are test/data fixtures, the preferred form for such data, covered by the BSD-3Files: *stanza — not an issue. - No minified JS, .jar/.class/.so/.dll/.exe/.pyc, font, PDF or other built artefact lacking sources found in the tree (glob for those extensions returned nothing).
- PATENTS (DreamWorks DWA licence choice + patent grant) and LICENSE.md (BSD-3) reviewed; the patent terms constrain only the optional patent grant, not the copyright licence, so no DFSG problem.
- debian/copyright begins with the correct DEP-5 Format line and has a full standalone BSD-3-clause text; all licences used (BSD-3-clause, Apache-2.0) are DFSG-free and mutually compatible.
- Packaging: Build-Depends (cmake, debhelper-compat 13, libdeflate-dev, libimath-dev>=3.1.2, libopenjph-dev, libzstd-dev, pkgconf, zlib1g-dev) all exist in the archive; compat 13 substvar/shlibs handling and the dio-nocheck override are correct for this compat level;
override_dh_makeshlibsbuilds the Imath-suffixed soname Provides; autopkgtest builds and runs the writer/reader example against the installed lib. - uscan found the packaged version as the newest upstream release (upstream
3.5.2, packaged3.5.2+ds). - Every pointer of
debian/copyrightto /usr/share/common-licenses names a file that is there (Apache-2.0).
Not confirmed ◂
- Could not build or run the package, so nothing further was verified about the shlibs/Provides name for a specific installed Imath soname at compile time; the mechanism is inherited from the previously-uploaded 3.4.x release.
Proposed changes ◂
None.
Uploader's response to the LLM review
I won't argue with an LLM. "I want to talk to your manager" :-)
— Sébastien Noel (twolife), 16 days ago
Review Information
accepted — allocated to awm 16 days ago, started 16 days ago, completed 16 days ago.
Final Comment
Hi,
To be clear: that response comment is for the human reviewer, and the LLM doesn't get to see it unless it's made some completely egregious mistake and needs some refinement to it's instructions to reduce the odds of that happening again.
Perhaps I should tweak the wording to make that clear...
Something the LLM can be pretty decent at is writing manpages though :-)
Thanks!