cli: Render both mismatches and violations in the same table #126
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Previously, when violations were found (i.e. non-ABI3 symbols in an ABI3-tagged extension), any subsequent version mismatches (i.e. using symbols that were made part of the stable ABI, but in later versions than the provided wheel was built for), were left unreported.
This is now fixed, by changing the audit rendering hook to include all offending symbols and their ABI versions. In case of a violation, the "not ABI3" value is given as ABI version, to clearly signal that the found symbol is not part of any version of the stable ABI.
Hey! I saw the open issue and took a stab, since I also ran into this in a C++ bindings project build.
No new code, just some reorg - the changes in observable behavior are the rendering of both "thumbs down" messages in the case of violations + mismatches, and the "not ABI3" version placeholder for non-SABI symbols. In either case, a single table containing all problems (and their nature, as evidenced by the "Version" column) is rendered to the console.
Of course, please let me know if you are unhappy with these choices. Thanks!