manim
manim copied to clipboard
Python 3.14 is not supported
Description of bug / unexpected behavior
If I try to install manim inside a virtual python 3.14 environment, it doesn't work.
The issue is that there are no versions of dearpygui that support python 3.14 at the moment.
Expected behavior
I would expect that manim worked with python 3.14.
How to reproduce the issue
git clone https://github.com/ManimCommunity/manim.git
cd manim
uv python install 3.14
<modify pyproject.toml line 24 to read>
requires-python = ">=3.14"
uv sync
This gives the following error.
Full console output
× No solution found when resolving dependencies:
╰─▶ Because only the following versions of dearpygui are available:
dearpygui<=1.0.0
dearpygui==1.0.1
dearpygui==1.0.2
dearpygui==1.1
dearpygui==1.1.1
dearpygui==1.1.2
dearpygui==1.1.3
dearpygui==1.2
dearpygui==1.2.1
dearpygui==1.2.2
dearpygui==1.2.3
dearpygui==1.3.0
dearpygui==1.3.1
dearpygui==1.4.0
dearpygui==1.5.0
dearpygui==1.5.1
dearpygui==1.6
dearpygui==1.6.1
dearpygui==1.6.2
dearpygui==1.7.0
dearpygui==1.7.1
dearpygui==1.7.2
dearpygui==1.7.3
dearpygui==1.8.0
dearpygui==1.9.0
dearpygui==1.9.1
dearpygui==1.10.0
dearpygui==1.10.1
dearpygui==1.11.0
dearpygui==1.11.1
dearpygui==2.0.0
dearpygui==2.1.0
and dearpygui==1.0.0 has no wheels with a matching Python version tag (e.g., `cp314`), we can conclude that dearpygui>=1.0.0,<1.0.1
cannot be used.
And because dearpygui==1.0.1 was yanked (reason: viewport broken) and dearpygui>=1.0.2,<=1.1.1 has no wheels with a matching Python
version tag (e.g., `cp314`), we can conclude that dearpygui>=1.0.2,<=1.1.1 cannot be used.
And because dearpygui==1.1.2 was yanked (reason: Exit code cleanup wrong) and dearpygui>=1.1.3,<=1.6.2 has no wheels with a matching
Python version tag (e.g., `cp314`), we can conclude that dearpygui>=1.1.3,<=1.6.2 cannot be used.
And because dearpygui==1.7.0 was yanked (reason: regression) and dearpygui>=1.7.1 has no wheels with a matching Python version tag
(e.g., `cp314`), we can conclude that dearpygui>=1.7.1 cannot be used.
And because manim[gui] depends on dearpygui>=1.0.0 and your project requires manim[gui], we can conclude that your project's
requirements are unsatisfiable.
hint: Pre-releases are available for `dearpygui` in the requested range (e.g., 2.0.0rc1), but pre-releases weren't enabled (try:
`--prerelease=allow`)
hint: Wheels are available for `dearpygui` (v1.0.0) with the following Python ABI tags: `cp36m`, `cp37m`, `cp38`, `cp39`, `cp310`
Additional comments
We are aware about this fact and the way to solve it is to force your virtual environment to use Python 3.13 until Manim and all the external libraries it uses are compatible with Python 3.14.
The solution is:
uv python install 3.13
uv python pin 3.13
uv init manimations
cd manimations
uv add -U -p 3.13 manim