Commit Graph

9969 Commits

Author SHA1 Message Date
Philipp Wolfer
83ea460c57 Moved legacy code out of PluginManager._load_plugin 2023-09-10 13:47:01 +02:00
Philipp Wolfer
a88975249f PICARD-2751: Load plugins in plugin dir priority order
If a plugin is already loaded avoid running its code again. This avoids
double execution in case the plugin is in both the user and system plugin
directory.
2023-09-10 13:47:00 +02:00
Philipp Wolfer
4db506c49f PICARD-2751: Avoid plugins with relative imports executing plugin body twice 2023-09-10 12:28:48 +02:00
Philipp Wolfer
70904c11e0 Refactor PluginMetaPathFinder 2023-09-10 11:47:32 +02:00
Philipp Wolfer
bcda101dae pluginmanager: Avoid multiple calls to PathFinder().find_spec() 2023-09-09 17:17:52 +02:00
Philipp Wolfer
1944a0e2cb PICARD-2355: Use zipimporter.find_spec if available
Avoids use of deprecated and in Python 3.12 removed API
2023-09-09 16:55:34 +02:00
Philipp Wolfer
b1afa8e121 PICARD-2354: Use MetaPathFinder to find Picard plugins 2023-09-09 16:55:34 +02:00
Philipp Wolfer
136e2b7dd3 PICARD-2354: Exec plugin module when loading 2023-09-09 12:49:21 +02:00
skelly37
0a56f40854 PICARD-2354: Replaced deprecated imp module in plugin manager 2023-09-09 12:49:21 +02:00
Philipp Wolfer
1912420bb9 Run CI tests with Python 3.12.0-rc.1 2023-09-09 12:49:20 +02:00
Laurent Monin
bfc199e5e6 Merge pull request #2306 from phw/fix-script-editor
Fixed regresson in script editor
2023-09-08 15:46:10 +02:00
Philipp Wolfer
9f7ae34bf4 Fixed regresson in script editor
Revert use of qlistwidget_items for getting the script list, as this
is a QComboBox and not QListWidget.
2023-09-08 15:35:24 +02:00
Philipp Wolfer
2a89c2edf2 Use named parameters in powershell script 2023-09-08 09:49:53 +02:00
Philipp Wolfer
7c7de584a6 PICARD-2724: Move all Qt5 DLLs into main directory on Windows
Avoids import errors if a system wide, incompatible Qt5 installation
is present on the system.
2023-09-08 09:49:53 +02:00
Philipp Wolfer
33e9c02f0f PICARD-2749: Avoid deprecated importlib APIs in log module 2023-09-08 09:48:27 +02:00
Philipp Wolfer
9009771776 Restrict default permissions of Github Actions 2023-09-08 07:34:02 +02:00
Laurent Monin
b100eb1620 Merge pull request #2303 from zas/isort_fix
Isort fix
2023-09-07 20:30:01 +02:00
Laurent Monin
f15b7f2244 Merge pull request #2302 from zas/qlistwidget_items
Introduce method to iterate Qlistwidget items
2023-09-07 20:29:45 +02:00
Laurent Monin
46e554c533 Apply isort changes to setup.py 2023-09-07 17:40:09 +02:00
Laurent Monin
9a688f25b5 Update isort command and link 2023-09-07 17:39:46 +02:00
Laurent Monin
d5157de058 Fix isort config
Fix following error occuring with isort v5+:

ERROR: Found resources import while parsing, but FIRSTPARTY was not included in the `sections` setting of your config. Please add it before continuing
See https://pycqa.github.io/isort/#custom-sections-and-ordering for more info.
2023-09-07 17:39:06 +02:00
Laurent Monin
268eeed588 Use qlistwidget_items() where applicable 2023-09-07 16:39:34 +02:00
Laurent Monin
b7a6d5b2bd Introduce helper function qlistwidget_items()
Iterating through a QListWidget is quite common in the code, this generator
makes things simpler.
2023-09-07 14:52:02 +02:00
Zas
ae3767079b Translated using Weblate (French)
Currently translated at 100.0% (17 of 17 strings)

Co-authored-by: Zas <Zas@users.noreply.translations.metabrainz.org>
Translate-URL: https://translations.metabrainz.org/projects/picard/appstream/fr/
Translation: Picard/AppStream
2023-09-07 12:25:42 +00:00
Hosted Weblate
41d2939367 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://translations.metabrainz.org/projects/picard/appstream/
Translation: Picard/AppStream
2023-09-07 12:25:42 +00:00
Philipp Wolfer
19616f0420 Translated using Weblate (German)
Currently translated at 100.0% (17 of 17 strings)

Translated using Weblate (French)

Currently translated at 99.9% (1170 of 1171 strings)

Co-authored-by: Philipp Wolfer <ph.wolfer@gmail.com>
Translate-URL: https://translations.metabrainz.org/projects/picard/app/fr/
Translate-URL: https://translations.metabrainz.org/projects/picard/appstream/de/
Translation: Picard/App
Translation: Picard/AppStream
2023-09-07 12:25:42 +00:00
Laurent Monin
63c09744a3 Merge pull request #2301 from zas/caa_providers_tidyup
CAA providers code tidyup
2023-09-07 14:25:38 +02:00
Laurent Monin
546d779ec6 _load_cover_art_providers(): use an intermediate variable to shorten lines
Not strictly needed but more readable.
2023-09-07 14:13:40 +02:00
Laurent Monin
5e64ed0f88 Make _ca_providers() a generator 2023-09-07 13:48:13 +02:00
Laurent Monin
6a196de391 ca_providers() -> _ca_providers()
Make it private and move it just before `save()` where it is used.
2023-09-07 13:48:13 +02:00
Laurent Monin
8a0c491b58 load_cover_art_providers() -> _load_cover_art_providers()
Make "private" since it is only used by `load()` and move it just before it
2023-09-07 13:48:13 +02:00
Laurent Monin
90e5724b2f Use provider's name as second sort key
It is useful for new providers (as they default to position 666)
2023-09-07 13:48:13 +02:00
Laurent Monin
0f41d385e7 Drop unneeded intermediate variable ordered_providers 2023-09-07 10:26:28 +02:00
Laurent Monin
8cd5c768dd Drop fom_ca_providers_option() and POrderTuple, not really needed 2023-09-07 10:25:25 +02:00
Laurent Monin
b47e004e6d cover_art_providers(): call get_config() once at top 2023-09-07 10:23:41 +02:00
Laurent Monin
e1fd96f1ee cover providers: drop debug logging not really needed
It makes code complicated, and flood the log output every time options are loaded.
2023-09-07 10:22:36 +02:00
Laurent Monin
971d88e71b Rename id to profile_id where applicable
`profile_id` is explicit.
`id()` is a built-in function, see https://docs.python.org/3.10/library/functions.html#id
2023-09-07 06:15:05 +02:00
Philipp Wolfer
6f46ebc367 PICARD-2746: Validate XDG desktop file in CI 2023-09-06 08:29:05 +02:00
Philipp Wolfer
edbc07f502 PICARD-2746: Localize XDG desktop file
Share the translation resource for AppStream and desktop file. Both
provide metadata and the translations are only used during build
and never actually installed separately.
2023-09-06 08:29:05 +02:00
Philipp Wolfer
1a83269872 CI: Ensure clean repository when building sdist packages 2023-09-06 00:12:42 +02:00
Philipp Wolfer
2514d9af0c Allways exclude all *~ files in sdist package 2023-09-06 00:12:42 +02:00
Zas
5b42e778a8 Translated using Weblate (French)
Currently translated at 99.9% (1170 of 1171 strings)

Co-authored-by: Zas <Zas@users.noreply.translations.metabrainz.org>
Translate-URL: https://translations.metabrainz.org/projects/picard/app/fr/
Translation: Picard/App
2023-09-05 06:51:13 +00:00
Philipp Wolfer
52e71fb082 Fixed prospector warnings
- invalid escape sequence
- variable used before assignment
2023-09-03 18:59:01 +02:00
Philipp Wolfer
9971f0848e Build with official mutagen 1.47.0 release
Remove workaround of installing patched mutagen.
2023-09-03 18:48:46 +02:00
Zas
4d34f4a8da Translated using Weblate (French)
Currently translated at 100.0% (1041 of 1041 strings)

Co-authored-by: Zas <Zas@users.noreply.translations.metabrainz.org>
Translate-URL: https://translations.metabrainz.org/projects/picard/constants/fr/
Translation: Picard/Constants
2023-09-03 06:27:31 +00:00
Zas
770a9574bc Translated using Weblate (French)
Currently translated at 100.0% (1041 of 1041 strings)

Translated using Weblate (French)

Currently translated at 99.7% (1168 of 1171 strings)

Co-authored-by: Zas <Zas@users.noreply.translations.metabrainz.org>
Translate-URL: https://translations.metabrainz.org/projects/picard/app/fr/
Translate-URL: https://translations.metabrainz.org/projects/picard/constants/fr/
Translation: Picard/App
Translation: Picard/Constants
2023-09-01 10:27:33 +00:00
Philipp Wolfer
424365e9f3 Translated using Weblate (Hebrew)
Currently translated at 93.6% (1097 of 1171 strings)

Translated using Weblate (German)

Currently translated at 100.0% (1171 of 1171 strings)

Co-authored-by: Philipp Wolfer <ph.wolfer@gmail.com>
Translate-URL: https://translations.metabrainz.org/projects/picard/app/de/
Translate-URL: https://translations.metabrainz.org/projects/picard/app/he/
Translation: Picard/App
2023-09-01 10:27:33 +00:00
Philipp Wolfer
fa200b4905 PICARD-2690: Consider po/constants in PyInstaller builds 2023-08-31 13:53:41 +02:00
Philipp Wolfer
542325bca5 Avoid pipe error output on startup
When starting the initial instance the pipe not being available to
write to is an expected condition. Handle this gracefully.
2023-08-31 10:38:13 +02:00
Philipp Wolfer
af1aca6c17 PICARD-2722: Fix pipe recreation race condition on exit
Only re-create pipe on Windows if it was not stopped. Otherwise
re-creating the pipe can cause the pipe server thread to keep running.
2023-08-31 10:38:13 +02:00