2022-01-10
January 10, 2022
Host: Michael Dolan
Attendees:
OCIO TSC Meeting Notes
clang-format:
Michael: End of year talked about adopting clang-format to reduce PR review noise. Probably a good time to make the change since it's quiet. Will require some large PRs, but improve workflow for contributors going forward.
Mark B: Used a similar tool a while back and it did a good job.
Kevin: Good support within editors and things. Always better to do it sooner rather than later.
Michael: OIIO made the change a couple years ago. Used configuration that reasonably matched existing style and "//clang format off/on" comments to prevent formatting sections that needed to be formatted a specific way.
Patrick: Looked for options, found some somewhat similar styles. Also option to use a default: Google, Microsoft, etc, with minimal changes.
Can it be checked in CI?
Michael: Pretty sure it's supported. Can verify style. If issues, user can run it locally and add another commit to fix it.
Kevin: Can do as pre-commit hook also.
Michael: Can provide instructions to install hooks for those that would like them. Git won't clone hooks since they can run arbitrary code.
Kevin: Can put format file in editor of choice, and make it easier to develop.
Mark B: Usually avoid hooks. Increases barrier to entry, If clang-format version is too old, etc. Good to have it on CI.
Patrick: Will explore it.
Carol, Mark T: Can help apply changes, etc if needed.
Kevin: Issues tend to fall down to embedded languages, where strings are carefully formatted, can break those.
Patrick: Also in unit tests, where order is important.
TODO: Patrick will explore a clang-format implementation when there's time. Carol and Mark T. willing to help with conversion process.
ocioview:
Michael: Proposed idea for an OCIO GUI a while back for GSoC. Started exploring it myself recently. An app for editing and analyzing configs, with image viewer and plotting tools, etc. If anyone is interested in collaborating, it could be fun project.
Carol: Colleague from Tokyo office, a software engineer, showed me some ideas similar to that recently. Could be something to combine efforts on. Waveform and curve analyzing, and config editing. Good for helping people who are intimidated with code.
Patrick: If there is a need, could draft something as an issue, and push something, and invite others to collaborate. If wait too long, can lose traction.
Rémi: Also interested to participate.
Patrick: Put on paper idea to see if others are on the same page.
Michael: Also good for testing UX working group guidelines.
Carol: Agree, good to see how things work.
TODO: Michael will draft mockup and ideas for app and share in issue so others can contribute and discuss ideas.
Expat symbols in libopencolorio
Mark B: Ran into problems this week with Houdini 19, using OCIO v2. Getting hard crash when importing Python XML module (which uses Expat), conflicting with OCIO which has symbols for Expat. Think need to make sure symbols are hidden for Expat, on Linux. Needs to be cleaned up.
Patrick: Have PR for fixing symbols in progress. Found that on mac only.
Mark B: OCIO 2.0, built from source, and with SideFX version. Could see API endpoints and symbols. Short term fix is to cooperate with SideFX. Problem from both sides, but will need to fix it.
Patrick: Tested new PR on mac and Linux (ubuntu). No unexpected symbols after that.
Pending PRs:
Patrick: Please have a look. Most are follow-up from rush to have 2.1.1. Small things to fix. Mostly on core library, but some on Python side.
Rémi: PR on Python side, for m1 wheel. Every version on pip not working for platform. Once PR is merged, might need discussion about updating the current version in pip to update the wheels.
Patrick: Release for 2.1 only?
Rémi: I think that should be enough. 2.1.1. I put more details in PR.