Changelog » Integration

Changes since 2020.06

Dependency changes

  • Minimal supported CMake version is now 3.5, changed from 3.4, since CMake 3.27+ warns if a compatibility with CMake below 3.5 is requested. Older versions are not supported anymore and all workarounds for them were removed. This is a conservative change, as there are no known supported distributions which would have anything older than 3.5.
  • Minimal supported ImGui version is now 1.88 from June 2022 (see mosra/magnum-integration#111). The version support policy is now also explicitly adocumented.

New features

Changes and improvements

Build system

  • The oldest supported Clang version is now 6.0 (available on Ubuntu 18.04), or equivalently Apple Clang 10.0 (Xcode 10). Oldest supported GCC version is still 4.8.
  • Updated FindImGui.cmake to optionally include the new imgui_tables.cpp source present in latest versions (see mosra/magnum-integration#78, mosra/magnum-integration#81)
  • Updated FindImGui.cmake to link to imm32 on MinGW, which is needed since ImGui 1.82.
  • Travis banned everyone from using their CI and so all Linux, macOS, Emscripten, Android and iOS builds were migrated from Travis to Circle CI, together with adding also an explicit ARM64 build and an ability to test GLES and Vulkan functionality on Android. See also mosra/magnum#350 and mosra/magnum#523.
  • FindBullet.cmake now attemps to discover presence of the BT_USE_DOUBLE_PRECISION preprocessor macro on both system-wide and subproject workflow and adds it to the imported target to prevent linker errors
  • The Homebrew package now uses std_cmake_args instead of hardcoded build type and install prefix, which resolves certain build issues (see mosra/homebrew-magnum#6)
  • It's now possible to use <PackageName>_ROOT to point to install locations of dependencies such as Corrade on CMake 3.12+, in addition to putting them all together inside CMAKE_PREFIX_PATH. See also mosra/magnum#614.
  • On CMake 3.16 and newer, FindMagnumIntegration.cmake can provide additional details if some component is not found
  • Updated Debian build instructions to pass --no-sign to dpkg-buildpackage, avoiding a confusing error message that might lead people to think the packaging failed (see mosra/magnum-plugins#105)
  • Fixed wrong .gitattributes option for LF line endings in MSYS PKGBUILDs (see mosra/magnum-integration#97)
  • It's now possible to build dynamic libraries on Android and Emscripten with the usual options. Static libraries are still a default but it isn't enforced anymore. See mosra/magnum#617.
  • Fixed most remaining warnings on MSVC, in particular those related to "conversion from T to void * of greater size" (see mosra/magnum#544).
  • Fixed FindMagnumIntegration.cmake to correctly find the Magnum Integration include directory when it's installed to a different directory than Magnum itself (see mosra/magnum-integration#105)
  • A dynamic build of ImGuiIntegration now correctly links against ImGui that's built as static, fixing a common issue on Vcpkg (see mosra/magnum-integration#67 and mosra/magnum-integration#104).
  • Magnum Integration libraries now automatically install and use Find modules for their dependencies in a way that doesn't clash with modules of the same name potentially installed by other software, meaning the user doesn't need to copy and carry them along anymore (see mosra/magnum#436)
  • Created a RPM package with a helper script for building (see mosra/magnum-integration#113)

Bug fixes

Deprecated APIs

Potential compatibility breakages, removed APIs

Documentation

2020.06

Released 2020-06-27, tagged as v2020.06.

New features

Changes and improvements

Build system

Bug fixes

  • Due to a SDL2 bug on Windows that halts all event processing when dragging a window across the screen, ImGui v1.68 and newer would receive zero delta time and assert. ImGuiIntegration::Context now detects that and passes a non-zero delta time in that case. See also mosra/magnum-integration#57.

Documentation

2019.10

Released 2019-10-24, tagged as v2019.10.

Dependency changes

  • Minimal supported CMake version is now 3.4. Older versions are not supported anymore and all workarounds for them were removed. Download a prebuilt release of a newer version if you need to use Corrade on older systems (such as Ubuntu 14.04 or Debian 8). This is a conservative change that shouldn't affect any additional distribution compared to the CMake 3.1 requirement in 2019.01.

New features

Changes and improvements

Build system

Bug fixes

Potential compatibility breakages, removed APIs

  • Removed BulletIntegration::convertShape() as it was depending on the now-removed Shapes library, deprecated since 2018.10

Documentation

2019.01

Released 2019-02-04, tagged as v2019.01.

Dependency changes

  • Minimal supported GCC version is now 4.8.1, GCC 4.7 is not supported anymore. Minimal Clang version is now 3.3, since that's the first version with a complete C++11 support. See also mosra/magnum#274.
  • Minimal supported CMake version is now 3.1. Older versions are not supported anymore and all workarounds for them were removed. Download a prebuilt release of a newer version if you need to use Corrade on older systems (such as Ubuntu 14.04 or Debian 8). See also mosra/magnum#274.

New features

Bug fixes

Deprecated APIs

Potential compatibility breakages, removed APIs

  • Removed MAGNUM_*INTEGRATION_LIBRARIES and MAGNUM_*INTEGRATION_INCLUDE_DIRS CMake variables, which were deprecated in favor of MagnumIntegration::* imported targets in February 2016.

Documentation

2018.10

Released 2018-10-23, tagged as v2018.10.

New features

  • New GlmIntegration library that provides conversion and debug output for GLM math types.

Changes and improvements

Build system

Bug fixes

Deprecated APIs

Changelogs for previous versions are available in Archived integration changelogs.