v0.17.0¶
- Date:
December 02, 2022
Contributors¶
A total of 32 people contributed to this release. People with a ‘+’ by their names authored a patch for the first time.
Alex Lembcke
Alexander Vázquez
Benjamin Hackl
Duc Phat +
Hugues Devimeux
Ievgen Pyrogov +
Isaac Beh +
Jeff Hanke +
John Hammond +
Jérome Eertmans +
Kevin Lubick
Kian-Meng Ang +
Naveen M K
Nick Skriloff +
NotWearingPants
Onur Solmaz +
OpenRefactory, Inc +
Owen Samuel +
Pavel Zwerschke +
Sparsh Goenka
Taxo Rubio
ad-chaos +
fcrozatier
mostly documentation +
vahndi +
The patches included in this release have been reviewed by the following contributors.
Benjamin Hackl
Darylgolden
Hugues Devimeux
Jan-Hendrik Müller
Kevin Lubick
Mohammed Belgoumri
Naveen M K
NotWearingPants
Raghav Goel
Sparsh Goenka
Tristan Schulz
ad-chaos
friedkeenan
Pull requests merged¶
A total of 63 pull requests were merged for this release.
Breaking changes¶
- PR #2898: Ported improved implementation of
SVGMobjectfrom 3b1b/manim The implementation of
SVGMobjectis completely changed in this release. Manim now uses the Python librarysvgelementsto parse SVGs, instead of trying to do it itself. The former class for SVG path objects,SVGPathMobjecthas been replaced (without deprecation) withVMobjectFromSVGPath.If you need to create a mobject from an SVG path string, you can do so via:
import svgelements as se my_path_mobject = VMobjectFromSVGPath(se.Path(my_path_string))
The unused class
TexSymbolhas been removed. The modulesmanim.mobject.svg.svg_pathandmanim.mobject.svg.style_utilsbecame superfluous due to the rework and have been removed.
- PR #2898: Ported improved implementation of
PR #3030: Added support for Python 3.11, dropped support for Python 3.7
Highlights¶
- PR #3049: Added thematic guide for the
manim-voiceoverplugin This new thematic guide provides a brief introduction to
manim-voiceover, a plugin that helps to add voiceovers to your manimations. Supports both working with your own voice as well as synthetically generated voices.
- PR #3049: Added thematic guide for the
New features¶
PR #2883: Added animation
RemoveTextLetterByLetterPR #3016: Implemented
LineJointTypesfor both Cairo and OpenGL rendererPR #3017: Replaced renderer strings with
RendererTypeenum entries
Enhancements¶
PR #2927: Allowed
networkxto return 3D layouts when passingdim=3in thelayout_configof aGraph- PR #3014: Enabled code completion for
Mobject.animate()for some IDEs Uses a Union of the existing Generic Mobject Type T and _Animation Builder as the declared return type from Mobject.animate to improve code completion.
- PR #3014: Enabled code completion for
Fixed bugs¶
PR #2846: Prevent
TransformMatchingTexfrom crashing when there is nothing to fadePR #2885: Always expand user when validating file-paths
PR #2888: Fixed bug with propagation of
tex_templatevalue when usingtempconfigPR #2895: Fixed broken
ShowPassingFlashWithThinningStrokeWidthPR #2920: Fixed alignment of faded lines when passing
faded_line_ratiotoNumberPlanePR #2977: Allow rendering of empty text strings
PR #2992: Fixed
CLI.tex_template_fileconfig file settingPR #3003: Fixed setting
run_timeofSuccessionafter creating the animation objectPR #3019: Fixed rendering SVG paths with multiple move commands
Changes concerning the testing system¶
PR #2893: Improved performance of
test_threed.pyPR #2981: Implemented fallback save behavior for
pytest --show_diffPR #2982: Rewrote unstable tests for
text_mobjectto be non-graphicalPR #2991: Migrated
os.pathtopathlib.Pathin testsPR #3053: Added threshold for pixel value errors in frame comparison tests
Changes to our development infrastructure¶
Code quality improvements and similar refactors¶
PR #2872: Add
extract_frames.pyutility script to help visualize test control dataPR #2877: Fixed binder launch problem by adding missing optional
notebookdependencyPR #2887: Removed empty i18n files that caused filename clashes
PR #2931: Updated
mapbox-earcutPR #2938: Suggested fixes by iCR, OpenRefactory, Inc.
PR #2954: Fixed click version string in
pyproject.tomlPR #2958: Fix missing stub packages for mypy
PR #2975: Fixed broken links in README
PR #2980: Migrate more
os.pathtopathlib.PathPR #2983: Fixed Windows CI Pipeline
PR #2988: Converted all types of parameters in docstrings to proper type annotations
PR #2994: Fixed segmentation faults from doctests under Python 3.10
PR #2995: Added encoding to
openinutils.text_file_writingPR #3032: Bump jupyter-core from 4.11.1 to 4.11.2
PR #3033: Bump pillow from 9.2.0 to 9.3.0
PR #3054: Removed unused
GraphicalUnitTester
New releases¶
PR #3023: Prepared new release: v0.17.0