Skip to content

Commit

Permalink
Bump to Xcode 13 beta 1. (#11861)
Browse files Browse the repository at this point in the history
* Bump maccore.

New commits in xamarin/maccore:

* xamarin/maccore@9acbbed1f6 [mlaunch] Add support for Xcode 13 beta 1. (#2452)
* xamarin/maccore@e48f75c0b6 [Xamarin.Hosting] Fix the --stdout arg not being forwarded to DeviceLaunchConfig (#2435)
* xamarin/maccore@109c695b1b [Xamarin.Hosting] Fix help string for launchdev argument (#2429)

Diff: https://github.com/xamarin/maccore/compare/cddbd1915dcb27d8bf2d9b3b9cc4aeb22785698e..9acbbed1f60788349c60437dba11531a866777a8

* [xtro] Fix generation of .pch files
* [xtro] Fix deprecated check to handle (anonymous) declarations and enable latest C# syntax in project
* [xtro] Fix _sanity_ checks
* [xtro] Update todo for beta 1

* [Siminstaller] Force siminstaller to use the xcode 12.5 url

Related issue: #11881

* Fix introspection failures (due to [breaking] changes)
* [tests][intro] Fix hang for tvOS

Creating an instance of `NSMetadataQuery` hangs the simulator.

Even after (xharness) timeout the simulator is not in a good state
to run further tests and every new (tvOS) test will also hang...

* [tests][intro] Same hang for watchOS

except that further test execution does not seem affected (like tvOS)

```
CoreSimulator 772.1 - Device: Apple Watch Series 3 - 38mm (watchOS 8.0) - created by XHarness (42262867-E060-40C0-803E-6DA676AF50CC) - Runtime: watchOS 8.0 (19R5266p) - DeviceType: Apple Watch Series 3 - 38mm

Thread 0 Crashed:: tid_103  Dispatch queue: com.apple.main-thread
0   com.apple.Foundation          	0x00007fff21470bd0 -[NSMetadataQuery dealloc] + 432
1   libobjc.A.dylib               	0x00007fff200d11f7 objc_object::sidetable_release(bool, bool) + 177
2   com.apple.Foundation          	0x00007fff21470a03 -[NSMetadataQuery init] + 64
3   com.xamarin.introspection_watch.watchkitapp.watchkitextension	0x0000000107efc139 xamarin_dyn_objc_msgSend + 217 (trampolines-x86_64-objc_msgSend.s:15)
4   ???                           	0x000000010c76d4f6 0 + 4504081654
5   com.xamarin.introspection_watch.watchkitapp.watchkitextension	0x0000000107cffc85 mono_jit_runtime_invoke + 1621 (mini-runtime.c:3197)
6   com.xamarin.introspection_watch.watchkitapp.watchkitextension	0x0000000107e177d8 do_runtime_invoke + 54 (object.c:3052) [inlined]
7   com.xamarin.introspection_watch.watchkitapp.watchkitextension	0x0000000107e177d8 mono_runtime_invoke_checked + 136 (object.c:3220)
8   com.xamarin.introspection_watch.watchkitapp.watchkitextension	0x0000000107e1e3c5 mono_runtime_try_invoke_array + 2101 (object.c:5601)
9   com.xamarin.introspection_watch.watchkitapp.watchkitextension	0x0000000107daf977 ves_icall_InternalInvoke + 871 (icall.c:3927)
10  com.xamarin.introspection_watch.watchkitapp.watchkitextension	0x0000000107dc0167 ves_icall_InternalInvoke_raw + 103 (icall-def.h:667)
11  ???                           	0x000000010a232799 0 + 4465043353
12  ???                           	0x000000010c76e08b 0 + 4504084619
```

* [tests][monotouch-test] Fix failures with xcode 13 beta 1
* [tests][mmptest] Use a FAT framework that's build with x86_64 and arm64

Co-authored-by: Alex Soto <[email protected]>
Co-authored-by: Sebastien Pouliot <[email protected]>
Co-authored-by: Manuel de la Pena <[email protected]>
  • Loading branch information
4 people authored Jun 11, 2021
1 parent 2f12850 commit 0921ae4
Show file tree
Hide file tree
Showing 334 changed files with 13,654 additions and 159 deletions.
10 changes: 5 additions & 5 deletions Make.config
Original file line number Diff line number Diff line change
Expand Up @@ -126,9 +126,9 @@ MACCATALYST_NUGET_VERSION_NO_METADATA=$(MACCATALYST_NUGET_VERSION)-$(NUGET_PRERE
MACCATALYST_NUGET_VERSION_FULL=$(MACCATALYST_NUGET_VERSION_NO_METADATA)+$(NUGET_BUILD_METADATA)

# Xcode version should have both a major and a minor version (even if the minor version is 0)
XCODE_VERSION=12.5
XCODE_URL=https://dl.internalx.com/internal-files/xcodes/Xcode_12.5.xip
XCODE_DEVELOPER_ROOT=/Applications/Xcode_12.5.0.app/Contents/Developer
XCODE_VERSION=13.0
XCODE_URL=https://bosstoragemirror.azureedge.net/internal-files/xcodes/Xcode_13_beta.xip
XCODE_DEVELOPER_ROOT=/Applications/Xcode_13.0.0-beta.app/Contents/Developer
XCODE_PRODUCT_BUILD_VERSION:=$(shell /usr/libexec/PlistBuddy -c 'Print :ProductBuildVersion' $(XCODE_DEVELOPER_ROOT)/../version.plist)

# Mono version embedded in XI/XM (NEEDED_MONO_VERSION/BRANCH) are specified in mk/mono.mk
Expand All @@ -154,9 +154,9 @@ MIN_CMAKE_URL=https://cmake.org/files/v3.6/cmake-3.6.2-Darwin-x86_64.dmg
MIN_CMAKE_VERSION=2.8.8

# ObjectiveSharpie min/max versions
MIN_SHARPIE_VERSION=3.5.41
MIN_SHARPIE_VERSION=3.5.45
MAX_SHARPIE_VERSION=3.5.99
MIN_SHARPIE_URL=https://download.visualstudio.microsoft.com/download/pr/43d40473-3115-44aa-8beb-06e99324762d/c5a5432935c9b9ebd56b6fba69b06a57/objectivesharpie-3.5.41.pkg
MIN_SHARPIE_URL=https://download.visualstudio.microsoft.com/download/pr/77766fbc-995f-410b-9546-4a1731051956/d3f34a07d9c3a2fcdda16bb3fe5b41e8/objectivesharpie-3.5.45.pkg

# Minimum OSX versions for building XI/XM
MIN_OSX_BUILD_VERSION=11.0
Expand Down
14 changes: 7 additions & 7 deletions Make.versions
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,8 @@
# line changed in git).
#

IOS_PACKAGE_VERSION=14.21.0.$(IOS_COMMIT_DISTANCE)
MAC_PACKAGE_VERSION=7.15.0.$(MAC_COMMIT_DISTANCE)
IOS_PACKAGE_VERSION=14.99.0.$(IOS_COMMIT_DISTANCE)
MAC_PACKAGE_VERSION=7.99.0.$(MAC_COMMIT_DISTANCE)

#
# ** NuGet package version numbers **
Expand All @@ -66,11 +66,11 @@ MAC_PACKAGE_VERSION=7.15.0.$(MAC_COMMIT_DISTANCE)
# WARNING: Do **not** use versions higher than the available Xcode SDK or else we will have issues with mtouch (See https://github.com/xamarin/xamarin-macios/issues/7705)
# When bumping the major macOS version in MACOS_NUGET_VERSION also update the macOS version where we execute on bots in jenkins/Jenkinsfile (in the 'node' element)

IOS_NUGET_VERSION=14.5.100
TVOS_NUGET_VERSION=14.5.100
WATCHOS_NUGET_VERSION=7.4.100
MACOS_NUGET_VERSION=11.3.100
MACCATALYST_NUGET_VERSION=14.5.100
IOS_NUGET_VERSION=15.0.100
TVOS_NUGET_VERSION=15.0.100
WATCHOS_NUGET_VERSION=8.0.100
MACOS_NUGET_VERSION=12.0.100
MACCATALYST_NUGET_VERSION=15.0.100


# Defines the default platform version if it's not specified in the TFM. The default should not change for a given .NET version:
Expand Down
6 changes: 6 additions & 0 deletions Versions-ios.plist.in
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@
<string>14.3</string>
<string>14.4</string>
<string>14.5</string>
<string>15.0</string>
</array>
<key>tvOS</key>
<array>
Expand Down Expand Up @@ -74,6 +75,7 @@
<string>14.3</string>
<string>14.4</string>
<string>14.5</string>
<string>15.0</string>
</array>
<key>watchOS</key>
<array>
Expand All @@ -99,6 +101,7 @@
<string>7.2</string>
<string>7.3</string>
<string>7.4</string>
<string>8.0</string>
</array>
<key>MacCatalyst</key>
<array>
Expand All @@ -111,6 +114,7 @@
<string>14.3</string>
<string>14.4</string>
<string>14.5</string>
<string>15.0</string>
</array>
</dict>
<key>MacCatalystVersionMap</key>
Expand All @@ -133,6 +137,8 @@
<string>11.1</string>
<key>14.5</key>
<string>11.3</string>
<key>15.0</key>
<string>12.0</string>
</dict>
<key>RecommendedXcodeVersion</key>
<string>@XCODE_VERSION@</string>
Expand Down
1 change: 1 addition & 0 deletions Versions-mac.plist.in
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
<string>11.1</string>
<string>11.2</string>
<string>11.3</string>
<string>12.0</string>
</array>
</dict>
<key>RecommendedXcodeVersion</key>
Expand Down
2 changes: 1 addition & 1 deletion mk/xamarin.mk
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ MONO_BRANCH := $(shell cd $(MONO_PATH) 2> /dev/null && git symbolic-ref --sho
endif

ifdef ENABLE_XAMARIN
NEEDED_MACCORE_VERSION := cddbd1915dcb27d8bf2d9b3b9cc4aeb22785698e
NEEDED_MACCORE_VERSION := 9acbbed1f60788349c60437dba11531a866777a8
NEEDED_MACCORE_BRANCH := main

MACCORE_DIRECTORY := maccore
Expand Down
34 changes: 34 additions & 0 deletions src/AVFoundation/AVCompat.cs
Original file line number Diff line number Diff line change
Expand Up @@ -535,4 +535,38 @@ public AVCaptureAutoExposureBracketedStillImageSettings () : base (NSObjectFlag.
}
}
#endif

#if !XAMCORE_4_0
// "compatibility shim" in xcode 12.5 were removed in xcode 13
public partial class AVPlayerInterstitialEventController {

[Obsolete ("Use 'GetInterstitialEventController' instead.")]
public static AVPlayerInterstitialEventController GetPlayerInterstitialEventController (AVPlayer primaryPlayer)
{
return GetInterstitialEventController (primaryPlayer);
}

[Obsolete ("Use 'Events' instead.")]
public virtual AVPlayerInterstitialEvent[] InterstitialEvents {
get { return Events; }
set { Events = value; }
}
}

public partial class AVPlayerInterstitialEvent {

[Obsolete ("Use 'TemplateItems' instead.")]
public virtual AVPlayerItem[] InterstitialTemplateItems {
get { return TemplateItems; }
}
}

public partial class AVPlayerInterstitialEventObserver {

[Obsolete ("Use 'Events' instead.")]
public virtual AVPlayerInterstitialEvent[] InterstitialEvents {
get { return Events; }
}
}
#endif
}
54 changes: 23 additions & 31 deletions src/avfoundation.cs
Original file line number Diff line number Diff line change
Expand Up @@ -12472,21 +12472,25 @@ enum AVPlayerInterstitialEventRestrictions : ulong
[DisableDefaultCtor]
interface AVPlayerInterstitialEvent
{
[Static]
[Export ("interstitialEventWithPrimaryItem:time:templateItems:restrictions:resumptionOffset:")]
AVPlayerInterstitialEvent GetInterstitialEvent (AVPlayerItem primaryItem, CMTime time, AVPlayerItem[] templateItems, AVPlayerInterstitialEventRestrictions restrictions, CMTime resumptionOffset);

[Static]
[Export ("playerInterstitialEventWithPrimaryItem:time:interstitialTemplateItems:restrictions:resumptionOffset:")]
AVPlayerInterstitialEvent GetPlayerInterstitialEvent (AVPlayerItem primaryItem, CMTime time, AVPlayerItem[] interstitialTemplateItems, AVPlayerInterstitialEventRestrictions restrictions, CMTime resumptionOffset);

[Static]
[Export ("interstitialEventWithPrimaryItem:date:templateItems:restrictions:resumptionOffset:")]
AVPlayerInterstitialEvent GetInterstitialEvent (AVPlayerItem primaryItem, NSDate date, AVPlayerItem[] templateItems, AVPlayerInterstitialEventRestrictions restrictions, CMTime resumptionOffset);

[Static]
[Export ("playerInterstitialEventWithPrimaryItem:date:interstitialTemplateItems:restrictions:resumptionOffset:")]
AVPlayerInterstitialEvent GetPlayerInterstitialEvent (AVPlayerItem primaryItem, NSDate date, AVPlayerItem[] interstitialTemplateItems, AVPlayerInterstitialEventRestrictions restrictions, CMTime resumptionOffset);
// Apple changed the API signature ?!?
// [Static]
// [Export ("interstitialEventWithPrimaryItem:time:templateItems:restrictions:resumptionOffset:")]
// AVPlayerInterstitialEvent GetInterstitialEvent (AVPlayerItem primaryItem, CMTime time, AVPlayerItem[] templateItems, AVPlayerInterstitialEventRestrictions restrictions, CMTime resumptionOffset);

// Apple changed the API signature ?!?
// [Static]
// [Export ("playerInterstitialEventWithPrimaryItem:time:interstitialTemplateItems:restrictions:resumptionOffset:")]
// AVPlayerInterstitialEvent GetPlayerInterstitialEvent (AVPlayerItem primaryItem, CMTime time, AVPlayerItem[] interstitialTemplateItems, AVPlayerInterstitialEventRestrictions restrictions, CMTime resumptionOffset);

// Apple changed the API signature ?!?
// [Static]
// [Export ("interstitialEventWithPrimaryItem:date:templateItems:restrictions:resumptionOffset:")]
// AVPlayerInterstitialEvent GetInterstitialEvent (AVPlayerItem primaryItem, NSDate date, AVPlayerItem[] templateItems, AVPlayerInterstitialEventRestrictions restrictions, CMTime resumptionOffset);

// Apple changed the API signature ?!?
// [Static]
// [Export ("playerInterstitialEventWithPrimaryItem:date:interstitialTemplateItems:restrictions:resumptionOffset:")]
// AVPlayerInterstitialEvent GetPlayerInterstitialEvent (AVPlayerItem primaryItem, NSDate date, AVPlayerItem[] interstitialTemplateItems, AVPlayerInterstitialEventRestrictions restrictions, CMTime resumptionOffset);

[NullAllowed, Export ("primaryItem", ArgumentSemantic.Weak)]
AVPlayerItem PrimaryItem { get; }
Expand All @@ -12500,9 +12504,6 @@ interface AVPlayerInterstitialEvent
[Export ("templateItems")]
AVPlayerItem[] TemplateItems { get; }

[Export ("interstitialTemplateItems")]
AVPlayerItem[] InterstitialTemplateItems { get; }

[Export ("restrictions")]
AVPlayerInterstitialEventRestrictions Restrictions { get; }

Expand All @@ -12521,9 +12522,10 @@ interface AVPlayerInterstitialEventObserver
[Export ("interstitialEventObserverWithPrimaryPlayer:")]
AVPlayerInterstitialEventObserver GetInterstitialEventObserver (AVPlayer primaryPlayer);

[Static]
[Export ("playerInterstitialEventObserverWithPrimaryPlayer:")]
AVPlayerInterstitialEventObserver GetPlayerInterstitialEventObserver (AVPlayer primaryPlayer);
// Apple changed/broke API compatibility
// [Static]
// [Export ("playerInterstitialEventObserverWithPrimaryPlayer:")]
// AVPlayerInterstitialEventObserver GetPlayerInterstitialEventObserver (AVPlayer primaryPlayer);

[Export ("initWithPrimaryPlayer:")]
[DesignatedInitializer]
Expand All @@ -12538,9 +12540,6 @@ interface AVPlayerInterstitialEventObserver
[Export ("events")]
AVPlayerInterstitialEvent[] Events { get; }

[Export ("interstitialEvents")]
AVPlayerInterstitialEvent[] InterstitialEvents { get; }

[NullAllowed, Export ("currentEvent")]
AVPlayerInterstitialEvent CurrentEvent { get; }

Expand All @@ -12564,19 +12563,12 @@ interface AVPlayerInterstitialEventController
[Export ("interstitialEventControllerWithPrimaryPlayer:")]
AVPlayerInterstitialEventController GetInterstitialEventController (AVPlayer primaryPlayer);

[Static]
[Export ("playerInterstitialEventControllerWithPrimaryPlayer:")]
AVPlayerInterstitialEventController GetPlayerInterstitialEventController (AVPlayer primaryPlayer);

[Export ("initWithPrimaryPlayer:")]
IntPtr Constructor (AVPlayer primaryPlayer);

[NullAllowed, Export ("events", ArgumentSemantic.Copy)]
AVPlayerInterstitialEvent[] Events { get; set; }

[NullAllowed, Export ("interstitialEvents", ArgumentSemantic.Copy)]
AVPlayerInterstitialEvent[] InterstitialEvents { get; set; }

[Export ("cancelCurrentEventWithResumptionOffset:")]
void CancelCurrentEvent (CMTime resumptionOffset);
}
Expand Down
112 changes: 112 additions & 0 deletions src/coreimage.cs
Original file line number Diff line number Diff line change
Expand Up @@ -9259,5 +9259,117 @@ interface CIColorThresholdOtsuProtocol : CIFilterProtocol {
[BaseType (typeof (CIFilter))]
interface CIColorThresholdOtsu : CIColorThresholdOtsuProtocol {
}

[CoreImageFilter]
[iOS (15,0)]
[TV (15,0)]
[Mac (12,0)]
[MacCatalyst (15,0)]
[BaseType (typeof (CIFilter))]
interface CIConvolutionRGB3X3 : CIFilterProtocol {

[CoreImageFilterProperty ("inputWeights")]
CIVector Weights { get; set; }

[CoreImageFilterProperty ("inputBias")]
float Bias { get; set; }
}

[CoreImageFilter]
[iOS (15,0)]
[TV (15,0)]
[Mac (12,0)]
[MacCatalyst (15,0)]
[BaseType (typeof (CIFilter))]
interface CIConvolutionRGB5X5 : CIFilterProtocol {

[CoreImageFilterProperty ("inputWeights")]
CIVector Weights { get; set; }

[CoreImageFilterProperty ("inputBias")]
float Bias { get; set; }
}

[CoreImageFilter]
[iOS (15,0)]
[TV (15,0)]
[Mac (12,0)]
[MacCatalyst (15,0)]
[BaseType (typeof (CIFilter))]
interface CIConvolutionRGB7X7 : CIFilterProtocol {

[CoreImageFilterProperty ("inputWeights")]
CIVector Weights { get; set; }

[CoreImageFilterProperty ("inputBias")]
float Bias { get; set; }
}

[CoreImageFilter]
[iOS (15,0)]
[TV (15,0)]
[Mac (12,0)]
[MacCatalyst (15,0)]
[BaseType (typeof (CIFilter))]
interface CIConvolutionRGB9Horizontal : CIFilterProtocol {

[CoreImageFilterProperty ("inputWeights")]
CIVector Weights { get; set; }

[CoreImageFilterProperty ("inputBias")]
float Bias { get; set; }
}

[CoreImageFilter]
[iOS (15,0)]
[TV (15,0)]
[Mac (12,0)]
[MacCatalyst (15,0)]
[BaseType (typeof (CIFilter))]
interface CIConvolutionRGB9Vertical : CIFilterProtocol {

[CoreImageFilterProperty ("inputWeights")]
CIVector Weights { get; set; }

[CoreImageFilterProperty ("inputBias")]
float Bias { get; set; }
}

[CoreImageFilter]
[iOS (15,0)]
[TV (15,0)]
[Mac (12,0)]
[MacCatalyst (15,0)]
[BaseType (typeof (CIFilter))]
interface CILinearLightBlendMode : CIFilterProtocol {

[CoreImageFilterProperty ("inputBackgroundImage")]
CIImage BackgroundImage { get; set; }
}

[CoreImageFilter]
[iOS (15,0)]
[TV (15,0)]
[Mac (12,0)]
[MacCatalyst (15,0)]
[BaseType (typeof (CIFilter))]
interface CIPersonSegmentation : CIFilterProtocol {

[CoreImageFilterProperty ("inputQualityLevel")]
// 0 == accurate, 1 == balanced, 2 == fast
int QualityLevel { get; set; }
}

[CoreImageFilter]
[iOS (15,0)]
[TV (15,0)]
[Mac (12,0)]
[MacCatalyst (15,0)]
[BaseType (typeof (CIFilter))]
interface CIVividLightBlendMode : CIFilterProtocol {

[CoreImageFilterProperty ("inputBackgroundImage")]
CIImage BackgroundImage { get; set; }
}
#endregion
}
Loading

7 comments on commit 0921ae4

@vs-mobiletools-engineering-service2
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

❌ [CI Build] Tests failed on Build ❌

Tests failed on Build.

API diff

✅ API Diff from stable

View API diff

Packages generated

View packages

Test results

2 tests failed, 219 tests passed.

Failed tests

  • monotouch-test/Mac Catalyst/Debug [dotnet]: Failed (Tests run: 2621 Passed: 2461 Inconclusive: 32 Failed: 1 Ignored: 159)
  • introspection/watchOS 32-bits - simulator/Debug (watchOS 5.0): Failed

Pipeline on Agent XAMBOT-1023.BigSur'
Bump to Xcode 13 beta 1. (#11861)

@vs-mobiletools-engineering-service2
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

❌ Tests failed on macOS Mac Catalina (10.15) ❌

Tests failed on Mac Catalina (10.15).

Failed tests are:

  • introspection

Pipeline on Agent
Bump to Xcode 13 beta 1. (#11861)

@vs-mobiletools-engineering-service2
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Tests passed on macOS Mac Mojave (10.14) ✅

Tests passed

All tests on macOS X Mac Mojave (10.14) passed.

Pipeline on Agent
Bump to Xcode 13 beta 1. (#11861)

@vs-mobiletools-engineering-service2
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Tests passed on macOS Mac High Sierra (10.13) ✅

Tests passed

All tests on macOS X Mac High Sierra (10.13) passed.

Pipeline on Agent
Bump to Xcode 13 beta 1. (#11861)

@vs-mobiletools-engineering-service2
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Tests were not ran (VSTS: device tests tvOS). ⚠️

Results were skipped for this run due to provisioning problems Azure Devops. Please contact the bot administrator.

Pipeline on Agent
Bump to Xcode 13 beta 1. (#11861)

@vs-mobiletools-engineering-service2
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Tests were not ran (VSTS: device tests iOS). ⚠️

Results were skipped for this run due to provisioning problems Azure Devops. Please contact the bot administrator.

Pipeline on Agent
Bump to Xcode 13 beta 1. (#11861)

@vs-mobiletools-engineering-service2
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Tests were not ran (VSTS: device tests iOS32b). ⚠️

Results were skipped for this run due to provisioning problems Azure Devops. Please contact the bot administrator.

Pipeline on Agent
Bump to Xcode 13 beta 1. (#11861)

Please sign in to comment.