11 Commits

Author SHA1 Message Date
Sybren A. Stüvel
3b4da656c9 Add-on: cache manager info in a JSON file
Instead of storing the cached manager info in the Blender preferences,
store the info in a JSON file. The file is located in the user prefs
folder (`~/.config/blender/{version}/config` on Linux).

This also reduces the number of 'refresh' operators to a single one, which
then fetches all necessary info from the Manager.

This fixes an issue (reported via chat) where worker tags were sometimes
not retained across file saves.
2024-03-04 13:08:53 +01:00
Sybren A. Stüvel
074c60df9d Cleanup: add-on, reformat with black
No functional changes.
2022-10-20 13:14:51 +02:00
Sybren A. Stüvel
31cf0a4ecc Implement getSharedStorage operation & use it in the add-on
Implement the `getSharedStorage` operation in the Manager, and use it in
the add-on to get the shared storage location in a way that makes sense
for the platform of the user.

Manifest task: T100196
2022-08-31 11:44:37 +02:00
Sybren A. Stüvel
59f41d0546 Add-on: show warning when versions are not matching
Before submitting a job, the add-on now checks the version of the Manager.
If this is not the same version of the add-on, a warning is shown and a
"Force Submit" button appears. This makes it both explicit that something
is iffy and still allows for pushing forward.

This is important when upgrading Flamenco, because I'm sure many people
will forget to actually redownload and reinstall the add-on.
2022-08-31 09:27:50 +02:00
Sybren A. Stüvel
a7510f4042 Cleanup: addon, split ping_manager() into two functions
Split the `comms.ping_manager()` function into two: one that returns the
version & config of the Manager, and the other that reports on it.

This will make it possible to do the former without the latter in certain
other situations where we want to refresh the manager info in the
background.
2022-08-31 08:08:06 +02:00
Sybren A. Stüvel
866513e06a Add-on: check connection with Flamenco on URL change
Whenever the URL to Flamenco Manager is updated, check it and report.

This required moving the 'ping manager' code into a separate function, as
calling an operator from an RNA update callback is not a good idea.
2022-07-29 14:25:47 +02:00
Sybren A. Stüvel
4f7c11d59a Addon: cleanup, use relative imports where possible 2022-03-11 17:30:27 +01:00
Sybren A. Stüvel
5be9985e3b Addon: fix Mypy errors 2022-03-11 11:18:21 +01:00
Sybren A. Stüvel
850678f495 Addon: allow configuring the Manager URL
Previously it was hard-coded to `http://localhost:8080/`, now that's just
the default value.
2022-03-10 17:57:26 +01:00
Sybren A. Stüvel
9f5e4cc0cc License: license all code under "GPL-3.0-or-later"
The add-on code was copy-pasted from other addons and used the GPL v2
license, whereas by accident the LICENSE text file had the GNU "Affero" GPL
license v3 (instead of regular GPL v3).

This is now all streamlined, and all code is licensed as "GPL v3 or later".

Furthermore, the code comments just show a SPDX License Identifier
instead of an entire license block.
2022-03-07 15:26:46 +01:00
Sybren A. Stüvel
616784df0a Addon: start of framework for API communication 2022-03-01 17:28:24 +01:00