Description
- This issue is blocking
- This issue is causing unreasonable pain
In our ADO pipeline, Microsoft.DotNet.ApiCompat falsely reports this compat issue with our PowerFx.Core library:
Compat issues with assembly Microsoft.PowerFx.Core:
CannotChangeAttribute : Attribute 'Microsoft.AppMagic.Transport.TransportTypeAttribute' on 'Microsoft.PowerFx.Syntax.Span' changed from '[TransportTypeAttribute(0, true, null, null, false)]' in the contract to '[TransportTypeAttribute(TransportKind.ByValue, true, null, null, false)]' in the implementation.
Total Issues: 1
I reduced the problem to these Repro steps:
-
Download version 0.2.2-preview of the below 4 packages from nuget.org. Or you can download the .dlls themselves using this link.
-
Put these 4 .dlls from the 4 packages in folder C:\PowerFx\323592-ContractDlls-v0.2.2-preview:
- Microsoft.PowerFx.Core.dll
- Microsoft.PowerFx.Interpreter.dll
- Microsoft.PowerFx.LanguageServerProtocol.dll
- Microsoft.PowerFx.Transport.Attributes.dll
- From the folder C:\PowerFx, execute the following ApiCompat command:
C:\src\ThirdParty\arcade\artifacts\bin\Microsoft.DotNet.ApiCompat\Debug\netcoreapp3.1\Microsoft.DotNet.ApiCompat.exe 323592-ContractDlls-v0.2.2-preview\Microsoft.PowerFx.Core.dll --impl-dirs 323592-ContractDlls-v0.2.2-preview
The above compares Microsoft.PowerFx.Core.dll against itself. One would expect "Total Issues: 0" to be reported. Instead, it reports the above issue.
The source for the PowerFx packages is here: https://github.com/microsoft/Power-Fx
Is it possible I am executing the ApiCompat command incorrectly? Executing it against the other 3 libraries gets the expected "Total Issues: 0" result.
Thank you.