Commit Graph

239 Commits

Author SHA1 Message Date
Campbell Barton
d7e9c8cd87 Merge branch 'blender-v4.2-release' 2024-06-18 19:50:42 +10:00
Campbell Barton
1ed6449c82 Extensions: better error message when already installed
Change the main error messages that happens when we drag and drop an
extension URL.

Ref !123242

Co-authored-by: Dalai Felinto <dalai@blender.org>
2024-06-18 19:49:36 +10:00
Campbell Barton
4df945f3af Merge branch 'blender-v4.2-release' 2024-06-18 19:24:06 +10:00
Campbell Barton
09be28794a Fix references to undefined modules/variables, remove unused import 2024-06-18 19:21:15 +10:00
Campbell Barton
8caf042d0f Merge branch 'blender-v4.2-release' 2024-06-18 16:40:42 +10:00
Campbell Barton
f98e422e63 Extensions: support build --split-platforms, generated manifest data
- Add an option to build a separate package for each platform, this is
  useful to produce smaller packages when large wheels are included.

- Add a reserved field: "[build.generated]" to the manifest when
  splitting by platform which overrides the root-level platform
  when it exists.
2024-06-18 16:29:57 +10:00
Bastien Montagne
e78b50123f Merge branch 'blender-v4.2-release' 2024-06-17 12:18:29 +02:00
Bastien Montagne
b143cc1885 I18N: Remove 'edit translation' features from the Blender UI.
This feature was not maintained for a long time already, and would have
required a lot of work to make it sensible and usable after 'recent'
changes (like the move to weblate translation platform).

For details see also
https://devtalk.blender.org/t/ui-translation-tools-remove-edit-translation-feature-from-blender-ui-in-4-2lts-release/34947
2024-06-17 12:17:55 +02:00
Brecht Van Lommel
eab14b0a0c Merge branch 'blender-v4.2-release' 2024-06-14 16:56:00 +02:00
Damien Picard
4719ce5d56 I18n: Allow translation of extension tags and permissions
The new extension system introduces tags, similar to categories from
legacy add-ons, and permissions. A hardcoded list is supported for
each, available in the docs:
- https://docs.blender.org/manual/en/dev/advanced/extensions/tags.html
- https://developer.blender.org/docs/features/extensions/schema/

This change allows extraction of these new metadata to the translation
files.

In order to disambiguate the new messages, tags use the new "Script"
translation context. Permissions are lower case, so there is a low
risk of collision, and they use the default context.

While the tags are defined per-platform, with extensions.blender.org
being the only one available currently, they are extracted as a single
list.

Pull Request: https://projects.blender.org/blender/blender/pulls/123150
2024-06-14 16:35:54 +02:00
Campbell Barton
c96d715caf Merge branch 'blender-v4.2-release' 2024-06-15 00:27:57 +10:00
Campbell Barton
5b30ded989 Extensions: support enabling a repository with drag & drop
When dropping an extension onto a repository which is disabled,
show a popup that optionally enables the disabled repository.

Part of #120665.
2024-06-15 00:22:36 +10:00
Campbell Barton
32657349cc Merge branch 'blender-v4.2-release' 2024-06-14 15:46:31 +10:00
Campbell Barton
e0bdb74d8d Merge branch 'blender-v4.2-release' 2024-06-14 15:46:24 +10:00
Campbell Barton
f94daa4545 Merge branch 'blender-v4.2-release' 2024-06-14 15:45:48 +10:00
Campbell Barton
f8af70f0b6 Merge branch 'blender-v4.2-release' 2024-06-14 15:43:07 +10:00
Campbell Barton
f5711ff505 Merge branch 'blender-v4.2-release' 2024-06-14 15:43:04 +10:00
Campbell Barton
21a2d4f962 Merge branch 'blender-v4.2-release' 2024-06-14 15:43:00 +10:00
Campbell Barton
ba77cd42dc Merge branch 'blender-v4.2-release' 2024-06-14 15:42:57 +10:00
Campbell Barton
a25c386c4a Extensions: remove add-on local preferences
This was only being used for a single debugging option,
additional developer reports are now used when enabling
the extensions debugging option (under experimental).
2024-06-14 15:32:07 +10:00
Campbell Barton
e93f0ee53a Extensions: add network timeout and connection limit preferences
These settings are used when running extension updates but may be
used for any operations that perform online access.
2024-06-14 15:32:07 +10:00
Campbell Barton
176864ab03 Extensions: install all updates in parallel
Run each update as a separate job, previously updates for each
repository was split into a separate job however that would only
use parallel connections with multiple online repositories which
isn't used by default. Currently the connection limit is hard-coded but
will be made into a preference.
2024-06-14 15:12:23 +10:00
Campbell Barton
04f310a19a Extensions: simplify access to manifests when refreshing the remote
The internal API call to refresh remote data wasn't returning
the resulting data, making it inconvenient to refresh & access
remote meta-data from a single repository.
2024-06-14 15:12:21 +10:00
Campbell Barton
2dd339bff3 Extensions: quiet warnings from pylint
Some warnings remain which need further investigation.
2024-06-14 15:12:19 +10:00
Campbell Barton
7952f35292 Extensions: filter out extensions by platform and blender version
Exclude extensions which aren't supported by the Blender version or
the platform (for platform dependent extensions).
2024-06-14 15:12:18 +10:00
Campbell Barton
248a5258e0 Extensions: various fixes
- Fix an unhandled exception listing a repository with no remote data.
- Exclude dot-files from being listed when generating a repository.
- Fix missing import (in an unlikely corner case) when accessing
  tags before the repository data was initialized.
- Fix refresh refreshing the remote not updating the
  internal remote meta-data.
- Suppress warnings in tests caused by default repositories
  (now removed before resting).
2024-06-14 15:12:16 +10:00
Bastien Montagne
de713122f3 Merge branch 'blender-v4.2-release' 2024-06-13 12:17:10 +02:00
Damien Picard
f87d4e4e40 I18n: Extract and disambiguate a few messages
Extract
- Cycles denoiser enum.
- Extensions user preferences UI.
- Node operator poll message from new node function.

Improve
- Split "(Enabled|Disabled) on startup, overriding the preference."
into two messages.

Disambiguate
- "Add" when describing the action of adding something should use the
  Operator context.
- "Dimensions", in noise textures.
- "Transform" as a noun, the matrix transform type of Geometry Nodes,
  as opposed to the verb to move things in space.
- "Parent" as a noun or verb (the parent of an object, to parent an
  object to another).

Some issues reported by Satoshi Yamasaki, deathblood, and Gabriel Gazzán.

Pull Request: https://projects.blender.org/blender/blender/pulls/122969
2024-06-13 12:15:55 +02:00
Campbell Barton
17ca15526d Merge branch 'blender-v4.2-release' 2024-06-12 22:40:20 +10:00
Campbell Barton
8e12af9c85 Merge branch 'blender-v4.2-release' 2024-06-12 22:40:18 +10:00
Campbell Barton
c6680ce7ca Extensions: include the version by default when building packages
Use the `{manifest_id}-{version}.zip` for the generated file
unless an explicit name is given.

Exclude all *.zip files located in the package root.
2024-06-12 22:38:32 +10:00
Campbell Barton
bda9a44785 Extensions: use "v1" version for the generated repository meta-data 2024-06-12 22:38:32 +10:00
Sergey Sharybin
64df87978a Merge branch 'blender-v4.2-release' 2024-06-12 12:10:43 +02:00
Sergey Sharybin
2cdd9c1b2c Fix: Syntax error after recent extensions change
Caused by 4d8eea1402.
2024-06-12 12:08:59 +02:00
Sergey Sharybin
ad0bd9ba9f Merge branch 'blender-v4.2-release' 2024-06-12 10:38:39 +02:00
Campbell Barton
4d8eea1402 Extensions: convert package listings into a dictionary when loaded
Changes to the remote repository JSON format hadn't been properly
accounted for, a quick-fix was left in that converted the JSON
package listing into a dictionary as it was accessed (every redraw).

Update the behavior to perform the conversion when loading the data
from the JSON. This is also needed for multi platform & blender-version
support.
2024-06-12 16:50:08 +10:00
Campbell Barton
c99a40b286 Extensions: basic validation of remote repository data
Prevent non-compliant data in remote repositories from causing errors
in Blender's interface.

Move from a dictionary to a named-tuple which uses normalized values.
2024-06-12 15:13:04 +10:00
Campbell Barton
2665be7834 Merge branch 'blender-v4.2-release' 2024-06-12 12:50:04 +10:00
Campbell Barton
b37c4ae28c Merge branch 'blender-v4.2-release' 2024-06-12 12:50:02 +10:00
Campbell Barton
820fc124d4 Extensions: store repository data in a named tuple
No functional changes, adding more specific typing information helps
with further improvements.
2024-06-12 12:41:40 +10:00
Campbell Barton
cd741650d0 Fix incorrect check for the extension manifests time-stamp
The time-stamp on the directory was checked, not the manifest file.
2024-06-12 12:36:55 +10:00
Campbell Barton
b0db7e980d Merge branch 'blender-v4.2-release' 2024-06-11 22:41:06 +10:00
Campbell Barton
8b5d09b5e7 Merge branch 'blender-v4.2-release' 2024-06-11 22:41:03 +10:00
Campbell Barton
889e1000ca Merge branch 'blender-v4.2-release' 2024-06-11 22:40:59 +10:00
Campbell Barton
43356044eb Extensions: add the ability to create a repository that doesn't exist
When dropping a URL from an unknown repository add a dialog to support
adding a new repository.
2024-06-11 22:37:29 +10:00
Campbell Barton
f7d5d6d88f Fix error canceling an extension operator before it's started 2024-06-11 22:37:29 +10:00
Damien Picard
df2ee7298c I18n: Make Node Wrangler's support level OFFICIAL
The bl_info dictionary is deprecated for most extensions, but it is
still used for core add-ons and since Node Wrangler is now built-in,
it should be marked as official.

The reason for this change is actually that it enables translation of
the Node Wrangler UI, because add-ons below official support level
were never considered for translation.

-----

The reason only OFFICIAL add-ons are translated is that they are enabled [here](4f36fb1afe/scripts/modules/bl_i18n_utils/bl_extract_messages.py (L1052)) during message extraction.

Pull Request: https://projects.blender.org/blender/blender/pulls/123043
2024-06-11 14:30:32 +02:00
Campbell Barton
69897eca13 Merge branch 'blender-v4.2-release' 2024-06-11 19:54:42 +10:00
Campbell Barton
12ff1ffe5b Extensions: remove add-ons which don't have a built-in upgrade opton
Previously these were shown as missing add-ons, since they have been
intentionally removed, remove them as part of versioning instead
of showing them as "Missing Add-ons". This is especially important
for X3D & STL which were enabled by default which meant any user
loading 4.1 preferences would have them shown as missing add-ons.
2024-06-11 19:53:38 +10:00
Omar Emara
ce80c3ca23 Merge branch 'blender-v4.2-release' 2024-06-11 12:03:16 +03:00