Open RV Long Term Support

Open RV Long Term Support

 

Name

Note 

Date

Name

Note 

Date

Alain Compagnat, Guillaume Brossard

Initial Draft

May 5, 2025

Context

Open RV code has been published to ASWF, a little bit less than 2 years ago now. Community and studios are starting to consume Open RV and contribute to it. A new concern arise - What is the long term support model for Open RV. It takes time for studio to update and adopt a given version of any software and the want to make they will be able to get support or self serve their support over time. 

We also want to determine when we do update to align with VFX Ref Platform recommendations in Open RV as well as in relation to other ASWF components such as Open EXR, OCIO, OTIO, etc.

 

Proposed support plan for Open RV

Release Versioning

Aligning with the VFX Reference Platform and support the current release and the two preceding majors.

High Level Guidelines

  • Main branch is dedicated to next release

  • Each releases have a dedicated release-branch.

  • All features are going in main

    • Small features can be nominated to latest release-branch and if the minor version is bump.

  • All fixes are fixed in the current release

    • Fixes can be nominated to be also back ported to previous releases up to 3 releases behind the latest.

  • Back ports to previous releases can not break compatibilities and APIs

  • Each release-branch support only one VFX Ref Platform

  • Each release-branch has CI capabilities

Version Numbering

  • Major release: Use for VFX Reference Platform change or any other library dependency major updates. E.g. FFmpeg 6 to 7. Or new core feature will be proposed

  • Minor release: Use for new non core feature or any other library dependency minor updates. E.g. AJA 15.1 to AJA 15.3

  • Patch release: Use for defect fixes.

VFX Ref Platform alignment

Each release-branch will support only one VFX Reference Platform standard. E.g. 2.0.0 support CY2023

Main branch will slowly integrate the next VFX Reference Platform standard, no longer need a build switch.

Example of alignment between Open RV versions and VFX Reference Platform

Open RV Release

VFX Ref Platform

Strategy

Comments

Open RV Release

VFX Ref Platform

Strategy

Comments

1.x (oldest)

CY22

Part of the original source publish

 

2.x (previous)

CY23

Add support for CY23

 

3.x (current)

CY24

Add support for CY24

 

main

CY24 and CY25

Add support for CY25 with a build switch

Much easier to keep up to date but it can make the code look fragmented with all the if CY24 else CY25.

Does not scale well to support more than 2 VFX Ref Platform CY in parallel

 

image-20250506-140636.png

 

Support

We will document in the repo, which branch is currently supported and what is the nomination process for release-branch.

We will never delete the release-branches, it will be there for any one interested to back port fixes in a no longer supported branch. More then 2 releases behind the latest.

CI

CI is supported on main and 2 release-branches for multiple OSes.

Challenges of the proposed approach

Challenge

Description

Challenge

Description

CI Upkeep

In addition to maintaining 3 branches in parallel, the CI to build the different branches also need to be maintain.

Important back-port effort

With this approach, most of commits going in main will end up at least in the previous minor branch.

This can be mitigated by being more stringent about what is automatically back-ported and let the community contribute to the effort.

Open Items

We'll need to provide a clear plan about the following:

  • Release Version planning when do major, minor, patch release goes out?

  • How do we support major or minor releases?

  • Which releases will bring the VFX Ref Platform update? How? (build switches, branches, ??)

  • How long will a major releases be supported?

  • What is the process to nominate fixes in LTS branch?

  • Do we provide CI for all the releases?

Resources

Resource

Description

Resource

Description

VFX Reference Platform Support Guidance

Providers of software libraries focused on VFX and animation content creation should aim to support their releases for the current calendar year and the three preceding years with compatible updates. Studios and end users should have no expectation of support for older libraries.

The VFX Reference Platform strongly recommends open source project maintainers provide a level of support described by the FLOSS Best Practices Criteria, which is already a requirement for all Academy Software Foundation projects.

Blender Support Model

The Blender LTS program is aimed at ensuring that long-lasting projects can be executed using a stable Blender version, which will provide critical fixes throughout a 2-year time span.

The LTS version will not have any new features, API changes or improvements. Any critical fix that is applied to the latest stable version, will be regularly ported over to active Blender LTS releases.