有没有办法比较2 Pypi包sourecode的区别

时间:2019-04-26 06:55:16

标签: pypi

几天前我已经建立了存储在pypi服务器上的pypi软件包。现在,我想比较已经构建的pypi包和今天构建的最新代码之间的源代码差异。有什么办法吗?

我想比较已经构建的pypi软件包和新构建的代码。并且如果源代码有任何差异,则仅创建一个新程序包并将其上传到pypi服务器

1 个答案:

答案 0 :(得分:0)

如果只有Python bytecodes,则无法获取相应的源代码(假设的转换称为decompilation,通常是不可能的;例如,阅读Rice's theorem)。由于从source code到字节码的任何翻译(例如,由python程序完成的翻译)都会丢失一些信息(例如,局部变量的名称,解释解释意图的注释)代码)。

根据{{​​3}}源代码中的功能功能 的均等性(您真正关心的是代码的可观察到的行为static analysis。详细了解undecidable problem,它与该问题密切相关。

λ-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