Replace LZMA with ZLIB compression as default tools on Linux & Windows
can't decompress these ZIP files and some users wish to open and inspect
the extensions.
While LZMA has the potential for significantly better compression it
turns out the actual gains were marginal for extensions that contain
many Python files (compared with `tar.lzma`) because each file is
compressed individually, see #122710.
Scanning the file-system for paths to include didn't detect cases when
explicitly included paths (such as wheels) were missing.
Change the logic to build a list of paths which is merged with pattern
matched paths (de-duplicating), then add all files into the ZIP.
Any missing paths will raise an error.
We don't do anything with the content of the dictionary yet (the reason
why each permission is required. But Blender can talk again with the
extensions server.
This still requires changes on the validation and build and
server_generate commands. To be tackled separately.
Light redesign of the extension/add-on list item.
The last time this layout was updated was in Blender 2.5, when text was
usually left-aligned, and add-ons preferences weren't streamlined yet.
The goal is to keep a familiar look, while making some improvements to
organization such as group actions (install/uninstall, buttons to external sources
like website, documentation, report a bug).
Detail images available in the pull request.
Pull Request: https://projects.blender.org/blender/blender/pulls/122726
* Move missing script files inside a panel.
* Call it Missing Add-ons.
* Add an explicit "X" to dismiss (instead of the checkbox).
Note: The panel is collapsed by default.
Co-authored by Pablo Vazquez.
Pull Request: https://projects.blender.org/blender/blender/pulls/122721
- `bpy.types.Material.blend_method` aliases `bpy.types.Material.surface_render_method`.
'Opaque' and 'Alpha Clip' maps to deferred.
- Renamed `show_transparent_back` to `use_transparency_overlap`
- Renamed `use_screen_refraction` to `use_raytrace_refraction`
- Deprecate `use_sss_translucency` and `use_sss_translucency`
Related to: #113976
**NOTE**
The light probe changes will be done in a different patch.
Both patches should land just before we remove EEVEE Legacy
from the code-base.
Pull Request: https://projects.blender.org/blender/blender/pulls/122297
Making node wrangler a core add-ons means that it will ship with Blender, but it still has to be enabled explicitly. It won't be available on the extensions platform anymore.
We'll still continue to move parts of its functionality out of the add-on into default Blender. However, that takes a little bit longer, because we need to go over the design and code quality in more detail first. Once, the most important functionality (#121749) is merged, the remaining node wrangler features can be put on the extensions platform.
Ref !122557
When a user has downloaded an add-on as a zip file, it's not clear in
advance if this is a legacy add-on or a new extension. So they would
have to use trial and error, or inspect the zip file contents.
This uses a simple heuristic to check if the file is a legacy add-on,
and if so automatically calls the legacy operator instead.
The operator now show both extension and legacy add-on properties,
with the latter in a default collapsed subpanel.
Pull Request: https://projects.blender.org/blender/blender/pulls/121926
- All remote repositories are included in the check for outdated
packages, the check-for-updates setting is only used to sync with
the remote before checking for outdated packages.
- Defer checking for repositories to notify until after Blender
has opened since checking for installed packages & outdated
repositories could add some noticeable overhead.
Move extension update display from the splash screen to the status bar.
Based on !122413 with minor changes & removal of splash text.
Co-authored-by: Harley Acheson <harley.acheson@gmail.com>
This was probably borked during one of the recent renames.
To reproduce the original issue:
* Go to Preferences > Extensions
* Check the console:
rna_uiItemO: unknown operator 'extensions.show_online_prefs'
4.2/scripts/addons_core/bl_pkg/bl_extension_ui.py:354
Replace use of "bl_pkg" operator category with "extensions",
this naming was used while the functionality was experimental,
not intended to be used once extensions was moved out of experimental.
Being offline shouldn't be considered an error which checking for
updates on startup, so connectivity issues are suppressed unless
running in debug mode.
Ref !122463
When trying to optimize performance, we can disable other object in viewport when baking animation
We are now able to bake also drivers on SK with this option
The solution is to copy drivers to temporary created custom properties on armature,
to be able to evaluate them during baking
It's possible the user frees or change the repository after a check
for updates starts because synchronizing repositories isn't blocking.
Resolve by using a copy of the repository when checking for updates,
only applying updates if the copy still matches the preferences once
the update is complete.
When online mode is enabled and the preferences are shown,
the users needed to manually check for updates.
Now this runs in the background, sharing logic with checking for
updates on startup.
When updates run status text is currently shown in the preferences
window, eventually this should be displayed in the status bar.
To avoid conflicts when updating a queue is used to avoid problems
caused by check for updates on startup & the preferences window also
checking for updates. Since checking for updates is optional it's
possible some repositories wont be handled by checking on startup
so both updates run for now. De-duplicating update checks can be
supported eventually.