Skip to content

Conversation

@pbergeron-adsk
Copy link
Contributor

@pbergeron-adsk pbergeron-adsk commented Dec 16, 2025

Linked issues

SG-41515

Summarize your change and reason for change

Package and bundle files only had major.minor version numbers. This made it extremely cumbersome and awkward to issue patch releases with a patch number for hotfixes.

Now the package manager handles an optional major.minor.PATCH number. It is backwards compatible with just major.minor, and will assume ".0" for patch number in this case.

Users reported that when we added a "version" tag in the PACKAGE file with an extra dot/number, it didn't work. But that's because the rvpkg executable appears to load the PACKAGE file, and will blindly create a file with the extra dot/number. But the rvpkg loader validates the filename against a regular expression, and the filename with the extra dot/number failed the regex check.

So it's not that the "version" tag didn't support the extra dot/number. It's that the rvpkg loader didn't like the filename format... sigh.

In any case, the fix makes RV able to load old filenames with major.minor, and major.minor.patch also...

... but unfortunately, old RVs will still be unable to read pluginname_major.minor.patch.rvpkg files, just "pluginname_major.minor.rvpkg" files.

note:

As an alternative to breaking old RVs, maybe we can rename the rvpkg files by adding a service pack number (sp) to the version number, like this:

if patch == 0, then filename = plugin_name-major.minor.rvpkg else filename = plugin_name_sp{patch}.major.minor.rvpkg 

but it's unclear if this would work correctly for install/uninstall of old bundles and packages that need conflict resolutions.

Describe what you have tested and on which operating system.

macOS.

Add a list of changes, and note any that might need special attention during the review.

If possible, provide screenshots.

… and bundles Signed-off-by: Patrick Bergeron <patrick.bergeron@autodesk.com>
Removed version normalization for package filename. Signed-off-by: pbergeron-adsk <patrick.bergeron@autodesk.com>
Signed-off-by: Patrick Bergeron <patrick.bergeron@autodesk.com>
Signed-off-by: Patrick Bergeron <patrick.bergeron@autodesk.com>
@pbergeron-adsk pbergeron-adsk changed the title SG-TBD: Add support for optional major.minor.PATCH version number in packages and bundles SG-41515: Add support for optional major.minor.PATCH version number in packages and bundles Dec 16, 2025
…last radius of patch updates for old RVs) Signed-off-by: Patrick Bergeron <patrick.bergeron@autodesk.com>
{
cerr << "ERROR: Unable to open output file" << endl;
cerr << "ERROR: Unable to open output file: " << fullPath << endl;
cerr << " Directory: " << parentDir.absolutePath().toStdString() << endl;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FYI: The CI is failing because parentDir isn't defined:
/Users/runner/work/OpenRV/OpenRV/src/lib/app/RvPackage/PackageManager.cpp:74:45: error: use of undeclared identifier 'parentDir' 74 | cerr << " Directory: " << parentDir.absolutePath().toStdString() << endl;

Copy link
Contributor

@bernie-laberge bernie-laberge left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

3 participants