feat: replace _set_plugin_field workaround with updated logic-plugin-manager fix

This commit is contained in:
h
2026-01-28 23:26:46 +01:00
parent 82e1f7c311
commit 8cc70d9ef0
3 changed files with 8 additions and 19 deletions

View File

@@ -17,7 +17,7 @@ sources = [
requires = [ requires = [
"PySide6-Essentials~=6.8", "PySide6-Essentials~=6.8",
"logic-plugin-manager[search]>=1.0.0", "logic-plugin-manager[search]>=1.0.1",
"pyqt-liquidglass>=0.1.0", "pyqt-liquidglass>=0.1.0",
] ]
@@ -34,7 +34,7 @@ version = "0.0.0"
requires-python = ">=3.13" requires-python = ">=3.13"
dependencies = [ dependencies = [
"briefcase>=0.3.25", "briefcase>=0.3.25",
"logic-plugin-manager[search]>=1.0.0", "logic-plugin-manager[search]>=1.0.1",
"pyqt-liquidglass>=0.1.0", "pyqt-liquidglass>=0.1.0",
"PySide6-Essentials~=6.8", "PySide6-Essentials~=6.8",
] ]

View File

@@ -169,25 +169,14 @@ class MainWindow(QMainWindow):
backup_manager.create_backup(BackupTrigger.AUTO, description) backup_manager.create_backup(BackupTrigger.AUTO, description)
if column == COL_CUSTOM_NAME: if column == COL_CUSTOM_NAME:
self._set_plugin_field(plugin, "nickname", new_value) plugin.set_nickname(new_value or None)
elif column == COL_SHORT_NAME: elif column == COL_SHORT_NAME:
self._set_plugin_field(plugin, "shortname", new_value) plugin.set_shortname(new_value or None)
self._plugin_table.update_plugin_display(plugin, column) self._plugin_table.update_plugin_display(plugin, column)
except OSError as e: except OSError as e:
QMessageBox.warning(self, "Edit Failed", f"Failed to save changes: {e}") QMessageBox.warning(self, "Edit Failed", f"Failed to save changes: {e}")
def _set_plugin_field(self, plugin: AudioComponent, field: str, value: str) -> None:
tagset = plugin.tagset
tagset.load()
raw = tagset._Tagset__raw_data # type: ignore[attr-defined] # noqa: SLF001
if value:
raw[field] = value
else:
raw.pop(field, None)
tagset._write_plist() # noqa: SLF001
tagset.load()
def _on_search_results(self, results: list[SearchResult]) -> None: def _on_search_results(self, results: list[SearchResult]) -> None:
plugins = [r.plugin for r in results] plugins = [r.plugin for r in results]
self._plugin_table.filter_by_search_results(plugins) self._plugin_table.filter_by_search_results(plugins)

8
uv.lock generated
View File

@@ -287,7 +287,7 @@ dependencies = [
[package.metadata] [package.metadata]
requires-dist = [ requires-dist = [
{ name = "briefcase", specifier = ">=0.3.25" }, { name = "briefcase", specifier = ">=0.3.25" },
{ name = "logic-plugin-manager", extras = ["search"], specifier = ">=1.0.0" }, { name = "logic-plugin-manager", extras = ["search"], specifier = ">=1.0.1" },
{ name = "pyqt-liquidglass", specifier = ">=0.1.0" }, { name = "pyqt-liquidglass", specifier = ">=0.1.0" },
{ name = "pyside6-essentials", specifier = "~=6.8" }, { name = "pyside6-essentials", specifier = "~=6.8" },
] ]
@@ -306,11 +306,11 @@ wheels = [
[[package]] [[package]]
name = "logic-plugin-manager" name = "logic-plugin-manager"
version = "1.0.0" version = "1.0.1"
source = { registry = "https://pypi.org/simple" } source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/36/47/0cdfe1b1e35fb30d9b0b7d1c7b8c133254364da8613131d750af1c83b885/logic_plugin_manager-1.0.0.tar.gz", hash = "sha256:b8364838897c4c3319d3ef69ddbdbaa3fc2d795815d2385dea8f2ca7f25f481f", size = 16174, upload-time = "2025-11-07T16:16:34.245Z" } sdist = { url = "https://files.pythonhosted.org/packages/bc/08/53bb70675e896c217f6bb1d608ed66908ff6a24a910bae0d35e3be13a539/logic_plugin_manager-1.0.1.tar.gz", hash = "sha256:4ffb5c40d5c21b90d89cc6e23bfdbae5578d5a9ed2fd5b21984a3c621d4e9b67", size = 16234, upload-time = "2026-01-28T20:48:53.687Z" }
wheels = [ wheels = [
{ url = "https://files.pythonhosted.org/packages/0f/3e/df9410cfa94cf75f1196fce9797a64482823b009bdab417fb11de8ef9c70/logic_plugin_manager-1.0.0-py3-none-any.whl", hash = "sha256:b23e0e1469687d97a33de44b7feaea1e470808dff0968e5289b66e07b7dd6607", size = 23149, upload-time = "2025-11-07T16:16:33.411Z" }, { url = "https://files.pythonhosted.org/packages/41/85/01a9431a2036739af6275be0f7d295040354f5771201b2f39b33db067be7/logic_plugin_manager-1.0.1-py3-none-any.whl", hash = "sha256:50d2321caf851a7a189ea179cf0da7b5dea50bb47c7136ef87aac530f369f673", size = 23226, upload-time = "2026-01-28T20:48:52.355Z" },
] ]
[package.optional-dependencies] [package.optional-dependencies]