Commit Graph

172 Commits

Author SHA1 Message Date
Campbell Barton
1b2bfec3b6 Merge branch 'blender-v4.2-release' 2024-06-10 17:04:18 +10:00
Nathan Burnham
852d658a85 PyAPI Doc: fix formatting error
Ref: !122983
2024-06-10 17:01:00 +10:00
Campbell Barton
07f5d32517 Merge branch 'blender-v4.2-release' 2024-06-10 00:25:35 +10:00
Campbell Barton
ff720cde32 Merge branch 'blender-v4.2-release' 2024-06-10 00:25:22 +10:00
Campbell Barton
5fda92a44f Extension: defer loading extensions JSON/TOML meta-data until needed
Repositories JSON & manifests were being loaded at startup.
Lazily load this data to prevent unnecessary overhead.
2024-06-10 00:24:00 +10:00
Campbell Barton
ff5909e441 Extensions: restore the "Refresh" operator
The old add-ons UI had a "Refresh" operator that would re-scan
the file-system and show any changes.

Add an equivalent operator that works for both extensions and legacy
add-ons and add it to the extension menu.

This is useful for a few situations:

- Refresh based on changes to "System" repositories which are read-only
  from Blender and intended to be manipulated outside of Blender.
- Anyone managing their own "User" repository.
- For developers to create extensions, where re-starting to see changes
  to meta-data is inconvenient.
- Troubleshooting problems parsing extension meta-data as problems are
  reported to the operator.
2024-06-09 20:20:27 +10:00
Campbell Barton
c4c3812894 Merge branch 'blender-v4.2-release' 2024-06-08 23:34:48 +10:00
Campbell Barton
3412a34145 Merge branch 'blender-v4.2-release' 2024-06-08 23:34:46 +10:00
Campbell Barton
b0232b4e0e Cleanup: various warnings from pylint for extensions & addons 2024-06-08 23:33:45 +10:00
Campbell Barton
5f06d3aa17 Extensions: consider system repositories read-only
The following operations have been removed for system repositories:

- Installing from disk.
- Uninstall extensions.
- Delete files (when removing the repository).

Also change the operator to remove a repository so the option to
remove files is now a boolean instead of an enum. While a dynamic
enum can be made to work, this option is logically a boolean.
2024-06-08 23:04:17 +10:00
Campbell Barton
4a613911a3 Merge branch 'blender-v4.2-release' 2024-06-08 13:46:45 +10:00
Campbell Barton
79ca7b7965 Merge branch 'blender-v4.2-release' 2024-06-08 13:46:42 +10:00
Campbell Barton
c0c1f1884a Merge branch 'blender-v4.2-release' 2024-06-08 13:46:38 +10:00
Campbell Barton
09ae9377f1 Extensions: reduce the timer frequency to avoid too much overhead
Since these actions are no longer blocking, 100 times a second could
add unnecessary overhead (although updates are only shown when changes
are detected). Nevertheless, reduce the frequency to 10 times a second.
2024-06-08 13:32:26 +10:00
Campbell Barton
4547f4106a Extensions: use the operators cancel callback shutdown processes
When installing extensions, the user could exit Blender which wasn't
being handled properly - the processes would be left running and raise
a broken pipe error (on Linux).

Resolve this by canceling the processes, matching the behavior of when
escape is pressed.

This means exiting Blender while installing/updating wont leave the
repositories in an unknown state.
2024-06-08 13:32:25 +10:00
Campbell Barton
4718d68349 Extensions: expose extensions debug option in release builds
These are useful for more verbose output and expose useful utilities
for development.
2024-06-08 13:32:24 +10:00
Campbell Barton
8aafeba8b4 Merge branch 'blender-v4.2-release' 2024-06-08 00:45:19 +10:00
Campbell Barton
451141a77a Extensions: make install/upgrade non-blocking
Run extension commands as a non-blocking operator.
2024-06-08 00:44:44 +10:00
Campbell Barton
7d8b18a3fd Merge branch 'blender-v4.2-release' 2024-06-07 21:45:42 +10:00
Campbell Barton
c0f39e7b40 Extensions: correct 3D coat mapping 2024-06-07 21:44:14 +10:00
Bastien Montagne
7d9ee6bb71 Merge branch 'blender-v4.2-release' 2024-06-07 12:59:14 +02:00
Thomas Barlow
eb7a2f47d2 Fix #122794: FBX Subsurf Export applies the last Subsurf modifier
Disabling the last Subdivision Surface modifier was removed by mistake
in
blender/blender-addons/commit/bc801d7b1dad4be446435e0cab4d3a80e6bb1d04

This patch restores the mistakenly removed code that disables the last
Subdivision Surface modifier when the option to export FBX Subdivision
Surface is enabled.

The add-on's patch version has been increased.

Pull Request: https://projects.blender.org/blender/blender/pulls/122841
2024-06-07 12:55:29 +02:00
Campbell Barton
c9324a0baa Merge branch 'blender-v4.2-release' 2024-06-07 17:38:51 +10:00
Campbell Barton
7e2552e4af Merge branch 'blender-v4.2-release' 2024-06-07 17:38:48 +10:00
Campbell Barton
059dc93cde Extensions: support refreshing local repositories when offline
Since [0] there was no way to refresh local repositories,
with the poll messages suggesting to restart Blender to see updates
which isn't practical for developers.

The ability to refresh was prevented when "Online Access" was disabled,
meaning a developer couldn't easily develop their own add-ons unless
they were online.

[0]: 651621da0d
2024-06-07 17:36:59 +10:00
Campbell Barton
3dd8c826b5 Extensions: correct the descriptions for active repository actions 2024-06-07 16:52:51 +10:00
Campbell Barton
69e6240587 Merge branch 'blender-v4.2-release' 2024-06-07 16:34:09 +10:00
Campbell Barton
dc0e559cbb Extensions: remove intermediate operators for upgrade and sync
The buttons to upgrade or sync extensions called extension
operators via bpy.app.handlers, requiring awkward glue-code
which didn't show error reports in to the user.

Remove these operators and call the upgrade & sync operators directly.
2024-06-07 16:33:03 +10:00
Campbell Barton
e55a2ae5e4 Merge branch 'blender-v4.2-release' 2024-06-07 15:14:03 +10:00
Campbell Barton
9c60fe88fa Cleanup: de-duplicate check/update poll function 2024-06-07 15:11:54 +10:00
Campbell Barton
d1c1c6e5e0 Merge branch 'blender-v4.2-release' 2024-06-07 12:50:45 +10:00
Campbell Barton
239f032186 Fix #122857: error validating older permissions list 2024-06-07 12:49:16 +10:00
Campbell Barton
5342424ae7 Merge branch 'blender-v4.2-release' 2024-06-07 12:11:57 +10:00
Campbell Barton
98bb157ad9 License headers: add SPDX header
Also include "addons_core" in license check.
2024-06-07 12:09:58 +10:00
Julien Duroure
3e1dd4b321 Merge branch 'blender-v4.2-release' 2024-06-06 16:44:05 +02:00
Julien Duroure
08d43667c8 glTF importer: Fix bone shape size not always pertinent
We don't have yet the perfect formula, so adding
- An option to disable bone shape for Blender heuristic, if needed
- An option to scale factor the bone shape for Blender heuristic
2024-06-06 16:42:08 +02:00
Julien Duroure
7edb89ac96 Merge branch 'blender-v4.2-release' 2024-06-06 16:36:37 +02:00
Julien Duroure
d9d5597a6c glTF importer: Remove legacy EEVEE blend_method update 2024-06-06 16:35:12 +02:00
Julien Duroure
5372fe2d16 Merge branch 'blender-v4.2-release' 2024-06-06 12:42:47 +02:00
Julien Duroure
b0153f5891 glTF exporter: Collection Export: update filepath when changing format
Update .glb / .gltf extension
Part of #122783

Still remaining the change of default (grayed) value if user didn't set filepath yet
But not sure this can be accessible from python API
2024-06-06 12:40:27 +02:00
Julien Duroure
b4511ba069 Merge branch 'blender-v4.2-release' 2024-06-06 12:19:58 +02:00
Julien Duroure
c6e38d084c glTF exporter: Collection Export: Exporting a center of mass of root objects option 2024-06-06 12:18:52 +02:00
Julien Duroure
835547e6a4 Merge branch 'blender-v4.2-release' 2024-06-06 12:03:47 +02:00
Julien Duroure
8fd9712df9 glTF exporter: add alphamode management backward compatibility
When a file is created with pre- 4.2 version, but is open with 4.2 version:
We can now detect the automatically created node setup
Wrong for the exact value of the cutoff, but better than nothing to get it detected
2024-06-06 12:01:48 +02:00
Julien Duroure
a28540cb13 glTF: Bump addon version to 4.3.0 in main after 4.2 branch creation 2024-06-06 10:48:01 +02:00
Campbell Barton
fa5f2354f7 Extensions: adjust add-ons shown in missing built-in extensions
Based on feedback in !122727, include previously built-in add-ons
in the built-in extensions panel even if there is no support for
adding it back via the extensions repository.
2024-06-06 18:19:54 +10:00
Campbell Barton
8cb94adbef Extensions: support updated permissions table in the manifest
- Update the example manifest.
- Validate the values are short, single line strings.
2024-06-06 17:42:20 +10:00
Campbell Barton
d5850809cd Cleanup: update Makefile to quite mypy errors, remove redundant check 2024-06-06 17:40:24 +10:00
Campbell Barton
fc0a538168 Extensions: translate each permission individually
Without translating terms individually, the translation lookup table
would have had to included every permutation of permissions.
2024-06-06 16:42:22 +10:00
Campbell Barton
2533ff39f9 Extensions: support replacing missing legacy add-ons with extensions
This groups all the add-ons from 4.1 which were enabled but are no
longer distributed with Blender and provides an easy way for users to
install them. This panel is collapsed by default.

Ref !122727

Co-authored-by: Dalai Felinto <dalai@blender.org>
2024-06-06 14:41:20 +10:00