如何将code-gen集成到python包中

时间:2017-07-06 15:01:04

标签: python code-generation tox codegen

我使用专有包装方法十多年后才开始进入python包装。

我有一个数据文件,用于生成python代码,这是我在Windows和Linux上运行的软件包的一部分。我试图将它集成到我的构建过程(tox / TravisCI)中,以生成我的包并上传到PyPI。可以将数据文件看作类似于protobuf的.proto文件,尽管生成器是用python编写的。

我想到但被拒绝的选项

  • 通过在导入时读取数据文件来动态创建对象
    • Con:更难调试构建过程,因为您无法读取代码
    • Con:限制静态分析的有用性(flake8,mypy)
  • 检查生成的代码(我现在做的)
    • Con:更多手动步骤意味着犯错的机会更多
    • Con:贡献者错过了代码生成并修改了生成的输出

理想情况下,我们的任何Windows或Linux用户都可以轻松快速地找到解决问题的障碍。

0 个答案:

没有答案