This release focuses on improving installation reliability, Python compatibility, and dependency management across BulletLab. It replaces the outdated imgui-bundle dependency that could trigger problematic CMake source builds on Windows, adds missing GUI runtime dependencies, improves compatibility with newer ImGui Bundle releases, and strengthens the CI pipeline to prevent similar installation issues in future releases.
Highlights
Improved Installation & Dependency Management
- Updated
imgui-bundlefrom1.5.2to>=1.6.0,<2.0, enabling the use of compatible prebuilt wheels instead of forcing source builds on supported Windows Python versions. - Added PyOpenGL as an explicit runtime dependency.
- Added glfw as an explicit runtime dependency.
- Improved dependency handling to provide a more reliable clean-install experience.
Python Compatibility
- Dropped Python 3.10 support.
- Added official Python 3.13 support.
- The supported Python range is now 3.11–3.13.
- Python 3.14 is intentionally excluded until it can be explicitly validated.
ImGui Compatibility
- Improved compatibility with newer
imgui-bundle1.92.x releases. - Added compatibility handling for the
nav_highlight→nav_cursorenum rename. - Verified BulletLab against multiple
imgui-bundlereleases from 1.6.0 through 1.92.900.
Plotting Improvements
- Fixed a clean-install issue where
OpenGL.GLcould be imported before the optional plotting dependencies were properly initialized. - Improved graceful handling when the plotting dependencies are unavailable.
CI & Release Reliability
- Added Python 3.13 to the CI test matrix.
- Added a dedicated Windows binary-wheel installation test.
- CI now verifies that
imgui-bundlecan be installed from a prebuilt wheel on supported Windows Python versions, helping prevent regressions involving CMake-based source builds. - Updated the documentation workflow to use a supported Python version.
Documentation
- Updated installation requirements to reflect the new Python 3.11–3.13 support range.
- Clarified the Windows installation requirements and binary-wheel behavior.
- Updated installation documentation to reflect the new dependency requirements.
Testing
- 240/240 tests passing.
- Compatibility verified across 11
imgui-bundleversions. - Clean Windows installation verified on Python 3.13 without requiring a CMake build for
imgui-bundle. - Final package metadata and documentation verified against the supported Python range.
Bug Fixes
- Fixed the Windows/Python 3.13 installation failure caused by
imgui-bundle==1.5.2falling back to a source build. - Fixed missing runtime dependency declarations for
PyOpenGLandglfw. - Fixed ImGui 1.92.x navigation-color compatibility.
- Fixed a plotting import failure in clean environments.
Compatibility
Supported Python versions: 3.11, 3.12, 3.13
Unsupported: Python 3.10 and Python 3.14+
Installation
pip install --upgrade bulletlabLinks
Documentation: https://nuclearvenom.github.io/BulletLab/
Repository: https://github.com/NuclearVenom/BulletLab
BulletLab Arsenal: https://github.com/NuclearVenom/BulletLab-Arsenal