mirror of
https://github.com/lnbits/lnbits.git
synced 2025-10-11 04:52:34 +02:00
fix pyright issues
This commit is contained in:
@@ -265,7 +265,8 @@ class LnAddr:
|
|||||||
self.amount = amount
|
self.amount = amount
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
pubkey = bytes.hex(self.pubkey.serialize()).decode()
|
assert self.pubkey, "LnAddr, pubkey must be set"
|
||||||
|
pubkey = bytes.hex(self.pubkey.serialize())
|
||||||
tags = ", ".join([f"{k}={v}" for k, v in self.tags])
|
tags = ", ".join([f"{k}={v}" for k, v in self.tags])
|
||||||
return f"LnAddr[{pubkey}, amount={self.amount}{self.currency} tags=[{tags}]]"
|
return f"LnAddr[{pubkey}, amount={self.amount}{self.currency} tags=[{tags}]]"
|
||||||
|
|
||||||
|
@@ -396,7 +396,7 @@ async def get_payments(
|
|||||||
clause.append("checking_id NOT LIKE 'internal_%'")
|
clause.append("checking_id NOT LIKE 'internal_%'")
|
||||||
|
|
||||||
if not filters:
|
if not filters:
|
||||||
filters = Filters()
|
filters = Filters(limit=None, offset=None)
|
||||||
|
|
||||||
rows = await (conn or db).fetchall(
|
rows = await (conn or db).fetchall(
|
||||||
f"""
|
f"""
|
||||||
|
@@ -532,82 +532,3 @@ def get_valid_extensions() -> List[Extension]:
|
|||||||
return [
|
return [
|
||||||
extension for extension in ExtensionManager().extensions if extension.is_valid
|
extension for extension in ExtensionManager().extensions if extension.is_valid
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
def download_url(url, save_path):
|
|
||||||
with urllib.request.urlopen(url) as dl_file:
|
|
||||||
with open(save_path, "wb") as out_file:
|
|
||||||
out_file.write(dl_file.read())
|
|
||||||
|
|
||||||
|
|
||||||
def file_hash(filename):
|
|
||||||
h = hashlib.sha256()
|
|
||||||
b = bytearray(128 * 1024)
|
|
||||||
mv = memoryview(b)
|
|
||||||
with open(filename, "rb", buffering=0) as f:
|
|
||||||
while n := f.readinto(mv):
|
|
||||||
h.update(mv[:n])
|
|
||||||
return h.hexdigest()
|
|
||||||
|
|
||||||
|
|
||||||
def icon_to_github_url(source_repo: str, path: Optional[str]) -> str:
|
|
||||||
if not path:
|
|
||||||
return ""
|
|
||||||
_, _, *rest = path.split("/")
|
|
||||||
tail = "/".join(rest)
|
|
||||||
return f"https://github.com/{source_repo}/raw/main/{tail}"
|
|
||||||
|
|
||||||
|
|
||||||
async def fetch_github_repo_info(
|
|
||||||
org: str, repository: str
|
|
||||||
) -> Tuple[GitHubRepo, GitHubRepoRelease, ExtensionConfig]:
|
|
||||||
repo_url = f"https://api.github.com/repos/{org}/{repository}"
|
|
||||||
error_msg = "Cannot fetch extension repo"
|
|
||||||
repo = await gihub_api_get(repo_url, error_msg)
|
|
||||||
github_repo = GitHubRepo.parse_obj(repo)
|
|
||||||
|
|
||||||
lates_release_url = (
|
|
||||||
f"https://api.github.com/repos/{org}/{repository}/releases/latest"
|
|
||||||
)
|
|
||||||
error_msg = "Cannot fetch extension releases"
|
|
||||||
latest_release: Any = await gihub_api_get(lates_release_url, error_msg)
|
|
||||||
|
|
||||||
config_url = f"https://raw.githubusercontent.com/{org}/{repository}/{github_repo.default_branch}/config.json"
|
|
||||||
error_msg = "Cannot fetch config for extension"
|
|
||||||
config = await gihub_api_get(config_url, error_msg)
|
|
||||||
|
|
||||||
return (
|
|
||||||
github_repo,
|
|
||||||
GitHubRepoRelease.parse_obj(latest_release),
|
|
||||||
ExtensionConfig.parse_obj(config),
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
async def fetch_manifest(url) -> Manifest:
|
|
||||||
error_msg = "Cannot fetch extensions manifest"
|
|
||||||
manifest = await gihub_api_get(url, error_msg)
|
|
||||||
return Manifest.parse_obj(manifest)
|
|
||||||
|
|
||||||
|
|
||||||
async def fetch_github_releases(org: str, repo: str) -> List[GitHubRepoRelease]:
|
|
||||||
releases_url = f"https://api.github.com/repos/{org}/{repo}/releases"
|
|
||||||
error_msg = "Cannot fetch extension releases"
|
|
||||||
releases = await gihub_api_get(releases_url, error_msg)
|
|
||||||
return [GitHubRepoRelease.parse_obj(r) for r in releases]
|
|
||||||
|
|
||||||
|
|
||||||
async def gihub_api_get(url: str, error_msg: Optional[str]) -> Any:
|
|
||||||
async with httpx.AsyncClient() as client:
|
|
||||||
headers = (
|
|
||||||
{"Authorization": f"Bearer {settings.lnbits_ext_github_token}"}
|
|
||||||
if settings.lnbits_ext_github_token
|
|
||||||
else None
|
|
||||||
)
|
|
||||||
resp = await client.get(
|
|
||||||
url,
|
|
||||||
headers=headers,
|
|
||||||
)
|
|
||||||
if resp.status_code != 200:
|
|
||||||
logger.warning(f"{error_msg} ({url}): {resp.text}")
|
|
||||||
resp.raise_for_status()
|
|
||||||
return resp.json()
|
|
||||||
|
@@ -24,6 +24,7 @@ class LndRestWallet(Wallet):
|
|||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
endpoint = settings.lnd_rest_endpoint
|
endpoint = settings.lnd_rest_endpoint
|
||||||
|
assert endpoint, "lnd_rest_endpoint not set"
|
||||||
endpoint = endpoint[:-1] if endpoint.endswith("/") else endpoint
|
endpoint = endpoint[:-1] if endpoint.endswith("/") else endpoint
|
||||||
endpoint = (
|
endpoint = (
|
||||||
f"https://{endpoint}" if not endpoint.startswith("http") else endpoint
|
f"https://{endpoint}" if not endpoint.startswith("http") else endpoint
|
||||||
|
Reference in New Issue
Block a user