From 10b2f36fa565b6cee3325b223213c28409d115a4 Mon Sep 17 00:00:00 2001 From: TJ Lambert <50846373+tj-devel709@users.noreply.github.com> Date: Thu, 1 Jul 2021 18:25:58 -0500 Subject: [PATCH 1/2] [EventKit] Updates for Xcode13 Beta1 (#12022) * initial changes for EventKit Xcode13 Beta1 * adding delegate * fixing delegates * removing NoMacCatalyst from MONOMAC * removing rest of monomac maccatalysts * Apply suggestions from code review Co-authored-by: Alex Soto * there was one more EKVirtualConferenceURLDescriptor Co-authored-by: tj_devel709 Co-authored-by: Manuel de la Pena Co-authored-by: Alex Soto --- src/EventKit/EKEnums.cs | 1 + src/eventkit.cs | 69 ++++++++++++++++++- .../xtro-sharpie/MacCatalyst-EventKit.ignore | 17 +++++ tests/xtro-sharpie/MacCatalyst-EventKit.todo | 28 -------- tests/xtro-sharpie/common-EventKit.ignore | 2 +- tests/xtro-sharpie/iOS-EventKit.todo | 18 ----- tests/xtro-sharpie/macOS-EventKit.todo | 16 ----- tests/xtro-sharpie/watchOS-EventKit.todo | 18 ----- 8 files changed, 87 insertions(+), 82 deletions(-) delete mode 100644 tests/xtro-sharpie/MacCatalyst-EventKit.todo delete mode 100644 tests/xtro-sharpie/iOS-EventKit.todo delete mode 100644 tests/xtro-sharpie/macOS-EventKit.todo delete mode 100644 tests/xtro-sharpie/watchOS-EventKit.todo diff --git a/src/EventKit/EKEnums.cs b/src/EventKit/EKEnums.cs index 3099e0e08261..00a450536186 100644 --- a/src/EventKit/EKEnums.cs +++ b/src/EventKit/EKEnums.cs @@ -80,6 +80,7 @@ public enum EKErrorCode : long { SourceMismatch, NotificationCollectionMismatch, NotificationSavedWithoutCollection, + ReminderAlarmContainsEmailOrUrl, } // untyped enum -> EKTypes.h diff --git a/src/eventkit.cs b/src/eventkit.cs index fdc6eefbc839..5e1adbf81c3c 100644 --- a/src/eventkit.cs +++ b/src/eventkit.cs @@ -491,7 +491,7 @@ IntPtr Constructor (EKRecurrenceFrequency type, nint interval, [NullAllowed] EKR [BaseType (typeof (NSObject))] interface EKEventStore { - [NoiOS, Mac (10,11), NoWatch] + [NoiOS, Mac (10,11), NoWatch, NoMacCatalyst] [Export ("initWithSources:")] IntPtr Constructor (EKSource[] sources); @@ -657,4 +657,71 @@ interface EKReminder { [Static] EKReminder Create (EKEventStore eventStore); } + + [Mac (12,0), iOS (15,0), Watch (8,0), MacCatalyst (15,0), NoTV] + [BaseType (typeof (NSObject))] + [DisableDefaultCtor] + interface EKVirtualConferenceDescriptor + { + [Export ("initWithTitle:URLDescriptors:conferenceDetails:")] + [DesignatedInitializer] + IntPtr Constructor ([NullAllowed] string title, EKVirtualConferenceUrlDescriptor[] urlDescriptors, [NullAllowed] string conferenceDetails); + + [NullAllowed, Export ("title")] + string Title { get; } + + [Export ("URLDescriptors", ArgumentSemantic.Copy)] + EKVirtualConferenceUrlDescriptor[] UrlDescriptors { get; } + + [NullAllowed, Export ("conferenceDetails")] + string ConferenceDetails { get; } + } + + delegate void VirtualConferenceRoomTypeHandler (NSArray virtualConferenceRoomTypeDescriptor, NSError error); + delegate void VirtualConferenceHandler (EKVirtualConferenceDescriptor virtualConferenceDescriptor, NSError error); + + [Mac (12,0), iOS (15,0), Watch (8,0), MacCatalyst (15,0), NoTV] + [BaseType (typeof (NSObject))] + interface EKVirtualConferenceProvider : NSExtensionRequestHandling + { + [Async] + [Export ("fetchAvailableRoomTypesWithCompletionHandler:")] + void FetchAvailableRoomTypes (VirtualConferenceRoomTypeHandler handler); + + [Async] + [Export ("fetchVirtualConferenceForIdentifier:completionHandler:")] + void FetchVirtualConference (string identifier, VirtualConferenceHandler handler); + } + + [Mac (12,0), iOS (15,0), Watch (8,0), MacCatalyst (15,0), NoTV] + [BaseType (typeof (NSObject))] + [DisableDefaultCtor] + interface EKVirtualConferenceRoomTypeDescriptor + { + [Export ("initWithTitle:identifier:")] + [DesignatedInitializer] + IntPtr Constructor (string title, string identifier); + + [Export ("title")] + string Title { get; } + + [Export ("identifier")] + string Identifier { get; } + } + + [Mac (12,0), iOS (15,0), Watch (8,0), MacCatalyst (15,0), NoTV] + [BaseType (typeof (NSObject), Name = "EKVirtualConferenceURLDescriptor")] + [DisableDefaultCtor] + interface EKVirtualConferenceUrlDescriptor + { + [Export ("initWithTitle:URL:")] + [DesignatedInitializer] + IntPtr Constructor ([NullAllowed] string title, NSUrl url); + + [NullAllowed, Export ("title")] + string Title { get; } + + [Export ("URL", ArgumentSemantic.Copy)] + NSUrl Url { get; } + } } diff --git a/tests/xtro-sharpie/MacCatalyst-EventKit.ignore b/tests/xtro-sharpie/MacCatalyst-EventKit.ignore index de315b32c603..0b639aef8717 100644 --- a/tests/xtro-sharpie/MacCatalyst-EventKit.ignore +++ b/tests/xtro-sharpie/MacCatalyst-EventKit.ignore @@ -1,2 +1,19 @@ # It's in the documentation and headers, but throws a "+[EKCalendar calendarWithEventStore:]: unrecognized selector" exception at runtime !missing-selector! +EKCalendar::calendarWithEventStore: not bound + +# This is only used as an output in a manual binding so it doesn't need the availability +!missing-enum! EKAlarmType not bound + +# These say the class supports MacCatalyst, but the selectors individually do not +!missing-selector! EKEventStore::initWithSources: not bound +!missing-selector! EKAlarm::emailAddress not bound +!missing-selector! EKAlarm::setEmailAddress: not bound +!missing-selector! EKAlarm::setSoundName: not bound +!missing-selector! EKAlarm::setUrl: not bound +!missing-selector! EKAlarm::soundName not bound +!missing-selector! EKAlarm::type not bound +!missing-selector! EKAlarm::url not bound + +# These two are deprecated +!missing-selector! EKEvent::birthdayPersonUniqueID not bound +!missing-selector! EKEventStore::initWithAccessToEntityTypes: not bound diff --git a/tests/xtro-sharpie/MacCatalyst-EventKit.todo b/tests/xtro-sharpie/MacCatalyst-EventKit.todo deleted file mode 100644 index aff66f1e5c62..000000000000 --- a/tests/xtro-sharpie/MacCatalyst-EventKit.todo +++ /dev/null @@ -1,28 +0,0 @@ -!missing-enum! EKAlarmType not bound -!missing-selector! EKAlarm::emailAddress not bound -!missing-selector! EKAlarm::setEmailAddress: not bound -!missing-selector! EKAlarm::setSoundName: not bound -!missing-selector! EKAlarm::setUrl: not bound -!missing-selector! EKAlarm::soundName not bound -!missing-selector! EKAlarm::type not bound -!missing-selector! EKAlarm::url not bound -!missing-selector! EKEvent::birthdayPersonUniqueID not bound -!missing-selector! EKEventStore::initWithAccessToEntityTypes: not bound -!missing-selector! EKEventStore::initWithSources: not bound -## appended from unclassified file -!missing-selector! EKVirtualConferenceDescriptor::conferenceDetails not bound -!missing-selector! EKVirtualConferenceDescriptor::initWithTitle:URLDescriptors:conferenceDetails: not bound -!missing-selector! EKVirtualConferenceDescriptor::title not bound -!missing-selector! EKVirtualConferenceDescriptor::URLDescriptors not bound -!missing-selector! EKVirtualConferenceProvider::fetchAvailableRoomTypesWithCompletionHandler: not bound -!missing-selector! EKVirtualConferenceProvider::fetchVirtualConferenceForIdentifier:completionHandler: not bound -!missing-selector! EKVirtualConferenceRoomTypeDescriptor::identifier not bound -!missing-selector! EKVirtualConferenceRoomTypeDescriptor::initWithTitle:identifier: not bound -!missing-selector! EKVirtualConferenceRoomTypeDescriptor::title not bound -!missing-selector! EKVirtualConferenceURLDescriptor::initWithTitle:URL: not bound -!missing-selector! EKVirtualConferenceURLDescriptor::title not bound -!missing-selector! EKVirtualConferenceURLDescriptor::URL not bound -!missing-type! EKVirtualConferenceDescriptor not bound -!missing-type! EKVirtualConferenceProvider not bound -!missing-type! EKVirtualConferenceRoomTypeDescriptor not bound -!missing-type! EKVirtualConferenceURLDescriptor not bound diff --git a/tests/xtro-sharpie/common-EventKit.ignore b/tests/xtro-sharpie/common-EventKit.ignore index 7ec3833bbd66..71563e436c3c 100644 --- a/tests/xtro-sharpie/common-EventKit.ignore +++ b/tests/xtro-sharpie/common-EventKit.ignore @@ -1,4 +1,4 @@ ## extra value so the enum is easier to create !extra-enum-value! Managed value 0 for EKWeekday.NotSet not found in native headers ## `Last` value can change overtime - which would be a breaking change for us -!missing-enum-value! EKErrorCode native value EKErrorLast = 36 not bound +!missing-enum-value! EKErrorCode native value EKErrorLast = 37 not bound diff --git a/tests/xtro-sharpie/iOS-EventKit.todo b/tests/xtro-sharpie/iOS-EventKit.todo deleted file mode 100644 index 5c6943dd8aaf..000000000000 --- a/tests/xtro-sharpie/iOS-EventKit.todo +++ /dev/null @@ -1,18 +0,0 @@ -!missing-enum-value! EKErrorCode native value EKErrorLast = 37 not bound -!missing-enum-value! EKErrorCode native value EKErrorReminderAlarmContainsEmailOrUrl = 36 not bound -!missing-selector! EKVirtualConferenceDescriptor::conferenceDetails not bound -!missing-selector! EKVirtualConferenceDescriptor::initWithTitle:URLDescriptors:conferenceDetails: not bound -!missing-selector! EKVirtualConferenceDescriptor::title not bound -!missing-selector! EKVirtualConferenceDescriptor::URLDescriptors not bound -!missing-selector! EKVirtualConferenceProvider::fetchAvailableRoomTypesWithCompletionHandler: not bound -!missing-selector! EKVirtualConferenceProvider::fetchVirtualConferenceForIdentifier:completionHandler: not bound -!missing-selector! EKVirtualConferenceRoomTypeDescriptor::identifier not bound -!missing-selector! EKVirtualConferenceRoomTypeDescriptor::initWithTitle:identifier: not bound -!missing-selector! EKVirtualConferenceRoomTypeDescriptor::title not bound -!missing-selector! EKVirtualConferenceURLDescriptor::initWithTitle:URL: not bound -!missing-selector! EKVirtualConferenceURLDescriptor::title not bound -!missing-selector! EKVirtualConferenceURLDescriptor::URL not bound -!missing-type! EKVirtualConferenceDescriptor not bound -!missing-type! EKVirtualConferenceProvider not bound -!missing-type! EKVirtualConferenceRoomTypeDescriptor not bound -!missing-type! EKVirtualConferenceURLDescriptor not bound diff --git a/tests/xtro-sharpie/macOS-EventKit.todo b/tests/xtro-sharpie/macOS-EventKit.todo deleted file mode 100644 index dfa939d25c29..000000000000 --- a/tests/xtro-sharpie/macOS-EventKit.todo +++ /dev/null @@ -1,16 +0,0 @@ -!missing-selector! EKVirtualConferenceDescriptor::conferenceDetails not bound -!missing-selector! EKVirtualConferenceDescriptor::initWithTitle:URLDescriptors:conferenceDetails: not bound -!missing-selector! EKVirtualConferenceDescriptor::title not bound -!missing-selector! EKVirtualConferenceDescriptor::URLDescriptors not bound -!missing-selector! EKVirtualConferenceProvider::fetchAvailableRoomTypesWithCompletionHandler: not bound -!missing-selector! EKVirtualConferenceProvider::fetchVirtualConferenceForIdentifier:completionHandler: not bound -!missing-selector! EKVirtualConferenceRoomTypeDescriptor::identifier not bound -!missing-selector! EKVirtualConferenceRoomTypeDescriptor::initWithTitle:identifier: not bound -!missing-selector! EKVirtualConferenceRoomTypeDescriptor::title not bound -!missing-selector! EKVirtualConferenceURLDescriptor::initWithTitle:URL: not bound -!missing-selector! EKVirtualConferenceURLDescriptor::title not bound -!missing-selector! EKVirtualConferenceURLDescriptor::URL not bound -!missing-type! EKVirtualConferenceDescriptor not bound -!missing-type! EKVirtualConferenceProvider not bound -!missing-type! EKVirtualConferenceRoomTypeDescriptor not bound -!missing-type! EKVirtualConferenceURLDescriptor not bound diff --git a/tests/xtro-sharpie/watchOS-EventKit.todo b/tests/xtro-sharpie/watchOS-EventKit.todo deleted file mode 100644 index 5c6943dd8aaf..000000000000 --- a/tests/xtro-sharpie/watchOS-EventKit.todo +++ /dev/null @@ -1,18 +0,0 @@ -!missing-enum-value! EKErrorCode native value EKErrorLast = 37 not bound -!missing-enum-value! EKErrorCode native value EKErrorReminderAlarmContainsEmailOrUrl = 36 not bound -!missing-selector! EKVirtualConferenceDescriptor::conferenceDetails not bound -!missing-selector! EKVirtualConferenceDescriptor::initWithTitle:URLDescriptors:conferenceDetails: not bound -!missing-selector! EKVirtualConferenceDescriptor::title not bound -!missing-selector! EKVirtualConferenceDescriptor::URLDescriptors not bound -!missing-selector! EKVirtualConferenceProvider::fetchAvailableRoomTypesWithCompletionHandler: not bound -!missing-selector! EKVirtualConferenceProvider::fetchVirtualConferenceForIdentifier:completionHandler: not bound -!missing-selector! EKVirtualConferenceRoomTypeDescriptor::identifier not bound -!missing-selector! EKVirtualConferenceRoomTypeDescriptor::initWithTitle:identifier: not bound -!missing-selector! EKVirtualConferenceRoomTypeDescriptor::title not bound -!missing-selector! EKVirtualConferenceURLDescriptor::initWithTitle:URL: not bound -!missing-selector! EKVirtualConferenceURLDescriptor::title not bound -!missing-selector! EKVirtualConferenceURLDescriptor::URL not bound -!missing-type! EKVirtualConferenceDescriptor not bound -!missing-type! EKVirtualConferenceProvider not bound -!missing-type! EKVirtualConferenceRoomTypeDescriptor not bound -!missing-type! EKVirtualConferenceURLDescriptor not bound From 3b6f059863e2435422769cbe2fa11c41cd095ff8 Mon Sep 17 00:00:00 2001 From: TJ Lambert <50846373+tj-devel709@users.noreply.github.com> Date: Fri, 2 Jul 2021 20:59:32 -0500 Subject: [PATCH 2/2] [CI] Reverting the Cron job (#12071) * Changing Cron Job * reverting the cron job Co-authored-by: tj_devel709 --- tools/devops/automation/build-pipeline.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/devops/automation/build-pipeline.yml b/tools/devops/automation/build-pipeline.yml index 0d2b276e0492..eb281cbd99ac 100644 --- a/tools/devops/automation/build-pipeline.yml +++ b/tools/devops/automation/build-pipeline.yml @@ -207,7 +207,7 @@ schedules: # the translations team wants a green build, we can do that on sundays even if # the code did not change and without the device tests. -- cron: "0 18 * * 1-5,0" +- cron: "0 12 * * 0" displayName: Weekly Translations build (Sunday @ noon) branches: include: