huge refactor of the entire codebase, with the goal of improving maintainability, readability, and extensibility. This commit includes changes to almost every file in the project, including:
This commit is contained in:
+10
-10
@@ -37,15 +37,15 @@ class Vimm(TableProviderMixin, Provider):
|
||||
2) Each row carries explicit selection args: `['-url', '<full-url>']`.
|
||||
Using an explicit `-url` flag avoids ambiguity during argument
|
||||
parsing (some cmdlets accept positional URLs, others accept flags).
|
||||
3) The CLI's expansion logic places selection args *before* provider
|
||||
source args (e.g., `-provider vimm`) so the first positional token is
|
||||
the intended URL (not an unknown flag like `-provider`).
|
||||
3) The CLI's expansion logic places selection args *before* plugin
|
||||
source args (e.g., `-plugin vimm`) so the first positional token is
|
||||
the intended URL (not an unknown flag like `-plugin`).
|
||||
|
||||
- Why this approach? Argument parsing treats the *first* unrecognized token
|
||||
as a positional value (commonly interpreted as a URL). If a provider
|
||||
injects hints like `-provider vimm` *before* a bare URL, the parser can
|
||||
misinterpret `-provider` as the URL, causing confusing attempts to
|
||||
download `-provider`. By using `-url` and ensuring the URL appears first
|
||||
as a positional value (commonly interpreted as a URL). If a plugin
|
||||
injects hints like `-plugin vimm` *before* a bare URL, the parser can
|
||||
misinterpret `-plugin` as the URL, causing confusing attempts to
|
||||
download `-plugin`. By using `-url` and ensuring the URL appears first
|
||||
we avoid that class of bugs and make `@N` -> `download-file`/`add-file`
|
||||
flows reliable.
|
||||
|
||||
@@ -56,7 +56,7 @@ class Vimm(TableProviderMixin, Provider):
|
||||
URL_DOMAINS = ("vimm.net",)
|
||||
|
||||
def get_source_command(self, args_list: List[str]) -> Tuple[str, List[str]]:
|
||||
return "search-file", ["-provider", self.name]
|
||||
return "search-file", ["-plugin", self.name]
|
||||
|
||||
REGION_CHOICES = [
|
||||
{"value": "1", "text": "Argentina"},
|
||||
@@ -807,7 +807,7 @@ class Vimm(TableProviderMixin, Provider):
|
||||
|
||||
# Minimal provider registration
|
||||
try:
|
||||
from SYS.result_table_adapters import register_provider
|
||||
from SYS.result_table_adapters import register_plugin
|
||||
from SYS.result_table_api import ResultModel, title_column, metadata_column
|
||||
|
||||
def _convert_search_result_to_model(sr):
|
||||
@@ -857,7 +857,7 @@ try:
|
||||
return ["-title", row.title or ""]
|
||||
|
||||
|
||||
register_provider(
|
||||
register_plugin(
|
||||
"vimm",
|
||||
_adapter,
|
||||
columns=_columns_factory,
|
||||
|
||||
Reference in New Issue
Block a user