- Implemented a new beets plugin to import and manage music videos, supporting various video formats and providing metadata from IMVDB and MusicBrainz for autotagging. - Added installation instructions and configuration options in README.md. - Created IMVDBApi client for interacting with the IMVDB API. - Defined typing for various API responses and utility functions for mapping MusicBrainz data to beets TrackInfo. - Included desktop entry and JSON info files for a video titled "[SAST] The Evolution of Search-based Software Testing". - Added utility functions for handling artist credits and related metadata. - Introduced a grabbed.txt file for tracking video sources.
43 lines
1.1 KiB
Python
43 lines
1.1 KiB
Python
"""Local type stub for uplink (no upstream stubs). Covers Consumer, Session, get, and Query used by beets_music_videos."""
|
|
|
|
from typing import Any, Callable, TypeAlias, TypeVar
|
|
|
|
_F = TypeVar("_F", bound=Callable[..., Any])
|
|
|
|
# Used as a parameter annotation to mark a query string parameter; the value at runtime is str.
|
|
Query: TypeAlias = str
|
|
|
|
class Session:
|
|
"""Session for a Consumer instance; holds params, headers, etc."""
|
|
|
|
@property
|
|
def params(self) -> dict[str, Any]: ...
|
|
@property
|
|
def headers(self) -> dict[str, Any]: ...
|
|
@property
|
|
def base_url(self) -> str: ...
|
|
@property
|
|
def auth(self) -> Any: ...
|
|
|
|
class Consumer:
|
|
"""Base consumer class for defining API clients."""
|
|
|
|
session: Session
|
|
|
|
def __init__(
|
|
self,
|
|
base_url: str = "",
|
|
client: Any = None,
|
|
converters: Any = (),
|
|
auth: Any = None,
|
|
hooks: Any = (),
|
|
**kwargs: Any,
|
|
) -> None: ...
|
|
|
|
def get(
|
|
uri: str | None = None,
|
|
args: tuple[Any, ...] = (),
|
|
) -> Callable[[_F], _F]:
|
|
"""Decorator that makes the decorated function an HTTP GET request handler."""
|
|
...
|