-
Notifications
You must be signed in to change notification settings - Fork 514
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
[photos][photosui] Xcode 14 Beta 1-4 #15608
Conversation
@@ -413,4 +418,13 @@ public enum PHAccessLevel : long | |||
AddOnly = 1, | |||
ReadWrite = 2, | |||
} | |||
|
|||
[TV (16,0), Mac (13,0), iOS (16,0)] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We are missing the MacCatalyst.
@@ -158,6 +158,10 @@ interface PHAsset { | |||
[TV (15,0), Mac (12,0), iOS (15,0), MacCatalyst (15,0)] | |||
[NullAllowed, Export ("adjustmentFormatIdentifier")] | |||
string AdjustmentFormatIdentifier { get; } | |||
|
|||
[TV (15, 0), Mac (12, 0), iOS (15, 0)] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We are missing MacCatalyst.
@@ -269,6 +273,14 @@ interface PHAssetResource | |||
[Static] | |||
[Export ("assetResourcesForLivePhoto:")] | |||
PHAssetResource[] GetAssetResources (PHLivePhoto livePhoto); | |||
|
|||
[TV (16, 0), Mac (13, 0), iOS (16, 0)] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same.
[Export ("pixelWidth")] | ||
nint PixelWidth { get; } | ||
|
||
[TV (16, 0), Mac (13, 0), iOS (16, 0)] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same.
@@ -584,6 +596,9 @@ interface PHAssetCollection { | |||
[Export ("fetchAssetCollectionsContainingAsset:withType:options:")] | |||
PHFetchResult FetchAssetCollections (PHAsset asset, PHAssetCollectionType type, [NullAllowed] PHFetchOptions options); | |||
|
|||
[Deprecated (PlatformName.iOS, 16, 0, message: "Will be removed in a future release.")] | |||
[Deprecated (PlatformName.TvOS, 16, 0, message: "Will be removed in a future release.")] | |||
[Deprecated (PlatformName.MacOSX, 13, 0, message: "Will be removed in a future release.")] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same, Catalyst.
src/photosui.cs
Outdated
#if NET // Can't apply Deprecated and Obsoleted to same element | ||
[Deprecated (PlatformName.iOS, 13, 0)] | ||
#endif | ||
[Obsoleted (PlatformName.iOS, 14, 0)] // Removed from headers completely |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I though we converted the Obsoleted to Deprecated in the generator, don't we?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We do, and then you get 2 copies of the attribute, one which over writes the second (whoever comes last). I have a test explicitly to detect this.
@@ -524,9 +530,17 @@ interface PHPickerViewController | |||
[Export ("initWithConfiguration:")] | |||
[DesignatedInitializer] | |||
NativeHandle Constructor (PHPickerConfiguration configuration); | |||
|
|||
[NoWatch, NoTV, Mac (13,0), iOS (16,0)] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Catalyst?
[Export ("deselectAssetsWithIdentifiers:")] | ||
void DeselectAssets (string[] identifiers); | ||
|
||
[NoWatch, NoTV, Mac (13,0), iOS (16,0)] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Catalyst.
|
||
[NoWatch, NoTV, Mac (13, 0), iOS (16, 0)] | ||
[Static] | ||
[Export ("depthEffectPhotosFilter")] | ||
PHPickerFilter DepthEffectPhotosFilter { get; } | ||
|
||
[NoWatch, NoTV, Mac (13, 0), iOS (16, 0)] | ||
[Static] | ||
[Export ("burstsFilter")] | ||
PHPickerFilter BurstsFilter { get; } | ||
|
||
[NoWatch, NoTV, Mac (13, 0), iOS (15, 0)] | ||
[Static] | ||
[Export ("panoramasFilter")] | ||
PHPickerFilter PanoramasFilter { get; } | ||
|
||
[NoWatch, NoTV, Mac (13, 0), iOS (15, 0)] | ||
[Static] | ||
[Export ("screenshotsFilter")] | ||
PHPickerFilter ScreenshotsFilter { get; } | ||
|
||
[NoWatch, NoTV, Mac (13, 0), iOS (15, 0)] | ||
[Static] | ||
[Export ("screenRecordingsFilter")] | ||
PHPickerFilter ScreenRecordingsFilter { get; } | ||
|
||
[NoWatch, NoTV, Mac (13, 0), iOS (16, 0)] | ||
[Static] | ||
[Export ("cinematicVideosFilter")] | ||
PHPickerFilter CinematicVideosFilter { get; } | ||
|
||
[NoWatch, NoTV, Mac (13, 0), iOS (15, 0)] | ||
[Static] | ||
[Export ("slomoVideosFilter")] | ||
PHPickerFilter SlomoVideosFilter { get; } | ||
|
||
[NoWatch, NoTV, Mac (13, 0), iOS (15, 0)] | ||
[Static] | ||
[Export ("timelapseVideosFilter")] | ||
PHPickerFilter TimelapseVideosFilter { get; } | ||
|
||
[NoWatch, NoTV, Mac (13,0), iOS (15,0)] | ||
[Static] | ||
[Export ("playbackStyleFilter:")] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Catalyst is missing.
[NoWatch, NoTV, Mac (13,0), iOS (15,0)] | ||
[Static] | ||
[Export ("allFilterMatchingSubfilters:")] | ||
PHPickerFilter GetAllFilterMatchingSubfilters (PHPickerFilter[] subfilters); | ||
|
||
[NoWatch, NoTV, Mac (13,0), iOS (15,0)] | ||
[Static] | ||
[Export ("notFilterOfSubfilter:")] | ||
PHPickerFilter GetNotFilterOfSubfilter (PHPickerFilter subfilter); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
After @mandel-macaque 👍 and Api Diff is green
This comment has been minimized.
This comment has been minimized.
Co-authored-by: Alex Soto <alex@alexsoto.me>
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
src/photosui.cs
Outdated
|
||
[TV (10,0), iOS (9,1), NoMac] | ||
[Export ("livePhotoView:extraMinimumTouchDurationForTouch:withStyle:")] | ||
double ExtraMinimumTouchDuration (PHLivePhotoView livePhotoView, UITouch touch, PHLivePhotoViewPlaybackStyle playbackStyle); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe verb-ify this one
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Suggestions welcome on a verb here. You are providing the extra min touch duration.
ProvideExtraMinimumTouchDuration
was the best I could come up with, but that's a large delta and I didn't love that.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure I understand why GetExtraMinimumTouchDuration
doesn't work?
@@ -0,0 +1,2 @@ | |||
# Removed in Xcode 14 from header | |||
!unknown-type! PHEditingExtensionContext bound |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit missing newline
@@ -0,0 +1,2 @@ | |||
# Removed in Xcode 14 from header | |||
!unknown-type! PHEditingExtensionContext bound |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit missing newline
Co-authored-by: TJ Lambert <50846373+tj-devel709@users.noreply.github.com>
Co-authored-by: TJ Lambert <50846373+tj-devel709@users.noreply.github.com>
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Blocked now on #15659 |
🤞 that'll fix the test failures. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
…5648) - In the [Xcode 14 Photo PR](xamarin#15608) a test is failing with this: ``` ILLINK : error MT2362: The linker step 'Registrar' failed during processing: One or more errors occurred. (The type 'Photos.PHPersistentObjectChangeDetails' (used as a return type in Photos.PHPersistentChange.ChangeDetails) is not available in MacCatalyst 16.0 (it was introduced in MacCatalyst 16.0.0). Please build with a newer MacCatalyst SDK (usually done by using the most recent version of Xcode). [/Users/donblas/Programming/xamarin-macios/tests/dotnet/MySimpleApp/MacCatalyst/MySimpleApp.csproj] ) (The type 'Photos.PHObjectType' (used as a parameter in Photos.PHPersistentChange.ChangeDetails) is not available in MacCatalyst 16.0 (it was introduced in MacCatalyst 16.0.0). Please build with a newer MacCatalyst SDK (usually done by using the most recent version of Xcode). ) (The type 'Photos.PHPersistentChangeFetchResult' (used as a return type in Photos.PHPhotoLibrary.FetchPersistentChanges) is not available in MacCatalyst 16.0 (it was introduced in MacCatalyst 16.0.0). Please build with a newer MacCatalyst SDK (usually done by using the most recent version of Xcode). ) (The type 'Photos.PHPersistentChangeToken' (used as a parameter in Photos.PHPhotoLibrary.FetchPersistentChanges) is not available in MacCatalyst 16.0 (it was introduced in MacCatalyst 16.0.0). Please build with a newer MacCatalyst SDK (usually done by using the most recent version of Xcode). ``` The details of how we fail are written up in [this issue](xamarin#15643) but since sharpie never outputs versions in the form of x.y.z where .z is zero we only hit this with generated attributes. Because of this fact, we can work around it with a generator change. This commit changes how we "imply" attributes from iOS to Catalyst. As a brief reminder, because of historical bindings we assume anything that has iOS and not a Catalyst really means "treat iOS as if it was also Catalyst". This work is done in `AddImpliedCatalyst` and uses `CloneFromOtherPlatform` to make a copy of an attribute, because there is no easy way to say "I want a copy of this, but with this other platform". `CloneFromOtherPlatform` used to always call the 3 version (Major, Minor, Revision) constructor, even when the attribute being cloned only used Major.Minor. However, this caused us to "zero extend" the version with another zero, which triggers this bug, so stop doing that. Uglier code in the generator, but it works better. Co-authored-by: Manuel de la Pena <mandel@microsoft.com>
src/photosui.cs
Outdated
|
||
[TV (10,0), iOS (9,1), NoMac] | ||
[Export ("livePhotoView:extraMinimumTouchDurationForTouch:withStyle:")] | ||
double ExtraMinimumTouchDuration (PHLivePhotoView livePhotoView, UITouch touch, PHLivePhotoViewPlaybackStyle playbackStyle); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure I understand why GetExtraMinimumTouchDuration
doesn't work?
…5659) - In the [Xcode 14 Photo PR](xamarin#15608) a test is failing with this: ``` ILLINK : error MT2362: The linker step 'Registrar' failed during processing: One or more errors occurred. (The type 'Photos.PHPersistentObjectChangeDetails' (used as a return type in Photos.PHPersistentChange.ChangeDetails) is not available in MacCatalyst 16.0 (it was introduced in MacCatalyst 16.0.0). Please build with a newer MacCatalyst SDK (usually done by using the most recent version of Xcode). [/Users/donblas/Programming/xamarin-macios/tests/dotnet/MySimpleApp/MacCatalyst/MySimpleApp.csproj] ) (The type 'Photos.PHObjectType' (used as a parameter in Photos.PHPersistentChange.ChangeDetails) is not available in MacCatalyst 16.0 (it was introduced in MacCatalyst 16.0.0). Please build with a newer MacCatalyst SDK (usually done by using the most recent version of Xcode). ) (The type 'Photos.PHPersistentChangeFetchResult' (used as a return type in Photos.PHPhotoLibrary.FetchPersistentChanges) is not available in MacCatalyst 16.0 (it was introduced in MacCatalyst 16.0.0). Please build with a newer MacCatalyst SDK (usually done by using the most recent version of Xcode). ) (The type 'Photos.PHPersistentChangeToken' (used as a parameter in Photos.PHPhotoLibrary.FetchPersistentChanges) is not available in MacCatalyst 16.0 (it was introduced in MacCatalyst 16.0.0). Please build with a newer MacCatalyst SDK (usually done by using the most recent version of Xcode). ``` The details of how we fail are written up in [this issue](xamarin#15643) but since sharpie never outputs versions in the form of x.y.z where .z is zero we only hit this with generated attributes. Because of this fact, we can work around it with a generator change. This commit changes how we "imply" attributes from iOS to Catalyst. As a brief reminder, because of historical bindings we assume anything that has iOS and not a Catalyst really means "treat iOS as if it was also Catalyst". This work is done in `AddImpliedCatalyst` and uses `CloneFromOtherPlatform` to make a copy of an attribute, because there is no easy way to say "I want a copy of this, but with this other platform". `CloneFromOtherPlatform` used to always call the 3 version (Major, Minor, Revision) constructor, even when the attribute being cloned only used Major.Minor. However, this caused us to "zero extend" the version with another zero, which triggers this bug, so stop doing that. Uglier code in the generator, but it works better. Co-authored-by: Chris Hamons <chris.hamons@xamarin.com>
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
✅ API diff for current PR / commitLegacy Xamarin (No breaking changes).NET (No breaking changes)✅ API diff vs stableLegacy Xamarin (No breaking changes).NET (No breaking changes)ℹ️ Generator diffGenerator Diff: vsdrops (html) vsdrops (raw diff) gist (raw diff) - Please review changes) Pipeline on Agent |
❌ [PR Build] Tests on macOS M1 - Mac Big Sur (11.5) failed ❌Failed tests are:
Pipeline on Agent |
🔥 [CI Build] Test results 🔥Test results❌ Tests failed on VSTS: simulator tests 0 tests crashed, 1 tests failed, 227 tests passed. Failures❌ introspection tests
Html Report (VSDrops) Download Successes✅ bcl: All 69 tests passed. Html Report (VSDrops) Download Pipeline on Agent |
Last failure is just watch. |
No description provided.