- 新增 group 特性 (详见说明文档).
- 更好地解析 docstring.
- 新增
argsense
命令. - 新增 TUI (文本用户界面).
- 兼容 lk-logger 的 traceback 功能
- 修复 python 3.8 兼容问题
- 修复全局参数引起的 help 命令报错
- 添加
:empty
来传递空字符串 - 修复对
*args
的处理
- 修复 args 参数无法通过 kwargs 语法传递的问题
- 默认不警告重复的 (被
@cli.cmd()
装饰的) 函数
:help
/:helpx
参数优先被全局使用.- 对下划线开头的参数名特殊处理.
- 修复类型解析错误.
- 支持
*args
和**kwargs
传参. - 更好的单元测试.
- 样式调整.
- 其他优化.
修复 python 3.8 适配问题.
修复类型检查错误.
允许 "匿名" 的方式传入 option 参数.
# befoer
python3 login.py username --password 123456
# after
python3 login.py username 123456
修复了一些细节.
优化了文字颜色, 使文字在不同终端主题下尽量保持一致的感觉, 提升美观性.
加强参数类型转换.
"did-you-mean" 功能:
完善命令行传参错误的处理方式.
现在, 当发生报错时, 将提供参数位置, 报错原因等信息, 如下图所示:
调整了输出样式.
一些值得注意的细节:
- 解决了传参问题, 发现之前的版本几乎不可能在正常传参的情况下工作.
- 字段宽度对齐策略有所放松. 该调整让实际效果更美观了.
- 灵活的标题头样式, 在考虑到实际情况 (比如想要复制标题作为下次的命令时), 现在更加切合实际需求了.
- 首页的文档有了最新的截图.
空参传递的时候, 回调到 help 命令上.
argsense 的基本功能验证通过.
重要的, help 和 helpx 命令及输出效果都符合预期.