Skip to content

Update CI to install OpenJPH from master#2251

Open
cary-ilm wants to merge 1 commit intoAcademySoftwareFoundation:mainfrom
cary-ilm:ci-openjph-master
Open

Update CI to install OpenJPH from master#2251
cary-ilm wants to merge 1 commit intoAcademySoftwareFoundation:mainfrom
cary-ilm:ci-openjph-master

Conversation

@cary-ilm
Copy link
Copy Markdown
Member

Currently, the CI is hard-coded to install OpenJPH 0.22.0, which is ancient. Better for the CI to validate the bleeding edge of OpenJPH.

Note that this tests building OpenEXR against an external implementation of OpenJPH, which is done in addition to testing a build with the vendored version. Ideally, we should test against multiple OpenJPH versions for compatibility, but that's for a later time.

Currently, the CI is hard-coded to install OpenJPH 0.22.0, which is
ancient. Better for the CI to validate the bleeding edge of OpenJPH.

Signed-off-by: Cary Phillips <cary@ilm.com>
@lgritz
Copy link
Copy Markdown
Contributor

lgritz commented Feb 20, 2026

Can I recommend that our CI test both the latest official release (what most people will get now), and also master (up to the minute of what's coming soon)?

@cary-ilm
Copy link
Copy Markdown
Member Author

It already does, for the most part. The CI tests both building against an external OpenJPH and testing against the internal vendored version. This PR ensures we're testing against bleeding edge OpenJPH, and our policy should be to keep the vendered version up to date with the latest official OpenJPH release (PR #2250), so were testing both.

Admittedly, when testing the vendored version, we're not testing the OpenJPH cmake configuration in exactly the same way as an external installation, so it's conceivable we're missing a cmake configuration error, but that's remote.

I'd like to refactor the entire CI so it it does a limited, partial, speedy test on PR/push, then a fuller test weekly, and a more thorough test before release, but that's bigger effort that needs more thought.

@meshula
Copy link
Copy Markdown
Contributor

meshula commented Feb 23, 2026

I think master is problematic, if they break, we break. Wouldn't it make sense to be testing against the version that we inter?

if [ "${{ inputs.OPENEXR_FORCE_INTERNAL_DEFLATE }}" == "OFF" ]; then
PACKAGES="$PACKAGES libdeflate:p"
fi
if [ "${{ inputs.OPENEXR_FORCE_INTERNAL_OPENJPH }}" == "OFF" && "${{ inputs.msystem }}" != "MINGW32" ]; then
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FWIW, the && "${{ inputs.msystem }}" != "MINGW32" condition can be dropped now, as openjph is now available there as well.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants