2023-09-18

September 18, 2023

Host: Doug Walker

Secretary: Carol Payne

Attendees:

Rémi Achard (TSC) - DNEG
Mark Boorer (TSC) - Industrial Light & Magic
Mei Chu (TSC) - Sony Pictures Imageworks
Sean Cooper (TSC ACES TAC Rep) - ARRI
Michael Dolan (TSC) - Epic Games
Patrick Hodoul (TSC) - Autodesk
Zach Lewis (TSC) - Method
Thomas Mansencal (TSC) - Weta FX
Carol Payne (TSC Chair)
Mark Titchener (TSC) - Foundry
Carl Rand (TSC) - Weta Digital
Doug Walker (TSC Chief Architect) - Autodesk
Kevin Wheatley (TSC) - Framestore
Name - Organization

OCIO TSC Meeting Notes

  • What to set the library version to in the main branch

    • Typically, when we do a release, we set the library in main to the next anticipated release (2.4-dev)

    • Kevin: should this be 2.3 etc still? Until we break api/abi? Or at least until we release a 2.3.1?

    • Mark: not sure we're in a place where we offer a ton of support for abi/api compatibility, right?  And patch releases don't include the patch version

    • Remi: we talked a bit about adding an abi compliance check - until we have that, we should bump it just in case. Also cmake has flags to help in these cases of versioning issues

    • Do we have a patch fix release date target?

      • Dec 2023/January 2024

      • If you have needs for backporting patches to previous releases, please let us know. Doug has a running list he can add to

  • Multi-threaded access to the Config class

    • Thread on slack noticing some things in the Config class. There are a few things in this class that can change/add things in a config, vs just loading/reading, and the design is not good for multithreading and can introduce bugs.

    • Do we feel this issue is urgent? 

    • Remi: don't really understand the need to have one thread reading while another thread is adding, but possibly worth addressing eventually

    • Mark - this seems like regular standard c++ usage - we should at least document our commitment though in this area. If anything we should be more explicit eventually - remove these shared pointers and require the user to manage it

    • Remi: guideline on the Config class is const::char right now - should it be updated to more recent C++ standards?

    • Doug: yes in recent years, problems with C++ strings have gotten less problematic. We could likely start using them and update guidelines.

    • Mark: bindings (like rust etc) become a lot more difficult with C++ strings - sticking to C types makes life easier there

    • Doug: energy around documenting our current usage in these areas would be welcome

  • We need lots more "good first issues" for Dev Day

    • We also need to make a project file with a list of good options for contributors - Carol will be making this

    • Please flag them or log some things!

      • Configs repo - Carol will talk to Thomas

  • Updating Cinesite copyright notice

    • Reaching out to LF for advice here

  • Converting the documentation to use the "Furo" theme

    • Current readthedocs theme is not supported any more

    • Sean proposes moving to the "Furo" sphinx theme. It's quite popular and well-maintained. OIIO uses it already.

    • Would be nice to do this for the 2.3.1 patch release

    • Michael: like this theme, good API browsing capabilities 

    • Kevin: is some of the weird dropped spaces part of this problem?

    • Michael: probably not a lot of it, it's due to doxygen stuff that could be updated. Will try and write some things down to help point someone who wants to take this on

  • API for AMF support

    • Implementing as a file format might not be the way to go.

    • If you have opinions on what this API should be, let us know

    • Carol will reach out to Frankie to see if AMF Builder devs have any opinions

  • CMake minimum version support should we bump it forwards? (PIE code options)

    • OCIO 2.3.0 current => 3.13

    • OIIO => 3.15

    • OpenRV => 3.24

    • OpenEXR => 3.12 

    • ASWF sample project => 3.15

    • CI Base versions … 

      • 2019 => 3.12.4 [no longer in our test matrix]

      • 2020 => 3.18.4

      • 2021 => 3.19.3

      • 2022 => 3.22.0

      • 2023 => 3.27.2

    • Our version is causing a bit of a bug on Fedora, of course. 

    • We're not even testing the cmake version that we require - should we bump up at least to the minimum we are testing?

    • Theoretically 3.14 would help with the Fedora issue, but should we go further based on our CI?

    • Mark - 3.15 seems logical based on OIIO using it, but still low enough that we won't lose a ton of people

      • group agrees, as long as it fixes the issue presented

    • Kevin: yes, but that version is still older than what we're testing in CI

    • Remi: we could maybe add a CI job for 3.15

    • Kevin will follow up with Hobbs from Fedora, to try and prove this is the issue, and then go from there

  • Change to LFX meeting invites in october

    • Invites have already gone out to the TSC, Carol will do the calendar flips inbetween now and the next TSC meeting on Oct 2.

    • Carol will provide steps to ensure calendars are in sync and old event removed, so we don't have issues, as well as instructions/what to expect from the new invites.

    • Working group meetings will change as well in October

    • Sorry for the temporary pain, but hopefully this new system will eventually be better and more secure