比较两个API版本以更改类/函数名称

时间:2018-02-21 14:04:50

标签: python diff abstract-syntax-tree

让我们说有一些python模块:

version = "1.0"
class Bar:
    def __init__(self):
        pass
    def foo(self, x):
        pass
    def bar(self, y):
        pass

在更高版本中,某些功能已更改:

version = "2.0"
class Bar:
    def __init__(self):
        pass
    def foo(self, x, y):
        pass
    def baz(self):
        pass

我想创建这两个模块的差异,从而产生这样的输出:

-Bar.bar
~Bar.foo has changed signature
+Bar.baz

我知道ast但在重新发明轮子并从头开始编写所有内容之前:是否有可以创建此类差异的工具(不需要确切的格式!)?我找不到任何东西,但我担心我只是用错误的条款搜索......

0 个答案:

没有答案