Skip to content

Conversation

@directhex
Copy link
Contributor

No description provided.

@directhex directhex requested a review from jonpryor as a code owner October 8, 2019 13:58
@directhex directhex added the full-mono-integration-build For PRs; run a full build (~6-10h for mono bumps), not the faster PR subset (~2h for mono bumps) label Oct 8, 2019
@directhex
Copy link
Contributor Author

OK, looks like failure central came from 92cb296bf02fdb2e03135809f7da652a175a689b:

    [2019-10] Remove the Legacy TLS Provider. (#17425)
    
    * Remove the Legacy TLS Provider.
    
    * `MonoTlsProviderFactory` now treats "legacy" as an alias for "default".
    
    * `Mono.Net.Security/LegacySslStream`: Removed.  This class also wasn't using the
      `MobileAuthenticatedStream` base class, thus preventing cleanups simplifications
      in that area.
    
    * `Mono.Net.Security/LegacyTlsProvider`: Removed.
    
    * `Mono.Security/Mono.Security.Protocol.Tls*`: Removed all the old legacy code.
    
    * `Mono.Security.Interface.MonoTlsProviderFactory`: Bump internal version to 4.
    
    * [csproj] Update project files
    
    * Bump API snapshot submodule

@jonpryor do you have any concerns here with making BTLS mandatory for TLS?

@directhex
Copy link
Contributor Author

OK, BTLS not actually missing on Linux, it just gives a BTLS error when NuGet can't find a package. And it can't find non-latest versions of things 🤷‍♂️

jonathanpeppers added a commit to jonathanpeppers/xamarin-android that referenced this pull request Nov 21, 2019
Context: dotnet#3753
Context: xamarin/monodroid#1053

There appears to be an issue with mono:2019-10 when the Xamarin.Forms
integration project is built with AOT in `Release` mode.

The issue somehow stems from two `Mono.Android.dll` existing:

* `obj\Debug\android\assets\Mono.Android.dll`
* `obj\Debug\android\assets\shrunk\Mono.Android.dll`

Looking at how AOT is invoked, it seems like either `Mono.Android.dll`
could be picked up by the parameters being passed in. We might be
AOT'ing a user's `Foo.dll`, and both directories are in `$MONO_PATH`
or passed via other arguments. How would we know which is picked up?

The `shrunk` directory is used by the `<RemoveRegisterAttribute/>`
MSBuild task that:
* Runs after the linker & `<GenerateJavaStubs/>`
* Removes all the `[RegisterAttribute]` from types, to further shrink
  `Mono.Android.dll`.

It looks like we copy all `@(_ResolvedFrameworkAssemblies)` to the
`shrunk` directory and fix up item groups. Why don't we just get rid
of this `shrunk` directory and not copy anything? We can edit
`Mono.Android.dll` in place, and incremental builds should be fine due
to the use of stamp files.

I also moved the flag file to:

    $(_AndroidStampDirectory)_RemoveRegisterAttribute.stamp

To match our new MSBuild conventions.

There is also usage of `@(_ShrunkFrameworkAssemblies)` that needs to
be updated in monodroid.
@akoeplinger
Copy link
Member

https://github.com/xamarin/xamarin-android/blob/a3de82a659c1c1f9c656a6fc90dcf6c5d3ab8fb2/build-tools/xaprepare/xaprepare/Steps/Step_BuildMonoRuntimes.Unix.cs#L414 will need changes to remove the DISABLE_ entries and add ENABLE_ANDROID as the SDKs logic was changed to only enable what you need, rather than disable.

@jonpryor jonpryor merged commit 0f98637 into master Dec 3, 2019
jonpryor pushed a commit that referenced this pull request Dec 3, 2019
Changes: mono/api-snapshot@fc50bc4...45a61d9

        $ git diff --shortstat fc50bc4f...45a61d93
         22 files changed, 775 insertions(+), 474 deletions(-)

Changes: dotnet/cecil@a6c8f5e...a6a7f5c

        $ git diff --shortstat a6c8f5e1...a6a7f5c0
         55 files changed, 818 insertions(+), 530 deletions(-)

Changes: mono/corefx@1f87de3...49f1c45

        $ git diff --shortstat e4f7102b...49f1c453
         38 files changed, 1171 insertions(+), 419 deletions(-)

Changes: dotnet/linker@ebe2a1f...e8d054b

        $ git diff --shortstat ebe2a1f4...e8d054bf
         137 files changed, 5360 insertions(+), 1781 deletions(-)

Changes: mono/mono@8946e49...18920a8

        $ git diff --shortstat 8946e49a...18920a83
         1811 files changed, 47240 insertions(+), 48331 deletions(-)

Changes: xamarin/xamarin-android-api-compatibility@a61271e...50a3c52

        $ git diff --shortstat a61271e0...50a3c52d
         1 file changed, 2 insertions(+), 791 deletions(-)

Fixes: #3619

Context: https://dev.azure.com/devdiv/DevDiv/_workitems/edit/1005448
Context: https://devdiv.visualstudio.com/DefaultCollection/DevDiv/_workitems/edit/967582
Context: https://github.com/dotnet/coreclr/issues/26370
Context: https://github.com/dotnet/coreclr/issues/26479
Context: https://github.com/dotnet/corefx/issues/40455
Context: https://github.com/dotnet/corefx/issues/40578
Context: mono/mono#7377
Context: mono/mono#12421
Context: mono/mono#12586
Context: mono/mono#14080
Context: mono/mono#14725
Context: mono/mono#14772
Context: mono/mono#15261
Context: mono/mono#15262
Context: mono/mono#15263
Context: mono/mono#15307
Context: mono/mono#15308
Context: mono/mono#15310
Context: mono/mono#15646
Context: mono/mono#15687
Context: mono/mono#15805
Context: mono/mono#15992
Context: mono/mono#15994
Context: mono/mono#15999
Context: mono/mono#16032
Context: mono/mono#16034
Context: mono/mono#16046
Context: mono/mono#16192
Context: mono/mono#16308
Context: mono/mono#16310
Context: mono/mono#16369
Context: mono/mono#16380
Context: mono/mono#16381
Context: mono/mono#16395
Context: mono/mono#16411
Context: mono/mono#16415
Context: mono/mono#16486
Context: mono/mono#16570
Context: mono/mono#16605
Context: mono/mono#16616
Context: mono/mono#16689
Context: mono/mono#16701
Context: mono/mono#16712
Context: mono/mono#16742
Context: mono/mono#16759
Context: mono/mono#16803
Context: mono/mono#16808
Context: mono/mono#16824
Context: mono/mono#16876
Context: mono/mono#16879
Context: mono/mono#16918
Context: mono/mono#16943
Context: mono/mono#16950
Context: mono/mono#16974
Context: mono/mono#17004
Context: mono/mono#17017
Context: mono/mono#17038
Context: mono/mono#17040
Context: mono/mono#17083
Context: mono/mono#17084
Context: mono/mono#17133
Context: mono/mono#17139
Context: mono/mono#17151
Context: mono/mono#17180
Context: mono/mono#17278
Context: mono/mono#17549
Context: mono/mono#17569
Context: mono/mono#17665
Context: mono/mono#17687
Context: mono/mono#17737
Context: mono/mono#17790
Context: mono/mono#17924
Context: mono/mono#17931
Context: https://github.com/mono/mono/issues/26758
Context: https://github.com/mono/mono/issues/37913
Context: dotnet/macios#7005
@github-actions github-actions bot locked and limited conversation to collaborators Jan 24, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

full-mono-integration-build For PRs; run a full build (~6-10h for mono bumps), not the faster PR subset (~2h for mono bumps)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants