packaging: license: rm missing/unvendored

This commit is contained in:
ed
2026-09-01 18:46:59 +02:00
parent b854b8f596
commit 704af697c7
3 changed files with 68 additions and 7 deletions
+59 -3
View File
@@ -40,6 +40,8 @@ from .__version__ import CODENAME, S_BUILD_DT, S_VERSION
from .authsrv import expand_config_file, split_cfg_ln, upgrade_cfg_fmt
from .bos import bos
from .cfg import flagcats, onedash
from .mdns import DNS_VND
from .qrkode import VENDORED as QR_VND
from .svchub import SvcHub
from .util import (
APPLESAN_TXT,
@@ -49,6 +51,8 @@ from .util import (
DEF_MTH,
HAVE_BWRAP,
HAVE_IPV6,
HAVE_MAGIC,
IFADDR_VND,
IMPLICATIONS,
JINJA_VER,
MIKO_VER,
@@ -594,12 +598,64 @@ def showlic() -> None:
except:
buf = b""
if buf:
print(buf.decode("utf-8", "replace"))
else:
if not buf:
print("no relevant license info to display")
return
lic = buf.decode("utf-8", "replace")
try:
import site
from importlib import import_module
from inspect import getsourcefile
bases = site.PREFIXES + [site.USER_BASE]
bases = [x.replace(os.sep, "/") + "/" for x in list(set(bases)) if x]
except:
bases = []
# remove missing and/or non-vendored
for url, zi, zx in (
("/dnslib/", 1, DNS_VND),
("/ifaddr/", 1, IFADDR_VND),
("/nayuki/QR", 1, QR_VND),
("/partftpy", 2, PARTFTPY_VER),
("/jinja/", 3, "jinja2"),
("/markupsafe/", 3, "jinja2"), # jinja2 sic
("/pyftpdlib/", 2, PYFTPD_VER), # heed PRTY_NO
("/pyftpdlib/", 3, "pyftpdlib"),
("/python-magic/", 1, HAVE_MAGIC), # heed PRTY_NO
("/python-magic/", 3, "magic"),
):
if url not in lic:
continue
elif zi == 1:
if zx:
continue
elif zi == 2:
if zx != "(None)":
continue
elif zi == 3:
mod = None
try:
assert bases and getsourcefile and import_module # type: ignore # !rm
mod = import_module(zx) # type: ignore
mp = getsourcefile(mod) or ""
for zs in bases:
if mp.startswith(zs):
mp = ""
if mp:
continue
except:
if mod:
continue
zs1, zs2 = lic.split(url, 1)
zs1 = zs1.rsplit("\n", 1)[0]
zs2 = zs2.split("\n\n", 1)[1]
lic = zs1 + "\n" + zs2
print(lic)
def get_sects():
return [
-1
View File
@@ -51,7 +51,6 @@ except ImportError:
SRV,
TXT,
A,
Bimap,
DNSHeader,
DNSQuestion,
DNSRecord,
+9 -3
View File
@@ -180,7 +180,10 @@ try:
raise ImportError()
from .stolen.ifaddr import get_adapters
IFADDR_VND = True
except ImportError:
IFADDR_VND = False
from ifaddr import get_adapters
HAVE_IFADDR = True
@@ -195,10 +198,10 @@ try:
if os.environ.get("PRTY_NO_SQLITE"):
raise Exception()
HAVE_SQLITE3 = True
import sqlite3
assert hasattr(sqlite3, "connect") # graalpy
HAVE_SQLITE3 = True
except:
HAVE_SQLITE3 = False
@@ -213,8 +216,9 @@ try:
if os.environ.get("PRTY_NO_PSUTIL"):
raise Exception()
HAVE_PSUTIL = True
import psutil
HAVE_PSUTIL = True
except:
HAVE_PSUTIL = False
@@ -225,8 +229,10 @@ try:
raise Exception()
import magic
HAVE_MAGIC = True
except:
pass
HAVE_MAGIC = False
if os.environ.get("PRTY_MODSPEC"):
from inspect import getsourcefile