Releases: alembic/alembic
Alembic 1.8.4
Thanks to your feedback pull requests and submitted issues we
have a few bug fixes and build enhancements.
CMake:
Add ALEMBIC_DEBUG_WARNINGS_AS_ERRORS to control the build in debug mode.
It is set to ON by default to preserve the current behavior.
Use add_compile_options instead of the older add_definitions. (PR371)
Fix the include dirs for AbcCoreHDF5 tests. (PR382)
Fix issue hinted at in Issue 223: use PROJECT_SOURCE_DIR instead of
CMAKE_SOURCE_DIR when embedding Alembic within another CMake project. (PR393)
AbcCoreOgawa:
On Windows _BitScanForward64 is only available when _WIN64 is defined.
When it is not, fall back on using _BitScanForward. (PR 373)
Fuzzer issue 49213 turned up some new malformed MetaData memory problems.
Indexed MetaData on the write side only allows 254 (plus the default empty one)
small (up to 256 bytes), we now throw if we encounter malformed MetaData.
We were also allowing empty property and object names through on the read side
even though the writer forbids this.
Finally integrate a couple of tests flagged by Taotao Gu's local fuzzer.
(PR391 and PR397)
Fuzzer issue 52939 showed that with certain malformed MetaData the pair
separator should NOT occur before the assign separator. (PR396)
PyAlembic:
N2f and N2d properties were not being correctly bound.(PR390)
Alembic 1.8.3
Thanks to your feedback and submitted issues we have a few bug fixes.
Make sure we export the IlmBase requirement in CMake when using OpenEXR 2 to
fulfill the Imath requirement. (Issue 355)
Address report from GCC Undefined Behavior Sanitizer by initializing a couple
of bools in OXform. (Issue 357)
Fix compile issue when using C++17 with Microsoft Visual Studio and use a
hopefully much faster find first bit set when using that compiler. (Issue 358)
Alembic 1.8.2
Thanks to your feedback and submitted issues we have a few bug fixes.
Ogawa:
One of the fuzzer tests were was failing with 32 bit builds because of adifferent exception message.
Fix a bug with 32 bit memory mapped Windows builds.
CMake:
Look for boost python a little differently, falling back on existing behavior.
Alembic 1.8.1
Thanks to your feedback and submitted issues we have a few bug fixes.
CMake:
Get the python bindings building on MacOS. (Issue 340)
Fix the capitalization of the Imath find_depencency in AlembicConfig.cmake
so that Imath will be found when used by external projects.
(Issue 341 and 343)
Ogawa:
Address Fuzzer issue 33685 sanity check that we have a valid group to avoid
infinite recursion during traversal.
Alembic 1.8.0
Thanks to your feedback and issues we have a few bug fixes and enhancements.
API:
We are dropping support for the ancient TR1 and expect the compilers to at least support C++std11, we currently default to C++std14. Because we now assume at least C++std11, we can remove ALEMBIC_LIB_USES_TR1 and ALEMBIC_LIB_USES_BOOST and we instead expect the std versions of things like shared_ptr. (Issue 312)
Ogawa:
Better support emscripten and ARM toolchains by using memcpy to avoid dereferencing non-aligned pointers. (PR 332)
Python:
Support building python3, and make it the default, to build the bindings against python2 use: -DUSE_PYALEMBIC=ON -DPYALEMBIC_PYTHON_MAJOR=2
Switch from nonzero to bool for the python3 bindings. (Issue 273)
Workaround the testCollections crash. (Issue 274)
Make the unit tests python 2 and python 3 compatible. (Issue 276)
Rework the python testing framework so they can be run from CMake. (Issue 278)
Switch from next to next for the python3 bindings. (Issue 279)
Utils:
AbcStitcher:
Propagate MetaData from the first of our ordered input archives over to the stitched output. (PR 324)
CMake:
Update the minimum requirement to 3.13
Overhaul to support the recently released Imath 3.
(https://github.com/AcademySoftwareFoundation/Imath)
Fix for using Alembic as a 3rd party with Imath 3. (Issue 337)
Use Boost_VERSION_MACRO instead of Boost_VERSION. (PR 338)
Alembic 1.8.0 beta 3
Thanks to your feedback and issues we have a few bug fixes and enhancements.
API:
We are dropping support for the ancient TR1 and expect the compilers to at
least support C++std11, we currently default to C++std14. Because we now
assume at least C++std11, we can remove ALEMBIC_LIB_USES_TR1 and
ALEMBIC_LIB_USES_BOOST and we instead expect the std versions of things like
shared_ptr. (Issue 312)
Ogawa:
Better support emscripten and ARM toolchains by using memcpy to avoid
dereferencing non-aligned pointers. (PR 332)
Python:
Support building python3, and make it the default, to build the bindings
against python2 use: -DUSE_PYALEMBIC=ON -DPYALEMBIC_PYTHON_MAJOR=2
Switch from nonzero to bool for the python3 bindings. (Issue 273)
Workaround the testCollections crash. (Issue 274)
Make the unit tests python 2 and python 3 compatible. (Issue 276)
Rework the python testing framework so they can be run from CMake. (Issue 278)
Switch from next to next for the python3 bindings. (Issue 279)
Utils:
AbcStitcher:
Propagate MetaData from the first of our ordered input archives over to the
stitched output. (PR 324)
CMake:
Update the minimum requirement to 3.13
Overhaul to support the recently released Imath 3.
(https://github.com/AcademySoftwareFoundation/Imath)
Fix for using Alembic as a 3rd party with Imath 3. (Issue 337)
Use Boost_VERSION_MACRO instead of Boost_VERSION. (PR 338)
Alembic 1.8.0 beta 2
Thanks to your feedback and issues we have a few bug fixes and enhancements.
If no major issues are found, we plan on promoting this to 1.8.0 after a week or so.
API:
We are dropping support for the ancient TR1 and expect the compilers to at
least support C++std11, we currently default to C++std14. Because we now
assume at least C++std11, we can remove ALEMBIC_LIB_USES_TR1 and
ALEMBIC_LIB_USES_BOOST and we instead expect the std versions of things like
shared_ptr. (Issue 312)
Python:
Support building python3, and make it the default, to build the bindings
against python2 use: -DUSE_PYALEMBIC=ON -DPYALEMBIC_PYTHON_MAJOR=2
Switch from nonzero to bool for the python3 bindings. (Issue 273)
Workaround the testCollections crash. (Issue 274)
Make the unit tests python 2 and python 3 compatible. (Issue 276)
Rework the python testing framework so they can be run from CMake. (Issue 278)
Switch from next to next for the python3 bindings. (Issue 279)
CMake:
Update the minimum requirement to 3.13
Overhaul to support the recently released Imath 3.
(https://github.com/AcademySoftwareFoundation/Imath)
Fix for using Alembic as a 3rd party with Imath 3. (Issue 337)
Alembic 1.8.0 beta
Thanks to your feedback and issues we have a few bug fixes and enhancements.
If no major issues are found, we plan on promoting this to 1.8.0 after a week or so.
API:
We are dropping support for the ancient TR1 and expect the compilers to at
least support C++std11, we currently default to C++std14. Because we now
assume at least C++std11, we can remove ALEMBIC_LIB_USES_TR1 and
ALEMBIC_LIB_USES_BOOST and we instead expect the std versions of things like
shared_ptr. (Issue 312)
Python:
Support building python3, and make it the default, to build the bindings
against python2 use: -DUSE_PYALEMBIC=ON -DPYALEMBIC_PYTHON_MAJOR=2
Switch from nonzero to bool for the python3 bindings. (Issue 273)
Workaround the testCollections crash. (Issue 274)
Make the unit tests python 2 and python 3 compatible. (Issue 276)
Rework the python testing framework so they can be run from CMake. (Issue 278)
Switch from next to next for the python3 bindings. (Issue 279)
CMake:
Update the minimum requirement to 3.13
Overhaul to support the recently released Imath 3.
(https://github.com/AcademySoftwareFoundation/Imath)
Alembic 1.7.16
Thanks to your feedback,and pull requests a couple of bug fixes and a GitHub enhancement.
GitHub:
Add a Github Action to create a python 2.7 wheel. (PR 310)
AbcCoreHDF5:
Specify char signedness when setting the HDF5 data type as some architectures, like ARM, default to unsigned. (PR 316)
AbcCoreOgawa:
Fuzzer issue 25695: Fix leak that can occur when reading meta data, but the file is maliciously cut short. (PR 315)
Fuzzer issue 26125: Add a check and throw an excpetion for an obviously recursive group. (PR 321)
Alembic 1.7.15
Thanks to your feedback and issues we have a few bug fixes and an enhancement.
AbcCoreOgawa:
Fuzzer issues 25166, 25175, 25185, 25204, and 25236 all test for illegal
meta data index values which we more carefully test.
Fuzzer issue 25192 turned up a leak from a malformed file causing OrData to
throw.
Tests:
Clang was flagging an unused variable in AbcMaterial tests.
CMake:
Add DOCS_PATH variable which will add Doxygen as a target and cause the
generated html directory to be installed to that location. We remove the
Doxygen file from the project and now use CMakes module to configure it.