v0.7.0#
- Date
June 01, 2021
Contributors#
A total of 45 people contributed to this release. People with a ‘+’ by their names authored a patch for the first time.
André +
Anton Ballmaier
Benjamin Hackl
Clar Fon
Darylgolden
Devin Neal
Hugues Devimeux
Iced-Tea3 +
Jan-Hendrik Müller
Jason Villanueva
Jerónimo Squartini +
KingWampy
Laith Bahodi
Max Stoumen +
Mohammad Al-Fetyani
Naveen M K
NeoPlato
Newell Jensen
Nikhil Garuda
Nikhil Sharma +
PaulCMurdoch +
Philipp Imhof
Raghav Goel
Robert West +
Ryan McCauley +
Skaft +
SwiddisZwei +
e4coder +
friedkeenan
malte-v +
ralphieraccoon
sparshg
The patches included in this release have been reviewed by the following contributors.
Aathish Sivasubrahmanian
Abhijith Muthyala
Anton Ballmaier
Aron
Benjamin Hackl
Darylgolden
Devin Neal
GameDungeon
Hugues Devimeux
Iced-Tea3
Jan-Hendrik Müller
Jason Villanueva
Jerónimo Squartini
KingWampy
Laith Bahodi
Mark Miller
Mohammad Al-Fetyani
Naveen M K
Nikhil Garuda
Oliver
Philipp Imhof
Raghav Goel
Ricky Chon
Ryan McCauley
Skaft
SwiddisZwei
e4coder
friedkeenan
ralphieraccoon
sparshg
Pull requests merged#
A total of 87 pull requests were merged for this release.
Breaking changes#
Highlights#
#1447: Added
PolarPlane
for polar coordinates.- #1490: Added
Polygram
, rework the polygon inheritance tree, and addStar
Add
Polygram
, a generalizedPolygon
that allows for disconnected sets of edges.Add
RegularPolygram
.Make
RegularPolygon
inherit fromRegularPolygram
.Add
Star
.
- #1490: Added
- #1462: OpenGL: Added
Shader
,Mesh
, andFullScreenQuad
Add Shader and Mesh objects
- #1462: OpenGL: Added
- #1418: Added project management commands
manim init
- quickly sets up default files for a manim project.manim new project
- lets the user set project settings. It also creates the project inside a new folder of name <project_name>manim new scene
- used to quickly insert new scenes into files. Iffile name
is not providedmain.py
is used as default.
Deprecated classes and functions#
New features#
- #1559: Update VGroup to support item assignment (#1530)
Support indexed item-assignment for VGroup
#1518: Allow fading multiple Mobjects in one Animation
#1422: Added
override_animation()
decorator- #1504: Color module enhancements
Replaced
BLUE_E
with what was previouslyDARK_BLUE
and removedDARK_BLUE
Added alias
LIGHTER_GRAY
forGRAY_A
Added
PURE_RED
,PURE_BLUE
and renamedGREEN_SCREEN
toPURE_GREEN
All gray colors are now also available using British spelling (including
GREY_BROWN
)Replaced color example in the docs. It can now be used as a quick reference for all color names.
#1272: Implement metaclass approach in geometry module to make mobjects compatible with cairo and opengl rendering
- #1404: Added two deprecation decorators
Added two function decorators
deprecated
anddeprecated_params
as a consistent way of deprecating code.
Enhancements#
#1572: OpenGL compatibility via metaclass:
TracedPath
,ParametricFunction
,Brace
,VGroup
#1472: Porting methods from
GraphScene
toCoordinateSystem
#1589: OpenGL compatibility via metaclass:
ValueTracker
- #1564: Add extra notes for TeX compilation errors
Add hint to use custom
TexTemplate
on TeX compilation errors
#1584: Added a check for
0
inround_corners()
- #1586: Add OpenGLMobject support to all
isinstance
occurrences This PR increases the support for OpenGL in the remaining animation classes and in other places where appropriate.
- #1586: Add OpenGLMobject support to all
#1577: Added new metaclass ConvertToOpenGL (replacing MetaVMobject), restore IntelliSense
- #1562: Improved VectorField’s Nudge Accuracy Per Step
Implemented the Runge-Kutta algorithm in VectorField’s nudge function. This increases the accuracy as an object moves along a vector field. This also increases efficiency as the nudge function requires less loops to achieve accuracy than the previous implementation.
#1480: Add logging info to tex errors
- #1567: Compatibility Fixes with ManimPango v0.3.0
ManimPango v0.3.0+ is required for Manim now.
Show errors from Pango when Markup isn’t correct
#1512: OpenGL compatibility via metaclass: graph
#1511: OpenGL compatibility via metaclass: svg_mobject, text_mobject, tex_mobject
#1502: Added
center
parameter toSphere
andpoint
parameter toDot3D
- #1486: Update of
rate_functions
Changed the picture for the non standard rate functions.
- #1486: Update of
#1495: Ported value_tracker to OpenGL
- #1382: Expand documentation, testing, and functionality of ValueTrackers; remove ExponentialValueTracker
Added more documentation and inline operators to ValueTracker and ComplexValueTracker. Brought coverage for value_tracker.py to 100%. Removed ExponentialValueTracker.
#1475: Add SVG elliptical arc support
Fixed bugs#
#1574: Fixed error when processing SVG with omitted elliptical arc command
- #1596: Fix indexing for non-whitespace tex arg separator
Fixes #1568
Fix issue when setting the arg_separator of a Tex object as a non-whitespace character(s). The method break_up_by_substrings(self) was not accounting for the separator when setting the index.
#1588: Fixed multiple animations being saved in the same file
#1571: Fix tests after introducing parallelization
#1545: Fix outdated parameters for
LinearTransformationScene
and add an example + typing.- #1513: Fixed rotation of gradients while rotating a VMobject
Fixed the direction of gradient which remained the same while rotating VMobjects
Added
rotate_sheen_direction()
method in VMobject
#1570: Output errors to stderr
#1560: Declare
*.npz
*.wav
*.png
as binary in.gitattributes
- #1211: Refactored scene caching and fixed issue when a different hash was produced when copying a mobject in the scene
Refactored internal scene-caching mechanism and fixed bug when an inconsistent hash was produced when copying a mobject.
#1527: Improved handling of substring isolation within sqrt, and fixed a bug with transform_mismatch for the matching shape transforms
#1526: Fix fading
#1523: Fix multiple FadeIn / Out only working on VMobjects
Changes concerning the testing system#
#1556: Try pytest-xdist for parallelization in tests
Changes to our development infrastructure#
- #1505: Add docs reference to PR template
Added documentation link to the Pull Request Template.
#1499: Updated Discord links in the docs to point towards a standardized redirect
#1461: Build the docs - Logging
#1481: pyproject.toml: poetry_core -> poetry-core
#1477: Update RDT sphinx package to version 3.5.3
#1460: Create CONTRIBUTING.md
- #1453: manim_directive: fix image links in docs - Windows
Use POSIX path on Windows to link images so documentation can build locally.
Code quality improvements and similar refactors#
#1465: Added typings and description to some functions in
coordinate_systems
.- #1552: Removed unwanted parameters in geometry
Removed
anchors_span_full_range
,close_new_points
,anchors_span_full_range
,preserve_tip_size_when_scaling
,mark_paths_closed
andclose_new_points
#1597: Removed hilite_me and insert_line_numbers_in_html from global name space
#1535: Update dependencies and fix tests
#1544: Adding spell checker as a pre-commit hook
#1542: Swapping a pango markup link in docs
#1531: Don’t use deprecated methods in deprecation.py
#1492: Remove stray print statements introduced in #1404
#1471: Fix Some Warnings from lgtm
Changes that needed to be reverted again#
#1606: Bring back
DARK_BLUE
New releases#
#1601: Preparation for v0.7.0: added changelog and bumped version number