-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Typing scene #4191
base: main
Are you sure you want to change the base?
Typing scene #4191
Conversation
# Conflicts: # manim/mobject/geometry/arc.py
# Conflicts: # manim/mobject/geometry/polygram.py
Further work on type hinting. Avoid forwarding positional arguments from Arrow to Line in the constructor. Revert "Avoid forwarding positional arguments from Arrow to Line in the constructor." This reverts commit 80ae857. Removed several type ignore statements and addressed comments from JasonGrace2282 Revert "Activate mypy check of mobject.geometry.*" This reverts commit d477c9a. Revert "Removed several type ignore statements and addressed comments from JasonGrace2282" This reverts commit 07bbe3f. Added type annotations to zoomed_scene.py Error count: 308 -> 303 Adding type annotations to all methods in vector_space_scene.py Error count: 303 -> 272 Get rid of no-untyped-call errors from my in the vector_space_scene.py file Error count: 272 -> 343 Handle type issues related to ManimColor in vector_space_scene.py Handle var-annotated issues in vector_space_scene.py Error count: 332 -> 330 Handling has-type type errors in vector_space_scene.py Error count: 330 -> 285 Handled name-defined type issues in vector_space_scene.py Error count: 285 -> 282 Address type issue with calling an untyped method. Error count: 282 -> 281 Fix some typing issues in transform_mathcing_parts.py Change stroke_width to float in vector_space_scene.py Handled a few type errors. Error count: 267 Handled several typing issues in three_d_scene.py Error count: 267 -> 248 Dealing with type errors in scene_file_writer.py Error count: 248 -> 216 Ensured that all methods in scene.py have type declarations. Error count: 216 -> 225 Handle type issues related to interactivity by asserting that the camera is the OpenGLCamera Error count: 225 -> 182 Handle type issues in scene.py Error count: 182 -> 167 Asserting that the renderer or camera is of the proper type to use certain methods. This is mainly related to interactive elements and the 3D camera used in the ThreeDScene Error count: 167 -> 143 Avoid cyclic import of dependencies Error count: 143 -> 143 Handling no-untyped-call type errors in manim/scene/scene.py Error count: 143 -> 131 Handling assignment type errors in manim/scene/*.py Error count: 131 -> 121 Handling arg-type type errors in manim/scene/*.py Error count: 121 -> 116 Handling arg-type type errors in manim/scene/*.py Error count: 116 -> 112 Fixing various type errors Error count: 112 -> 102 Fixing various type errors Error count: 102 -> 97 Fixing various type errors Error count: 97 -> 90 Some aggressive changes to silence a significant number of type errors. Error count: 90 -> 66 Commented out an import (IPython) that makes the CI tests fail. Fix various type errors. More type annotations. Code cleanup. Remove the property mobject_updater_lists of the Scene class as it is not used anywhere. Handle import-untyped typing issues.
@@ -11,6 +11,8 @@ | |||
|
|||
|
|||
from .. import __version__, config | |||
from ..renderer.cairo_renderer import CairoRenderer |
Check failure
Code scanning / CodeQL
Module-level cyclic import Error
manim.renderer.cairo_renderer
manim.gui.gui
definition
import
'CairoRenderer' may not be defined if module
manim.renderer.cairo_renderer
manim.gui.gui
definition
import
'CairoRenderer' may not be defined if module
manim.renderer.cairo_renderer
manim.gui.gui
definition
import
'CairoRenderer' may not be defined if module
manim.renderer.cairo_renderer
manim.gui.gui
definition
import
'CairoRenderer' may not be defined if module
manim.renderer.cairo_renderer
manim.gui.gui
definition
import
'CairoRenderer' may not be defined if module
manim.renderer.cairo_renderer
manim.gui.gui
definition
import
@@ -11,6 +11,8 @@ | |||
|
|||
|
|||
from .. import __version__, config | |||
from ..renderer.cairo_renderer import CairoRenderer | |||
from ..renderer.opengl_renderer import OpenGLRenderer |
Check failure
Code scanning / CodeQL
Module-level cyclic import Error
manim.renderer.opengl_renderer
manim.gui.gui
definition
import
'OpenGLRenderer' may not be defined if module
manim.renderer.opengl_renderer
manim.gui.gui
definition
import
'OpenGLRenderer' may not be defined if module
manim.renderer.opengl_renderer
manim.gui.gui
definition
import
'OpenGLRenderer' may not be defined if module
manim.renderer.opengl_renderer
manim.gui.gui
definition
import
if TYPE_CHECKING: | ||
import numpy.typing as npt | ||
from typing_extensions import Self | ||
|
Check failure
Code scanning / CodeQL
Module-level cyclic import Error
manim.mobject.mobject
manim.renderer.opengl_renderer
definition
import
'Mobject' may not be defined if module
manim.mobject.mobject
manim.renderer.opengl_renderer
definition
import
import numpy.typing as npt | ||
from typing_extensions import Self | ||
|
||
from manim.mobject.mobject import Mobject |
Check failure
Code scanning / CodeQL
Module-level cyclic import Error
manim.scene.scene
manim.renderer.opengl_renderer
definition
import
'Scene' may not be defined if module
manim.scene.scene
manim.renderer.opengl_renderer
definition
import
'Scene' may not be defined if module
manim.scene.scene
manim.renderer.opengl_renderer
definition
import
'Scene' may not be defined if module
manim.scene.scene
manim.renderer.opengl_renderer
definition
import
'Scene' may not be defined if module
manim.scene.scene
manim.renderer.opengl_renderer
definition
import
'Scene' may not be defined if module
manim.scene.scene
manim.renderer.opengl_renderer
definition
import
'Scene' may not be defined if module
manim.scene.scene
manim.renderer.opengl_renderer
definition
import
'Scene' may not be defined if module
manim.scene.scene
manim.renderer.opengl_renderer
definition
import
'Scene' may not be defined if module
manim.scene.scene
manim.renderer.opengl_renderer
definition
import
from ..constants import * | ||
from ..gui.gui import configure_pygui | ||
from ..renderer.cairo_renderer import CairoRenderer | ||
from ..renderer.opengl_renderer import OpenGLRenderer | ||
from ..renderer.opengl_renderer import OpenGLCamera, OpenGLRenderer |
Check failure
Code scanning / CodeQL
Module-level cyclic import Error
manim.renderer.opengl_renderer
manim.scene.scene
definition
import
'OpenGLCamera' may not be defined if module
manim.renderer.opengl_renderer
manim.scene.scene
definition
import
'OpenGLCamera' may not be defined if module
manim.renderer.opengl_renderer
manim.scene.scene
definition
import
'OpenGLCamera' may not be defined if module
manim.renderer.opengl_renderer
manim.scene.scene
definition
import
from ..constants import * | ||
from ..gui.gui import configure_pygui | ||
from ..renderer.cairo_renderer import CairoRenderer | ||
from ..renderer.opengl_renderer import OpenGLRenderer | ||
from ..renderer.opengl_renderer import OpenGLCamera, OpenGLRenderer |
Check failure
Code scanning / CodeQL
Module-level cyclic import Error
manim.renderer.opengl_renderer
manim.scene.scene
definition
import
'OpenGLRenderer' may not be defined if module
manim.renderer.opengl_renderer
manim.scene.scene
definition
import
'OpenGLRenderer' may not be defined if module
manim.renderer.opengl_renderer
manim.scene.scene
definition
import
'OpenGLRenderer' may not be defined if module
manim.renderer.opengl_renderer
manim.scene.scene
definition
import
from typing import TYPE_CHECKING | ||
|
||
if TYPE_CHECKING: | ||
from manim.mobject.mobject import Mobject |
Check failure
Code scanning / CodeQL
Module-level cyclic import Error
manim.mobject.mobject
manim.utils.family_ops
definition
import
'Mobject' may not be defined if module
Overview: What does this pull request change?
Added type annotations to the scene class and related files.
Motivation and Explanation: Why and how do your changes improve the library?
Links to added or changed documentation pages
Further Information and Comments
Reviewer Checklist