mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2026-10-08 05:10:01 +08:00
fix(plugin-store-downlaod): 修复插件商店下载二进制文件错误 (#2152)
* fix(plugin-store-downlaod): 修复插件商店下载二进制文件错误 * fix(plugin_store): 修复插件商店中仓库类型判断逻辑错误 当处理外部插件时,修正了仓库类型的判断条件,确保正确的仓库类型被设置。 同时修复了目录文件列表获取时传递错误的仓库类型参数问题。 * feat(repo_utils): 更新文件管理器返回类型并改进仓库URL处理 - 将 RepoFileManager 的文件内容返回类型从 bytes 改为 str, 统一字符串类型的返回值格式 - 支持在 repo_url 中直接包含 /tree/<branch> 路径, 自动解析分支信息并正确处理仓库地址 - 改进 GitHub 和阿里云仓库的优先级顺序, 现在优先尝试阿里云然后是 GitHub - 修复 clone_url 处理逻辑,确保正确的 .git 后缀添加 - 移除未使用的 Sequence 类型导入,统一使用 list[str] 类型注解 * refactor(plugin_store): 移除StoreManager中不必要的repo_type参数 移除了data_source.py文件中StoreManager类的list_directory_files方法调用时 多余的repo_type=RepoType.GITHUB参数 * feat(plugin_store): 优化插件依赖文件下载和安装逻辑 - 移动依赖文件下载逻辑到下载阶段,避免重复下载 - 使用随机数生成唯一的临时依赖文件名以避免冲突 - 添加ignore_error参数来处理依赖文件下载失败的情况 - 统一依赖文件路径变量命名,提高代码可读性 - 确保requirement.txt和requirements.txt都能正确安装 * Add repo_type parameter to list_directory_files call
This commit is contained in:
@@ -67,42 +67,6 @@ class ResourceDirManager:
|
||||
cls.__tree_append(path, deep)
|
||||
|
||||
|
||||
def is_binary_file(file_path: str) -> bool:
|
||||
"""判断是否为二进制文件
|
||||
|
||||
参数:
|
||||
file_path: 文件路径
|
||||
|
||||
返回:
|
||||
bool: 是否为二进制文件
|
||||
"""
|
||||
# fmt: off
|
||||
# 精简但包含图片和字体的二进制文件扩展名集合
|
||||
BINARY_EXTENSIONS = frozenset({
|
||||
# 图片文件
|
||||
"jpg", "jpeg", "png", "gif", "bmp", "ico", "webp", "tiff", "tif", "svg",
|
||||
# 字体文件
|
||||
"ttf", "otf", "woff", "woff2", "eot",
|
||||
# 压缩文件
|
||||
"zip", "rar", "7z", "tar", "gz", "bz2", "xz",
|
||||
# 可执行文件和库
|
||||
"exe", "dll", "so", "dylib",
|
||||
# 文档文件
|
||||
"pdf", "doc", "docx", "xls", "xlsx", "ppt", "pptx",
|
||||
# 多媒体文件
|
||||
"mp3", "mp4", "avi", "mov", "wmv", "flv",
|
||||
# 其他常见二进制文件
|
||||
"bin", "dat", "db", "class", "pyc"
|
||||
})
|
||||
|
||||
# 使用os.path.splitext高效提取扩展名
|
||||
_, ext = os.path.splitext(file_path)
|
||||
# 去除点号并转换为小写
|
||||
ext_clean = ext.lstrip(".").lower()
|
||||
|
||||
return ext_clean in BINARY_EXTENSIONS
|
||||
|
||||
|
||||
def cn2py(word: str) -> str:
|
||||
"""将字符串转化为拼音
|
||||
|
||||
|
||||
Reference in New Issue
Block a user