This test uses reflection to figure out if there are any ARConfiguration
subclasses that don't implement a particular method. The reflection usage is
problematic when trimming apps, and this is really what the Cecil tests are
for, so just re-implement the entire tests as a Cecil test.
We're going to change the pack names to support multi-targeting, so ahead
of the pack name change I'm changing the existing logic to use a variable
for the pack name in most places (this will make the rename much easier and
simpler).
These changes should have no effect by themselves.
Try to make CoreServices.FSEventStreamTest better by using shorter duration locks,
and re-checking success condition after timing out in case there’s a race condition.
Also improve exception reporting/logging a bit.
Ref: https://github.com/xamarin/maccore/issues/2630
Added default entitlements for MacCatalyst templates.
For Debug, the com.apple.security.get-task-allow entitlement that allows for using developer tools when developing MAUI Blazor apps.
For release, com.apple.security.app-sandbox is required to publish MacCatalyst apps to the Mac App Store.
Also added unit test to check for entitlements when project is created.
Fixes#18344
---------
Co-authored-by: GitHub Actions Autoformatter <github-actions-autoformatter@xamarin.com>
Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>
Some time ago we added a workaround for an msbuild bug that has since
been fixed (since the initial .NET 7 release). This workaround involved
writing build properties to a file instead of passing them on the
command line.
We no longer need the workaround, but it turnes out we still need to be
able to pass build properties in a file (because we have a test that
needs this behavior). We'll also soon run into a scenario where we need
to be able to specify a build property on the command line
(`TargetFrameworks`) - the build won't work if specified in a file.
So add support for both, and make the test that needs to specify the
build property on the command line say so explicitly.
Notes:
- Beta 6 changes are targeting only visionOS
- Adding an [Abstract] to an existing protocol is a breaking change so
added a conditional XAMCORE and added xtro error to .ignore
---------
Co-authored-by: GitHub Actions Autoformatter <github-actions-autoformatter@xamarin.com>
When figuring out whether something needs to be (re)signed or not, we must
also take into account that the signing identity may have changed (for
instance a release build will often have a different signing identity than a
debug build).
Do this by storing the command line to sign for each item we need to sign in
the stamp file, and if the stored contents don't match the new command line
to sign, then we must resign the item.
This is rather obnoxious to write unit tests for (since we'd need to have two
different signing identities available on the bots), so I've only done local
testing.
Fixes https://github.com/xamarin/xamarin-macios/issues/16124.
* A property set on the command line is set for all projects that are built,
including projects referenced by the main project.
* If the main project references more than one project, those referenced
projects may be built in parallel.
* This means multiple projects might have the same IntermediateOutputPath if
set on the command line, and thus accessing files in the directory
simultaneously, which is a bad idea.
Fix this by manually disabling build parallelism in tests that set
IntermediateOutputPath.
Fixes https://github.com/xamarin/maccore/issues/2567.
We'll soon change the generator to execute locally on Windows, even for
remote builds. As a stepping stone towards that goal, this PR adds the
generator tests to the list of tests we run on Windows.
This pull request updates the following dependencies
## Coherency Updates
The following updates ensure that dependencies with a *CoherentParentDependency*
attribute were produced in a build used as input to the parent dependency's build.
See [Dependency Description Format](https://github.com/dotnet/arcade/blob/master/Documentation/DependencyDescriptionFormat.md#dependency-description-overview)
- **Coherency Updates**:
- **Microsoft.NET.ILLink.Tasks**: from 8.0.0-rc.1.23376.5 to 8.0.0-rc.1.23414.4 (parent: Microsoft.Dotnet.Sdk.Internal)
- **Microsoft.AspNetCore.App.Ref**: from 8.0.0-rc.1.23376.5 to 8.0.0-rc.1.23414.10 (parent: Microsoft.Dotnet.Sdk.Internal)
- **Microsoft.NETCore.App.Ref**: from 8.0.0-rc.1.23376.5 to 8.0.0-rc.1.23414.4 (parent: Microsoft.Dotnet.Sdk.Internal)
- **Microsoft.NET.Workload.Emscripten.Current.Manifest-8.0.100.Transport**: from 8.0.0-rc.1.23368.3 to 8.0.0-rc.1.23411.2 (parent: Microsoft.NETCore.App.Ref)
- **Microsoft.NETCore.App.Ref**: from 8.0.0-rc.1.23376.5 to 8.0.0-rc.1.23414.4 (parent: Microsoft.Dotnet.Sdk.Internal)
- **Microsoft.DotNet.Cecil**: from 0.11.4-alpha.23360.2 to 0.11.4-alpha.23407.2 (parent: Microsoft.NETCore.App.Ref)
## From https://github.com/dotnet/installer
- **Subscription**: f9b68d84-9c90-4bd0-5499-08db4112d57e
- **Build**: 20230815.5
- **Date Produced**: August 15, 2023 10:04:58 AM UTC
- **Commit**: e5bfaee3514192f2a496f8b0bdd00208ac15458d
- **Branch**: refs/heads/main
- **Updates**:
- **Microsoft.Dotnet.Sdk.Internal**: [from 8.0.100-rc.1.23378.5 to 8.0.100-rc.1.23415.5][76]
- **Microsoft.NET.ILLink.Tasks**: [from 8.0.0-rc.1.23376.5 to 8.0.0-rc.1.23414.4][77]
- **Microsoft.AspNetCore.App.Ref**: [from 8.0.0-rc.1.23376.5 to 8.0.0-rc.1.23414.10][78]
- **Microsoft.NETCore.App.Ref**: [from 8.0.0-rc.1.23376.5 to 8.0.0-rc.1.23414.4][77]
- **Microsoft.NET.Workload.Emscripten.Current.Manifest-8.0.100.Transport**: [from 8.0.0-rc.1.23368.3 to 8.0.0-rc.1.23411.2][79]
- **Microsoft.NETCore.App.Ref**: [from 8.0.0-rc.1.23376.5 to 8.0.0-rc.1.23414.4][77]
- **Microsoft.DotNet.Cecil**: [from 0.11.4-alpha.23360.2 to 0.11.4-alpha.23407.2][80]
[76]: eee48b8da5...e5bfaee351
[77]: ea97babd7c...e897946596
[78]: 40dc1466a4...10bc40cf7b
[79]: 1f68fcee45...abfa03c97f
[80]: 1a6a83a8f5...2f4ef29793
The gist is:
- If you enable `<PublishAot>true</PublishAot>` then the NativeAOT build targets get included.
- Unless `NativeCompilationDuringPublish` is disabled, the NativeAOT targets are chained through `BeforeTargets` attribute to some publish targets (computing the resolved publish paths). Xamarin runs those publish targets even for non-publish builds, so it brings the whole ILC compilation along. That's undesirable.
- The `RunILLink` property is set unconditionally by the NativeAOT build integration. If we don't fix it then ILLink never runs, and neither do all the custom steps to generate registrars and `main()`.
Update: Apparently, we still need to fix runtime pack resolution for iOS-like platforms with `PublishAotUsingRuntimePack=true`.
---------
Co-authored-by: Filip Navara <navara@emclient.com>
Setting test configuration variables using the environment is useful
when running tests on a Windows machine (easier than having to deal with
make).
Also refactor the code a bit to not use constants, and more consistent
naming.
It's possible to create a provisioning profile for Mac Catalyst that
doesn't allow dylibs in the app. It seems a significant number of people run
into this problem when publishing their apps, so avoid it by linking Mono and
Xamarin statically by default instead.
The downside is that build time might increase a little bit.
An upside however is that the app size might decrease somewhat.
Fixes https://github.com/xamarin/xamarin-macios/issues/14686.
Our test projects may be using an earlier version of .NET (in particular
Touch.Unit and MonoTouch.Dialog often are), so ignore any warnings about
out-of-support workloads.
Fixes test failures like:
Xamarin.Tests.BundleStructureTest.Build(MacCatalyst,"maccatalyst-x64;maccatalyst-arm64",All,"Debug"): Warnings
Expected is <System.Collections.Generic.List`1[System.String]> with 22 elements, actual is <System.String[28]>
Values differ at index [22]
Extra: < "The workload 'maccatalyst' is out of support and will not receive security updates in the future. Please refer to https://aka.ms/maui-support-policy for more information about the support policy.", "The workload 'maccatalyst' is out of support and will not receive security updates in the future. Please refer to https://aka.ms/maui-support-policy for more information about the support policy.", "The workload 'maccatalyst' is out of support and will not receive security updates in the future. Please refer to https://aka.ms/maui-support-policy for more information about the support policy."... >
Additionally parse files in reverse order, because any variables at the
end should take precedence (when parsing config files the first time
variable is found is the one we use).
If an assembly changes, then we must AOT compile that assembly again (which we already
did), in addition to any assembly that references the modified assembly (which we
didn't do).
So rework the AOTCompile target: remove the Inputs and Outputs (because the dependency
tracking is too complicated for MSBuild to resolve), and instead move the logic to
detect if an assembly must be AOT-compiled again into the AOTCompile task.
Note that this PR has a custom port to .NET 8: #18518.
Fixes https://github.com/xamarin/xamarin-macios/issues/17708.
---------
Co-authored-by: Alex Soto <alex@alexsoto.me>
If an assembly changes, then we must AOT compile that assembly again (which we already
did), in addition to any assembly that references the modified assembly (which we
didn't do).
So rework the AOTCompile target: remove the Inputs and Outputs (because the dependency
tracking is too complicated for MSBuild to resolve), and instead move the logic to
detect if an assembly must be AOT-compiled again into the AOTCompile task.
This is a port of the [original fix for main][1] to .NET 8, where we have to
take the dedup assembly into account too: if any assembly has changed, then we
must re-aot the dedup assembly as well.
Fixes https://github.com/xamarin/xamarin-macios/issues/17708.
[1]: https://github.com/xamarin/xamarin-macios/pull/18509
---------
Co-authored-by: Alex Soto <alex@alexsoto.me>
The issue relies in the fact that this code path was not executed when
using classic because in the classic version of the SDK we added the
availavility attrs both in the property, the getters and the setters.
With dotnet, we only add the attr in the property.
The code uses the GetProperty method which does not return
internal/private properties which means that some of those properties
are not correctly skipped when on dotnet. This was discovered while
working on xcode 15.
Similar to PR https://github.com/xamarin/xamarin-macios/pull/18600 we
need to use the same verison as the one found in the workload file in CI
and not that one from the make.config.
---------
Co-authored-by: GitHub Actions Autoformatter <github-actions-autoformatter@xamarin.com>
This commit fixes the code that was added in
https://github.com/xamarin/xamarin-macios/pull/16361.
The previous change uses the version number that is part of the config
file in the current build machine. That is correct when we are working
when we are running the tests in the same machine that built them. That
IS NOT THE CASE when building on CI.
Back when the CI did the separation to accommodate the EO we noticed
that if the workload is built in a diff machine, the versions were not
to be trusted, that is why the CI sets and enviroment variable to track
the version that was built in the original step. This change check if we
are on the CI, if we are we trust the version given by the previos
machine, else we use the config one.
This pull request updates the following dependencies
[marker]: <> (Begin:Coherency Updates)
## Coherency Updates
The following updates ensure that dependencies with a
*CoherentParentDependency*
attribute were produced in a build used as input to the parent
dependency's build.
See [Dependency Description
Format](https://github.com/dotnet/arcade/blob/master/Documentation/DependencyDescriptionFormat.md#dependency-description-overview)
[DependencyUpdate]: <> (Begin)
- **Coherency Updates**:
- **Microsoft.NET.ILLink.Tasks**: from 8.0.0-preview.7.23359.1 to
8.0.0-rc.1.23374.9 (parent: Microsoft.Dotnet.Sdk.Internal)
- **Microsoft.AspNetCore.App.Ref**: from 8.0.0-preview.7.23359.2 to
8.0.0-rc.1.23374.14 (parent: Microsoft.Dotnet.Sdk.Internal)
- **Microsoft.NETCore.App.Ref**: from 8.0.0-preview.7.23359.1 to
8.0.0-rc.1.23374.9 (parent: Microsoft.Dotnet.Sdk.Internal)
-
**Microsoft.NET.Workload.Emscripten.Current.Manifest-8.0.100.Transport**:
from 8.0.0-preview.7.23326.1 to 8.0.0-rc.1.23368.3 (parent:
Microsoft.NETCore.App.Ref)
- **Microsoft.NETCore.App.Ref**: from 8.0.0-preview.7.23359.1 to
8.0.0-rc.1.23374.9 (parent: Microsoft.Dotnet.Sdk.Internal)
- **Microsoft.DotNet.Cecil**: from 0.11.4-alpha.23327.1 to
0.11.4-alpha.23360.2 (parent: Microsoft.NETCore.App.Ref)
[DependencyUpdate]: <> (End)
[marker]: <> (End:Coherency Updates)
[marker]: <> (Begin:f9b68d84-9c90-4bd0-5499-08db4112d57e)
## From https://github.com/dotnet/installer
- **Subscription**: f9b68d84-9c90-4bd0-5499-08db4112d57e
- **Build**: 20230725.3
- **Date Produced**: July 25, 2023 10:39:06 AM UTC
- **Commit**: e1872958afdb2b42b48f213efc8a6cd509816f0c
- **Branch**: refs/heads/main
[DependencyUpdate]: <> (Begin)
- **Updates**:
- **Microsoft.Dotnet.Sdk.Internal**: [from 8.0.100-preview.7.23360.1 to
8.0.100-rc.1.23375.3][60]
- **Microsoft.NET.ILLink.Tasks**: [from 8.0.0-preview.7.23359.1 to
8.0.0-rc.1.23374.9][61]
- **Microsoft.AspNetCore.App.Ref**: [from 8.0.0-preview.7.23359.2 to
8.0.0-rc.1.23374.14][62]
- **Microsoft.NETCore.App.Ref**: [from 8.0.0-preview.7.23359.1 to
8.0.0-rc.1.23374.9][61]
-
**Microsoft.NET.Workload.Emscripten.Current.Manifest-8.0.100.Transport**:
[from 8.0.0-preview.7.23326.1 to 8.0.0-rc.1.23368.3][63]
- **Microsoft.NETCore.App.Ref**: [from 8.0.0-preview.7.23359.1 to
8.0.0-rc.1.23374.9][61]
- **Microsoft.DotNet.Cecil**: [from 0.11.4-alpha.23327.1 to
0.11.4-alpha.23360.2][64]
[60]:
62ef57f114...e1872958af
[61]: 31106939ba...119667b5ef
[62]:
be566b1f4e...1bda10b33b
[63]: 60a73f97a0...1f68fcee45
[64]: 3e46711f5a...1a6a83a8f5
[DependencyUpdate]: <> (End)
[marker]: <> (End:f9b68d84-9c90-4bd0-5499-08db4112d57e)
---------
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: GitHub Actions <github-actions@xamarin.com>
Co-authored-by: Alex Soto <alex@alexsoto.me>
Co-authored-by: Alex Soto <alex@soto.dev>
Co-authored-by: Filip Navara <navara@emclient.com>
… supporting XPC on File Provider instance
File Provider Service can act as an standalone XPC that you can
establish the connection with.
To open up the capability this new signature has to be exposed
---------
Co-authored-by: GitHub Actions Autoformatter <github-actions-autoformatter@xamarin.com>
Co-authored-by: Alex Soto <alex@alexsoto.me>
Detect if a url we use in our tests actually works, and if not, save the
results and ignore any subsequent test that tries to use that url.
---------
Co-authored-by: Haritha Mohan <harithamohan@microsoft.com>
For a given dylib named '/path/to/libMyLibrary.dylib', we pass this to the native linker:
-L/path/to -lMyLibrary
however, that doesn't work unless the dylib's name starts with 'lib'.
So detect this, and if the dylib doesn't start with 'lib' (say it's just
'MyLibrary.dylib'), then just pass the path to the dylib as-is to the native
linker:
/path/to/MyLibrary.dylib
Fixes https://github.com/xamarin/xamarin-macios/issues/15044.
We had to bump NUnitLite and Touch.Unit's TargetFramework properties to
net8.0-* (otherwise projects using NativeAOT fails if these projects are
referenced), which means they can't be used from .NET 7 (aka our .NET 7
tests).
So just don't reference NUnitLite and Touch.Unit in this test.
* The 'copyCGImageAtTime:actualTime:error:' selector is deprecated, so
replicate that.
* Bind the 'generateCGImageAsynchronouslyForTime:completionHandler:'
selector.
Fixes parts 1 and 2 of https://github.com/xamarin/xamarin-macios/issues/18452.
Add public targets to compute the mlaunch command lines for installing
and launching mobile apps.
These new targets are:
* ComputeMlaunchInstallArguments
* ComputeMlaunchRunArguments
As part of this change, also create a few new public properties:
* MlaunchPath
* MlaunchRunArguments
* MlaunchInstallArguments
* MlaunchRunScript
* MlaunchInstallScript
If the *Script variables are set, the corresponding target will create a
script file with the path to mlaunch + the corresponding arguments.
Otherwise, it's also possible to get the arguments directly from the
build log.
Fixes https://github.com/xamarin/xamarin-macios/issues/18359.
This pull request updates the following dependencies
## Coherency Updates
The following updates ensure that dependencies with a *CoherentParentDependency*
attribute were produced in a build used as input to the parent dependency's build.
See [Dependency Description Format](https://github.com/dotnet/arcade/blob/master/Documentation/DependencyDescriptionFormat.md#dependency-description-overview)
- **Coherency Updates**:
- **Microsoft.NET.ILLink.Tasks**: from 8.0.0-preview.5.23272.14 to 8.0.0-preview.6.23307.4 (parent: Microsoft.Dotnet.Sdk.Internal)
- **Microsoft.AspNetCore.App.Ref**: from 8.0.0-preview.5.23273.2 to 8.0.0-preview.6.23307.4 (parent: Microsoft.Dotnet.Sdk.Internal)
- **Microsoft.NETCore.App.Ref**: from 8.0.0-preview.5.23272.14 to 8.0.0-preview.6.23307.4 (parent: Microsoft.Dotnet.Sdk.Internal)
- **Microsoft.NET.Workload.Emscripten.Current.Manifest-8.0.100.Transport**: from 8.0.0-preview.5.23265.1 to 8.0.0-preview.6.23301.1 (parent: Microsoft.NETCore.App.Ref)
- **Microsoft.NETCore.App.Ref**: from 8.0.0-preview.5.23272.14 to 8.0.0-preview.6.23307.4 (parent: Microsoft.Dotnet.Sdk.Internal)
- **Microsoft.DotNet.Cecil**: from 0.11.4-alpha.23265.2 to 0.11.4-alpha.23301.1 (parent: Microsoft.NETCore.App.Ref)
## From https://github.com/dotnet/installer
- **Subscription**: f9b68d84-9c90-4bd0-5499-08db4112d57e
- **Build**: 20230607.25
- **Date Produced**: June 8, 2023 2:41:52 AM UTC
- **Commit**: f98e016a226c7637e13fb75bd6dc4949df58f7da
- **Branch**: refs/heads/main
- **Updates**:
- **Microsoft.Dotnet.Sdk.Internal**: [from 8.0.100-preview.6.23279.5 to 8.0.100-preview.6.23307.25][35]
- **Microsoft.NET.ILLink.Tasks**: [from 8.0.0-preview.5.23272.14 to 8.0.0-preview.6.23307.4][36]
- **Microsoft.AspNetCore.App.Ref**: [from 8.0.0-preview.5.23273.2 to 8.0.0-preview.6.23307.4][37]
- **Microsoft.NETCore.App.Ref**: [from 8.0.0-preview.5.23272.14 to 8.0.0-preview.6.23307.4][36]
- **Microsoft.NET.Workload.Emscripten.Current.Manifest-8.0.100.Transport**: [from 8.0.0-preview.5.23265.1 to 8.0.0-preview.6.23301.1][38]
- **Microsoft.NETCore.App.Ref**: [from 8.0.0-preview.5.23272.14 to 8.0.0-preview.6.23307.4][36]
- **Microsoft.DotNet.Cecil**: [from 0.11.4-alpha.23265.2 to 0.11.4-alpha.23301.1][39]
[35]: 2de0392d49...f98e016a22
[36]: 8163d1643a...54dab738de
[37]: 39564d529f...8dea0b8d3b
[38]: 7a90ec9edc...63af043d58
[39]: f283c62293...ea84c8236c
Fixes#17707
The error target for when there is a conflict of interest in defining
both the runtime identifier and runtime identifiers is called during the
multi-rid builds, but not sure if the placement is the most ideal..
---------
Co-authored-by: GitHub Actions Autoformatter <github-actions-autoformatter@xamarin.com>
Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>
Co-authored-by: Alex Soto <alex@alexsoto.me>
* Move all the RunAsync logic to the TestRuntime class, instead of having some
in TestRuntime and some in AppDelegate.
* Create a unified Task-based implementation for all platforms, optionally showing
a UI on the platforms where we can do that.
* Remove all the overloads that took a DateTime timeout, and instead only use a
TimeSpan timeout. This simplified some of the code.
* The new Task-based implementation will capture any exceptions (and rethrow most
of them) from the tasks we're waiting for, so no need to do that in each RunAsync
caller. This simplifies the testing code a lot for some tests.
* Add a new TryRunAsync method that will return (instead of rethrowing) any exceptions.
This simplifies some of the testing code (which verifies the correct exception,
or ignores the test in case of some exceptions).
* The new Task-based implementation will bubble up any NUnit exceptions, which
means that the tasks we're waiting for can call NUnit's Assert and the right thing
happens (in particular Assert.Ignore will actually ignore the test).
Fixes:
MonoTouchFixtures.AVFoundation.CaptureMetadataOutputTest
[PASS] Defaults
[PASS] Flags
[FAIL] MetadataObjectTypesTest : System.NotImplementedException : The method or operation is not implemented.
at TestRuntime.CheckXcodeVersion(Int32 major, Int32 minor, Int32 build) in xamarin-macios/tests/common/TestRuntime.cs:line 483
at MonoTouchFixtures.AVFoundation.CaptureMetadataOutputTest.MetadataObjectTypesTest() in xamarin-macios/tests/monotouch-test/AVFoundation/CaptureMetadataOutputTest.cs:line 131
at System.Reflection.MethodInvoker.InterpretedInvoke(Object , Span`1 , BindingFlags )
* This test creates a file in the temp directory, so make sure the file name
is unique enough to not clash with any other test runs running concurrently.
Fixes this problem:
> SetCaption: System.IO.IOException : IO_SharingViolation_File, /var/folders/r7/kvhxkfw54qlc5y72d620783h0000gn/T/basn3p08.png
* Also delete the temporary file at the end of the test.
This PR is best viewed by ignoring whitespace, since it indents a big chunk of
code.
This pull request updates the following dependencies
## Coherency Updates
The following updates ensure that dependencies with a *CoherentParentDependency*
attribute were produced in a build used as input to the parent dependency's build.
See [Dependency Description Format](https://github.com/dotnet/arcade/blob/master/Documentation/DependencyDescriptionFormat.md#dependency-description-overview)
- **Coherency Updates**:
- **Microsoft.NET.ILLink.Tasks**: from 8.0.0-preview.5.23260.3 to 8.0.0-preview.5.23272.14 (parent: Microsoft.Dotnet.Sdk.Internal)
- **Microsoft.AspNetCore.App.Ref**: from 8.0.0-preview.5.23262.1 to 8.0.0-preview.5.23273.2 (parent: Microsoft.Dotnet.Sdk.Internal)
- **Microsoft.NETCore.App.Ref**: from 8.0.0-preview.5.23260.3 to 8.0.0-preview.5.23272.14 (parent: Microsoft.Dotnet.Sdk.Internal)
- **Microsoft.NET.Workload.Emscripten.Current.Manifest-8.0.100.Transport**: from 8.0.0-preview.5.23252.1 to 8.0.0-preview.5.23265.1 (parent: Microsoft.NETCore.App.Ref)
- **Microsoft.NETCore.App.Ref**: from 8.0.0-preview.5.23260.3 to 8.0.0-preview.5.23272.14 (parent: Microsoft.Dotnet.Sdk.Internal)
- **Microsoft.DotNet.Cecil**: from 0.11.4-alpha.23252.1 to 0.11.4-alpha.23265.2 (parent: Microsoft.NETCore.App.Ref)
## From https://github.com/dotnet/installer
- **Subscription**: f9b68d84-9c90-4bd0-5499-08db4112d57e
- **Build**: 20230523.15
- **Date Produced**: May 24, 2023 12:03:24 AM UTC
- **Commit**: 4b48b408f9b777eddd4e87f6b9efab4b5b1723a6
- **Branch**: refs/heads/main
- **Updates**:
- **Microsoft.Dotnet.Sdk.Internal**: [from 8.0.100-preview.5.23267.7 to 8.0.100-preview.5.23273.15][21]
- **Microsoft.NET.ILLink.Tasks**: [from 8.0.0-preview.5.23260.3 to 8.0.0-preview.5.23272.14][22]
- **Microsoft.AspNetCore.App.Ref**: [from 8.0.0-preview.5.23262.1 to 8.0.0-preview.5.23273.2][23]
- **Microsoft.NETCore.App.Ref**: [from 8.0.0-preview.5.23260.3 to 8.0.0-preview.5.23272.14][22]
- **Microsoft.NET.Workload.Emscripten.Current.Manifest-8.0.100.Transport**: [from 8.0.0-preview.5.23252.1 to 8.0.0-preview.5.23265.1][24]
- **Microsoft.NETCore.App.Ref**: [from 8.0.0-preview.5.23260.3 to 8.0.0-preview.5.23272.14][22]
- **Microsoft.DotNet.Cecil**: [from 0.11.4-alpha.23252.1 to 0.11.4-alpha.23265.2][25]
[21]: dda516cbd7...4b48b408f9
[22]: 888bac3044...8163d1643a
[23]: 059939bda4...39564d529f
[24]: ab09b0b8d6...7a90ec9edc
[25]: c32f0be86d...f283c62293
If only some platforms are enabled, some of the commands to find files to add
to package-test-libraries.zip won't find any files at all.
Asking 'zip' to add no files fails with:
zip error: Nothing to do!
and there's no way to add 'zip' to ignore this error condition.
However, we can instead try to not call zip at all when we don't find any
files, and we do that by using:
"find ... -exec zip"
instead of:
"find .. | zip ..."
The autoformatter was down for a litle while, and these issues crept in.
---------
Co-authored-by: GitHub Actions Autoformatter <github-actions-autoformatter@xamarin.com>
Stop building the test dependencies on each test run, and instead use the archived test dependencies we have from the main build:
* Stop running 'make all' in tests/ on every separate test run.
* Add a lot more stuff in the package-test-libraries.zip archive.
* Extract all the new stuff on every test run. We add stuff from outside the tests/
directory, so adjust archive creation and extraction to use the root directory
of the repository as the root of the zip archive as well.
* Also add the introspection dependencies to the same archive to simplify the logic.
* Fix xharness to not store absolute paths in generated projects.
* Fix test project to not automatically run make in tests/test-libraries when running
on the bots.
Building the test dependencies takes ~10 minutes for each test run, so this saves
about that time for each test run.
This check is passing a remote url to an API that wants a url to a local file
(file:// url), and this is supposed to fail (it's not a network hiccup if it
fails).
However, sometimes it doesn't fail... for unknown reasons. So instead change
the test's expectations so that it passes whether using a remote url fails
with an error or not.
MidiCIDeviceIdentification isn't blittable ((yet)[1]), so exporting it makes
the AOT compiler complain. Use a different (but blittable) type instead in the
test.
[1]: 03f0a35012