v0.15.2

日期:

2022年4月25日

贡献者

共有33人对本次发布做出了贡献。名字旁有“+”号的人员是首次提交补丁。

  • Bailey Powers +

  • Benjamin Hackl

  • Dan Walsh +

  • Darigov Research

  • Darylgolden

  • David Millard +

  • Hamidreza Hashemi +

  • Jan-Hendrik Müller

  • Jason Villanueva

  • Jonathan Alpert +

  • Joy Bhalla

  • Kian Cross +

  • Luca +

  • Mohsin Shaikh +

  • Naveen M K

  • Prismo +

  • Ryan McCauley

  • WillSoltas +

  • ad_chaos

  • darkways +

  • dawn*squirryl +

  • icedcoffeeee

  • peaceheis

  • sparshg

  • trickypr +

此版本中包含的补丁已由以下贡献者审阅。

  • Benjamin Hackl

  • Dan Walsh

  • Darylgolden

  • GameDungeon

  • Hugues Devimeux

  • Jan-Hendrik Müller

  • Jason Villanueva

  • Jonathan Alpert

  • Luca

  • Naveen M K

  • Prismo

  • Ryan McCauley

  • ad_chaos

  • darkways

  • hickmott99

  • icedcoffeeee

  • peaceheis

合并的拉取请求

本次发布共合并了39个拉取请求。

新功能

  • #1975:改进了CLI帮助页面的样式
    • 更新了CLI帮助页面样式所依赖的Click和Cloup库。

    • 移除了对click-default-group的依赖。

    • manim render添加了no_args_is_help参数,以便轻松访问帮助页面。

    • manim帮助页面的结尾部分添加了关于如何访问其他命令帮助页面的说明。

  • #2404:添加SpiralIn动画
  • #2534:实现OpenGLImageMobject

  • #2684:创建了一种更易于使用line.py的angle函数创建角度的方法 - Angle.from_three_points()

改进

  • #2062:重用着色器封装器和着色器数据

  • #2642:将file_ops.pyscene_file_writer.py从os.path迁移到Pathlib

    file_ops.pyscene_file_writer.py中:str类型文件名的大部分用法(详见进一步信息)已转换为pathlib的Path对象。os.path方法的用法已转换为等效的pathlib方法。

  • #2655:修复使用OpenGL时assert_is_mobject_method()的问题

  • #2665:改进了使用.animate语法时属性的处理

  • #2674:文档化并为simple_functions.py添加类型提示
    • simple_functions.py添加文档。

    • 对这些函数做了一些小改动,增加了清晰度。

  • #2693:允许不使用动画地调用MovingCamera.auto_zoom()

    通过传递animation=False参数,允许相机自动缩放而无需播放动画。

修复的错误

  • #2546:修复了一个文件日志错误和一些维护工作

  • #2597:通过向Animation引入新参数reversed来修复rate_funcUncreate中的错误
    • 重构Uncreate。新的实现使用了一个标志成员reversed。将其设置为True,其超类将处理反向操作。

    • Animation引入一个布尔参数reversed。它决定动画是否需要倒放。默认为False。

    • Animation.get_sub_alpha()中添加了条件分支。如果参数reversed为True,它会将rate_func(t)设置为rate_func(1 - t)

  • #2613:修复了当角度不在区间\([0, 2\pi]\)内时Circle.point_at_angle()中的错误

  • #2634:修复了NumberPlane中背景线重复绘制的问题

  • #2648:处理Wiggle动画的用户自定义中心

  • #2658:修复BackgroundRectangle中被覆盖的set_style的参数问题

    对应用了.add_background_rectangle()Text对象使用Write动画不再产生TypeError

  • #2668:在初始化场景时(重)设置OpenGLRenderer的背景颜色

  • #2676:修复了OpenGL渲染器中动画自定义属性的传播问题

  • #2688:修复了SpiralInManimBanner的两个小问题

开发基础设施更改

  • #2561:在Linux-aarch64上运行测试

  • #2656:修复了与black版本不兼容的问题

代码质量改进和类似重构

  • #2630:移除WebGL渲染器

    WebGL渲染器已损坏且未维护。Manim中对它的支持已移除。

  • #2652:将cloup版本从0.7.0更新到0.13.0

  • #2678:仅对Python < 3.8要求backports-cached-property

  • #2685:在测试脚本中从os.path迁移到pathlib

    此拉取请求将os.path的多个实例更改为Pathlib对象和函数。此外,此PR修改了SVGMobject构造函数,使其接受Pathlib对象或字符串变量路径名作为其构造函数参数。

  • #2691:移除了CameraFrame

  • #2696:使changelog生成并行运行,并进一步改进scripts/dev_changelog.py

  • #2697:在写入changelog部分之前按编号排序PR

新版本发布

  • #2694:准备了bugfix版本v0.15.2