hect0x7 / JMComic-Crawler-Python

Python API for JMComic | 提供Python API访问禁漫天堂,同时支持网页端和移动端 | 禁漫天堂GitHub Actions下载器🚀
https://jmcomic.readthedocs.io/zh-cn/latest/option_file_syntax/#
MIT License
827 stars 1.95k forks source link

【代码优化?】来自@coderabbitai #158

Closed buiawpkgew1 closed 11 months ago

buiawpkgew1 commented 11 months ago

https://github.com/buiawpkgew1e/JMComic-Crawler-Python/pull/14#pullrequestreview-1703217468

hect0x7 commented 11 months ago

好腻害的ai,不过仔细读了一下,感觉ai的全局联系能力还不太行,有些问题明显是只根据上下文提出来的,略显草率。

但有几点是可以改进下: 插件的入参校验问题,要不要抛异常? zip插件在删除文件和文件夹时,增加一次判空校验。

hect0x7 commented 11 months ago

插件的入参校验,不抛异常主要是为了兼容一种情况:用户配置了插件,但是没有配置核心参数。 就比如,用户配置了插件,插件里用到了一个环境变量,可能过了一段时间这个环境变量不在了。 那么这时插件是选择【空参不执行】好,还是【空参就报错】好?

我打算增加一个异常和配置项,当这个配置项开启时,【空参就报错】,否则使用【空参不执行】。 具体实现思路:由插件专门抛出这个异常,由option catch并根据配置项进行处理或丢弃。