Deactivate all extensions flag (#2206)

* feat: allow all extension deactivation

* doc: updated comment

* fix: make sure `register_routes` executes after installed extensions are checked

* chore: code format

* fix: do not run migration on deactivated extensions

* fix: make sure the deactivated extension list is loaded in time

* feat: register extension routes if extension never loaded before

* fix: move `load_disabled_extension_list`

* doc: disable by default
This commit is contained in:
Vlad Stan
2024-01-22 12:18:12 +02:00
committed by GitHub
parent 0d2447faf3
commit 26ca8c71d7
8 changed files with 57 additions and 24 deletions
+14 -2
View File
@@ -604,11 +604,23 @@ class CreateExtension(BaseModel):
source_repo: str
def get_valid_extensions() -> List[Extension]:
return [
def get_valid_extensions(include_deactivated: Optional[bool] = True) -> List[Extension]:
valid_extensions = [
extension for extension in ExtensionManager().extensions if extension.is_valid
]
if include_deactivated:
return valid_extensions
if settings.lnbits_extensions_deactivate_all:
return []
return [
e
for e in valid_extensions
if e.code not in settings.lnbits_deactivated_extensions
]
def version_parse(v: str):
"""