小编e-r*_*-rk的帖子

使用生成的 Python 文件构建包

问题陈述

\n

构建 Python 包时,我希望构建工具自动执行步骤来生成必要的 Python 文件并将它们包含在包中。

\n

以下是有关该项目的一些详细信息:

\n
    \n
  • 项目存储库仅包含手写的Python和YAML文件
  • \n
  • 要获得功能齐全的包,必须将 YAML 文件编译为 Python 脚本
  • \n
  • 一旦从 YAML 生成 Python 文件,就不再需要编译它们所需的程序(构建依赖项)。
  • \n
  • 然后将手写的和生成的 Python 文件打包在一起。
  • \n
\n

然后该包将上传到 PyPI。

\n

我想实现以下目标:

\n
    \n
  • 当用户从 PyPI 安装包时,包运行所需的所有必需文件都包含在内,无需执行任何编译步骤
  • \n
  • 当用户签出存储库并使用 构建包时python -m build . --wheel,YAML 文件会自动编译为 Python 并包含在包中。需要编译器。
  • \n
  • 当用户签出存储库并从源安装包时,YAML 文件会自动编译为 Python 并安装。需要编译器。
  • \n
  • (很高兴有)当用户检出存储库并以可编辑模式安装时,YAML 文件将被编译为 Python。用户可以自由地修改生成的和手写的 Python 文件。需要编译器。
  • \n
\n

我有一个具有以下布局的存储库:

\n
\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 <project>\n\xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 <project>\n\xe2\x94\x82       \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 __init__.py\n\xe2\x94\x82       \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 hand_written.py\n\xe2\x94\x82       \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 specs\n\xe2\x94\x82           \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 file.ksc (YAML file)\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 …
Run Code Online (Sandbox Code Playgroud)

setuptools setup.py python-packaging pyproject.toml

2
推荐指数
1
解决办法
768
查看次数