From 8ae231ecf40e14a8a04f1f86fd5a84bd730d42af Mon Sep 17 00:00:00 2001 From: propelluo Date: Tue, 31 Mar 2026 11:44:07 +0800 Subject: [PATCH] =?UTF-8?q?3.8=E4=BB=A5=E5=89=8D=E7=9A=84python=E6=A0=87?= =?UTF-8?q?=E5=87=86=E5=BA=93=E7=8E=AF=E5=A2=83=E6=97=A0importlib.metadata?= =?UTF-8?q?=EF=BC=8C=E5=BF=85=E9=A1=BB=E9=A2=9D=E5=A4=96=E5=AE=89=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: propelluo --- libfuse/tst-build.sh | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/libfuse/tst-build.sh b/libfuse/tst-build.sh index 82ec393..80de80c 100755 --- a/libfuse/tst-build.sh +++ b/libfuse/tst-build.sh @@ -48,6 +48,27 @@ ensure_meson_version() { echo "meson upgraded to $current via pip" } +ensure_pytest_deps() { + local pyver + pyver=$(python3 -c 'import sys; print(sys.version_info[:2])' 2>/dev/null) + + if python3 -c 'import importlib_metadata' 2>/dev/null; then + echo "importlib_metadata already available, OK" + return 0 + fi + + if python3 -c 'import importlib.metadata' 2>/dev/null; then + echo "importlib.metadata (stdlib) available, OK" + return 0 + fi + + echo "Python $pyver lacks importlib.metadata, installing backport via pip..." + pip3 install -i https://mirrors.tencent.com/pypi/simple/ \ + --trusted-host mirrors.tencent.com \ + 'importlib-metadata<5.0' 'typing_extensions>=3.6.4' 'zipp>=0.5' || return 1 + echo "importlib-metadata installed successfully" +} + build_tool() { cp -r "$g_tool_dir" "$g_install_dir" && cd "$g_install_dir/libfuse" || return 1 @@ -104,6 +125,7 @@ main() { done ensure_meson_version || return 1 + ensure_pytest_deps || return 1 mkdir -p "$g_install_dir" if build_tool; then -- Gitee