From e60c99d81ee0dc5f4c8817591a47f5364b8b1e55 Mon Sep 17 00:00:00 2001 From: Gitea Actions Date: Fri, 10 Oct 2025 14:24:46 +0800 Subject: [PATCH] =?UTF-8?q?[patch]=20=E5=A2=9E=E5=BC=BA=E7=89=88=E6=9C=AC?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=97=A5=E5=BF=97=E8=BE=93=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/scripts/gui_version_creator.py | 36 +++++++++++++++++++++++---- 1 file changed, 31 insertions(+), 5 deletions(-) diff --git a/.gitea/scripts/gui_version_creator.py b/.gitea/scripts/gui_version_creator.py index 546d804..010af0d 100644 --- a/.gitea/scripts/gui_version_creator.py +++ b/.gitea/scripts/gui_version_creator.py @@ -301,32 +301,58 @@ class DatabaseVersionManager: def update_config_version(self, new_version: str): """更新config.py中的APP_VERSION""" + logger.info(f"正在更新config.py到版本: {new_version}") + logger.info(f"配置文件路径: {self.config_file}") + logger.info(f"配置文件绝对路径: {self.config_file.absolute()}") + logger.info(f"配置文件是否存在: {self.config_file.exists()}") + if not self.config_file.exists(): - logger.warning(f"配置文件不存在: {self.config_file}") + logger.error(f"❌ 配置文件不存在: {self.config_file}") return False try: + # 读取文件 with open(self.config_file, 'r', encoding='utf-8') as f: content = f.read() + logger.info(f"已读取config.py,文件大小: {len(content)} 字节") + + # 查找当前版本 import re pattern = r'APP_VERSION\s*=\s*["\'][\d.]+["\']' - replacement = f'APP_VERSION = "{new_version}"' + match = re.search(pattern, content) - if re.search(pattern, content): + if match: + old_version_line = match.group(0) + logger.info(f"找到当前版本行: {old_version_line}") + + replacement = f'APP_VERSION = "{new_version}"' new_content = re.sub(pattern, replacement, content) + logger.info(f"准备写入新版本: {replacement}") + + # 写入文件 with open(self.config_file, 'w', encoding='utf-8') as f: f.write(new_content) + # 验证写入 + with open(self.config_file, 'r', encoding='utf-8') as f: + verify_content = f.read() + verify_match = re.search(pattern, verify_content) + if verify_match: + logger.info(f"✅ 写入验证成功: {verify_match.group(0)}") + logger.info(f"✅ 已更新 config.py: APP_VERSION = \"{new_version}\"") return True else: - logger.warning("未找到APP_VERSION配置项") + logger.error(f"❌ 未找到APP_VERSION配置项,pattern: {pattern}") + logger.info(f"文件内容预览(前200字符): {content[:200]}") return False except Exception as e: - logger.error(f"更新config.py失败: {e}") + logger.error(f"❌ 更新config.py失败: {e}") + import traceback + logger.error(traceback.format_exc()) return False def create_version_record(self) -> dict: