This repository has been archived by the owner on Mar 8, 2021. It is now read-only.
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update BCL assemblies for mono/mono:2018-06@70fe915d breakage (#19)
Context: dotnet/android#1836 Context: https://jenkins.mono-project.com/job/xamarin-android-pr-builder/4175/API_20Compatibility_20Checks/ The mono/mono:2018-06@70fe915d bump introduced "breaking" changes to `System.Numerics.Vectors.dll` and `mscorlib.dll`. `System.Numerics.Vectors.dll` "lost" the `System.Numerics.Vector` and `System.Numerics.Vector<T>` types, because those were moved to `mscorlib.dll`, with type forwarders in `System.Numerics.Vectors.dll`. Unfortunately, `mono-api-html` doesn't understand type forwarders, and thus reported their movement as breakage. Update `reference/System.Numerics.Vectors.xml` accordingly. The `mscorlib.dll` changes are a bit more complicated: the `System.Buffers.IRetainable` type was removed, as were members associated with that interface: <h3>Removed Type <span class='breaking' data-is-breaking>System.Buffers.IRetainable</span></h3> <!-- start type MemoryHandle --> <div> <h3>Type Changed: System.Buffers.MemoryHandle</h3> <p>Removed constructor:</p> <pre> <span class='removed removed-constructor breaking' data-is-breaking>public MemoryHandle (IRetainable, void*, System.Runtime.InteropServices.GCHandle);</span> </pre> <p>Removed property:</p> <pre> <span class='removed removed-property breaking' data-is-breaking>public bool HasPointer { get; }</span> </pre> The `IRetainable` type was [accidentally shipped][0], and shouldn't have been provided in the first place. > [IRetainable] was design change before RTW unfortunately at that > point we were not using stable branch of CoreFX so we accidentally > shipped that API because we missed it when hiding the unstable > Span APIs Additionally, `System.Threading.Tasks.ValueTask<T>.CreateAsyncMethodBuilder()` was removed: <h3>Type Changed: System.Threading.Tasks.ValueTask`1</h3> <p>Removed method:</p> <pre> <span class='removed removed-method breaking' data-is-breaking>public static System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder<TResult> CreateAsyncMethodBuilder ();</span> </pre> `ValueTask<T>.CreateAsyncMethodBuilder()` was removed because [no code was found to be using it][1], and thus is deemed to be an acceptable ABI break. Update `reference/mscorlib.xml` accordingly, and also include all the new APIs that have been added since c550d1b. [0]: dotnet/android#1836 (comment) [1]: https://github.com/dotnet/corefx/issues/22171#issuecomment-327254875
- Loading branch information