TSC Meeting Notes 2021-09-09
Attendance:
Agenda:
Status of OpenVDB & 3.1; how can we help?
#1143Â VFX Platform 2021 CI
#1141 Fix issue with unpacked size computation
#1140Â Remove unused variable _maxScanLineSize from B44CompressorÂ
#1121Â Interface link library Threads::Threads not required with glibcÂ
#1094 cmake fails with -DPYTHON=ON;Â #207 Fix python imath export;Â #208 Use ${Imath_VERSION} for python project versionÂ
Zip compression level option
OpenEXRCore fuzz test
What's the proper version setting on the master branch?
Box as an interval
Discussion:
Rod:
Â
Epic is working UE upgrading to 3.1.
Namespacing:
Â
Inline version namespacing.
Switch to versioning in the namespace. Put each class in a sub-version, then inline that. Only bump it on the things that change. Reimplement the new one in terms of the old one.
C++11 adds namespace inlining. It’s the C++11 way of providing concrete compatibility.
Everything would look the same, but there’s a hidden namespace.
Peter: we thought about it when going to v2.
Kimball: I’ll put together an example.
Status of OpenVDB & 3.1; how can we help?
Â
Cary: initial PR isn’t usable, they must support OpenEXR/IlmBase 2.x.Â
The targets/lib names have changed, must support both old and new.
Larry: the solution is to use generator expressions, which expand to nothing for the mismatched version.
#1094 cmake fails with -DPYTHON=ON; #207 Fix python imath exportÂ
Â
Kimball: As it is, can’t build python separately; it won’t pick up ${Imath_VERSION} from the top level.
Cary: No need for any fancy build options here. A top-level build with a switch for python should be sufficient. No need to support building python after a top-level build.
Kimball: In that case, most of src/python/CMakeLists.txt can go away, it’s just a subdirectory. I will look into simplifying it.
#1140 Remove unused variable _maxScanLineSize from B44CompressorÂ
CI & VFX ref platform years
Â
Could install cross compilers. Clang has cross compilers.
Unfortunately, all the tricky bugs are runtime, not buildtime, so we really need the hardware.
GitHub Actions doesn’t provide M1. Wait for M1 to be available?
Larry: I used to use Travis. They have Linux ARM instances.
Peter: full test on Raspberry Pi takes 18 hours to run.Â
But we only really need to run it prior to a release, not on every PR.
Fuzz testing:
Â
Cary: No progress to speak of.