Campbell Barton
f4f50fa2c5
Cleanup: replace typing.Union/Option with logical OR for extensions
...
Also remove use of deprecated typing.Sequence.
2024-10-18 10:08:12 +11:00
Campbell Barton
a66601ee95
Cleanup: remove deprecated typing built-ins for extension logic
...
Deprecated since Python 3.9 but still used in many docs/examples.
2024-10-17 19:11:40 +11:00
Julien Duroure
665d7378c0
glTF: cleanup formating
2024-10-16 17:25:26 +02:00
Campbell Barton
44d0452a78
Cleanup: spelling in comments
2024-10-15 12:51:05 +11:00
Campbell Barton
3f7e14295f
Cleanup: format
2024-10-11 11:00:24 +11:00
YimingWu
87f227ef7a
Fix #128838 : Extension: Support _universal2 suffix for Mac
...
Some python wheels can have `_universal2` suffixes which are built for
both intel and arm architectures. This fix takes care of that.
2024-10-10 21:15:33 +08:00
Campbell Barton
b0fb6a1b2c
Fix #128840 : extension build asserts when "type" is missing
...
Building an extension when the manifest didn't define a "type"
would assert instead of reporting the missing field.
Return earlier when there are errors to prevent the assertion.
2024-10-10 23:28:11 +11:00
Jordan Henshaw
70a429bb18
UI: Fix missing hyphen in "Addon Tags" label
...
Add missing hyphen for consistency with rest of UI,
following the Human Interface Guidelines.
Pull Request: https://projects.blender.org/blender/blender/pulls/127822
2024-10-08 18:23:58 +02:00
Campbell Barton
1563ba7e6c
Fix #128175 : Updating extension can remove the extension on WIN32
...
On Windows an entire directory may be locked when any files inside it
are opened by another process. This can cause operations that
recursively remove a directory (uninstalling & updating) to fail
with a partially removed extension.
The case of uninstalling was already handled, where failure to remove
a directory would stage the extension for later removal.
In the case of updating however, the user could be left with a broken
(partially removed) extension where some files were removed, as the
directory was locked, the update would fail to extract new files.
Address this issue by renaming the directory before recursive removal.
The following logic has been implemented:
- If any files in the directory are locked, renaming will fail.
So even though the operation fails the extension is left intact.
- If renaming succeeds, it's possible to apply the update.
While it's possible (albeit unlikely) recursive removal fails,
which could be caused by file-system permissions issues corruption or
a process could open a file between rename & removal.
In this case the renamed directory is staged for later removal.
Other changes:
- Resolve a related problem where the user could install an
extension previously staged for removal, now installing an extension
ensured it's not removed later.
This would occur if uninstalling failed, the user resolves
directory-lock, uninstalls again, then re-installs the extension.
- When an extension fails to be removed, don't attempt to remove
user configuration for that extension.
Prefer to keep the extension & it's settings in their "current state"
if it can't be removed.
2024-10-03 12:15:27 +10:00
Campbell Barton
0b69e1d6f5
Cleanup: double quotes for strings, replace f-string with str.format
2024-10-02 15:46:11 +10:00
Campbell Barton
729004390d
Cleanup: quiet pylint warnings for extensions
2024-10-01 16:07:05 +10:00
Campbell Barton
38c30c5c43
Extensions: resolve test failing
...
Enable the extensions add-on by default, without this, it's enabled
on startup, causing the preferences to be tagged as modified.
2024-10-01 15:36:54 +10:00
Campbell Barton
22cdf8da1e
Extensions: only apply SSL workaround for Python older than 3.12.6
...
Skip the workaround for versions of Python that contain the fix.
2024-10-01 13:06:05 +10:00
Campbell Barton
0afce08c20
Cleanup: use Python format specifiers
2024-10-01 10:14:48 +10:00
Campbell Barton
6cbdf0223b
Cleanup: defer imports on startup
2024-10-01 10:01:16 +10:00
Campbell Barton
a9dee36974
Cleanup: remove unused variables, imports
2024-09-27 23:37:18 +10:00
Julien Duroure
3cfeebe7c7
glTF exporter: fix crash managing shader node groups
...
Happen when multiple link on the same socket
2024-09-26 15:22:13 +02:00
Julien Duroure
98a7aa2c41
glTF importer: Fix #127829 : Importing Vertex Color on points / edges primitives
2024-09-26 15:11:43 +02:00
Julien Duroure
0208582c16
glTF exporter: Fix exporting Vertex Color on point/edge
2024-09-26 15:02:47 +02:00
Julien Duroure
d5f1ff250b
glTF exporter: fix crash using full collection hierarchy export
2024-09-26 14:51:15 +02:00
notrudyyy
1939eb03a7
Refactor: Mesh: Normalize input normals in set custom normals
...
To reduce code duplication in importers, modifies the C++
set_custom_normals API functions to normalize the input normals.
Reverts !124336 , !124267 , and !124261 as the normalization now
occurs in the API call.
Resolves #124358 .
Pull Request: https://projects.blender.org/blender/blender/pulls/127814
2024-09-19 20:12:40 +02:00
Jesse Yurkovich
b8f236510d
Fix: error in node wrangler format string
2024-09-16 04:50:18 +02:00
Jacques Lucke
92febd5fb2
Fix: error in node wrangler format string
2024-09-14 13:29:45 +02:00
Mateusz Grzeliński
6822e61c6f
Fix #126792 : "extension install" sub-command fails to install
...
Do not report error when local repo does not have manifest and we are
asking for remote repositories.
If the errors list is filled with any error the operation is considered
failure.
Ref: !127360
2024-09-13 16:43:49 +10:00
Julien Duroure
00bc059894
glTF: Fix typo in a previous commit
2024-09-12 15:50:58 +02:00
Julien Duroure
a9bfca5483
glTF exporter: fix missing hook parameters leading to crash
2024-09-12 15:41:00 +02:00
Julien Duroure
0169abd220
glTF exporter: account for library when gathering image URI
...
When using "keep original" option
2024-09-12 15:19:32 +02:00
Julien Duroure
044d20fe46
glTF importer: Fix light spot default values check
2024-09-12 12:05:48 +02:00
Julien Duroure
4c441c1c64
glTF exporter: fix accessor min/max float check
2024-09-12 12:02:51 +02:00
Julien Duroure
936ca7636a
glTF exporter: Removes a duplicate lookup
2024-09-12 11:49:16 +02:00
Julien Duroure
89c389c465
glTF: hook UI, distinct import & export draw code
2024-09-12 11:42:22 +02:00
Campbell Barton
54153629f4
Fix #127329 : Keyboard interrupt doesn't work from Python
2024-09-11 14:30:51 +10:00
Julien Duroure
780721de19
glTF exporter: fix error message if hook failed
2024-09-01 15:16:27 +02:00
Julien Duroure
c132bd896f
glTF exporter: children type check refactoring
2024-08-30 06:56:34 +02:00
Julien Duroure
11451a2082
glTF export: Add logging level control for export
...
This was already the case at import
2024-08-30 06:48:07 +02:00
Julien Duroure
4dad2a567d
glTF: Use wait cursor instead of empty % cursor
2024-08-30 06:43:52 +02:00
Julien Duroure
8d575d3c85
glTF exporter: Enable exporting joint leaf at tail of leaf bones
2024-08-30 06:42:26 +02:00
Julien Duroure
5122255739
glTF: Manage Quaternion and Matrix attribute types for custom attributes
2024-08-30 06:39:52 +02:00
Julien Duroure
58141b7396
glTF exporter: set udim material names with tile number
2024-08-30 06:37:34 +02:00
Julien Duroure
69ab986370
glTF exporter: Regression: RGB to Shader socket unlit management
2024-08-30 06:29:42 +02:00
Julien Duroure
7c6975f6c8
glTF exporter: avoid double export
...
Make sure to not check instances inside instances collection when GN instance is enable.
2024-08-30 06:26:47 +02:00
Julien Duroure
6191eb1e9d
glTF exporter: Fix custom prop when apply modifier
...
Since 4.2, props are Statically Typed
so no need to copy them in that case, because overwriting them will crash
2024-08-30 06:23:11 +02:00
Julien Duroure
42840ded01
glTF exporter: Fix UI after Blender changes
2024-08-30 06:20:04 +02:00
Julien Duroure
4e5093130c
Fix #126920 glTF: Cleanup - file renaming
...
Long filepaths cannot be unzipped (by default) on Windows, so cleaning filenames to avoid too long paths
2024-08-30 06:00:10 +02:00
Alaska
2fd2af86e8
Fix incorrect export FBX time
...
Ref: !125717
2024-08-28 12:30:56 +10:00
Andrej730
798fbe7dbd
Fix: Typo in extensions repository lock info message
...
`Fore` -> `Force`
Pull Request: https://projects.blender.org/blender/blender/pulls/126778
2024-08-26 12:28:52 +02:00
Bastien Montagne
c1aef6b4b0
Cleanup: make format
2024-08-19 14:26:53 +02:00
Bastien Montagne
d3589270d4
I18N tools: disable multi-processing for the time being.
...
Not sure why, but today I got almost systematic deadlocks in the
ProcessPoolExecutor calls (and similar issues with direct usage of
multiprocessing)... For now synchronous single process will do.
2024-08-19 13:52:48 +02:00
Campbell Barton
8a7ff41a85
Cleanup: wrap long lines in Python scripts
2024-08-19 10:48:07 +10:00
Bastien Montagne
473456323f
I18N: Extraction tools: Add timeout to async multi-processing.
...
Once in a while these get (dead)locked for some reason, at least avoid
having to kill the whole Blender then.
2024-08-12 13:00:46 +02:00