Repository: jeertmans/manim-slides (language: python)

Issue:
[BUG] Installation fails when collecting `rtoml>=0.9.0`
### Please explain the issue you're experiencing (with as much detail as possible):

Today I installed manim slides for a friend, with python version 3.11.8. I tried to install using pip: "pip install manim-slides". And I get the following error. I searched a lot for information but couldn't find a solution. How to fix that?
![issue](https://github.com/jeertmans/manim-slides/assets/165900107/b332cfaa-5698-4555-83f4-a9a32bf0da35)



Discussion / hints:
Hello, thanks for posting the issue here!

The problem seems to come from `rtoml`, which should ship pre-built binary wheels for most platforms (including Windows). But it looks like it is not able to find such pre-built wheels, and thus it tries to build (hence the Rust compilation) them locally, and fails because you do not have Rust installed.

Can you confirm that this is the problem by trying: `pip install rtoml==0.10.0`?

Also, can you provide more information about your [Windows version](https://support.microsoft.com/en-us/windows/which-version-of-windows-operating-system-am-i-running-628bec99-476a-2c13-5296-9dd081cdd808#:~:text=in%20Windows%2010-,To%20find%20out%20which%20version%20of%20Windows%20your%20device%20is,%3E%20Settings%20%3E%20System%20%3E%20About%20.)?
Thank you for responding.
I tried to run: `pip install rtoml==0.10.0` but this is the result I got.
I am using window11.
![issue2](https://github.com/jeertmans/manim-slides/assets/165900107/3c94f0d1-43e5-40ed-8835-bd2a15dbe077)


The picture does not load: did you correctly upload it?
Yes, I re-uploaded it. It's too late now, I'll respond to your help tomorrow. Thank you very much.
Thanks, but was asking for the specific windows version (which you can obtain as described in the link above) :-)
Yes, this is the version of windows in use.
![window_ver](https://github.com/jeertmans/manim-slides/assets/165900107/6be05586-3b76-45a3-97d9-859bb9c006af)

Ok so this looks like this is a known issue, see https://github.com/samuelcolvin/rtoml/issues/74.

A solution might be to `pip install rtoml==0.9.0`. Then, `pip install manim-slides` should work. Can you try?
It worked successfully, thank you very much.
Thank you for updating @1Dung :-)

Fix patch:
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 59754cda..39584fd4 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -10,6 +10,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
 (unreleased)=
 ## [Unreleased](https://github.com/jeertmans/manim-slides/compare/5.1.7...HEAD)
 
+(unreleased-chore)=
+### Chore
+
+- Pin `rtoml==0.9.0` on Windows platforms,
+  see [#398](https://github.com/jeertmans/manim-slides/pull/398),
+  until
+  [samuelcolvin/rtoml#74](https://github.com/samuelcolvin/rtoml/issues/74)
+  is solved.
+  [#432](https://github.com/jeertmans/manim-slides/pull/432)
+
 (unreleased-fixed)=
 ### Fixed
 
diff --git a/pyproject.toml b/pyproject.toml
index 7a790472..9784e5fe 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -30,7 +30,8 @@ dependencies = [
   "qtpy>=2.4.1",
   "requests>=2.28.1",
   "rich>=13.3.2",
-  "rtoml>=0.9.0",
+  "rtoml==0.9.0;sys_platform=='win32' and python_version<'3.13'",
+  "rtoml>=0.9.0;sys_platform!='win32' or python_version>='3.13'",
   "tqdm>=4.64.1",
 ]
 description = "Tool for live presentations using manim"


Test patch:
diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
index 1a2d641c..eb0cce80 100644
--- a/.github/workflows/tests.yml
+++ b/.github/workflows/tests.yml
@@ -51,14 +51,13 @@ jobs:
 
     - name: Install manim dependencies on MacOS
       if: matrix.os == 'macos-latest'
-      run: brew install ffmpeg py3cairo
+      run: brew install ffmpeg py3cairo pango pkg-config scipy
 
     - name: Install manim dependencies on Ubuntu
       if: matrix.os == 'ubuntu-latest'
       run: |
         sudo apt-get update
-        sudo apt-get install libcairo2-dev libpango1.0-dev ffmpeg freeglut3-dev
-        sudo apt-get install xvfb
+        sudo apt-get install build-essential python3-dev libcairo2-dev libpango1.0-dev ffmpeg freeglut3-dev xvfb
         nohup Xvfb $DISPLAY &
 
     - name: Install Windows dependencies