Academy Software Foundation - Technical Advisory Council (TAC) Meeting - February 7, 2024

Join the meeting at https://zoom-lfx.platform.linuxfoundation.org/meeting/97880950229?password=81d2940e-c055-43b9-9b5a-6cd7d7090feb

Voting member attendance

Premier member Representatives

  • Bill Roberts - Adobe Inc.
  • Brian Cipriano - Google LLC
  • Cory Omand - The Walt Disney Studios
  • Eric Enderton - NVIDIA Corporation
  • Eric Reinecke - Netflix, Inc.
  • Erik Niemeyer - Intel Corporation
  • Gordon Bradley - Autodesk
  • Greg Denton - Microsoft Corporation
  • Jean-Michel Dignard - Epic Games, Inc
  • Kimball Thurston - Weta Digital Limited
  • Larry Gritz - Sony Pictures Imageworks
  • Mark Visser - Unity Technologies
  • Matthew Low - DreamWorks Animation
  • Michael B Johnson - Apple Inc.
  • Ross Dickson - Amazon Web Services, Inc.
  • Scott Dyer - Academy of Motion Picture Arts and Sciences
  • Sean O’Connell - Advanced Micro Devices (AMD)
  • Tony Micilotta - DNEG

Project Representatives

  • Alexander Forsythe - RAW to ACES Utility Representative
  • Alexander Schwank - USD Working Group Representative
  • Carol Payne - OpenColorIO Representative
  • Cary Phillips - OpenEXR Representative
  • Chris Kulla - Open Shading Language (OSL) Representative
  • Daniel Greenstein - OpenImageIO Representative
  • Erik Strauss - Open Review Initiative Representative
  • Gary Oberbrunner - OpenFX Representative
  • Jean-Christophe Morin - Rez Representative
  • Jonathan Stone - MaterialX Representative
  • Ken Museth - OpenVDB Representative
  • Nick Porcino - USD Working Group Representative
  • Rachel Rose - D&I Working Group Representative
  • Scott Wilson - Working Group for Rust Bindings Representative
  • Stephen Mackenzie - Rez Representative

Industry Representatives

  • Jean-Francois Panisset - Visual Effects Society

Non Voting Projects, Working Groups, Linux Foundation

  • David Morin - Academy Software Foundation
  • Emily Olin - Academy Software Foundation
  • John Mertic - The Linux Foundation
  • Yarille Ortiz - The Linux Foundation
  • Andrew Grimberg - LF Release Engineering

Other Attendees

  • Ben Schofield
  • Ben Giles, Caligra
  • Doug Walker, Autodesk / OCIO
  • Tyler Furby, Wabi Foundation / Swift WG (Proposed)
  • Deke Kincaid, Digital Domain
  • Alex Porter
  • Lee Kerley, Sony Imageworks
  • Gabriel Linecker, Swift WG (Proposed)
  • JT Nelson, Pasadena Open Source consortium / SoCal Blender group
  • Robin Rowe, CinePaint

Antitrust Policy Notice

Linux Foundation meetings involve participation by industry competitors, and it is the intention of the Linux Foundation to conduct all of its activities in accordance with applicable antitrust and competition laws. It is therefore extremely important that attendees adhere to meeting agendas, and be aware of, and not participate in, any activities that are prohibited under applicable US state, federal or foreign antitrust and competition laws.

Examples of types of actions that are prohibited at Linux Foundation meetings and in connection with Linux Foundation activities are described in the Linux Foundation Antitrust Policy available at linuxfoundation.org/antitrust-policy. If you have questions about these matters, please contact your company counsel, or if you are a member of the Linux Foundation, feel free to contact Andrew Updegrove of the firm of Gesmer Updegrove LLP, which provides legal counsel to the Linux Foundation.

Agenda

  • Annual Review - MaterialX #486
  • New Working Group Proposal - Swift #578
  • Updates and short topics
    • Awareness of LF Generative AI Policy #584
    • Hosted Project Resource request form live #587
    • CLOTributor for ASWF projects #589
    • Fixing LFX Security for C/C++ Projects #592
    • Open Source Forum 2024 Reminders #568
    • TAC Meeting Schedule - December 2023 and January 2024 #546
    • Discuss use of OpenSSF Best Practices badge in lifecycle stage requirements. #502
    • Project Proposal - OpenQMC #434

Notes

  • Next TAC meeting on Feb 21st to be cancelled since the day before Open Source Forum
  • Open Source Forum (John)
    • Coming in a bit over 2 weeks
    • Emily: make you register if you haven’t already. Event is free for all employees of member companies, so they can attend virtually or in person.
    • Working on Keynote, if your project has major news / big milestones, please send me a note. We’re not looking for “3 bullet points” per project. Will include feedback from summer learning program, dev days
  • FMX
    • Anyone interested in open source track
    • Emily: doesn’t have to be related to Foundation projects, if you are planning to go to FMX and want to present, let us know
    • Also working with FMX is if there is budget for speakers
    • David: share your thoughts about development of your projects in Europe, anything we can carry for you at FMX
  • Snyk for C/C++ projects (John)
    • Working on a solution that ties with GitHub Actions
    • If you have a C++ project, please git it a try
    • All projects to start using LFX security more consistently
  • Hosted project resource request
    • On the TAC website
    • triaged through GitHub issues
    • Any source of resource: budget, help in certain areas
  • OpenQMC
    • Looking for update at next TAC meeting (Eric), we should be close
  • LFX Generative AI Policy
    • Please read it
    • Using tools like CoPilot in development
    • Let us know if TAC wants to add guidance for ASWF projects
  • New CNCF tool called CloTributor (John)
    • Help showcase issues in repository that you want to tag as “help wanted”, creates a list of those issues
    • Currently very CNCF centric
    • Want to turn it on for ASWF, goal to have it before the forum
    • Project leads: this pulls from your repos, need to add a “help wanted” tag to an issue that’s open or unassigned. Also special tags for documentation, “more difficult”. Hoping this can be a good tool, potentially for dev days as well.
    • Please reach out if you have questions
  • OpenSSF badging
    • Thank you to all the projects who have made project
    • Spreadsheet has been updated
    • We’re starting to identify requirements we may be able to waive at this point
    • Identified requirements that are most difficult to meet
    • We may not have the time to make final determination on these items here, we can discuss this on the Slack, and take a vote
    • Carol: there’s a couple we may not want to cancel out and insist they get done. The main issue for some projects is that we haven’t event looked at the Gold requirements, we’re at 70% of Silver badge, but haven’t really looked at the Gold since still working on Silver. Some of the Gold requirements may not be all that difficult to achieve.
    • John: I can extract the “3 and above” line items, and we can figure out which are those are achievable.
    • No requirement to do them in order, but I can see why it was done that way.
    • Jonathan: MaterialX has been focussed on Silver badge since that seemed achievable (96%), haven’t been looking as closely to Gold badge.
    • Cary: have been looking at “low hanging fruit”, easy to knock off. Carol: we haven’t been approaching it that way, but can switch methodology and see if we can achieve some of those Gold items.
    • Andrew: if CloTributor is getting turned on, you will meet one of the requirements for Gold.
    • John: now that we have a different focus for guidance, would it make sense to wait until next TAC meeting to take another pass to tick off “low hanging fruit” Gold items?
    • Carol: how many projects have time to make progress on Silver?
    • Larry: a goal for the next meeting would be to get rid of the question marks, only met / unmet / not applicable. Don’t be afraid to mark something as unmet. We don’t necessarily know what is difficult because there are too many unfilled items.
    • Larry: the form itself is a bit confusing, there some ambiguity between “unmet” as “we haven’t done it” vs “unmet” as “not applicable”. But we should just mark everything as “unmet”.
    • Cary: I don’t have comment access to spreadsheet? John: no, update the form, and I have a script to pull from the backend database. I did tag people in the spreadsheet.
    • Cary: some issues like i18n, for OpenEXR we will say we meet that, but someone may disagree. If I can put forward an argument that we meet a requirement that I believe holds water, I will say “met” until someone reviews it.
    • John: it’s really based on honor system.
    • Action item: change ? to something else
  • MaterialX Annual Review (Jonathan)
    • MaterialX Annual Review Slides
    • 2nd Annual Review
    • Started at ILM in 2012
    • First used on Force Awakens in 2015
    • Industry collaborations
      • Autodesk
    • Technical Steering Committee
      • 15 members representing 11 companies
        • Adobe, Apple, Autodesk, Epic, IKEA, ILM, Khronos, NVIDIA, Pixar, SideFX, SPI
        • 5 voting members, 10 stakeholders
        • 56 meetings since joining ASWF
    • MaterialX Contributors by Year
      • major spike this year, likely due to Dev Days, thank you to the team (8 - 10 contributors)
      • others are industry members (40 unique contributors)
      • Seems like we want to maximize diversity of contributors and companies
    • New MateriaX integrations by Year
      • Apple Vision Pro
      • Chaos VRay
      • Autodesk 3DS Max
      • Autodesk (?)
    • Notable events
      • OpenPBR Surface
        • A new open surface shading model, organized as a subproject of MaterialX
        • Developed in collaboration with Adobe and Autodesk
        • Currently at v.02 with a production release planned this year
      • Open MaterialX Graph Editors
        • The first two open-source graphical editors for MaterialX content
          • MaterialX Graph Editor, developed by Emma Holthouser at Lucasfilm, based on ImGui
          • Quiltix Graph Editor developed by Prism Pipeline, base on Hydra
      • Metal Shading Language
        • Apple contributed support for Metal Shading Language (MSL)
        • A key component of the MaterialX integration for VisionOS
        • Early days of Apple/MaterialX collaboration
      • New Pattern Nodes
        • Autodesk and SideFX contributed a new set of pattern nodes
        • Defined as graphs of existing primitives, so no new client code is required
        • Now integrated into Houdini 20
    • Area of focus for 2024
      • Improvements to MaterialX for OpenPBR (BSDF nodes, layering rules)
      • Improvements to USD / MaterialX integration (color spaces, versioning). Hoping it can become a new material archival format (digital backlot)
      • Initial non-photorealistic rendering library. Working with community to design this.
      • New USD Materials Working Group within the AOUSD. Design the spec for how MaterialX materials should behave in USD. Jonathan and Anders Langland at NVIDIA leading WG
    • Progress on OpenSSF Badge
      • Silver Badge: 96%
      • Gold Badge: 65%
      • Raised C++ coverage to 88%, though rendering modules are not yet included (can’t run those tests under GH Actions for now)
      • Two security requirements remain for Silver Badge
    • We got a lot of energy from Dev Days and want to be part of it again.
    • Questions?
      • David: want to use your slide on number of contributors and feedback on Dev Days at Open Source forum. If any projects showing spike after Dev Days, would like to use that as well. Will have big emphasis on Dev Days and Summer Learning Program to encourage development of new engineers.
      • Carol: for next Dev Days, want better ways to track contributions. But this is the good example to pull out. Jonathan: yes, it was very clear that this is valuable.
      • Carol: anything you need from the TAC or LF? Jonathan: we want to become an Adopted project, that would be really good! Larry: that project has had real world impact, even outside the industry!
    • John: vote to renew? Larry can we vote to also graduate? John: we can vote based on the badge? Larry: trying to replicate what we did with OSL. Gordon: all of our projects are compliant? Larry: no, none are since we’ve upped the requirements. Carol: that was the discussion with OTIO and others, consensus was that we want to adopt all the projects, but want to do our due diligence first, then make exceptions if we have to. But can be argued both ways. I would be good with a “conditional” adoption. Chris: they are far along, and can be an example for all. John: so does someone want to motion conditional approval?
    • JF: unfortunately we don’t have quorum (14 voting members present, 20 absent)
  • Swift WG Proposal (Tyler Furby)
    • Swift WG Proposal Slides
    • Proposing both Switch and C/C++ interoperability between the many projects across the ASWF landscape while exploring…
    • Built 13 projects across the ASWF without a single line of CMake through the tooling of SPM enabled by C++ interoperability in Swift 5.9
    • Requires zero of very minor changes to existing libraries for this to work
    • 0% CMake, 100% Switch Package Management
    • Goals
      • Collaboration with the ASWF to allow existing projects and libraries to be consumed by the Switch Package Manager in the form of Package.swift files at project roots
      • Availability of plugins, and other tooling to aid in bringing existing libraries to SPM
      • Creating safe, easy to use…
    • Non Goals
      • Existing C/C++ libraries should not be modified, or modified very little (acceptable minor changes would be in the form of moving C++ includes out of namespace blocks) or adding clang attributes to existing classes and types
      • Rewriting existing C/++ or Python code into Switch
      • Supporting versions of Swift prior to Swift 5.9 for CXX libraries
    • Deliverables
      • Universal Scene Description USD for the Swift programming language, SwiftUSD
      • Monolithic Swift Package dependency (MetaverseKit) which successfully builds 13 existing ASWF projects, including dependencies of these libraries such as TBB and Python
      • Make MetaverseKit monolithic Switch package obsolete through industry adoption of Swift Package…
    • Support
      • Wabi Foundation (@wabiverse), an American nonprofit organization dedicate to fostering the evolution of Swift and the language in which it interoperates with across the industry and open-source Metaverse
      • Dedicated engineers at the direction of the industry
    • Questions
      • JF: would WG take on CI? Tyler: yes would help with CI, including making sure not to break other OSes. Tyler: we wouldn’t be adding anything to the official projects. Will want to coordinate with project maintainers, just needs a single file in the root, can add a GitHub Action workflows. Projects who don’t want to add that, we could add the official project as a submodule so it doesn’t touch the official project.
      • Ben Giles: is there something across the projects you are able to build without any changes? C only bindings? Tyler: USD had a couple of namespaces in includes, but not sure if any ASWF projects had this, mostly TBB and Python. It went pretty smoothly. It was possible to change things without affecting linkage. Ben: why a Swift specific WG instead of a FFI (Foreign Function Interface) base WG? Tyler: both sound good, so that could be an approach as well. Ben: not saying Swift is not important, but our customers all have different languages they like to use internally. Tyler: yes, an interesting point.
    • John: we can take vote to mailing list since we don’t have quorum.