Tooling support for binary breaking changes in components
- Dominant language
- F#
- Stars
- 4.3k
- Forks
- 876
- Avg merge
- 4d 11h
- Merged PRs (30d)
- 131
Description
Maybe related #9370, also see https://github.com/dotnet/fsharp/issues/6528#issuecomment-750826419
It seems that from time to time this strange error about `ValLinkagePartialKey` is reported by the F# compiler. Most recent is this case: https://github.com/fable-compiler/fable-promise/issues/26
@mangelmaxime has isolated the probable cause: From Fable.Promise 3.1.0 to 3.1.1 the signature of public methods hasn't changed, but the name of the arguments of a couple of functions did, which seems to cause the issue (apparently something similar happened with Thoth.Json). Also, the problem only seems to surface if you upgrade to Fable.Promise 3.1.1 but your project also includes dependencies that depend on their own on Fable.Promise 3.1.0.
Can it be the actual case? And if so, is that intended? (I would expect that changing the name of an argument but not the signature wouldn't cause a breaking change.) In the case the error is unavoidable at a minimum the error message should be a bit more informative so library authors are more careful when renaming arguments.
Contributor guide
Assessment
This issue has not been assessed yet.