ManimCommunity / manim

A community-maintained Python framework for creating mathematical animations.
https://www.manim.community
MIT License
20.06k stars 1.48k forks source link

Can't build documentation (using conda). #3535

Open ubaldot opened 7 months ago

ubaldot commented 7 months ago

This is not really an installation issue, but rather a problem in building the docs (not really a bug either).

I cloned the latest and greatest main branch, and I installed all the dependencies through conda but manim with pip as editable install. It follows the steps I performed:

  # Setup
  conda install grayskull
  conda install conda-build

  # build
  poetry build --format sdist
  grayskull pypi dist/manim_v.0.18.0.tar.gz --output ./conda
  conda build ./conda

  # install
  conda install --use-local manim --only-deps
  poetry install --only dev
  pip install -e . --no-deps

I have done everything in an environment with python 3.11 installed (apparently conda still does not fully support python 3.12). Everything went through fine.

However, by running the following

cd docs
make clean
make html

I get the following error:

Exception occurred:
  File "/Users/ubaldot/Documents/github/manim/manim/utils/docbuild/manim_directive.py", line 299, in run
    raise RuntimeError(f"Error while rendering example {clsname}") from e
RuntimeError: Error while rendering example VectorArrow
The full traceback has been saved in /var/folders/m1/bmnznpdx31v2_lcjnf0nmc3m0000gn/T/sphinx-err-ts2b6v0q.log, if you want to report the issue to the developers.

The complete log follows:

$ cat /var/folders/m1/bmnznpdx31v2_lcjnf0nmc3m0000gn/T/sphinx-err-ts2b6v0q.log
# Sphinx version: 4.5.0
# Python version: 3.11.6 (CPython)
# Docutils version: 0.17.1 release
# Jinja2 version: 3.1.2
# Last messages:
#   reading sources... [  7%] contributing/admonitions
#   reading sources... [  7%] contributing/development
#   reading sources... [  7%] contributing/docstrings
#   reading sources... [  7%] contributing/examples
#   reading sources... [  7%] contributing/internationalization
#   reading sources... [  8%] contributing/performance
#   reading sources... [  8%] contributing/references
#   reading sources... [  8%] contributing/testing
#   reading sources... [  8%] contributing/typings
#   reading sources... [  9%] examples
# Loaded extensions:
#   sphinx.ext.mathjax (4.5.0) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/ext/mathjax.py
#   sphinxcontrib.applehelp (1.0.4) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinxcontrib/applehelp/__init__.py
#   sphinxcontrib.devhelp (1.0.2) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinxcontrib/devhelp/__init__.py
#   sphinxcontrib.htmlhelp (2.0.1) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinxcontrib/htmlhelp/__init__.py
#   sphinxcontrib.serializinghtml (1.1.5) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinxcontrib/serializinghtml/__init__.py
#   sphinxcontrib.qthelp (1.0.3) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinxcontrib/qthelp/__init__.py
#   alabaster (0.7.13) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/alabaster/__init__.py
#   sphinx.ext.autodoc.preserve_defaults (1.0) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/ext/autodoc/preserve_defaults.py
#   sphinx.ext.autodoc.type_comment (4.5.0) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/ext/autodoc/type_comment.py
#   sphinx.ext.autodoc (4.5.0) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/ext/autodoc/__init__.py
#   sphinx_copybutton (0.5.2) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx_copybutton/__init__.py
#   sphinx.ext.napoleon (4.5.0) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/ext/napoleon/__init__.py
#   sphinx.ext.autosummary (4.5.0) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/ext/autosummary/__init__.py
#   sphinx.ext.doctest (4.5.0) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/ext/doctest.py
#   sphinx.ext.extlinks (4.5.0) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/ext/extlinks.py
#   sphinx.ext.viewcode (4.5.0) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/ext/viewcode.py
#   sphinxext.opengraph (unknown version) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinxext/opengraph/__init__.py
#   manim.utils.docbuild.manim_directive (unknown version) from /Users/ubaldot/Documents/github/manim/manim/utils/docbuild/manim_directive.py
#   manim.utils.docbuild.autocolor_directive (unknown version) from /Users/ubaldot/Documents/github/manim/manim/utils/docbuild/autocolor_directive.py
#   sphinx.ext.graphviz (4.5.0) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/ext/graphviz.py
#   sphinx.ext.inheritance_diagram (4.5.0) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/ext/inheritance_diagram.py
#   sphinxcontrib.programoutput (unknown version) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinxcontrib/programoutput/__init__.py
#   myst_parser (0.17.2) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/myst_parser/__init__.py
#   furo (2022.09.29) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/furo/__init__.py
#   sphinx_basic_ng (1.0.0.beta2) from /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx_basic_ng/__init__.py
Traceback (most recent call last):
  File "/Users/ubaldot/Documents/github/manim/manim/utils/docbuild/manim_directive.py", line 295, in run
    run_time = timeit(lambda: exec("\n".join(code), globals()), number=1)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/timeit.py", line 237, in timeit
    return Timer(stmt, setup, timer, globals).timeit(number)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/timeit.py", line 180, in timeit
    timing = self.inner(it, self.timer)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<timeit-src>", line 6, in inner
  File "/Users/ubaldot/Documents/github/manim/manim/utils/docbuild/manim_directive.py", line 295, in <lambda>
    run_time = timeit(lambda: exec("\n".join(code), globals()), number=1)
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<string>", line 10, in <module>
  File "/Users/ubaldot/Documents/github/manim/manim/scene/scene.py", line 229, in render
    self.construct()
  File "<string>", line 7, in construct
  File "/Users/ubaldot/Documents/github/manim/manim/mobject/text/text_mobject.py", line 493, in __init__
    super().__init__(
  File "/Users/ubaldot/Documents/github/manim/manim/mobject/svg/svg_mobject.py", line 145, in __init__
    self.init_svg_mobject(use_svg_cache=use_svg_cache)
  File "/Users/ubaldot/Documents/github/manim/manim/mobject/svg/svg_mobject.py", line 171, in init_svg_mobject
    self.generate_mobject()
  File "/Users/ubaldot/Documents/github/manim/manim/mobject/svg/svg_mobject.py", line 193, in generate_mobject
    element_tree = ET.parse(file_path)
                   ^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/xml/etree/ElementTree.py", line 1218, in parse
    tree.parse(source, parser)
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/xml/etree/ElementTree.py", line 580, in parse
    self._root = parser._parse_whole(source)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^
xml.etree.ElementTree.ParseError: no element found: line 1, column 0

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/cmd/build.py", line 276, in build_main
    app.build(args.force_all, filenames)
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/application.py", line 330, in build
    self.builder.build_update()
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 286, in build_update
    self.build(to_build,
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 300, in build
    updated_docnames = set(self.read())
                           ^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 407, in read
    self._read_serial(docnames)
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 428, in _read_serial
    self.read_doc(docname)
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 468, in read_doc
    doctree = read_doc(self.app, self.env, self.env.doc2path(docname))
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/io.py", line 181, in read_doc
    pub.publish()
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/core.py", line 217, in publish
    self.document = self.reader.read(self.source, self.parser,
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/io.py", line 101, in read
    self.parse()
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/readers/__init__.py", line 78, in parse
    self.parser.parse(self.input, document)
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/sphinx/parsers.py", line 89, in parse
    self.statemachine.run(inputlines, document, inliner=self.inliner)
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 170, in run
    results = StateMachineWS.run(self, input_lines, input_offset,
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/statemachine.py", line 239, in run
    context, next_state, result = self.check_line(
                                  ^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/statemachine.py", line 451, in check_line
    return method(match, context, next_state)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 3008, in text
    self.section(title.lstrip(), source, style, lineno + 1, messages)
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 327, in section
    self.new_subsection(title, lineno, messages)
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 393, in new_subsection
    newabsoffset = self.nested_parse(
                   ^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 281, in nested_parse
    state_machine.run(block, input_offset, memo=self.memo,
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 196, in run
    results = StateMachineWS.run(self, input_lines, input_offset)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/statemachine.py", line 239, in run
    context, next_state, result = self.check_line(
                                  ^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/statemachine.py", line 451, in check_line
    return method(match, context, next_state)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2769, in underline
    self.section(title, source, style, lineno - 1, messages)
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 327, in section
    self.new_subsection(title, lineno, messages)
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 393, in new_subsection
    newabsoffset = self.nested_parse(
                   ^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 281, in nested_parse
    state_machine.run(block, input_offset, memo=self.memo,
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 196, in run
    results = StateMachineWS.run(self, input_lines, input_offset)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/statemachine.py", line 239, in run
    context, next_state, result = self.check_line(
                                  ^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/statemachine.py", line 451, in check_line
    return method(match, context, next_state)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2344, in explicit_markup
    self.explicit_list(blank_finish)
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2369, in explicit_list
    newline_offset, blank_finish = self.nested_list_parse(
                                   ^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 318, in nested_list_parse
    state_machine.run(block, input_offset, memo=self.memo,
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 196, in run
    results = StateMachineWS.run(self, input_lines, input_offset)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/statemachine.py", line 239, in run
    context, next_state, result = self.check_line(
                                  ^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/statemachine.py", line 451, in check_line
    return method(match, context, next_state)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2647, in explicit_markup
    nodelist, blank_finish = self.explicit_construct(match)
                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2354, in explicit_construct
    return method(self, expmatch)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2096, in directive
    return self.run_directive(
           ^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2146, in run_directive
    result = directive_instance.run()
             ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/ubaldot/Documents/github/manim/manim/utils/docbuild/manim_directive.py", line 299, in run
    raise RuntimeError(f"Error while rendering example {clsname}") from e
RuntimeError: Error while rendering example VectorArrow

List of installed package in the current virtual environment:

# packages in environment at /opt/homebrew/Caskroom/miniconda/base/envs/manim_dev_311:
#
# Name                    Version                   Build  Channel
alabaster                 0.7.13                   pypi_0    pypi
anyio                     4.1.0              pyhd8ed1ab_0    conda-forge
appnope                   0.1.3              pyhd8ed1ab_0    conda-forge
archspec                  0.2.2              pyhd8ed1ab_0    conda-forge
argon2-cffi               23.1.0             pyhd8ed1ab_0    conda-forge
argon2-cffi-bindings      21.2.0          py311heffc1b2_4    conda-forge
arrow                     1.3.0              pyhd8ed1ab_0    conda-forge
astor                     0.8.1                    pypi_0    pypi
asttokens                 2.4.1              pyhd8ed1ab_0    conda-forge
async-lru                 2.0.4              pyhd8ed1ab_0    conda-forge
attrs                     23.1.0             pyh71513ae_1    conda-forge
babel                     2.13.1                   pypi_0    pypi
beautifulsoup4            4.12.2             pyha770c72_0    conda-forge
black                     23.11.0                  pypi_0    pypi
bleach                    6.1.0              pyhd8ed1ab_0    conda-forge
boltons                   23.0.0             pyhd8ed1ab_0    conda-forge
brotli-python             1.1.0           py311ha891d26_1    conda-forge
bzip2                     1.0.8                h93a5062_5    conda-forge
c-ares                    1.23.0               h93a5062_0    conda-forge
ca-certificates           2023.11.17           hf0a4a13_0    conda-forge
cachecontrol              0.13.1             pyhd8ed1ab_0    conda-forge
cachecontrol-with-filecache 0.13.1             pyhd8ed1ab_0    conda-forge
cached-property           1.5.2                hd8ed1ab_1    conda-forge
cached_property           1.5.2              pyha770c72_1    conda-forge
cairo                     1.18.0               hd1e100b_0    conda-forge
cctools                   973.0.1             hd1ac623_15    conda-forge
cctools_osx-arm64         973.0.1             h2a25c60_15    conda-forge
certifi                   2023.11.17         pyhd8ed1ab_0    conda-forge
cffi                      1.16.0          py311h4a08483_0    conda-forge
cfgv                      3.4.0                    pypi_0    pypi
chardet                   5.2.0           py311h267d04e_1    conda-forge
charset-normalizer        3.3.2              pyhd8ed1ab_0    conda-forge
cleo                      2.1.0              pyhd8ed1ab_0    conda-forge
click                     8.1.7           unix_pyh707e725_0    conda-forge
click-default-group       1.2.4              pyhd8ed1ab_0    conda-forge
cloup                     2.1.2              pyhd8ed1ab_0    conda-forge
colorama                  0.4.6              pyhd8ed1ab_0    conda-forge
comm                      0.1.4              pyhd8ed1ab_0    conda-forge
conda                     23.11.0         py311h267d04e_1    conda-forge
conda-build               3.28.1          py311h267d04e_0    conda-forge
conda-index               0.3.0              pyhd8ed1ab_1    conda-forge
conda-libmamba-solver     23.12.0            pyhd8ed1ab_0    conda-forge
conda-package-handling    2.2.0              pyh38be061_0    conda-forge
conda-package-streaming   0.9.0              pyhd8ed1ab_0    conda-forge
conda-souschef            2.2.3              pyhd8ed1ab_0    conda-forge
contourpy                 1.2.0                    pypi_0    pypi
coverage                  7.3.2                    pypi_0    pypi
crashtest                 0.4.1              pyhd8ed1ab_0    conda-forge
cryptography              41.0.7                   pypi_0    pypi
cycler                    0.12.1                   pypi_0    pypi
cython                    3.0.6           py311hbaf5611_0    conda-forge
debugpy                   1.8.0           py311ha891d26_1    conda-forge
decorator                 5.1.1              pyhd8ed1ab_0    conda-forge
defusedxml                0.7.1              pyhd8ed1ab_0    conda-forge
deprecated                1.2.14                   pypi_0    pypi
distlib                   0.3.7                    pypi_0    pypi
distro                    1.8.0              pyhd8ed1ab_0    conda-forge
docutils                  0.17.1                   pypi_0    pypi
dulwich                   0.21.7          py311h05b510d_0    conda-forge
entrypoints               0.4                pyhd8ed1ab_0    conda-forge
exceptiongroup            1.2.0              pyhd8ed1ab_0    conda-forge
execnet                   2.0.2                    pypi_0    pypi
executing                 2.0.1              pyhd8ed1ab_0    conda-forge
expat                     2.5.0                hb7217d7_1    conda-forge
ffmpeg                    4.3.2                h38cfed3_3    conda-forge
filelock                  3.13.1             pyhd8ed1ab_0    conda-forge
flake8                    6.1.0                    pypi_0    pypi
flake8-bugbear            23.11.28                 pypi_0    pypi
flake8-builtins           2.2.0                    pypi_0    pypi
flake8-comprehensions     3.14.0                   pypi_0    pypi
flake8-docstrings         1.7.0                    pypi_0    pypi
flake8-plugin-utils       1.3.3                    pypi_0    pypi
flake8-pytest-style       1.7.2                    pypi_0    pypi
flake8-rst-docstrings     0.3.0                    pypi_0    pypi
flake8-simplify           0.14.6                   pypi_0    pypi
fmt                       10.1.1               h6aa02a4_1    conda-forge
font-ttf-dejavu-sans-mono 2.37                 hab24e00_0    conda-forge
font-ttf-inconsolata      3.000                h77eed37_0    conda-forge
font-ttf-source-code-pro  2.038                h77eed37_0    conda-forge
font-ttf-ubuntu           0.83                 h77eed37_1    conda-forge
fontconfig                2.14.2               h82840c6_0    conda-forge
fonts-conda-ecosystem     1                             0    conda-forge
fonts-conda-forge         1                             0    conda-forge
fonttools                 4.45.1                   pypi_0    pypi
fqdn                      1.5.1              pyhd8ed1ab_0    conda-forge
freetype                  2.12.1               hadb7bae_2    conda-forge
fribidi                   1.0.10               h27ca646_0    conda-forge
furo                      2022.9.29                pypi_0    pypi
future                    0.18.3             pyhd8ed1ab_0    conda-forge
gettext                   0.21.1               h0186832_0    conda-forge
gitdb                     4.0.11                   pypi_0    pypi
gitpython                 3.1.40                   pypi_0    pypi
glcontext                 2.5.0           py311hbaf5611_0    conda-forge
glib                      2.78.3               h9e231a4_0    conda-forge
glib-tools                2.78.3               h9e231a4_0    conda-forge
gmp                       6.3.0                h965bd2d_0    conda-forge
gnutls                    3.6.13               h706517b_1    conda-forge
graphite2                 1.3.13            h9f76cd9_1001    conda-forge
grayskull                 2.5.1              pyhd8ed1ab_0    conda-forge
harfbuzz                  8.3.0                h8f0ba13_0    conda-forge
icu                       73.2                 hc8870d7_0    conda-forge
identify                  2.5.32                   pypi_0    pypi
idna                      3.6                pyhd8ed1ab_0    conda-forge
imagesize                 1.4.1                    pypi_0    pypi
importlib-metadata        7.0.0              pyha770c72_0    conda-forge
importlib_metadata        7.0.0                hd8ed1ab_0    conda-forge
importlib_resources       6.1.1              pyhd8ed1ab_0    conda-forge
iniconfig                 2.0.0                    pypi_0    pypi
ipykernel                 6.26.0             pyh3cd1d5f_0    conda-forge
ipython                   8.18.1             pyh707e725_3    conda-forge
isoduration               20.11.0            pyhd8ed1ab_0    conda-forge
isort                     5.12.0                   pypi_0    pypi
isosurfaces               0.1.0              pyhd8ed1ab_0    conda-forge
jaraco.classes            3.3.0              pyhd8ed1ab_0    conda-forge
jedi                      0.19.1             pyhd8ed1ab_0    conda-forge
jinja2                    3.1.2              pyhd8ed1ab_1    conda-forge
json5                     0.9.14             pyhd8ed1ab_0    conda-forge
jsonpatch                 1.33               pyhd8ed1ab_0    conda-forge
jsonschema-with-format-nongpl 4.20.0             pyhd8ed1ab_0    conda-forge
jupyter-lsp               2.2.1              pyhd8ed1ab_0    conda-forge
jupyter_client            8.6.0              pyhd8ed1ab_0    conda-forge
jupyter_core              5.5.0           py311h267d04e_0    conda-forge
jupyter_events            0.9.0              pyhd8ed1ab_0    conda-forge
jupyter_server            2.12.1             pyhd8ed1ab_0    conda-forge
jupyter_server_terminals  0.5.0              pyhd8ed1ab_0    conda-forge
jupyterlab                4.0.9              pyhd8ed1ab_0    conda-forge
jupyterlab_pygments       0.3.0              pyhd8ed1ab_0    conda-forge
jupyterlab_server         2.25.2             pyhd8ed1ab_0    conda-forge
keyring                   24.3.0          py311h267d04e_0    conda-forge
kiwisolver                1.4.5                    pypi_0    pypi
krb5                      1.21.2               h92f50d5_0    conda-forge
lame                      3.100             h1a8c8d9_1003    conda-forge
lcms2                     2.15                 hd835a16_1    conda-forge
ld64                      609                 h89fa09d_15    conda-forge
ld64_osx-arm64            609                 hc4dc95b_15    conda-forge
lerc                      4.0.0                h9a09cb3_0    conda-forge
libarchive                3.7.2                hcacb583_1    conda-forge
libblas                   3.9.0           20_osxarm64_openblas    conda-forge
libcblas                  3.9.0           20_osxarm64_openblas    conda-forge
libcurl                   8.5.0                h2d989ff_0    conda-forge
libcxx                    16.0.6               h4653b0c_0    conda-forge
libdeflate                1.18                 h1a8c8d9_0    conda-forge
libedit                   3.1.20191231         hc8eb9b7_2    conda-forge
libev                     4.33                 h93a5062_2    conda-forge
libexpat                  2.5.0                hb7217d7_1    conda-forge
libffi                    3.4.2                h3422bc3_5    conda-forge
libgfortran               5.0.0           13_2_0_hd922786_1    conda-forge
libgfortran5              13.2.0               hf226fd6_1    conda-forge
libglib                   2.78.3               hb438215_0    conda-forge
libiconv                  1.17                 h0d3ecfb_1    conda-forge
libjpeg-turbo             2.1.5.1              hb547adb_1    conda-forge
liblapack                 3.9.0           20_osxarm64_openblas    conda-forge
liblief                   0.12.3               hb7217d7_0    conda-forge
libllvm15                 15.0.7               h2621b3d_4    conda-forge
libmamba                  1.5.5                h0a6dc31_0    conda-forge
libmambapy                1.5.5           py311hab8398d_0    conda-forge
libnghttp2                1.58.0               ha4dd798_1    conda-forge
libopenblas               0.3.25          openmp_h6c19121_0    conda-forge
libpng                    1.6.39               h76d750c_0    conda-forge
libsodium                 1.0.18               h27ca646_1    conda-forge
libsolv                   0.7.27               h9e231a4_0    conda-forge
libsqlite                 3.44.2               h091b4b1_0    conda-forge
libssh2                   1.11.0               h7a5bd25_0    conda-forge
libtiff                   4.5.1                h23a1a89_1    conda-forge
libwebp-base              1.3.2                hb547adb_0    conda-forge
libxcb                    1.15                 hf346824_0    conda-forge
libxml2                   2.12.3               h0d0cfa8_0    conda-forge
libzlib                   1.2.13               h53f4e23_5    conda-forge
llvm-openmp               17.0.6               hcd81f8e_0    conda-forge
lz4-c                     1.9.4                hb7217d7_0    conda-forge
lzo                       2.10              h642e427_1000    conda-forge
manim                     0.18.0                   pypi_0    pypi
manimpango                0.5.0           py311ha6b7259_0    conda-forge
mapbox_earcut             1.0.1           py311he4fd1f5_0    conda-forge
markdown-it-py            2.2.0                    pypi_0    pypi
markupsafe                2.1.3           py311heffc1b2_1    conda-forge
matplotlib                3.8.2                    pypi_0    pypi
matplotlib-inline         0.1.6              pyhd8ed1ab_0    conda-forge
mccabe                    0.7.0                    pypi_0    pypi
mdit-py-plugins           0.3.5                    pypi_0    pypi
mdurl                     0.1.2                    pypi_0    pypi
menuinst                  2.0.1           py311h267d04e_0    conda-forge
mistune                   3.0.2              pyhd8ed1ab_0    conda-forge
moderngl                  5.8.2           py311h9e438b8_1    conda-forge
moderngl-window           2.4.1              pyhd8ed1ab_0    conda-forge
more-itertools            10.1.0             pyhd8ed1ab_0    conda-forge
msgpack-python            1.0.7           py311hd03642b_0    conda-forge
multipledispatch          0.6.0                      py_0    conda-forge
mypy-extensions           1.0.0                    pypi_0    pypi
myst-parser               0.17.2                   pypi_0    pypi
nbclient                  0.8.0              pyhd8ed1ab_0    conda-forge
nbconvert-core            7.12.0             pyhd8ed1ab_0    conda-forge
nbformat                  5.9.2              pyhd8ed1ab_0    conda-forge
ncurses                   6.4                  h463b476_2    conda-forge
nest-asyncio              1.5.8              pyhd8ed1ab_0    conda-forge
nettle                    3.6                  hc6a1b29_0    conda-forge
networkx                  3.2.1              pyhd8ed1ab_0    conda-forge
nodeenv                   1.8.0                    pypi_0    pypi
notebook-shim             0.2.3              pyhd8ed1ab_0    conda-forge
numpy                     1.26.2          py311h6d074dd_0    conda-forge
openh264                  2.1.1                habe5f53_0    conda-forge
openjpeg                  2.5.0                hbc2ba62_2    conda-forge
openssl                   3.2.0                h0d3ecfb_1    conda-forge
overrides                 7.4.0              pyhd8ed1ab_0    conda-forge
packaging                 23.2               pyhd8ed1ab_0    conda-forge
pandocfilters             1.5.0              pyhd8ed1ab_0    conda-forge
pango                     1.50.14              hcf40dda_2    conda-forge
parso                     0.8.3              pyhd8ed1ab_0    conda-forge
patch                     2.7.6             h27ca646_1002    conda-forge
pathspec                  0.11.2                   pypi_0    pypi
pcre2                     10.42                h26f9a81_0    conda-forge
pickleshare               0.7.5                   py_1003    conda-forge
pillow                    10.0.1                   pypi_0    pypi
pip                       23.3.1             pyhd8ed1ab_0    conda-forge
pixman                    0.42.2               h13dd4ca_0    conda-forge
pkginfo                   1.9.6              pyhd8ed1ab_0    conda-forge
pkgutil-resolve-name      1.3.10             pyhd8ed1ab_1    conda-forge
platformdirs              4.0.0                    pypi_0    pypi
pluggy                    1.3.0              pyhd8ed1ab_0    conda-forge
poetry                    1.7.1           osx_pyh534df25_0    conda-forge
poetry-core               1.8.1              pyhd8ed1ab_0    conda-forge
poetry-plugin-export      1.6.0              pyhd8ed1ab_0    conda-forge
pre-commit                3.5.0                    pypi_0    pypi
progressbar2              4.2.0              pyhd8ed1ab_0    conda-forge
prometheus_client         0.19.0             pyhd8ed1ab_0    conda-forge
prompt-toolkit            3.0.42             pyha770c72_0    conda-forge
psutil                    5.9.5           py311heffc1b2_1    conda-forge
psutil-wheels             5.8.0                    pypi_0    pypi
pthread-stubs             0.4               h27ca646_1001    conda-forge
pure_eval                 0.2.2              pyhd8ed1ab_0    conda-forge
py                        1.11.0                   pypi_0    pypi
py-lief                   0.12.3          py311ha397e9f_0    conda-forge
pybind11-abi              4                    hd8ed1ab_3    conda-forge
pycairo                   1.25.1          py311hb98ac6d_0    conda-forge
pycodestyle               2.11.1                   pypi_0    pypi
pycosat                   0.6.6           py311heffc1b2_0    conda-forge
pycparser                 2.21               pyhd8ed1ab_0    conda-forge
pydocstyle                6.3.0                    pypi_0    pypi
pydub                     0.25.1             pyhd8ed1ab_0    conda-forge
pyflakes                  3.1.0                    pypi_0    pypi
pygithub                  2.1.1                    pypi_0    pypi
pyglet                    1.5.27          py311h267d04e_4    conda-forge
pygments                  2.17.2             pyhd8ed1ab_0    conda-forge
pyjwt                     2.8.0                    pypi_0    pypi
pynacl                    1.5.0                    pypi_0    pypi
pyobjc-core               10.1            py311h665608e_0    conda-forge
pyobjc-framework-cocoa    10.1            py311h665608e_0    conda-forge
pyparsing                 3.1.1                    pypi_0    pypi
pyproject_hooks           1.0.0              pyhd8ed1ab_0    conda-forge
pyrr                      0.10.3                     py_0    conda-forge
pysocks                   1.7.1              pyha2e5f31_6    conda-forge
pytest                    7.4.3                    pypi_0    pypi
pytest-cov                4.1.0                    pypi_0    pypi
pytest-forked             1.6.0                    pypi_0    pypi
pytest-xdist              2.5.0                    pypi_0    pypi
python                    3.11.6          h47c9636_0_cpython    conda-forge
python-build              1.0.3              pyhd8ed1ab_0    conda-forge
python-dateutil           2.8.2              pyhd8ed1ab_0    conda-forge
python-installer          0.7.0              pyhd8ed1ab_0    conda-forge
python-json-logger        2.0.7              pyhd8ed1ab_0    conda-forge
python-libarchive-c       5.0             py311h267d04e_2    conda-forge
python-utils              3.8.1              pyhd8ed1ab_0    conda-forge
python_abi                3.11                    4_cp311    conda-forge
pytz                      2023.3.post1       pyhd8ed1ab_0    conda-forge
pyyaml                    6.0.1           py311heffc1b2_1    conda-forge
pyzmq                     25.1.2          py311h6727e71_0    conda-forge
rapidfuzz                 3.5.2           py311hbaf5611_0    conda-forge
readline                  8.2                  h92ec313_1    conda-forge
reproc                    14.2.4.post0         h93a5062_1    conda-forge
reproc-cpp                14.2.4.post0         h965bd2d_1    conda-forge
requests                  2.31.0             pyhd8ed1ab_0    conda-forge
requests-toolbelt         1.0.0              pyhd8ed1ab_0    conda-forge
restructuredtext-lint     1.4.0                    pypi_0    pypi
rfc3339-validator         0.1.4              pyhd8ed1ab_0    conda-forge
rfc3986-validator         0.1.1              pyh9f0ad1d_0    conda-forge
rich                      13.7.0             pyhd8ed1ab_0    conda-forge
ripgrep                   14.0.3               h5ef7bb8_1    conda-forge
ruamel.yaml               0.18.5          py311h05b510d_0    conda-forge
ruamel.yaml.clib          0.2.7           py311heffc1b2_2    conda-forge
ruamel.yaml.jinja2        0.2.4                      py_1    conda-forge
scipy                     1.11.4          py311h2b215a9_0    conda-forge
screeninfo                0.8.1           py311h267d04e_1    conda-forge
semver                    3.0.2              pyhd8ed1ab_0    conda-forge
send2trash                1.8.2              pyhd1c38e8_0    conda-forge
setuptools                69.0.2                   pypi_0    pypi
shellingham               1.5.4              pyhd8ed1ab_0    conda-forge
sigtool                   0.1.3                h44b9a77_0    conda-forge
six                       1.16.0             pyh6c4a22f_0    conda-forge
skia-pathops              0.8.0.post1     py311hd03642b_2    conda-forge
smmap                     5.0.1                    pypi_0    pypi
sniffio                   1.3.0              pyhd8ed1ab_0    conda-forge
snowballstemmer           2.2.0                    pypi_0    pypi
soupsieve                 2.5                pyhd8ed1ab_1    conda-forge
sphinx                    4.5.0                    pypi_0    pypi
sphinx-basic-ng           1.0.0b2                  pypi_0    pypi
sphinx-copybutton         0.5.2                    pypi_0    pypi
sphinxcontrib-applehelp   1.0.4                    pypi_0    pypi
sphinxcontrib-devhelp     1.0.2                    pypi_0    pypi
sphinxcontrib-htmlhelp    2.0.1                    pypi_0    pypi
sphinxcontrib-jsmath      1.0.1                    pypi_0    pypi
sphinxcontrib-programoutput 0.17                     pypi_0    pypi
sphinxcontrib-qthelp      1.0.3                    pypi_0    pypi
sphinxcontrib-serializinghtml 1.1.5                    pypi_0    pypi
sphinxext-opengraph       0.9.0                    pypi_0    pypi
srt                       3.5.3           py311h267d04e_0    conda-forge
stack_data                0.6.2              pyhd8ed1ab_0    conda-forge
stdlib-list               0.8.0              pyhd8ed1ab_0    conda-forge
svgelements               1.9.6              pyhd8ed1ab_0    conda-forge
tapi                      1100.0.11            he4954df_0    conda-forge
terminado                 0.18.0             pyh31c8845_0    conda-forge
tinycss2                  1.2.1              pyhd8ed1ab_0    conda-forge
tk                        8.6.13               h5083fa2_1    conda-forge
tomli                     2.0.1              pyhd8ed1ab_0    conda-forge
tomli-w                   1.0.0              pyhd8ed1ab_0    conda-forge
tomlkit                   0.12.3             pyha770c72_0    conda-forge
tornado                   6.3.3           py311heffc1b2_1    conda-forge
tqdm                      4.66.1             pyhd8ed1ab_0    conda-forge
traitlets                 5.14.0             pyhd8ed1ab_0    conda-forge
trove-classifiers         2023.11.29         pyhd8ed1ab_0    conda-forge
truststore                0.8.0              pyhd8ed1ab_0    conda-forge
types-decorator           0.1.7                    pypi_0    pypi
types-docutils            0.20.0.3                 pypi_0    pypi
types-pillow              10.1.0.2                 pypi_0    pypi
types-pygments            2.17.0.0                 pypi_0    pypi
types-python-dateutil     2.8.19.14          pyhd8ed1ab_0    conda-forge
types-setuptools          69.0.0.0                 pypi_0    pypi
typing-extensions         4.8.0                    pypi_0    pypi
typing_utils              0.1.0              pyhd8ed1ab_0    conda-forge
tzdata                    2023c                h71feb2d_0    conda-forge
uri-template              1.3.0              pyhd8ed1ab_0    conda-forge
urllib3                   2.1.0              pyhd8ed1ab_0    conda-forge
virtualenv                20.25.0            pyhd8ed1ab_0    conda-forge
watchdog                  2.3.1           py311he2be06e_0    conda-forge
wcwidth                   0.2.12             pyhd8ed1ab_0    conda-forge
webcolors                 1.13               pyhd8ed1ab_0    conda-forge
webencodings              0.5.1              pyhd8ed1ab_2    conda-forge
websocket-client          1.7.0              pyhd8ed1ab_0    conda-forge
wheel                     0.42.0             pyhd8ed1ab_0    conda-forge
wrapt                     1.16.0                   pypi_0    pypi
x264                      1!161.3030           h3422bc3_1    conda-forge
xattr                     0.10.1          py311heffc1b2_1    conda-forge
xorg-libxau               1.0.11               hb547adb_0    conda-forge
xorg-libxdmcp             1.1.3                h27ca646_0    conda-forge
xz                        5.2.6                h57fd34a_0    conda-forge
yaml                      0.2.5                h3422bc3_2    conda-forge
yaml-cpp                  0.8.0                h13dd4ca_0    conda-forge
zeromq                    4.3.5                h965bd2d_0    conda-forge
zipp                      3.17.0             pyhd8ed1ab_0    conda-forge
zlib                      1.2.13               h53f4e23_5    conda-forge
zstandard                 0.22.0          py311h67b91a1_0    conda-forge
zstd                      1.5.5                h4f39d0f_0    conda-forge
ubaldot commented 7 months ago

System specifications

Output of ffmpeg -version:

ffmpeg version 6.0 Copyright (c) 2000-2023 the FFmpeg developers
built with Apple clang version 15.0.0 (clang-1500.0.40.1)
configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/6.0_1 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags='-Wl,-ld_classic' --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-libdav1d --enable-libjxl --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libsvtav1 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-audiotoolbox --enable-neon
libavutil      58.  2.100 / 58.  2.100
libavcodec     60.  3.100 / 60.  3.100
libavformat    60.  3.100 / 60.  3.100
libavdevice    60.  1.100 / 60.  1.100
libavfilter     9.  3.100 /  9.  3.100
libswscale      7.  1.100 /  7.  1.100
libswresample   4. 10.100 /  4. 10.100
libpostproc    57.  1.100 / 57.  1.100
behackl commented 7 months ago

The (first) example your documentation build fails to render is this:

class VectorArrow(Scene):
    def construct(self):
        dot = Dot(ORIGIN)
        arrow = Arrow(ORIGIN, [2, 2, 0], buff=0)
        numberplane = NumberPlane()
        origin_text = Text('(0, 0)').next_to(dot, DOWN)
        tip_text = Text('(2, 2)').next_to(arrow.get_end(), RIGHT)
        self.add(numberplane, dot, arrow, origin_text, tip_text)

From the error message it seems like Text('(0, 0)') might be the culprit. Can you try and run python -c "from manim import Text; Text('hello world')" in your conda environment to confirm that this is the issue?

ubaldot commented 7 months ago

Thanks for the support. I copy/paste directly from the terminal:

ubaldot ~/Documents/github/manim [test]
$ python -c "from manim import Text; Text('hello world')"
ubaldot ~/Documents/github/manim [test]
$

So, apparently Text is working well in this use-case.

Moreover, if I run the snippet you posted alone I get this:

image
ubaldot commented 6 months ago

Small update. I tried to build in a python 3.12 environment, but I have some compatibility issues when installing packages. For example, if I conda install screeninfo I get the following:

LibMambaUnsatisfiableError: Encountered problems while solving:
  - package screeninfo-0.8-py310hbe9552e_1 requires python >=3.10,<3.11.0a0 *_cpython, but none of the providers can be installed

Could not solve for environment specs
The following packages are incompatible
├─ pin-1 is installable and it requires
│  └─ python 3.12.* , which can be installed;
└─ screeninfo is not installable because there are no viable options
   ├─ screeninfo [0.8|0.8.1] would require
   │  └─ python >=3.10,<3.11.0a0 *_cpython, which conflicts with any installable versions previously reported;
   ├─ screeninfo [0.8|0.8.1] would require
   │  └─ python >=3.8,<3.9.0a0 *_cpython, which conflicts with any installable versions previously reported;
   ├─ screeninfo [0.8|0.8.1] would require
   │  └─ python >=3.9,<3.10.0a0 *_cpython, which conflicts with any installable versions previously reported;
   └─ screeninfo 0.8.1 would require
      └─ python >=3.11,<3.12.0a0 *_cpython, which conflicts with any installable versions previously reported.

Pins seem to be involved in the conflict. Currently pinned specs:
 - python 3.12.* (labeled as 'pin-1')

I am not sure what is that but it seems that screeninfo requires python >= 3.11, <3.12.0a0 and conda seems smart enough to detect this requirement and prevent the installation.