加入了 GVSDSDK 模块,进行了 QModel 兼容层的尝试,生产环境可用

This commit is contained in:
2026-06-16 00:13:10 +08:00
parent 9d9cfa53a4
commit 63e0f4edfc
68 changed files with 10256 additions and 1143 deletions

76
gvsdsdk/__main__.py Normal file
View File

@@ -0,0 +1,76 @@
"""gvsdsdk CLI 入口
用法:
python -m gvsdsdk # 默认:显示版本信息
python -m gvsdsdk --version # 仅版本字符串
python -m gvsdsdk --info # 详细版本信息
python -m gvsdsdk --check 1.0.0 # 检查最低版本
python -m gvsdsdk --symbols # 列出所有公开符号
python -m gvsdsdk --ping # 测试 SDK 可用性
"""
import sys
import argparse
# 当作为 __main__ 运行时,需显式 import 包runpy 不会自动注入)
import gvsdsdk
from gvsdsdk import __version__, get_version_info, check_min_version, _PKG_DIR, _LAZY_SYMBOLS
def main():
parser = argparse.ArgumentParser(
prog='gvsdsdk',
description='GVS-DSDK — 分布式服务通信 SDK',
)
parser.add_argument('--version', action='store_true', help='显示版本号')
parser.add_argument('--info', action='store_true', help='显示详细信息')
parser.add_argument('--check', metavar='VERSION', help='检查最低版本要求')
parser.add_argument('--symbols', action='store_true', help='列出所有公开符号')
parser.add_argument('--ping', action='store_true', help='测试 SDK 可用性')
args = parser.parse_args()
if args.version:
print(__version__)
return 0
if args.check:
ok, msg = check_min_version(args.check)
print(msg)
return 0 if ok else 1
if args.symbols:
from gvsdsdk import _LAZY_SYMBOLS
print(f'GVS-DSDK {__version__}{len(_LAZY_SYMBOLS)} lazy symbols:')
by_mod = {}
for sym, (mod, _) in _LAZY_SYMBOLS.items():
by_mod.setdefault(mod, []).append(sym)
for mod, syms in sorted(by_mod.items()):
print(f' [{mod}]')
for s in sorted(syms):
print(f' - {s}')
return 0
if args.ping:
from gvsdsdk import get_version_info, _LAZY_SYMBOLS
info = get_version_info()
print(f'Pong — SDK {info["Version"]} ready at {info["Location"]}')
print(f' {len(_LAZY_SYMBOLS)} symbols available (lazy)')
return 0
if args.info:
from gvsdsdk import get_version_info
info = get_version_info()
print('GVS-DSDK Version Information:')
for k, v in info.items():
print(f' {k:12s} : {v}')
return 0
# 默认行为:简要版本信息
print(f'GVS-DSDK {__version__}')
print(f' Location: {_PKG_DIR}')
print(f' Use --info for details, --help for all commands')
return 0
if __name__ == '__main__':
sys.exit(main())