Skip to content

[xcode16.1] Merge main into Xcode 16.1#21528

Merged
dalexsoto merged 34 commits intoxcode16.1from
alex/dev/main161merge
Oct 26, 2024
Merged

[xcode16.1] Merge main into Xcode 16.1#21528
dalexsoto merged 34 commits intoxcode16.1from
alex/dev/main161merge

Conversation

@dalexsoto
Copy link
Copy Markdown
Member

No description provided.

rolfbjarne and others added 30 commits October 21, 2024 10:36
Also avoid the 'nuget' binary, which requires Mono.
This avoids a Mono dependency (the `sn` tool is installed with Mono).
…1457)

This makes it easier to consume a locally built version of Xamarin.Messaging
when build and testing locally.
This has a few advantages:

* We simplify and unify more of our code.
* We have more control over the error reporting / logging behavior.

Additionally:

* Allow for overriding the path to the command-line tool in question.
* Add support for cancellation.

Fixes #21437.
…inlogs. (#21402)

This is to ease diagnosing problems, because the entitlements can be crucial
in some cases (features don't work if developers get the entitlements wrong).
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 9.0.0-rtm.24515.9 to 9.0.0 (parent: Microsoft.NET.Sdk)
  - **Microsoft.AspNetCore.App.Ref**: from 9.0.0-rtm.24514.7 to 9.0.0 (parent: Microsoft.NET.Sdk)
  - **Microsoft.NETCore.App.Ref**: from 9.0.0-rtm.24515.9 to 9.0.0 (parent: Microsoft.NET.Sdk)
  - **Microsoft.NET.Workload.Emscripten.Current.Manifest-9.0.100.Transport**: from 9.0.0-rtm.24513.1 to 9.0.0-rtm.24515.1 (parent: Microsoft.NETCore.App.Ref)
  - **Microsoft.NETCore.App.Ref**: from 9.0.0-rtm.24515.9 to 9.0.0 (parent: Microsoft.NET.Sdk)

## From https://github.com/dotnet/sdk

- **Subscription**: afa459aa-bd64-46cb-8138-9f6f795963d4
- **Build**: 20241020.4
- **Date Produced**: October 21, 2024 5:47:08 AM UTC
- **Commit**: 95bea787c14e3402b47311007dba6b3f503b34e7
- **Branch**: refs/heads/release/9.0.1xx

- **Updates**:
  - **Microsoft.NET.Sdk**: [from 9.0.100-rtm.24518.42 to 9.0.100-rtm.24520.4][28]

[28]: dotnet/sdk@f5127b1...95bea78
Add the following:

1. Code needed to register the changes in the compiler pipeline.
2. Code that will add the using statements for the generated code that
match those in the binding file.
3. Code that allows to write tabbed code in a way we do not have to keep
track of indentation.

We have the first unit test that verifies code generation by checking
the using statements.

---------

Co-authored-by: GitHub Actions Autoformatter <github-actions-autoformatter@xamarin.com>
Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>
Also:

* Improve file listing by not wrapping output.
* Be a bit more descriptive in step display names.
This is a tool used to build legacy projects, so it's no longer needed.

I haven't removed everything that depends on xibuild, in particular some of
the tests need to be ported to .NET instead of just removed.
…with .NET. (#21468)

Note that it's still executed with Mono, because we load a native library that
needs Mono at runtime.
This pull request updates the following dependencies

## From https://github.com/dotnet/xharness

- **Subscription**: 601bc5e1-1cae-44b5-cf5f-08db9342aa2f
- **Build**: 20241014.1
- **Date Produced**: October 14, 2024 10:32:08 PM UTC
- **Commit**: 8b3d320f930244889da101cd17cbfb6a178b7e35
- **Branch**: refs/heads/main

- **Updates**:
  - **Microsoft.DotNet.XHarness.iOS.Shared**: [from 10.0.0-prerelease.24511.1 to 10.0.0-prerelease.24514.1][1]

[1]: dotnet/xharness@8c6d5af...8b3d320
This pull request updates the following dependencies

## From https://github.com/dotnet/sdk

- **Subscription**: afa459aa-bd64-46cb-8138-9f6f795963d4
- **Build**: 20241021.19
- **Date Produced**: October 21, 2024 10:52:01 PM UTC
- **Commit**: 1efe47335726077cc75f52ec5b00ebf243f4c048
- **Branch**: refs/heads/release/9.0.1xx

- **Updates**:
  - **Microsoft.NET.Sdk**: [from 9.0.100-rtm.24520.4 to 9.0.100-rtm.24521.19][1]

[1]: dotnet/sdk@95bea78...1efe473
Note: all the files in eng/common/ were added automatically, and there's no
need to review them (any changes will be lost anyway).

This is the command to update arcade manually:

```shell
$ darc update-dependencies --name Microsoft.DotNet.Arcade.Sdk --channel '.NET 9 Eng'
```

In any case I'll setup a subscription as well.

This is required in order to access internal .NET builds at some point.
…path. (#21486)

Fixes this warning:

> [...]\packs\Microsoft.iOS.Sdk.net9.0_18.0\18.0.9731-ci.dev-rolf\tools\msbuild\iOS\Xamarin.Shared.targets(755,3): Access to the path 'C:\Users\rolf\Library\Caches\Xamarin\mtbs\builds\BundleStructure\e3602c179d4eceb04f35658ffc4180192072542b74da729d64a6505c255de589\obj\Debug\net9.0-ios\ios-arm64' is denied.
…rojects and as NativeReference items. Fixes #21294. (#21492)

Now it's possible to reference a compressed xcframework like this:

```xml
<NativeReference Include="path/to/myframework.xcframework.zip" />
```

This makes it easier to work with xcframeworks on Windows, because
xcframeworks can contain symlinks, and by zipping them up the whole symlink
problem is avoided.

Turns out there's already a NuGet that adds a .xcframework.zip file as a
NativeReference (Microsoft.ML.OnnxRuntime), so this makes that NuGet work.

Fixes #21294.
Fixes #21450.
…ation. (#21471)

Use MSBuild assemblies from NuGet instead of Mono's installation. Try to get
the closest version to Mono's assemblies.

This avoids a Mono dependency.
This pull request updates the following dependencies

## From https://github.com/dotnet/sdk

- **Subscription**: afa459aa-bd64-46cb-8138-9f6f795963d4
- **Build**: 20241023.3
- **Date Produced**: October 23, 2024 9:18:45 AM UTC
- **Commit**: ece1951b3615a3f6d48cffc99ed66c06c1261ea1
- **Branch**: refs/heads/release/9.0.1xx

- **Updates**:
  - **Microsoft.NET.Sdk**: [from 9.0.100-rtm.24521.19 to 9.0.100-rtm.24523.3][1]

[1]: dotnet/sdk@1efe473...ece1951
File an AzDo issue if a bot runs out of space, but if there's already an open
issue for a bot, then just add a comment to the existing issue.

Example issue created locally:
https://devdiv.visualstudio.com/DevDiv/_workitems/edit/2289908.
…code duplication. (#21488)

When embedding bundle resources to an assembly as assembly resources, we store
the LogicalName property for the resource. We do this by using the LogicalName
property as the resource name - but we need to encode forward and backward
slashes, since they don't work properly has resource names.

In the past, we've encoded forward and backward slashes differently, but this
results in different encodings depending on whether the resources are embedded
on Windows or macOS.

So change the encoding, so that both forward and backward slashes are encoded
the same way, and then they're extracted using the platform's path character.
This way we get consistent behavior on both platforms.
…fest items. (#21508)

This makes it possible to provide partial app manifests with default
values, which can then be overridden in the main Info.plist.
When MSBuild crashes, MSBuild creates a log file and prints:

> error MSB4166: Child node "3" exited prematurely. Shutting down. Diagnostic information may be found in files in "/var/folders/52/tx7jvhs16x19bkdf030_nyww0000gn/T/MSBuildTempbuilder/" and will be named MSBuild_*.failure.txt. This location can be changed by setting the MSBUILDDEBUGPATH environment variable to a different directory.

However, these log files aren't accessible after a CI build has concluded, so
set the MSBUILDDEBUGPATH environment variable to the jenkins-results
directory, which will be uploaded as a build artifact.

This way we can inspect whatever made MSBuild fail in a CI build.
It's always defined, now that legacy Xamarin is not supported anymore, so just
remove it.
This should speed up the checkout step a little bit.

Ref: xamarin/yaml-templates#338.
@dalexsoto dalexsoto requested a review from mauroa as a code owner October 25, 2024 15:20
@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@dalexsoto dalexsoto force-pushed the alex/dev/main161merge branch from 0610bfa to 6110b11 Compare October 25, 2024 19:58
@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@dalexsoto dalexsoto force-pushed the alex/dev/main161merge branch from 6110b11 to 7618edb Compare October 25, 2024 22:09
@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2
Copy link
Copy Markdown
Collaborator

💻 [CI Build] Windows Integration Tests passed 💻

All Windows Integration Tests passed.

Pipeline on Agent
Hash: 7618edb1acf44a537a8271c978e84d40d778caed [PR build]

@vs-mobiletools-engineering-service2
Copy link
Copy Markdown
Collaborator

✅ API diff for current PR / commit

.NET (No breaking changes)

✅ API diff vs stable

.NET (No breaking changes)

ℹ️ Generator diff

Generator Diff: vsdrops (html) vsdrops (raw diff) gist (raw diff) - Please review changes)

Pipeline on Agent
Hash: 7618edb1acf44a537a8271c978e84d40d778caed [PR build]

@vs-mobiletools-engineering-service2
Copy link
Copy Markdown
Collaborator

💻 [CI Build] Tests on macOS X64 - Mac Sonoma (14) passed 💻

All tests on macOS X64 - Mac Sonoma (14) passed.

Pipeline on Agent
Hash: 7618edb1acf44a537a8271c978e84d40d778caed [PR build]

@vs-mobiletools-engineering-service2
Copy link
Copy Markdown
Collaborator

💻 [CI Build] Tests on macOS M1 - Mac Monterey (12) passed 💻

All tests on macOS M1 - Mac Monterey (12) passed.

Pipeline on Agent
Hash: 7618edb1acf44a537a8271c978e84d40d778caed [PR build]

@vs-mobiletools-engineering-service2
Copy link
Copy Markdown
Collaborator

💻 [CI Build] Tests on macOS M1 - Mac Ventura (13) passed 💻

All tests on macOS M1 - Mac Ventura (13) passed.

Pipeline on Agent
Hash: 7618edb1acf44a537a8271c978e84d40d778caed [PR build]

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2
Copy link
Copy Markdown
Collaborator

🚀 [CI Build] Test results 🚀

Test results

✅ All tests passed on VSTS: test results.

🎉 All 101 tests passed 🎉

Tests counts

✅ cecil: All 1 tests passed. Html Report (VSDrops) Download
✅ dotnettests (iOS): All 1 tests passed. Html Report (VSDrops) Download
✅ dotnettests (MacCatalyst): All 1 tests passed. [attempt 5] Html Report (VSDrops) Download
✅ dotnettests (macOS): All 1 tests passed. Html Report (VSDrops) Download
✅ dotnettests (Multiple platforms): All 1 tests passed. Html Report (VSDrops) Download
✅ dotnettests (tvOS): All 1 tests passed. Html Report (VSDrops) Download
✅ framework: All 2 tests passed. Html Report (VSDrops) Download
✅ fsharp: All 4 tests passed. Html Report (VSDrops) Download
✅ generator: All 3 tests passed. Html Report (VSDrops) Download
✅ interdependent-binding-projects: All 4 tests passed. Html Report (VSDrops) Download
✅ introspection: All 4 tests passed. Html Report (VSDrops) Download
✅ linker: All 40 tests passed. Html Report (VSDrops) Download
✅ monotouch (iOS): All 7 tests passed. Html Report (VSDrops) Download
✅ monotouch (MacCatalyst): All 8 tests passed. Html Report (VSDrops) Download
✅ monotouch (macOS): All 9 tests passed. Html Report (VSDrops) Download
✅ monotouch (tvOS): All 7 tests passed. Html Report (VSDrops) Download
✅ msbuild: All 2 tests passed. Html Report (VSDrops) Download
✅ xcframework: All 4 tests passed. Html Report (VSDrops) Download
✅ xtro: All 1 tests passed. Html Report (VSDrops) Download

Pipeline on Agent
Hash: 7618edb1acf44a537a8271c978e84d40d778caed [PR build]

@dalexsoto dalexsoto merged commit 34ebd57 into xcode16.1 Oct 26, 2024
@dalexsoto dalexsoto deleted the alex/dev/main161merge branch October 26, 2024 15:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants