ABI stability checker is now online for the Swift standard library

We’ve started testing the ABI stability of the Swift standard library as part of Swift regression testing. In a PR against the Swift repository, running

@swift-ci please smoke test

or other test runner will check whether the change has broken the ABI stability of a previously checked-in baseline. If it does, a test failure will occur in stability-stdlib-abi.swift. To resolve this test failure, we can either update the expected ABI breakage list in stability-stdlib-abi.swift.expected or update the PR to remedy those breakages.

Taking this pull request as an example, we've re-ordered two stored properties in a non-resilient type, which breaks the existing ABI of the Swift standard library. Therefore, running swift-ci test will fail the ABI stability checker with informative diagnostics for such breakages.

For any issues associated with this ABI checker, please file a bug in bugs.swift.org with the label "Module ABI Checker".

29 Likes