修复问题

This commit is contained in:
2026-04-13 20:37:09 +08:00
parent dcc78743ad
commit f2d8af4b86
9 changed files with 1345 additions and 1334 deletions
File diff suppressed because it is too large Load Diff
Binary file not shown.
+414 -416
View File
File diff suppressed because it is too large Load Diff
+413 -415
View File
File diff suppressed because it is too large Load Diff
Binary file not shown.
+4 -4
View File
@@ -14,7 +14,7 @@ Types of import:
IMPORTANT: Do NOT post this list to the issue-tracker. Use it as a basis for
tracking down the missing module yourself. Thanks!
missing module named 'collections.abc' - imported by tracemalloc (top-level), typing (top-level), traceback (top-level), _colorize (top-level), logging (top-level), selectors (top-level), http.client (top-level), importlib.resources.readers (top-level), inspect (top-level), sqlite3.dbapi2 (top-level), setuptools (top-level), setuptools._distutils.filelist (top-level), setuptools._distutils.util (top-level), setuptools._vendor.jaraco.functools (top-level), setuptools._vendor.more_itertools.more (top-level), setuptools._distutils._modified (top-level), setuptools._distutils.compat (top-level), setuptools._distutils.spawn (top-level), typing_extensions (top-level), asyncio.base_events (top-level), multiprocessing.managers (top-level), asyncio.coroutines (top-level), setuptools._distutils.compilers.C.base (top-level), setuptools._distutils.fancy_getopt (top-level), setuptools._reqs (top-level), setuptools._vendor.jaraco.context (top-level), setuptools.discovery (top-level), setuptools.dist (top-level), setuptools._vendor.importlib_metadata (top-level), setuptools._vendor.importlib_metadata._meta (top-level), setuptools._distutils.command.bdist (top-level), setuptools._distutils.core (top-level), setuptools._distutils.cmd (top-level), setuptools._distutils.dist (top-level), configparser (top-level), setuptools._distutils.extension (top-level), setuptools.config.setupcfg (top-level), setuptools.config.expand (top-level), setuptools.config.pyprojecttoml (top-level), setuptools.config._apply_pyprojecttoml (top-level), setuptools.extension (top-level), tomllib._parser (conditional), setuptools._vendor.tomli._parser (conditional), setuptools.wheel (top-level), setuptools.command.egg_info (top-level), setuptools.command.bdist_egg (top-level), setuptools.command.sdist (top-level), setuptools._distutils.command.build (top-level), setuptools._distutils.command.sdist (top-level), setuptools.glob (top-level), setuptools.command._requirestxt (top-level), setuptools.command.bdist_wheel (top-level), requests.compat (top-level), cryptography.utils (top-level), cryptography.x509.name (top-level), cryptography.x509.base (top-level), cryptography.hazmat.bindings.openssl.binding (top-level), cryptography.x509.extensions (top-level), PySide6.QtCore (top-level), PySide6.QtNetwork (top-level), PySide6.QtGui (top-level), PySide6.QtWidgets (top-level), setuptools._distutils.command.build_ext (top-level), _pyrepl.types (top-level), _pyrepl.readline (top-level), setuptools._distutils.compilers.C.msvc (top-level), PySide6.QtOpenGL (top-level)
missing module named 'collections.abc' - imported by tracemalloc (top-level), typing (top-level), traceback (top-level), _colorize (top-level), selectors (top-level), logging (top-level), http.client (top-level), importlib.resources.readers (top-level), inspect (top-level), sqlite3.dbapi2 (top-level), setuptools (top-level), setuptools._distutils.filelist (top-level), setuptools._distutils.util (top-level), setuptools._vendor.jaraco.functools (top-level), setuptools._vendor.more_itertools.more (top-level), setuptools._distutils._modified (top-level), setuptools._distutils.compat (top-level), setuptools._distutils.spawn (top-level), typing_extensions (top-level), asyncio.base_events (top-level), multiprocessing.managers (top-level), asyncio.coroutines (top-level), setuptools._distutils.compilers.C.base (top-level), setuptools._distutils.fancy_getopt (top-level), setuptools._reqs (top-level), setuptools._vendor.jaraco.context (top-level), setuptools.discovery (top-level), setuptools.dist (top-level), setuptools._vendor.importlib_metadata (top-level), setuptools._vendor.importlib_metadata._meta (top-level), setuptools._distutils.command.bdist (top-level), setuptools._distutils.core (top-level), setuptools._distutils.cmd (top-level), setuptools._distutils.dist (top-level), configparser (top-level), setuptools._distutils.extension (top-level), setuptools.config.setupcfg (top-level), setuptools.config.expand (top-level), setuptools.config.pyprojecttoml (top-level), setuptools.config._apply_pyprojecttoml (top-level), setuptools.extension (top-level), tomllib._parser (conditional), setuptools._vendor.tomli._parser (conditional), setuptools.wheel (top-level), setuptools.command.egg_info (top-level), setuptools.command.bdist_egg (top-level), setuptools.command.sdist (top-level), setuptools._distutils.command.build (top-level), setuptools._distutils.command.sdist (top-level), setuptools.glob (top-level), setuptools.command._requirestxt (top-level), setuptools.command.bdist_wheel (top-level), requests.compat (top-level), cryptography.utils (top-level), cryptography.x509.name (top-level), cryptography.x509.base (top-level), cryptography.hazmat.bindings.openssl.binding (top-level), cryptography.x509.extensions (top-level), PySide6.QtCore (top-level), PySide6.QtNetwork (top-level), PySide6.QtGui (top-level), PySide6.QtWidgets (top-level), setuptools._distutils.command.build_ext (top-level), _pyrepl.types (top-level), _pyrepl.readline (top-level), setuptools._distutils.compilers.C.msvc (top-level), PySide6.QtOpenGL (top-level)
missing module named posix - imported by os (conditional, optional), posixpath (optional), shutil (conditional), importlib._bootstrap_external (conditional), pathlib._os (optional), _pyrepl.trace (conditional), _pyrepl.unix_console (optional)
missing module named resource - imported by posix (top-level)
missing module named _frozen_importlib_external - imported by importlib._bootstrap (delayed), importlib (optional), importlib.abc (optional), zipimport (top-level)
@@ -27,9 +27,9 @@ missing module named _posixsubprocess - imported by subprocess (conditional), mu
missing module named multiprocessing.get_context - imported by multiprocessing (top-level), multiprocessing.pool (top-level), multiprocessing.managers (top-level), multiprocessing.sharedctypes (top-level)
missing module named multiprocessing.TimeoutError - imported by multiprocessing (top-level), multiprocessing.pool (top-level)
missing module named _scproxy - imported by urllib.request (conditional)
missing module named pwd - imported by posixpath (delayed, conditional, optional), shutil (delayed, optional), tarfile (optional), pathlib (optional), netrc (delayed, optional), subprocess (delayed, conditional, optional), psutil (optional), setuptools._distutils.util (delayed, conditional, optional), setuptools._vendor.backports.tarfile (optional), setuptools._distutils.archive_util (optional), http.server (delayed, optional)
missing module named pwd - imported by posixpath (delayed, conditional, optional), subprocess (delayed, conditional, optional), shutil (delayed, optional), tarfile (optional), pathlib (optional), netrc (delayed, optional), psutil (optional), setuptools._distutils.util (delayed, conditional, optional), setuptools._vendor.backports.tarfile (optional), setuptools._distutils.archive_util (optional), http.server (delayed, optional)
missing module named multiprocessing.BufferTooShort - imported by multiprocessing (top-level), multiprocessing.connection (top-level)
missing module named grp - imported by shutil (delayed, optional), tarfile (optional), pathlib (optional), subprocess (delayed, conditional, optional), setuptools._vendor.backports.tarfile (optional), setuptools._distutils.archive_util (optional)
missing module named grp - imported by subprocess (delayed, conditional, optional), shutil (delayed, optional), tarfile (optional), pathlib (optional), setuptools._vendor.backports.tarfile (optional), setuptools._distutils.archive_util (optional)
missing module named _typeshed - imported by setuptools._distutils.dist (conditional), setuptools.command.bdist_egg (conditional), setuptools.glob (conditional), setuptools._vendor.wheel.wheelfile (conditional), setuptools.compat.py311 (conditional)
missing module named vms_lib - imported by platform (delayed, optional)
missing module named 'java.lang' - imported by platform (delayed, optional)
@@ -37,7 +37,7 @@ missing module named java - imported by platform (delayed)
missing module named usercustomize - imported by site (delayed, optional)
missing module named sitecustomize - imported by site (delayed, optional)
missing module named termios - imported by tty (top-level), _pyrepl.pager (delayed, optional), _pyrepl.unix_console (top-level), _pyrepl.fancy_termios (top-level), _pyrepl.unix_eventqueue (top-level)
missing module named fcntl - imported by pathlib._os (optional), subprocess (optional), _pyrepl.unix_console (top-level)
missing module named fcntl - imported by subprocess (optional), pathlib._os (optional), _pyrepl.unix_console (top-level)
missing module named readline - imported by site (delayed, optional), rlcompleter (optional), code (delayed, conditional, optional), sqlite3.__main__ (delayed, conditional, optional)
missing module named _manylinux - imported by packaging._manylinux (delayed, optional), setuptools._vendor.packaging._manylinux (delayed, optional)
missing module named setuptools._vendor.backports.zstd - imported by setuptools._vendor.backports (top-level), urllib3.util.request (conditional, optional), urllib3.response (conditional, optional)
+2
View File
@@ -27,6 +27,7 @@ imports:
&#8226; <a href="#abc">abc</a>
&#8226; <a href="#codecs">codecs</a>
&#8226; <a href="#collections">collections</a>
&#8226; <a href="#contextlib">contextlib</a>
&#8226; <a href="#copyreg">copyreg</a>
&#8226; <a href="#encodings">encodings</a>
&#8226; <a href="#encodings._win_cp_codecs">encodings._win_cp_codecs</a>
@@ -5156,6 +5157,7 @@ imported by:
&#8226; <a href="#importlib.resources._adapters">importlib.resources._adapters</a>
&#8226; <a href="#importlib.resources._common">importlib.resources._common</a>
&#8226; <a href="#importlib.resources.readers">importlib.resources.readers</a>
&#8226; <a href="#main.py">main.py</a>
&#8226; <a href="#packaging._manylinux">packaging._manylinux</a>
&#8226; <a href="#packaging._tokenizer">packaging._tokenizer</a>
&#8226; <a href="#psutil">psutil</a>
BIN
View File
Binary file not shown.
+17 -2
View File
@@ -10,6 +10,7 @@ import psutil
import subprocess
import sqlite3
import requests
from contextlib import contextmanager
from pathlib import Path
from typing import Optional
@@ -213,11 +214,25 @@ def update_vsdb_token(config_dir, new_token, new_email, log_callback):
return False
@contextmanager
def request_with_proxy_fallback(url, **kwargs):
"""优先走系统代理;代理不可用时自动回退直连。以 contextmanager 统一管理连接生命周期。"""
try:
with requests.get(url, **kwargs) as response:
yield response
return
except requests.exceptions.ProxyError:
with requests.Session() as session:
session.trust_env = False
with session.get(url, **kwargs) as response:
yield response
def check_for_updates():
"""检查软件更新,返回 (data, error) 元组"""
try:
url = "https://api.yunzer.cn/api/softwareupgrade/check?code=cursortokenlogin"
response = requests.get(url, timeout=10)
with request_with_proxy_fallback(url, timeout=10) as response:
response.raise_for_status()
data = response.json()
@@ -314,7 +329,7 @@ class DownloadUpdateThread(QThread):
new_path = None
try:
self.log_signal.emit("📡 正在请求安装包...")
with requests.get(
with request_with_proxy_fallback(
self.download_url, stream=True, timeout=60, allow_redirects=True
) as r:
r.raise_for_status()