Changelog¶
This document records all notable changes to CodeVideoRenderer.
See also
Installation for upgrade instructions
GitHub releases for detailed change information
Contributing for information on reporting issues
CodeVideoRenderer 1.2.3 Latest¶
Date: May 4, 2026
See details at https://pypi.org/project/codevideorenderer/1.2.3/.
Additions
Added
moviepyversion requirement<2.0.0for Python 3.8Added
typing-extensionsdependency with a minimum required version of4.0.0Added
imageio-ffmpegdependency with a minimum required version of0.4.0Added
typeguarddependency with a minimum required version of3.0Added import of
annotations(from__future__) intyping.pyandutils.pyfor compatibility with Python 3.8, 3.9
Changes
Downgraded the minimum required version of the
manimdependency from0.20.1to0.18.0Downgraded the minimum required version of the
numpydependency from2.4.2to1.24.4Downgraded the minimum required version of the
pillowdependency from11.2.1to9.1Downgraded the minimum required Python version from
3.9to3.8Modified the import methods of
TypeAlias,UnionTypeandVideoFileClipfor compatibility with Python 3.8, 3.9Replaced all type annotations in the format of
type | typewithUnion[type, type]for compatibility with Python 3.8, 3.9Changed all
PathLike[str]toPathLike(asPathLikein Python 3.8 does not support generics)Replaced all type annotations in the formats of
tuple[...],list[...]anddict[...]withTuple[...],List[...]andDict[...]respectively for compatibility with Python 3.8Switched the type checker from
typeChecker()totypeguard.typechecked()
Deletions
Removed
checkType()andtypeChecker()fromutils.py
CodeVideoRenderer 1.2.2¶
Date: Apr 27, 2026
See details at https://pypi.org/project/codevideorenderer/1.2.2/.
Changes
Convert all documents (functions, classes, constants) to the reStructuredText format for better compatibility with Sphinx documentation.
Change the default value of the
formatter_styleparameter in theCameraFollowCursorCVclass to"material".
CodeVideoRenderer 1.2.1¶
Date: Mar 22, 2026
See details at https://pypi.org/project/codevideorenderer/1.2.1/.
Additions
Add the
__version__variable to__init__.pyAdd the
__all__variable toconfig.py,renderer.py,typing.py, andutils.pyAdd the
formatter_styleparameter to theCameraFollowCursorCVclassAdd beautification for terminal error messages
Add parameter descriptions and type annotations for all functions and classes
Add the
__getattribute__()function to theCameraFollowCursorCVclass to prevent data modification by changing attributesAdd the CodeVideoRendererFont font to support Chinese characters
Add the
NOT_AVAILABLE_CHARACTERSvariable toconfig.pyAdd the
Parametersclass to theCameraFollowCursorCVclass for managing and retrieving parametersAdd
version.pyto manage package version
Changes
Change the function name format from
aaa_bbb(snake_case) toaaaBbb(camelCase)Change the
PygmentsLanguageclass to aLiteraltypeRefactor the
default_progress_barfunction into theDefaultProgressBarclassSplit
CameraFollowCursorCVR.pyintorenderer.py,typing.py, andutils.pyModify the whitespace handling logic to improve rendering speed
Make partial modifications to the parameters and descriptions of the
CameraFollowCursorCVclassModify some terminal output content
Update the value of
CODE_OFFSETinconfig.py
Fixes
Fix the code offset issue caused by @gaojj2000 in #5
Fix the
code_line_rectangleoffset issue that occurs when code offset happens
Deletions
Remove the
DEFAULT_CODE_FORMATTER_STYLE,AVAILABLE_CHARACTERS, andEMPTY_CHARACTERvariables fromconfig.py
CodeVideoRenderer 1.1.2¶
Date: Feb 11, 2026
See details at https://pypi.org/project/codevideorenderer/1.1.2/.
Fixes
Fixed the cursor position error caused by manim uniformly removing leading spaces on each line (see #5 for details).
CodeVideoRenderer 1.1.1¶
Date: Feb 11, 2026
See details at https://pypi.org/project/codevideorenderer/1.1.1/.
Additions
Added compatibility updates for
manim==0.19.1(see #3 for details).Added glow effects.
Adapted to OpenGL rendering and resolved related issues when switching to OpenGL rendering (see #4 for details).
Added the
rendererparameter toCameraFollowCursorCVto configure the renderer.
Changes
Modified
type_checker()to adapt toLiteralandPygmentsLanguage.Optimized terminal display.
Integrated
functions.pyintoCameraFollowCursorCVR.py.Adopted the
timeitmodule to calculate rendering time and eliminate redundant variables.Changed the type of the
languageparameter inCameraFollowCursorCVfromstrtoPygmentsLanguage.Refactored the file structure.
Deletions
Removed summary output before rendering the
Scene.Deleted unused constants in
config.py.
CodeVideoRenderer 1.1.0¶
Date: Dec 25, 2025
See details at https://pypi.org/project/codevideorenderer/1.1.0/.
Additions
Added opening animation.
Changes
Revised camera movement logic.
Fixes
Fixed the issue where output could not be terminated when
output=Falsewas used inrender().
CodeVideoRenderer 1.0.9.post2¶
Date: Nov 24, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.9.post2/.
Changes
Adjusted the spacing between the cursor and characters.
CodeVideoRenderer 1.0.9.post1¶
Date: Nov 17, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.9.post1/.
Changes
Redesigned progress bar style and added a
{task.completed}/{task.total}field.
Fixes
Fixed partial issues with the
type_checker()decorator.
CodeVideoRenderer 1.0.9¶
Date: Nov 16, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.9/.
Changes
Overhauled and rewrote camera movement logic, and added automatic camera scaling.
Used
richto print initial data at the start of rendering.Rewrote the rendering progress bar with
rich.progress.Refactored type checking and adopted
rich.tracebackfor cleaner error output.
CodeVideoRenderer 1.0.8.post1¶
Date: Nov 8, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.8.post1/.
Fixes
Fixed issues in
__init__.py.
CodeVideoRenderer 1.0.8¶
Date: Nov 8, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.8/.
Changes
Reverted the default font to Consolas, as Cascadia Code converts
>=to≥and triggers internal Manim errors.
Fixes
Fixed code offset errors.
Deletions
Removed unused constants in
/renderer/config.py.
CodeVideoRenderer 1.0.7.post3¶
Date: Nov 6, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.7.post3/.
Fixes
Re-uploaded complete source code due to incomplete package upload on pip.
CodeVideoRenderer 1.0.7.post2¶
Date: Nov 6, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.7.post2/.
Changes
Disabled Manim caching to improve rendering speed.
Fixes
Fixed rendering errors triggered by blank lines at the start of code content.
CodeVideoRenderer 1.0.7.post1¶
Date: Oct 3, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.7.post1/.
Fixes
Resolved bugs occurring when using the
code_fileparameter.
CodeVideoRenderer 1.0.7¶
Date: Oct 3, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.7/.
Changes
Updated pip dependency configuration.
Changed parameter
camera_floating_maximum_valuetocamera_floating_max_value,screen_scaletocamera_scale.Improved error message presentation.
CodeVideoRenderer 1.0.6¶
Date: Sep 27, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.6/.
Changes
Refactored the renderer module: optimized the structure and error handling of CodeVideoRenderer (see #1 for details).
Fixes
Fixed progress bar formatting errors caused by overly long code lines.
CodeVideoRenderer 1.0.5.post2¶
Date: Sep 25, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.5.post2/.
Fixes
Fixed version compatibility issues of pip dependencies to ensure full compliance with project requirements.
Resolved inconsistent color display of ANSI escape sequences in rendering outputs across different terminals/compilers.
CodeVideoRenderer 1.0.5.post1¶
Date: Sep 23, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.5.post1/.
Fixes
Fixed pip installation failures.
CodeVideoRenderer 1.0.5¶
Date: Sep 20, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.5/.
Additions
Added the new
outputparameter to therender()method to control rendering output behavior.
Changes
Refactored
CodeVideofrom a function to a class for better code maintainability and scalability.
CodeVideoRenderer 1.0.4¶
Date: Sep 6, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.4/.
Changes
Optimized terminal rendering logs.
Improved overall code execution efficiency.
Fixes
Fixed calculation errors of rendering duration.
Deletions
Removed the deprecated
fontparameter.
CodeVideoRenderer 1.0.3¶
Date: Aug 29, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.3/.
Additions
Added the new
line_spacingparameter to customize line spacing.
Changes
Excluded leading and trailing whitespace of each code line from animation playback to reduce redundant animation duration.
Adjusted the background width of the currently highlighted code line.
Optimized terminal rendering information output.
Fine-tuned camera movement logic.
Fixes
Fixed the issue where the cursor failed to pause at the start of new lines.
CodeVideoRenderer 1.0.2¶
Date: Aug 26, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.2/.
Additions
Introduced Pydantic
@validate_callfor parameter validation.Added explicit parameters:
code_string,code_file,font,language,interval_range,camera_floating_maximum_value,camera_move_interval,camera_move_duration, andscreen_scale.Added rendering time tracking using
time.time().Added syntax-highlighted live code preview in terminal output with box borders and completion marks.
Added
replace_empty_chars()to validate non-empty code input.
Changes
Replaced
**kwargswith explicit typed parameters.Replaced
has_chinese()check withstr.isascii()for non-ASCII character detection.Set default
formatter_styleto"material".Improved occupy-block width calculation.
Overhauled terminal rendering logs with ANSI colors and progress borders.
Deletions
Removed the
speedparameter (already removed in 1.0.1.0).Removed
has_chinesemethod.
CodeVideoRenderer 1.0.1.2¶
Date: Aug 23, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.1.2/.
Additions
Added the
LoopMovingCameraclass for continuous smooth camera tracking without infinite loops.
Changes
Changed default
intervalfrom0.05to0.3.Succeeded output path retrieval using
self.renderer.file_writer.movie_file_path.Empty lines and character intervals now use
random.uniform(interval-0.05, interval+0.05).
Deletions
Removed
move_camera_to_cursor()method (replaced byLoopMovingCamera).Removed the ASCII table docstring from
construct().
CodeVideoRenderer 1.0.1.1¶
Date: Aug 22, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.1.1/.
Additions
Added the new
scaleparameter to control camera frame scale.Added
set_z_index()to cursor and code mobjects for proper layering.
Changes
Reduced cursor width from
0.005to0.0005.Changed default line number color to
GREY; the current line number is highlighted inWHITE.Changed
code_line_rectanglestyle to filled background color#333333.Improved terminal success message with green ANSI color.
Deletions
Removed the code window (
window) from the scene.
CodeVideoRenderer 1.0.1.0¶
Date: Aug 19, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.1.0/.
Additions
Added minimum interval validation to prevent overly short intervals.
Added
code_line_rectangleto highlight the current code line.Added left-right floating to camera movement.
Changes
Removed the
speedparameter; camera movement now uses a fixed0.2second run time.Improved terminal output with ANSI colors, total line count display, and refined progress bar format.
Translated comments and docstrings from Chinese to English.
Merged
successfully_rendered_info()logic into therender()method.
CodeVideoRenderer 1.0.0.5¶
Date: Aug 18, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.0.5/.
Additions
Added
has_chinese()method to detect Chinese characters and punctuation.Added the
code_fileparameter to read code from a file.Added automatic Tab-to-spaces conversion (4 spaces).
Added handling for empty code lines.
Added skipping of leading spaces during animation playback.
Added extensive inline comments and an ASCII table docstring in
construct().
Changes
Renamed parameter
floating_postofloating_camera.Adjusted cursor dimensions (narrower and shorter).
Changed initial camera scale from
0.25to0.3.Moved
move_camera_to_cursor()definition earlier in the class.
CodeVideoRenderer 1.0.0.4¶
Date: Aug 17, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.0.4/.
Deletions
Removed
main.py, keeping onlyrenderer.pyas the single entry point.
CodeVideoRenderer 1.0.0.3¶
Date: Aug 16, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.0.3/.
Re-uploaded package with no code changes.
CodeVideoRenderer 1.0.0.2¶
Date: Aug 16, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.0.2/.
Re-uploaded package with no code changes.
CodeVideoRenderer 1.0.0.1¶
Date: Aug 16, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.0.1/.
Additions
Added
renderer.py(a copy ofmain.py) as the primary renderer module.
Changes
Changed
__init__.pyto import fromrendererinstead ofmain.
CodeVideoRenderer 1.0.0.0¶
Date: Aug 15, 2025
See details at https://pypi.org/project/codevideorenderer/1.0.0.0/.
Initial release of CodeVideoRenderer.