Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

VDB 12.0.0 Release #1958

Merged
merged 17 commits into from
Nov 1, 2024
Merged

VDB 12.0.0 Release #1958

merged 17 commits into from
Nov 1, 2024

Conversation

danrbailey
Copy link
Contributor

The release branch for VDB 12.0.0. This bumps the version up, updates the change log and makes a small fix to the CI docs workflow.

This also bumps up a number of minimum versions for our dependencies. We now support the VFX Reference Platforms 2023, 2024, 2025. These are the most notable version bumps:

  • CMake 3.18 -> 3.20
  • GCC 9.3.1 -> 11.2.1 (C++ ABI=0 no longer supported)
  • MSVC 2019 -> MSVC 2022
  • Python 3.9 -> 3.10
  • Boost 1.73 -> 1.80
  • LLVM 10.0.0 -> 13.0.0

I have also updated the CI accordingly. Finally, the address sanitizer picked up a bug in the RootNode, which I have also fixed (using emplace for an existing element in one case).

#ifndef OPENVDB_USE_FUTURE_ABI_12
#if OPENVDB_ABI_VERSION_NUMBER == 12
#ifndef OPENVDB_USE_FUTURE_ABI_13
#if OPENVDB_ABI_VERSION_NUMBER == 13
#error ABI = 12 is still in active development and has not been finalized, \
Copy link
Contributor

Choose a reason for hiding this comment

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

I think the error should be ABI = 13 is still in active development.

cmake/config/OpenVDBVersions.cmake Show resolved Hide resolved
CMakeLists.txt Show resolved Hide resolved
Copy link
Contributor

@apradhana apradhana left a comment

Choose a reason for hiding this comment

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

Thanks for addressing my comments. Other than my comment on setting the minimum NanoBind version, everything else looks good. Once all the CIs passed, this looks good.

@Idclip
Copy link
Contributor

Idclip commented Oct 31, 2024

GCC 9.3.1 -> 11.2.1 (C++ ABI=0 no longer supported)

Can you still build with ABI=11 and the old C++ ABI?

@danrbailey
Copy link
Contributor Author

GCC 9.3.1 -> 11.2.1 (C++ ABI=0 no longer supported)

Can you still build with ABI=11 and the old C++ ABI?

Yes, it still works. In fact the only thing we do regarding ABI currently is trying to align with Houdini's ABI (https://github.com/AcademySoftwareFoundation/openvdb/blob/master/cmake/OpenVDBHoudiniSetup.cmake#L349) and I didn't remove that logic in this release. Otherwise, you get whatever the compiler/compiler flags request.

However, it's not guaranteed to continue working. I removed all the CI jobs that test with GCC 9 / ABI=0 and if you build with GCC 9, you'll get a warning that it is unsupported which you have to suppress.

.github/workflows/ax.yml Outdated Show resolved Hide resolved
.github/workflows/ax.yml Show resolved Hide resolved
Copy link
Contributor

@Idclip Idclip left a comment

Choose a reason for hiding this comment

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

minor comments about the llvm ci, otherwise lgtm, thanks a lot @danrbailey

@danrbailey danrbailey merged commit 78135f5 into master Nov 1, 2024
73 of 74 checks passed
@danrbailey danrbailey deleted the v12.0.0_rc branch November 1, 2024 05:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants