in our team we're trying to leverage the swift-api-digester that's shipped as part of the swift toolchain, running on macOS.
Problem statement:
Compare public API across two versions of binary framework A.xcframework
We have found this example that showcases comparing two sdks.
The example above showcases a comparisons between two sdks, which contain the frameworks under System/Library/Frameworks subfolder + requires specific sdk setup.
Is there a way to compare binary .xcframework or .framework using the swift-api-digester.
Could you please share working example?
Unfortunately not. The swift-api-digester is currently not shipped under the Xcode toolchain and the lack of the documentation didn't lead me anywhere.
I wish there was a simple way to eg compare two public interfaces (.swiftinterface) on a PR level to catch the sensible breaking changes as early as possible.
Currently all we can do is probably just be vocal about this issue on the open swift bugs.
I wish there was a simple way to eg compare two public interfaces (.swiftinterface)
It would be SO easy, but overall the same. You have to "load" Clang modules to the digester, that's why you have to provide paths to all dependency swift modules.