v0.10.0#
- Date
September 01, 2021
Contributors#
A total of 40 people contributed to this release. People with a ‘+’ by their names authored a patch for the first time.
Animfysyk +
Benjamin Hackl
Christian Clauss
Daniel Adelodun +
Darigov Research
Darylgolden
Eric Biedert +
Harivinay
Jan-Hendrik Müller
Jephian Lin +
Joy Bhalla +
Laith Bahodi
Lalourche +
Max Stoumen
Naveen M K
Oliver
Partha Das +
Raj Dandekar +
Rohan Sharma +
Ryan McCauley
Václav Hlaváč +
asjadaugust +
ccn
icedcoffeeee
sparshg
vinnniii15 +
vladislav doster +
xia0long +
The patches included in this release have been reviewed by the following contributors.
Aathish Sivasubrahmanian
Benjamin Hackl
Darylgolden
Devin Neal
Eric Biedert
GameDungeon
Harivinay
Hugues Devimeux
Jan-Hendrik Müller
Jason Villanueva
Jephian Lin
Joy Bhalla
KingWampy
Laith Bahodi
Naveen M K
Oliver
Raghav Goel
Raj Dandekar
Ryan McCauley
ccn
icedcoffeeee
ralphieraccoon
sparshg
Pull requests merged#
A total of 59 pull requests were merged for this release.
Breaking changes#
- #1843: Dropped redundant OpenGL files and add metaclass support for
Surface
OpenGL<x>
classes fromopengl_geometry.py
,opengl_text_mobject.py
,opengl_tex_mobject.py
,opengl_svg_path.py
,opengl_svg_mobject.py
and most ofopengl_three_dimensions.py
have been removed.ParametricSurface
has been renamed toSurface
- #1843: Dropped redundant OpenGL files and add metaclass support for
Deprecated classes and functions#
#1941: Added examples, tests and improved documentation for
coordinate_systems
#1694: Added
font_size
parameter forTex
andText
, replacedscale
parameters withfont_size
#1860: Removed
GraphScene
,NumberLineOld
and parameters forChangingDecimal
New features#
- #1929: Implementing a
zoom
parameter forThreeDScene.move_camera()
Zooming into a
ThreeDScene
can now be done by calling, for example,self.move_camera(zoom=2)
in theconstruct
method.
- #1929: Implementing a
#1980: Added a
dissipating_time
keyword argument toTracedPath
to allow animating a dissipating path- #1899: Allow switching the renderer to OpenGL at runtime
Previously, the metaclass approach only changed the inheritance chain to switch between OpenGL and cairo mobjects when the class objects are initialized, i.e., at import time. This PR also triggers the changes to the inheritance chain when the value of
config.renderer
is changed.
#1828: Added configuration option
zero_pad
for zero padding PNG file names
Enhancements#
#1881: Added methods
Angle.get_lines()
andAngle.get_value()
toAngle
#1952: Added the option to save last frame for OpenGL
#1922: Fixed IPython interface to exit cleanly when OpenGL renderer raises an error
#1923: Fixed CLI help text for
manim init
subcommand so that it is not truncated- #1868: Added OpenGL support to IPython magic
The OpenGL renderer can now be used in jupyter notebooks when using the
%%manim
magic command.
#1866: Allow passing keyword argument
corner_radius
toSurroundingRectangle
#1847: Allow
Cross
to be created without requiring a mobject
Fixed bugs#
#1985: Use
height
to determinefont_size
instead of the_font_size
attribute#1758: Fixed scene selection being ignored when using the OpenGL renderer
#1871: Fixed broken
VectorScene.vector_to_coords()
#1973: Fixed indexing of
Table.get_entries()
to respect row length#1950: Fixed passing custom arrow shapes to
CurvedArrow
#1967: Fixed
Axes.coordinate_labels
referring to the entire axis, not just its labels#1951: Fixed
Axes.get_line_graph()
returning a graph rendered below the axes#1943: Added
buff
keyword argument toBraceLabel
#1938: Fixed
Rotate
for angles that are multiples of \(2\pi\)#1924: Made arrow tips rotate
IN
andOUT
properly#1931: Fixed
row_heights
inMobject.arrange_in_grid()
#1893: Fixed CLI error when rendering a file containing a single scene without specifying the scene name
#1744: Fixed bug in
NumberPlane
with strictly positive or strictly negative values forx_range
andy_range
#1887: Fixed
custom_config
not working inframes_comparison
#1879: Fixed how the installed version is determined by Poetry
Changes concerning the testing system#
#1894: Fixed an OpenGL test
Changes to our development infrastructure#
#1987: Added support for using OpenGL in subprocess in Windows pipeline
#1964: Added
CITATION.cff
and a method to automatically update this citation with new releases#1856: Modified Dockerfile to support multi-platform builds via
docker buildx
#1955: Partially support OpenGL rendering with Docker
#1896: Made RTD apt install FFMPEG instead of installing a Python binding
#1864: Shortened and simplified PR template
#1853: Updated Sphinx to 4.1.2
Code quality improvements and similar refactors#
#1960: Ignore fewer flake8 errors
#1947: Set flake8 not to ignore undefined names in Python code
#1948: flake8: Set max-line-length instead of ignoring long lines
- #1956: Upgrade to modern Python syntax
This pull request was created with the command
pyupgrade --py36-plus **/*.py
Python f-strings simplify the code and should speed up execution.
- #1898: Replaced
self.data["attr"]
andself.uniforms["attr"]
withself.attr
In particular,
OpenGLVMobject.points
can now be accessed directly.
- #1898: Replaced
#1934: Improved code quality by implementing suggestions from LGTM
#1861: Updated
dearpygui
version to 0.8.x
New releases#
#1989: Prepare new release v0.10.0