User:Dfelinto/Reports/2021

September 27 - October 1
Increase VSE channels from 32 to 128 (studio request), Blender bcon2 coordination, video about Geometry Nodes Fields.






 * Commits
 * Fix/bypass doversion for wire new colors.
 * VSE: fix versioning code to the new maximum zoom level (128).
 * Geometry Nodes: Dashed lines for function flow.
 * VSE: Implement sanity check for files with more channels than supported.
 * Nodes: Change wire color to increase contrast.
 * Increase VSE strip channels limit from 32 to 128.

September 20 - 24
The main focus was the week was organizing the bcon2. But I also worked on dashed lines for geometry nodes, and some EEVEE roadmap discussions while Clément Foucault was in Amsterdam.

https://www.youtube.com/watch?v=d18o5HrBRVI




 * Commits
 * Cleanup: Remove hardcoded values and rename keyframe shape shaders.
 * Cleanup: make format.

September 13 - 17
Blender 101 updates, including a few commits in master to support more settings.




 * Commits
 * Rename App Menu to Blender Menu.
 * Hide empty keymap warnings when running a template.
 * App Settings: Edge Resize.
 * App Settings: Regions Visbility Toggle.
 * Rename show_layout_ui > show_corner_split and remove from UI.
 * Cleanup: Rename USER_APP_LOCK_UI_LAYOUT.
 * Asset Template: Extra UI options.
 * Templates: Set more user preference settings to be swapped.

September 6 - 10
The main hands-on activity of last week was working on the "Blender 101" template/app. That include reporting bugs, talking to developers and implementing the template.



August 30 - September 3
Helped the development process (buildbot, triaging, credits) and communicate the Blender 3.0 release.


 * Finished up the buildbot patch to support patch/branch links(now deployed).
 * Updated triaging playbook for high priority reports and feature branches.
 * Updated the credit generation script.

August 23 - 27
Nothing remarkable - spent considerable time talking with developers. For development I was mostly involved in the Geometry Nodes Fields doversion design discussions.


 * Fields doversion clarification and Fancy Fields doversion exploration.







August 16 - 20
The focus was to wrap up the communication about the nodes workshop and improve the buildbot user experience.


 * Blog article: Fields & Attributes


 * Buildbot Patches
 * Add "Latest Changes" in the menu bar
 * Rename Experimental to Branch builds
 * Fix T90231: Create download page for each patch/branch



August 9 - 13
This week was dedicated to a mini workshop with Jacques Lucke about geometry nodes attributes and fields.



I will publish a write up next week on code.blender.org.

July 19 - 23
The focus of the week was help setting up the wrapping up of Asset Browser for Blender 3.0. Besides that we formalized one of the usecases for the upcoming geometry nodes attribute prototypes.


 * Asset Browser and 3.0 meeting




 * Geometry Nodes attribute sockets use case

July 12 - 16
Implemented a Disable as Spam phabricator option for admins, formalized the geometry socket expander proposal, fixed a "Unbreak Now!" regression.


 * Files + workflows and the impact of geometry nodes design changes
 * Expandable Geometry Socket (Proposal)


 * Commits
 * Rename UI error message on attributes panel for name collisions.
 * Fix T89870: Vertex groups lost when opening 3.0 files in 2.93.

July 5 - 9
Finished and published the nodes workshop blog post. Finished my proposal for attributes socket via expanding the geometry sockets. Still need to be formalized.




 * Commits
 * Walk Navigation: Z axis correction.
 * Cleanup: Walk Navigation define remame.
 * Fix typo in Fly mode tooltip.
 * Fix T89559: Outliner shows extra view layer column when it shouldn't.

June 28 - July 2
Most of the week was spent re-iterating over the attributes socket design and other followups from the Nodes Workshop.


 * Attributes Sockets and Geometry Nodes 2.0 proposal
 * Draft for code.blender.org post about the nodes workshop.

Commits:
 * Outliner: View Layers filter for View Layer Mode.

June 21 - 25
The entire week was dedicated to have the Nodes Workshop together with Jacques Lucke.

June 14 - 18

 * A lot of variations to the compact node and multi-type sockets.
 * Patches activity have now moving average making them useful :)





June 7 - 11
The most noticeable outcomes of this week was the Patch Metrics update and Attribute Processor node design review.

Phabricator/differential graphs

 * The metrics page now has a status breakdown for the open patches.

The following patch is now part of our deployment of phabricator:
 * Phabricator: Extend CONDUIT API to support xaction transactions



One thing that is still wrong sometimes is the status of patches that were updated.

For simplicity, for now, any update is assumed to switch the status to needs review.
 * If a patch status is accepted and then updated, its status stays as accepted.
 * If a patch status is needs revision and then updated, its status changes to needs review.
 * If a patch status is changes planned and then updated, its status changes to either accepted if already accepted or needs review.

Attribute Processor node design review
The Attribute Processor is one of the main deliverables of the current Geometry Nodes run.

My goal with this review is to get the prototype to a state where I can present next week to Ton, and we address his feedback in the final sprint of this run.



General Design Proposal

 * The existing (attribute) nodes should be replaceble by an equivalent Attribute Processor Node (in terms of UI and functionality).
 * All existing attribute nodes functionality (including the ones using texture) should be possible with attribute processor node.
 * The node parameters visibility design (visible, enable, change socket type) preceeds the attribute processor, which leverages its changes.
 * The attribute processor will be simpler if it is not be a node group.
 * Default and actual value are two separate things (default used for "Reset to Default", value is the value showed outside).
 * Value can be set outside and visible/editable inside when socket disconnected.


 * Specialized nodes for built-in attributes (e.g., position) also garantee they are never changeable outside the node. Not even in the advanced side panel.

Small Things

 * "Set Attribute" rename to "Attribute Output"
 * New Attribute Input and Output are not SKIP_SAVE, is this intentional?
 * Group Output: I think "Hide Value" should be the default for all the sockets.

May 31 - June 4

 * Blender 2.93 Release
 * Gitlab tests
 * Phabricator differential graphs (fail)



I spent some time this week trying to get historical data for the open status of patches over time. However there are too many missing "transactions" in the database, and conduit API is also not complete.
 * Phabricator/differential graphs

The missing transactions are from old patches (pre-migration). This is not a deal-breaker since I could just ignore those old patches.

The incomplete conduit API means that a few transactions are of type "null" and can be pinpointed to what is changing. A few examples:


 * transaction id 44 for D9 - "abandoned"
 * transaction id 112 for D22 - "closed"
 * transaction id 96 for D22 - "accepted"
 * transaction id 22872 for D1123 - "planned-changes"
 * too many null transactions on D11362
 * no transaction, not even a "null" on D88

I put together a local instance of gitlab to test some of the limitations of the open source version.
 * Gitlab initial tests

So far I managed to confirm that only a patch can have only a single reviewer.

Other things to investigate:
 * How modules would work (projects? groups?)
 * Kanban boards for modules and projects like geometry nodes.

May 24 - 28

 * Created thumbnail and published Blender OSS and Licenses
 * Setup initial patches metrics in metrics.blender.org





May 17 - 21

 * Google Summer of Code announcements / wiki / channels.
 * Geometry Nodes discussions (selection/tag and curves):






 * Thumbnail and tweaks for Mesh Editing Optimization post by Campbell Barton.



May 10 - 14
Reorganization of part of the triaging team + onboarding, besides preparing Google Summer of Code documents ahead of time.


 * Onboarding of Ankit Meel as part of the bug triaging team.
 * Arranging with Pratik Borhade for his upcoming dev grant (Jun-Aug) to help with bug triaging and devtalk moderation.

May 3 - 7
Google Summer of Code coordination, helping with the overrides and the (upcoming) mesh performance projects. Trying to assess the rising number of untriaged reports. Improved the External Data menu


 * GSoC slots assignment and meeting with mentors.
 * Helping setting up the Mesh performance project (talked to Campbell, Jeroen, Germano).
 * Bringing more effort into the triaging team (onboarding of Ankit, talked to Richard to come back 50% for triaging, and is contemplating someone else).
 * Library overrides meeting




 * Commits
 * Cleanup and warnings, ,.
 * Docs: "File > External Data pack operator" lookup for the manual.
 * "File > External Data" menu improvements and cleanup + (user + manual)



April 26 - 30
This was the final week helping with the 2020 annual report. Also as part of the bug sprint I worked with Francesco on making metrics.blender.org more official. The rest of the time was spent exploring possible new projects for the geometry nodes team.


 * Geometry nodes sub-module meeting.
 * metrics.blender.org up and running (mostly thanks to Francesco Siddi).
 * Helped with the 2020 annual report (to be posted soon by Ton).
 * devtalk meetings topics organization.

April 19 - 23
This week started with handling the roadmap article (replying to comments, ...) GSoC reviews and another round of geometry nodes module development.


 * Blender 2021 Roadmap article published.
 * Geometry nodes #3 use cases
 * GSoC proposals review







April 12 - 16

 * bcon3 coordination
 * Bug response time graphs for the annual report
 * Attributes editing design meetings







April 5 - 9

 * Attribute editing and sculpt paint design sections.
 * Finished the roadmap post with image and sent for review.









March 29 - April 2

 * Projects post-mortems (geometry-nodes, asset browser and overrides).
 * Initial setup for the geometry-nodes project to module handover (the sprint this week involved contributors as well).
 * Dashboard for bug tracking
 * Started working in the blog post for 2021 roadmap.



March 22 - 26
The geometry nodes week was focused on design docs. I also spent a good time going over the board, classifying, confirming or closing bugs. Also went over the list of all 117 accepted patches and poked developers to commit them or set other authors as blocking (see).


 * Updated the wiki spreadsheet design
 * Organized a bit the Nodes & Physics wiki
 * Hair design document
 * Collection nodes design document


 * Commits
 * Geometry-Nodes: Sort the Nodes Categories alphabetically.
 * Fix T86895: bpy.ops.curve.select_all(action='INVERT').

March 15 - 19

 * 2.93 roadmap targets organization [1][2]
 * Bcon2 coordination
 * More testing on self-hosting libraries and write up for upcoming blog post.
 * Geometry Nodes: Help with prototypes for portal & pages and node tools.

March 8 - 12

 * Geometry nodes: Node group design sessions.
 * Organizing 2.93 roadmap meeting next week.
 * Started to organize the Google Summer of Code blender.chat channels.
 * Draft for communication channel blog post.





March 1 - 5
Presented the spreadsheet design, worked on the self-hosting solutions, started the conversations about the communication channels.


 * Self-hosting external libraries packages


 * Spreadsheet Design:




 * Modules Communication Channels:

The idea for communication channel is that each module should have a way to onboard developers and artists interested on get involved.

That includes a way to be contacted (devtalk sub-forum or mailing list), and a (per-module) clear process on how the onboard goes (list of approved TODOs? present design first in devtalk? in developer.blender.org?).

February 22 - 26

 * Blender 2.92 Release.
 * Spreadsheet MVP pixel-perfect design.
 * Spreadsheet complete design (wireframe).





February 15 - 19
The bcon4 week involved the usual checking on targets, raising awareness for the upcoming release, the upcoming demo files, and coordinate the release itself.

For development coordination this week was mostly dealing with the modules proposed changes: update the modules page, create a new module and talk with the developers.

For Geometry Nodes the main focus was helping to design the attribute spreadsheet editor.



February 8 - 12
This was a week with a focus on everything nodes design. This ended up taking most of the time. I will prepare the outcome of this week later, but here are some of the work in progress documents:









February 1 - 5
The week starting presenting the `Geometry Nodes and the Melting Iceberg` in Blender today, which eventually turned into a blog post. Also organized the geometry nodes release notes.

Finally advanced in the design of instances and started on the design for attribute search for geometry nodes.



Links
 * Blender Today: Geometry Nodes and the Melting Iceberg
 * Blog Post: Geometry Nodes and the Melting Iceberg
 * Geometry Nodes 2.92 release page: Nodes List
 * Geometry Nodes 2.93 release page: Nodes List
 * Tuesday Talks

Design Tasks
 * Updated analysis on make real and instanced based on studio feedback

January 25 - 29
Internal presentation at the studio about the geometry nodes and project organization.



Priorities discussion about the next 6-8 weeks stage of the geometry nodes project: * Moss use case * Tree leaves * Attribute search * Instancing integration * Ditch point cloud output
 * Wrap up studio nodes + polishing

* Mapping out the use cases for the other node-based systems * On a high level, design how the different systems work * On a high level, design how the different systems integrate
 * Everything Nodes design

* Socket attribute inspection * Attribute spreadsheet * Attribute viewport overlay * Mesh viewport preview
 * Attribute Workflow

Tools for Nodes * Per node-tree tools

If time allows: * Nodes Organization / containers and Layer for nodes * Clear design for Attribute painting

January 18 - 22
This week was mostly geometry-nodes to compensate last week which was mostly bcon3. We moved with the user manual changes to allow branching and early documentation of bcon1 features.

Also sanitized the space of the Object Info node in 2.92, since this is important to get it right from the beginning for geometry nodes.


 * Monday meeting.
 * Tuesday talks.
 * Object info transform space update after more debate over the name/tooltip/functionality
 * manual docs branching
 * Reviewing/testing Collection Info Node

January 11 - 15
This was the week for bcon3 - among coordinating the missing features, helping with the splashscreen checking the status of what landed on master, preparing the new wiki notes.

For geometry nodes, after some review I'm trying to push for a design change/fix in how we handle external objects in the node tree.

Besides that the week was filled with planning for the upcoming year:
 * Proposal to branch out blender manual.
 * Follow up to 2.91 wiki notes incident.
 * Asset manager status discussions.
 * 2.91.1 release discussions.