- 'make check_spelling_shaders' now checks MSL & GLSL spelling.
- Add '--match' argument to 'check_spelling.py' for more configurable
checks without relying on picking directories that only contain the
desired file-type.
- Ignore spelling for scripts/addons & scripts/addons_contrib.
When the `'state'` is not informed, it means that only open issues will
be fetched.
Because of this, a workarround was used to enclose the closed ones as
well.
However, we can use `'all'` to fetch both open and closed.
When GLSL sources were first included in Blender they were treated as
data (like blend files) and had no license header.
Since then GLSL has been used for more sophisticated features
(EEVEE & real-time compositing)
where it makes sense to include licensing information.
Add SPDX copyright headers to *.glsl files, matching headers used for
C/C++, also include GLSL files in the license checking script.
As leading C-comments are now stripped,
added binary size of comments is no longer a concern.
Ref !111247
Mainly add more python-related suppressions.
Also suppressed some reports from `pxr` (usd) libraries.
Now most tests are passing again with ASAN/LSAN on on my machine,
besides modifiers and geometry nodes ones, which often fail on a
mysterious `libstdc++.so.6+0xb259a` leak.
Show a percentage output as the numbers weren't especially meaningful.
Also use default arguments for credits generator so no arguments
are required to generate all-time credits.
Generating credits/authors would print warnings from commits
that renamed many files, increase the diff.renameLimit to account for
this and suppress the warning.
- Add git_data_canonical_authors module with maps various
"Author <email>" combinations to a single author.
- Add git_data_sha1_override_authors module which
overrides authors for individual commits.
- GitCommit.author now includes the email.
- Move co-author access into GitCommit.co_authors.
Using name & email, then de-duplicating removes 43 duplicates in the
generated credits.
Moving the author & override mapping out of credits_git_gen.py
allows this data to be shared by a utility to update AUTHORS
(not yet committed).
Listing the "Blender Foundation" as copyright holder implied the Blender
Foundation holds copyright to files which may include work from many
developers.
While keeping copyright on headers makes sense for isolated libraries,
Blender's own code may be refactored or moved between files in a way
that makes the per file copyright holders less meaningful.
Copyright references to the "Blender Foundation" have been replaced with
"Blender Authors", with the exception of `./extern/` since these this
contains libraries which are more isolated, any changed to license
headers there can be handled on a case-by-case basis.
Some directories in `./intern/` have also been excluded:
- `./intern/cycles/` it's own `AUTHORS` file is planned.
- `./intern/opensubdiv/`.
An "AUTHORS" file has been added, using the chromium projects authors
file as a template.
Design task: #110784
Ref !110783.
On my system this gives between 30-40x speedup, generating the credits
now takes about 36 seconds.
Move the is_credit_commit_valid check inside the process_commit method
to avoid bottle necking on a single process.
The last supression rule (`leak:libasan*`) would match almost all
detected cases, since the first line is almost always something like
that:
#0 0x7f71040d85bf in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:69
Not sure if that was already the case when this suppression rule was
added, or if things changed in newer versions of ASAN/LSAN...
This commit adds 2 tools for triaging:
- /tools/triage/weekly_report.py
- /tools/triage/issues_needing_info.py
These tools automatically detect the username to list activities related to the user.
Pull Request: https://projects.blender.org/blender/blender/pulls/110652
Renaming members of a struct that it's self was renamed was not working,
support renamed structs as well as order member renaming - needed for
the lamp members that replace one member with another.
Each edit-generate now declares if it's generally considered safe
(isn't likely to make changes that break on other platforms for e.g.)
Default edits are now used when --edits is omitted.
The match argument now defaults to files with c/cc/cpp extensions when
omitted.
It's now possible to run:
./tools/utils_maintenance/code_clean.py {BUILD_DIR}
Which gives results that can be used with a very low risk of causing
functional changes or breaking other platforms.
This was an oversight on the license headers copyright pass [1].
Also since the manual reference is generated by this script
we can update the copyright year every time.
[1] - 8f109712ee
Support `--verbose compile,edit_actions` (one or both can be selected),
to output the compiler output of each edit and the text (before/after).
This replaces existing hard-coded values.
Other minor changes:
- Print the file-path for each edit for better context.
- Print skipped edits when multiple edits are passed in so other
edits might be applied separately are listed.