Winter of Quality 2025
code.blender.org
html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd"During the 20242025 winter (northern hemisphere), Blender developers focused on quality and stability. This blog post offers an overview of the work accomplished.BugfixesBetween December 1 and January 31, 2025, more than 500 reported issues were fixed.High severity bugs since January 1st 2025Here is a per-module breakdown of the fixed reports:Animation & Rigging: 24Asset System: 6Core: 10Grease Pencil: 82Modeling: 33Nodes & Physics: 71Pipeline & IO: 9Python API: 3Render & Cycles: 37Sculpt, Paint & Texture: 31User Interface: 82VFX & Video: 40Viewport & EEVEE: 76Additionally, many old reports have been double-checked and either fixed or closed (for example, if the issue could not be reproduced in a recent Blender version). Issues that were not reported by users were also addressed.Module Work OverviewIn addition to fixing bugs, developers also spent time tackling technical debt, updating documentation, and stabilizing certain areas of the code. Lets take a look at the reports from each module.Animation & RiggingMultiple bugs have been closed (either fixed or re-investigated and closed).Pose Library:Added support for slotted actions, including multi-object poses.Added support for pushing to the pose library.New tools for slotted actions have been implemented.Switching assigned actions is now smoother.Library Overrides for slotted actions have improved.Code documentation is much better, APIs have been polished, and the new animation system is generally easier to work with for future development.CompositorThe CPU compositor rewrite has been completed, aiming to improve maintainability by unifying the CPU and GPU compositors. In the process: Tens of thousands of lines of code were removed. Performance of many operations was improved. The behavior of CPU and GPU devices was unified.The main benefit of this rewrite is that future development of the compositor will be faster and easier.Grease PencilThe focus was on stabilization following the significant Grease Pencil v3 changes introduced in Blender 4.3. A total of 91 bug fixes were committed, 86 of which were high-severity bugs, many addressing regressions.ModelingThe focus was on fixing crashes and older unresolved bugs. 17 issues were addressed, including several long-standing bugs and 8 crashes. In total, 74 issues were closed.Nodes & PhysicsThe team kicked off the quality project by developing a tool to categorize all module issues and split them into batches. This tool made the project feel far less daunting, as they were only tackling 20 issues per day instead of 700.The focus was on addressing reports for active projects (rather than end-of-life features like the particle system or inactive areas such as the cloth modifier). In total, they closed about 150 issues and resolved several long-standing, frustrating problems.They also made time for some important refactors, including:Reducing the number of changes required to add a new node.Starting a replacement for the CustomData system.Implementing various smaller improvements.Render & CyclesThe team improved test coverage, fixed around 40 bugs, and cleaned up the code to better align with modern C++ standards.Sculpt, Texture & PaintThe team focused on bug fixes, as well as improving testing and documentation.IssuesClosed 25 high severity reports.Followed up on issues tagged with Need Information from DevelopersClosed 57 additional issues (Design, To Do, and Bugs).Created a tracking issue for Sculpt/Paint undo problems.Testing & DocumentationAdded a BVH building unit test.Work is ongoing for a sculpt stroke + render test.Added a technical documentation overview for mesh painting.USD (Universal Scene Description)The team focused on a variety of tasks, including adding additional test coverage, completing partially implemented features, and upgrading the user manual.They also investigated, fixed, and prototyped performance improvements for USD import, which were also useful in determining some other areas of Blender that should be improved.User InterfaceThey focused on reducing the number of UI issues to a more manageable state. Out of more than 1000 open issues, 275 were closed.Viewport & EEVEEThe team migrated overlay, selection, and image engine to the new drawing manager API. This migration fixes known and long-standing issues with overlays, and it paves the way for future optimizations, including removal of a global lock/freeze.The team also focused on improving test cases, fixing high-severity issues, and better platform support.Video Sequence EditorThe team focused on bug reports, code cleanups, and refactors:The Sequence -> Strip rename in the codebase (and to some extent the Python API) to make the code less confusing.All movie read/write-related C++ code is now in imbuf/movie, with clearer naming and improved structure.The code for VSE effects and modifiers was cleaned up and modernized to align more with C++ standards, resulting in a slight performance boost.Retiming code received fixes, cleanups, and improved developer documentation.Several UI interactions were polished for better usability.Future Quality ProjectsAfter a year of exciting new features like EEVEE-Next and Grease Pencil v3, the Blender Winter of Quality was the perfect opportunity to tackle loose ends and enhance stability.While quality is always a core focus of new development and part of the daily work of module teams, having a dedicated period to focus solely on it was great. As a result, future quality projects are being considered, and feedback is currently being gathered to learn about the experience for developers and identify areas for improvement in the future.Support the Future of BlenderDonate to Blender by joining the Development Fund to support the Blender Foundations work on core development, maintenance, and new releases. Donate to Blender
0 Comments ·0 Shares ·82 Views