Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[UIKit] Add support for Xcode 14 up to beta 5. #15694

Merged
merged 16 commits into from
Aug 27, 2022

Conversation

mandel-macaque
Copy link
Member

No description provided.

@mandel-macaque mandel-macaque added the notes-mention Deserves a mention in release notes label Aug 18, 2022
@mandel-macaque mandel-macaque added this to the xcode14 milestone Aug 18, 2022
src/UIKit/UIEnums.cs Show resolved Hide resolved
@@ -330,11 +330,11 @@
!missing-null-allowed! 'UIKit.UIWindow UIKit.UIView::get_Window()' is missing an [NullAllowed] on return type

## not available on tvOS (iOS 14+ only)
Copy link
Member

Choose a reason for hiding this comment

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

This comment is commenting about nothing now

src/xkit.cs Outdated Show resolved Hide resolved
src/xkit.cs Outdated Show resolved Hide resolved
src/xkit.cs Outdated Show resolved Hide resolved
src/uikit.cs Outdated Show resolved Hide resolved
src/uikit.cs Outdated Show resolved Hide resolved
src/uikit.cs Outdated Show resolved Hide resolved
src/uikit.cs Outdated Show resolved Hide resolved
src/uikit.cs Outdated Show resolved Hide resolved
@@ -779,6 +779,10 @@ public enum UIDataDetectorType : ulong {
FlightNumber = 1 << 5,
[iOS (10,0)]
LookupSuggestion = 1 << 6,
[NoWatch, NoTV, iOS (16,0), MacCatalyst (16,0)]
Money = 1uL << 7,
Copy link
Contributor

Choose a reason for hiding this comment

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

minor - either use 1 << 7 here to be consistent with all the others or change the others to be 1uL << n. I would personally do the former since the backing type is ulong so the uL is redundant.

Copy link
Contributor

@tj-devel709 tj-devel709 left a comment

Choose a reason for hiding this comment

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

Great work! Left some suggestions :)

src/UIKit/UIEnums.cs Show resolved Hide resolved
src/UIKit/UIEnums.cs Outdated Show resolved Hide resolved
src/uikit.cs Show resolved Hide resolved
src/uikit.cs Show resolved Hide resolved
src/uikit.cs Outdated Show resolved Hide resolved
src/uikit.cs Outdated Show resolved Hide resolved
src/uikit.cs Outdated Show resolved Hide resolved
src/uikit.cs Outdated Show resolved Hide resolved
src/xkit.cs Outdated Show resolved Hide resolved
src/xkit.cs Show resolved Hide resolved
Copy link
Contributor

@stephen-hawley stephen-hawley left a comment

Choose a reason for hiding this comment

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

That was a Herculean task. Nice.

@@ -2900,10 +3091,12 @@ interface UIContextMenuInteractionDelegate {
[return: NullAllowed]
UIContextMenuConfiguration GetConfigurationForMenu (UIContextMenuInteraction interaction, CGPoint location);

[Deprecated (PlatformName.iOS, 16, 0)]
Copy link
Contributor

Choose a reason for hiding this comment

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

Should there be a message for this? I don't know our typical policy for this. Personally, I view deprecation as either a detour sign (what's my alternative?) or an apology.

Copy link
Member Author

Choose a reason for hiding this comment

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

There should, but we do not know the reason, so I can only say it was deprecated by apple.

[Watch (9,0), TV (16,0), MacCatalyst (16,0), iOS (16,0)]
[Static]
[Export ("configurationPreferringMonochrome")]
UIImageSymbolConfiguration GetConfigurationPreferringMonochrome ();
Copy link
Contributor

Choose a reason for hiding this comment

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

Should this be a property instead of a method? It takes no parameters and returns a single value...

Copy link
Member Author

Choose a reason for hiding this comment

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

I don't know, let me check with the rest of the API what is what we usually done. Is better to be consistent.

@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.

src/uikit.cs Outdated Show resolved Hide resolved
mandel-macaque and others added 3 commits August 18, 2022 11:47
Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>
Co-authored-by: TJ Lambert <50846373+tj-devel709@users.noreply.github.com>
@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.

src/uikit.cs Outdated Show resolved Hide resolved
src/uikit.cs Outdated Show resolved Hide resolved
src/uikit.cs Outdated Show resolved Hide resolved
// TODO: Enable when Foundation return type is bound
// [Export ("difference")]
// NSOrderedCollectionDifference<ItemIdentifierType> Difference { get; }
#if false // https://github.com/xamarin/xamarin-macios/issues/15577
Copy link
Member

Choose a reason for hiding this comment

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

👍

src/uikit.cs Outdated Show resolved Hide resolved
src/uikit.cs Outdated
string ReplacementText { get; set; }

[NullAllowed, Export ("optionsMenuProvider", ArgumentSemantic.Copy)]
Func<NSArray<UIMenuElement>, UIMenu> OptionsMenuProvider { get; set; }
Copy link
Member

Choose a reason for hiding this comment

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

Maybe use this instead of the func? to avoid the NSArray

delegate UIMenu OptionsMenuProviderHandler (UIMenuElement [] elements);

@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.

@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.

Also we need to use named parameters so the C# overload resolution
actually resolves the right constructor to call when using our convenience
ctor.
@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.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2
Copy link
Collaborator

✅ API diff for current PR / commit

Legacy Xamarin (No breaking changes)
.NET (No breaking changes)

✅ API diff vs stable

Legacy Xamarin (No breaking changes)
.NET (No breaking changes)
Legacy Xamarin (stable) vs .NET

ℹ️ Generator diff

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

Pipeline on Agent
Hash: f7494ac827bcc466a863f7a0c532d76ba8a6a21a [PR build]

@vs-mobiletools-engineering-service2
Copy link
Collaborator

💻 [PR Build] Tests on macOS Mac Catalina (10.15) passed 💻

All tests on macOS Mac Catalina (10.15) passed.

Pipeline on Agent
Hash: f7494ac827bcc466a863f7a0c532d76ba8a6a21a [PR build]

@vs-mobiletools-engineering-service2
Copy link
Collaborator

📚 [PR Build] Artifacts 📚

Packages generated

View packages

Pipeline on Agent XAMBOT-1171.Monterey'
Hash: f7494ac827bcc466a863f7a0c532d76ba8a6a21a [PR build]

@vs-mobiletools-engineering-service2
Copy link
Collaborator

❌ [PR Build] Tests on macOS M1 - Mac Big Sur (11.5) failed ❌

Failed tests are:

  • xammac_tests
  • monotouch-test

Pipeline on Agent
Hash: f7494ac827bcc466a863f7a0c532d76ba8a6a21a [PR build]

@vs-mobiletools-engineering-service2
Copy link
Collaborator

🔥 [CI Build] Test results 🔥

Test results

❌ Tests failed on VSTS: simulator tests

0 tests crashed, 1 tests failed, 227 tests passed.

Failures

❌ introspection tests

1 tests failed, 12 tests passed.
  • introspection/watchOS 32-bits - simulator/Debug (watchOS 6.0): Crashed Known issue: HE0038)

Html Report (VSDrops) Download

Successes

✅ bcl: All 69 tests passed. Html Report (VSDrops) Download
✅ cecil: All 1 tests passed. Html Report (VSDrops) Download
✅ dotnettests: All 1 tests passed. Html Report (VSDrops) Download
✅ fsharp: All 7 tests passed. Html Report (VSDrops) Download
✅ framework: All 8 tests passed. Html Report (VSDrops) Download
✅ generator: All 2 tests passed. Html Report (VSDrops) Download
✅ interdependent_binding_projects: All 7 tests passed. Html Report (VSDrops) Download
✅ install_source: All 1 tests passed. Html Report (VSDrops) Download
✅ linker: All 65 tests passed. Html Report (VSDrops) Download
✅ mac_binding_project: All 1 tests passed. Html Report (VSDrops) Download
✅ mmp: All 2 tests passed. Html Report (VSDrops) Download
✅ mononative: All 12 tests passed. Html Report (VSDrops) Download
✅ monotouch: All 23 tests passed. Html Report (VSDrops) Download
✅ msbuild: All 2 tests passed. Html Report (VSDrops) Download
✅ mtouch: All 1 tests passed. Html Report (VSDrops) Download
✅ xammac: All 3 tests passed. Html Report (VSDrops) Download
✅ xcframework: All 8 tests passed. Html Report (VSDrops) Download
✅ xtro: All 2 tests passed. Html Report (VSDrops) Download

Pipeline on Agent
Hash: [PR build]

@dalexsoto
Copy link
Member

Crashed Known issue: https://github.com/xamarin/maccore/issues/581

@dalexsoto dalexsoto merged commit 8cecb96 into xamarin:xcode14 Aug 27, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
notes-mention Deserves a mention in release notes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants