几天前我已经建立了存储在pypi服务器上的pypi软件包。现在,我想比较已经构建的pypi包和今天构建的最新代码之间的源代码差异。有什么办法吗?
我想比较已经构建的pypi软件包和新构建的代码。并且如果源代码有任何差异,则仅创建一个新程序包并将其上传到pypi服务器
答案 0 :(得分:0)
如果只有Python bytecodes,则无法获取相应的源代码(假设的转换称为decompilation,通常是不可能的;例如,阅读Rice's theorem)。由于从source code到字节码的任何翻译(例如,由python
程序完成的翻译)都会丢失一些信息(例如,局部变量的名称,解释解释意图的注释)代码)。
λ-calculus(根据定义,开发人员可以使用的首选代码形式)不仅适用于计算机,而且还适用于其他开发人员:换句话说,其大部分价值和含义是一种社交性的(这就是source code的含义)。阅读有关程序free software的更多信息。
例如,将变量从i
重命名为x
可能会传达隐含的假设,即该变量值的预期semantics运行时类型是整数,并变为浮点型点。
也许您想要某种dynamic(或者某些package manager系统,如果您要处理源代码,或者某个version control工具,如果您要进行构建然后从中安装软件) 。 Python具有build automation来管理软件包。 something构建自动化使用Python,但还有许多其他构建自动化工具,scons
是常见的工具(您可以用来将.py
源文件的编译驱动到{{3} }文件及其GNU make
)。对于版本控制,我建议使用.pyc
bytecode。
PS。您的问题不清楚,闻起来像installation。