Description
Several vendored third-party libraries are significantly outdated. Updating them would bring bug fixes, performance improvements, better compiler support (especially for Linux/Clang), and security patches.
Version Comparison
| Library |
Current Version |
Latest Version |
Gap |
| Box2D |
v2.4.1 |
v3.1.1 |
Major version behind |
| Dear ImGui |
v1.89.2 WIP |
v1.92.6 |
~3 minor versions behind |
| yaml-cpp |
0.7.0 |
0.9.0 |
2 minor versions behind |
| spdlog |
v1.11.0 |
v1.17.0 |
6 minor versions behind |
| EnTT |
v3.11.0 |
v3.16.0 |
5 minor versions behind |
| JoltPhysics |
~v2.x (2021 era) |
v5.5.0 |
Multiple major versions behind |
| GLFW |
Custom fork (MohitSethi99/glfw) |
N/A |
Fork-specific, missing Linux fixes (#33) |
Notes
- Box2D v3.x is a major rewrite with a new C API — upgrading would require significant code changes to the 2D physics integration.
- JoltPhysics is vendored directly (not a submodule), making updates more involved. The current version is missing
#include <cstdint> needed for Linux/Clang compilation.
- GLFW uses a custom fork with Hazel-specific features (titlebar control). Updating requires coordination with the fork maintainer.
- ImGui, spdlog, yaml-cpp, EnTT should be more straightforward to update as they tend to maintain backward compatibility across minor versions.
Suggested Priority
- spdlog and EnTT — Low risk, high benefit (bug fixes, compiler compatibility)
- Dear ImGui — Moderate risk, brings rendering improvements and bug fixes
- yaml-cpp — Low risk, improved parsing and standards compliance
- JoltPhysics — High effort, significant API changes between v2 and v5
- Box2D — High effort, complete API rewrite in v3
Related
Description
Several vendored third-party libraries are significantly outdated. Updating them would bring bug fixes, performance improvements, better compiler support (especially for Linux/Clang), and security patches.
Version Comparison
Notes
#include <cstdint>needed for Linux/Clang compilation.Suggested Priority
Related