Releases: ManimCommunity/manim
Manim v0.19.0
Changelog
The full curated and commented changelog can be found at https://docs.manim.community/en/latest/changelog/0.19.0-changelog.html.
What's Changed
- feat: Add three animations that together simulate a typing animation by @VinhPhmCng in #3612
- Fixed action for building downloadable documentation by @JasonGrace2282 in #3737
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #3739
- Fixes #3744 - underline tag should be in the documentation. by @anagorko in #3745
- Bump tqdm from 4.66.1 to 4.66.3 by @dependabot in #3746
- Bump jinja2 from 3.1.3 to 3.1.4 by @dependabot in #3750
- Add typehints to
manim.utils.iterables
by @JasonGrace2282 in #3751 - Let
SceneFileWriter
accessffmpeg
viaav
instead of via external process by @behackl in #3501 - Use --py39-plus in pre-commit by @JasonGrace2282 in #3761
- Optimized
manim.utils.bezier.is_closed()
by @chopan050 in #3768 - Created and optimized Bézier splitting functions such as
partial_bezier_points()
inmanim.utils.bezier
by @chopan050 in #3766 - Bump requests from 2.31.0 to 2.32.0 by @dependabot in #3776
- Fix assertions and improve error messages when adding submobjects by @chopan050 in #3756
- Add pyproject for ruff formatting by @JasonGrace2282 in #3777
- pre-commit change to ruff by @JasonGrace2282 in #3779
- Ignore Ruff format in git blame by @Viicos in #3781
- Fixed
there_and_back_with_pause()
rate function behaviour with differentpause_ratio
values by @jkjkil4 in #3778 - Optimize
VMobject
methods which append topoints
by @chopan050 in #3765 - Add
@
shorthand forCoordinateSystem
methodscoords_to_point
(c2p
) andpoint_to_coords
(p2c
) by @JasonGrace2282 in #3754 - [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #3784
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #3794
- Add Ruff Lint by @JasonGrace2282 in #3780
- Replace Pyupgrade with Ruff rule by @JasonGrace2282 in #3795
- Bump tornado from 6.4 to 6.4.1 by @dependabot in #3796
- Fixing the
get_nth_subpath
function in "opengl_vectorized_mobject.py". by @yang-tsao in #3790 - [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #3801
- Add typings to
OpenGLMobject
by @chopan050 in #3803 - fix: importing manim should not trigger pygments.styles.get_all_styles by @goldenphoenix713 in #3797
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #3809
- Bump urllib3 from 2.2.1 to 2.2.2 by @dependabot in #3810
- Fix MacOS LaTeX CI by @JasonGrace2282 in #3812
- Fixed infinite loop in OpenGL
BackgroundRectangle.get_color()
by @camburd2 in #3732 - docs(contributing): add manim.typing guide by @JasonGrace2282 in #3669
- Fix
DiGraph
edges not fading correctly onFadeIn
andFadeOut
by @Nikhil-42 in #3786 - [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #3823
- feat(autoaliasattr): Implement Documentation of TypeVar's by @JasonGrace2282 in #3818
- Fixed
Arrow3D.put_start_and_end_on()
to use the actual end of the arrow by @SirJamesClarkMaxwell in #3706 - Optimized
manim.utils.bezier.get_smooth_cubic_bezier_handle_points()
by @chopan050 in #3767 - Fix docker build by @JasonGrace2282 in #3827
- Doc: add docstrings to Brace by @biinnnggggg in #3715
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #3834
- Bump docker/build-push-action from 5 to 6 by @dependabot in #3835
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #3844
- Bump certifi from 2024.2.2 to 2024.7.4 by @dependabot in #3841
- Fix incorrect version number in plugin section in docs by @JasonGrace2282 in #3849
- Bump zipp from 3.18.2 to 3.19.1 by @dependabot in #3847
- Rename
manim.typing.Image
type aliases toPixelArray
to avoid conflict withPIL.Image
by @chopan050 in #3851 - Change from tempconfig to a config fixture in tests by @JasonGrace2282 in #3853
- Fix :attr:
.ManimConfig.format
not updating movie file extension by @JasonGrace2282 in #3839 - Rewrite
manim.utils.bezier.get_quadratic_approximation_of_cubic()
to produce curves which can be animated smoothly by @chopan050 in #3829 - Log execution time of scene rendering in the Manim Checkhealth command by @chopan050 in #3855
- Optimize
VMobject.pointwise_become_partial()
by @chopan050 in #3760 - Update installation instructions for MacOS (via dedicated brew formula) by @Elastino in #3857
- Update docker to use ENV x=y instead of ENV x y by @JasonGrace2282 in #3858
- Fixed behavior of
config.background_opacity < 1
and duplicated log messages by @abul4fia in #3680 - [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #3865
- Fix pre-commit linting by @JasonGrace2282 in #3877
- Use ruff for pytest style by @JasonGrace2282 in #3872
- feat: set_default for Animation class by @christopher-hampson in #3876
- Use ruff instead of flake8-simplify by @JasonGrace2282 in #3873
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #3880
- Change flake8-comprehensions and flake8-bugbear to ruff by @JasonGrace2282 in #3882
- Rename parameters and variables conflicting with builtin functions by @JasonGrace2282 in #3884
- Added
colorscale
toaxes.plot()
by @alembcke in #3148 - Fix :meth:
.OpenGLMobject.invert
not reassembling family by @JasonGrace2282 in #3885 - Experimenting with an HSV class by @MrDiver in #3518
- Fix typo from HSV PR by @JasonGrace2282 in #3887
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #3889
- Replace the TypeError message code in the _typecheck_input method in … by @irvanalhaq9 in #3890
- Significantly reduce rendering time with a separate thread for writing frames to stream by @smu160 in #3888
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #3896
- Lock
poetry.lock
by @JasonGrace2282 in #3895 - fix a wrong type mark in a function head. by @fogsong233 in #3902
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #3904
- bugfix: convert non-
.wav
/.raw
files to.wav
before passing to pydub by @behackl in #3832 - [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #3911
- fix type hint, change int to float by @irvanalhaq9 in #3916
- [pre-commit.ci] pre-commit autoupdate by @pre-commit-ci in #3918
- Simplify Sector Class by Removing Redundant Parameters by @irvanalhaq9 in #3922
- Changing the 'side_length' attribute to a property by @irvanalhaq9 in #3901
- Standardize docstrings with ruff pydocstyle rules by @JasonGrace2282 in https://...
Manim v0.18.1
What's Changed
Breaking Changes and Deprecations
- Removed deprecated
manim new
command by @chopan050 in #3512 - Removed support for dynamic plugin imports by @Viicos in #3524
- Remove meth:
.Mobject.wag
by @JasonGrace2282 in #3539 - Remove deprecated parameters and animations by @JasonGrace2282 in #3688
New Features
- Added
cap_style
feature toVMobject
by @MathItYT in #3516 - Allow hiding version splash by @jeertmans in #3329
- Added the ability to pass lists and generators to
Scene.play()
by @MrDiver in #3365 - Added
--preview_command
cli flag by @JasonGrace2282 in #3615
Fixed Bugs and Enhancements
- Allow accessing ghost vectors in :class:
.LinearTransformationScene
by @JasonGrace2282 in #3435 - Optimized
get_unit_normal()
and replacednp.cross()
with customcross()
inmanim.utils.space_ops
by @chopan050 in #3494 - Implement caching of fonts list to improve runtime performance by @MrDiver in #3316
- Reformatting the
--save_sections
output to have the format<Scene>_<SecNum>_<SecName><extension>
by @doaamuham in #3499 - Account for dtype in the pixel array so the maximum value stays correct in the invert function by @jeertmans in #3493
- Added
grid_lines
attribute toRectangle
to add individual styling to the grid lines by @RobinPH in #3428 - Fixed rectangle grid properties (#3082) by @pauluhlenbruck in #3513
- Fixed animations with zero runtime length to give a useful error instead of a broken pipe by @MrDiver in #3491
- Fixed stroke width being ignored by
StreamLines
with a single color by @yashm277 in #3436 - Fixed formatting of
MoveAlongPath
docs by @JasonGrace2282 in #3541 - Added helpful hints to
VGroup.add()
error message by @vvolhejn in #3561 - Made
earclip_triangulation
more robust by @hydromelvictor in #3574 - Refactored
TexTemplate
by @Viicos in #3520 - Fixed
write_subcaption_file
error when using OpenGL renderer by @yuan-xy in #3546 - Fixed
get_arc_center()
returning reference of point by @sparshg in #3599 - Improved handling of specified font name by @staghado in #3429
- Fixing the behavior of
.become
to not modify target mobject via side effects fix color linking by @MrDiver in #3508 - Fixed bug in :class:
.VMobjectFromSVGPath
by @abul4fia in #3677 - Fix for windows cp1252 encoding failure (fix test pipeline) by @JasonGrace2282 in #3687
- Fix NameError in try... except by @JasonGrace2282 in #3694
- Fix successive calls of :meth:
.LinearTransformationScene.apply_matrix
by @SirJamesClarkMaxwell in #3675 - Fixed
Mobject.put_start_and_end_on
with same start and end point by @MontroyJosh in #3718 - Fixed issue where
SpiralIn
doesn't show elements by @Gixtox in #3589 - Cleaned
Graph
layouts and increase flexibility by @Nikhil-42 in #3434 AnimationGroup
: optimizedinterpolate()
and fixed alpha bug onfinish()
by @chopan050 in #3542- Fixed warning about missing plugin
""
by @behackl in #3734
Documentation
- Typo in
indication
documentation by @jcep in #3477 - Fixed typo: 360° to 180° in quickstart tutorial by @szchixy in #3498
- Fixed typo in mobject docstring:
line
->square
by @yuan-xy in #3509 - Explain
.Transform
vs.ReplacementTransform
in quickstart examples by @JasonGrace2282 in #3500 - Fixed formatting in building blocks tutorial by @MrDiver in #3515
- Fixed
Indicate
docstring typo by @Lawqup in #3461 - Added Documentation to
.to_edge
andto_corner
by @TheMathematicFanatic in #3408 - Added some words about Cairo 1.18 by @jeertmans in #3530
- Fixed typo of
get_y_axis_label
parameter documentation by @yuan-xy in #3547 - Added note in docstring of
ManimColor
about class constructors by @JasonGrace2282 in #3554 - Improve documentation section about contributing to docs by @chopan050 in #3555
- Removed duplicated documentation for -s / --save_last_frame CLI flag by @Gixtox in #3528
- Updated Docker instructions to use bash from the PATH by @NotWearingPants in #3582
- Fixed typo in
value_tracker.py
by @yuan-xy in #3594 - Added
ref_class
forBooleanOperations
in Example Gallery by @JasonGrace2282 in #3598 - Changed
Vector3
toVector3D
in contributing docs by @JasonGrace2282 in #3639 - Added some examples for
Mobject
/VMobject
methods by @JasonGrace2282 in #3641 - Fixed broken link to Poetry's installation guide in the documentation by @biinnnggggg in #3692
- Fixed minor grammatical errors found in the index page of the documentation by @biinnnggggg in #3690
- Fixed typo on page about translations by @biinnnggggg in #3696
- Fixed outdated description of CLI option in Manim's Output Settings by @HairlessVillager in #3674
- Mention pixi in installation guide by @pavelzw in #3678
- Updated typing guidelines by @JasonGrace2282 in #3704
- Updated documentation and typings for
ParametricFunction
by @danielzsh in #3703 - Fixed docstring markup in
Rotate
by @TheCrowned in #3721 - Improve consistency in axis label example by @amrear in #3730
Maintenance and Testing
- Fixed wrong path in action building downloadable docs by @behackl in #3450
- Add type hints to
_config
by @Viicos in #3440 - Update dependency constraints, fix deprecation warnings by @Viicos in #3376
- Update Docker base image to python3.12-slim (#3458) by @PikaBlue107 in #3459
- Fixed
line_join
tojoint_type
in example_scenes/basic.py by @szchixy in #3510 - Fixed :attr:
.Mobject.animate
type-hint to allow LSP autocomplete by @JasonGrace2282 in #3543 - Finish TODO's in
contributing/typings.rst
by @JasonGrace2282 in #3545 - Fixed use of
Mobject
's deprecatedget_*()
andset_*()
methods in Cairo tests by @JasonGrace2282 in #3549 - Added support for Manim type aliases in Sphinx docs and added new TypeAliases by @chopan050 in #3484
- Fixed typing of
Animation
by @dandavison in #3568 - Added some TODOs for future use of
ManimFrame
by @chopan050 in #3553 - Fixed typehint of :attr:
InternalPoint2D_Array
by @JasonGrace2282 in #3592 - Fixed error in Windows CI pipeline by @behackl in #3611
- Fixed type hint of indication.py by @yuan-xy in #3613
- Revert vector type aliases to NumPy ndarrays by @chopan050 in #3595
- Run
poetry lock --no-update
by @JasonGrace2282 in #3621 - Code Cleanup: removing unused imports and global variables by @JasonGrace2282 in #3620
- Fixed type hint of
Vector
direction parameter by @JasonGrace2282 in #3640 - Flake8 rule C901 is about McCabe code complexity by @cclauss in https://github.com/ManimCommuni...
Manim v0.18.0.post0
This release is a post-release fixing #3676 (a bug caused by a recent change introduced to the way how SVG files of text are generated by Pango).
Manim v0.18.0
The full changelog can be found at https://docs.manim.community/en/latest/changelog/0.18.0-changelog.html.
Manim v0.17.3
The full changelog can be found at https://docs.manim.community/en/latest/changelog/0.17.3-changelog.html.
Manim v0.17.2
Bugfix release which re-enables the usage of OpenGLSurface
(and other OpenGL Mobjects) without attribute errors.
The full changelog can be found at https://docs.manim.community/en/latest/changelog/0.17.2-changelog.html.
Manim v0.17.1
Bugfix release: this mainly fixes an issue with rendering LaTeX with TexLive-based TeX distributions on Windows.
The full changelog can be found at https://docs.manim.community/en/latest/changelog/0.17.1-changelog.html.
Manim v0.17.0
The full changelog can be found at https://docs.manim.community/en/latest/changelog/0.17.0-changelog.html.
Manim v0.16.0.post0
This release is a post-release fixing #2875.
The changelog for v0.16.0
can be found at https://docs.manim.community/en/latest/changelog/0.16.0-changelog.html.
Manim v0.16.0
The full changelog can be found at https://docs.manim.community/en/latest/changelog/0.16.0-changelog.html.