pyobjc-framework-EventKit 12.2.1__tar.gz → 13.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/Lib/EventKit/__init__.py +2 -2
  2. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/Lib/EventKit/_metadata.py +1 -3
  3. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/Lib/pyobjc_framework_EventKit.egg-info/PKG-INFO +5 -5
  4. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/Lib/pyobjc_framework_EventKit.egg-info/SOURCES.txt +2 -3
  5. pyobjc_framework_eventkit-13.0/Lib/pyobjc_framework_EventKit.egg-info/pyobjc-build-info.txt +3 -0
  6. pyobjc_framework_eventkit-13.0/Lib/pyobjc_framework_EventKit.egg-info/requires.txt +2 -0
  7. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/PKG-INFO +5 -5
  8. pyobjc_framework_eventkit-13.0/PyObjCTest/test_ekcalendar.py +10 -0
  9. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/PyObjCTest/test_ekcalendaritem.py +2 -7
  10. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/PyObjCTest/test_ekerror.py +6 -8
  11. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/PyObjCTest/test_ekevent.py +8 -16
  12. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/PyObjCTest/test_ekeventstore.py +7 -15
  13. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/PyObjCTest/test_ekobject.py +2 -7
  14. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/PyObjCTest/test_ekparticipant.py +8 -11
  15. pyobjc_framework_eventkit-13.0/PyObjCTest/test_ekrecurrencerule.py +27 -0
  16. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/PyObjCTest/test_ekreminder.py +7 -11
  17. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/PyObjCTest/test_eksource.py +3 -6
  18. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/PyObjCTest/test_ektypes.py +18 -23
  19. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/PyObjCTest/test_ekvirtualconferenceprovider.py +1 -1
  20. pyobjc_framework_eventkit-13.0/metadata/EventKit.fwinfo +94 -0
  21. pyobjc_framework_eventkit-12.2.1/metadata/raw/arm64-26.5.fwinfo → pyobjc_framework_eventkit-13.0/metadata/raw/arm64-27.fwinfo +2 -3
  22. pyobjc_framework_eventkit-12.2.1/metadata/raw/x86_64-26.5.fwinfo → pyobjc_framework_eventkit-13.0/metadata/raw/x86_64-27.fwinfo +2 -3
  23. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/pyobjc_setup.py +7 -7
  24. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/setup.py +1 -1
  25. pyobjc_framework_eventkit-12.2.1/Lib/pyobjc_framework_EventKit.egg-info/pyobjc-build-info.txt +0 -3
  26. pyobjc_framework_eventkit-12.2.1/Lib/pyobjc_framework_EventKit.egg-info/requires.txt +0 -2
  27. pyobjc_framework_eventkit-12.2.1/PyObjCTest/test_ekalarm.py +0 -19
  28. pyobjc_framework_eventkit-12.2.1/PyObjCTest/test_ekcalendar.py +0 -29
  29. pyobjc_framework_eventkit-12.2.1/PyObjCTest/test_ekrecurrencerule.py +0 -23
  30. pyobjc_framework_eventkit-12.2.1/metadata/EventKit.fwinfo +0 -180
  31. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/LICENSE.txt +0 -0
  32. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/Lib/pyobjc_framework_EventKit.egg-info/dependency_links.txt +0 -0
  33. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/Lib/pyobjc_framework_EventKit.egg-info/not-zip-safe +0 -0
  34. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/Lib/pyobjc_framework_EventKit.egg-info/top_level.txt +0 -0
  35. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/MANIFEST.in +0 -0
  36. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/PyObjCTest/__init__.py +0 -0
  37. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/PyObjCTest/test_eventkit.py +0 -0
  38. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/README.txt +0 -0
  39. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/metadata/metadata.ini +0 -0
  40. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/pyproject.toml +0 -0
  41. {pyobjc_framework_eventkit-12.2.1 → pyobjc_framework_eventkit-13.0}/setup.cfg +0 -0
@@ -13,10 +13,10 @@ def _setup():
13
13
  import objc
14
14
  from . import _metadata
15
15
 
16
- if objc.macos_available(13, 0):
16
+ if objc.macos_available(13, 0): # pragma: no branch
17
17
  identifier = "com.apple.eventkit"
18
18
  else:
19
- identifier = "com.apple.ical.EventKit"
19
+ identifier = "com.apple.ical.EventKit" # pragma: no cover
20
20
 
21
21
  dir_func, getattr_func = objc.createFrameworkDirAndGetattr(
22
22
  name="EventKit",
@@ -1,7 +1,5 @@
1
1
  # This file is generated by objective.metadata
2
2
  #
3
- # Last update: Thu May 28 21:46:57 2026
4
- #
5
3
  # flake8: noqa
6
4
 
7
5
  import objc, sys
@@ -31,7 +29,7 @@ else:
31
29
 
32
30
  misc = {}
33
31
  constants = """$EKErrorDomain$EKEventStoreChangedNotification$"""
34
- enums = """$EKAlarmProximityEnter@1$EKAlarmProximityLeave@2$EKAlarmProximityNone@0$EKAlarmTypeAudio@1$EKAlarmTypeDisplay@0$EKAlarmTypeEmail@3$EKAlarmTypeProcedure@2$EKAuthorizationStatusAuthorized@3$EKAuthorizationStatusDenied@2$EKAuthorizationStatusFullAccess@3$EKAuthorizationStatusNotDetermined@0$EKAuthorizationStatusRestricted@1$EKAuthorizationStatusWriteOnly@4$EKCalendarEventAvailabilityBusy@1$EKCalendarEventAvailabilityFree@2$EKCalendarEventAvailabilityNone@0$EKCalendarEventAvailabilityTentative@4$EKCalendarEventAvailabilityUnavailable@8$EKCalendarTypeBirthday@4$EKCalendarTypeCalDAV@1$EKCalendarTypeExchange@2$EKCalendarTypeLocal@0$EKCalendarTypeSubscription@3$EKEntityMaskEvent@1$EKEntityMaskReminder@2$EKEntityTypeEvent@0$EKEntityTypeReminder@1$EKErrorAlarmGreaterThanRecurrence@8$EKErrorAlarmProximityNotSupported@21$EKErrorCalendarDoesNotAllowEvents@22$EKErrorCalendarDoesNotAllowReminders@23$EKErrorCalendarHasNoSource@14$EKErrorCalendarIsImmutable@16$EKErrorCalendarReadOnly@6$EKErrorCalendarSourceCannotBeModified@15$EKErrorDatesInverted@4$EKErrorDurationGreaterThanRecurrence@7$EKErrorEventNotMutable@0$EKErrorEventStoreNotAuthorized@29$EKErrorInternalFailure@5$EKErrorInvalidEntityType@27$EKErrorInvalidInviteReplyCalendar@31$EKErrorInvalidSpan@13$EKErrorInvitesCannotBeMoved@12$EKErrorLast@31$EKErrorNoCalendar@1$EKErrorNoEndDate@3$EKErrorNoStartDate@2$EKErrorNotificationCollectionMismatch@34$EKErrorNotificationSavedWithoutCollection@35$EKErrorNotificationsCollectionFlagNotSet@32$EKErrorOSNotSupported@30$EKErrorObjectBelongsToDifferentStore@11$EKErrorPriorityIsInvalid@26$EKErrorProcedureAlarmsNotMutable@28$EKErrorRecurringReminderRequiresDueDate@18$EKErrorReminderAlarmContainsEmailOrUrl@36$EKErrorReminderLocationsNotSupported@20$EKErrorSourceDoesNotAllowCalendarAddDelete@17$EKErrorSourceDoesNotAllowEvents@25$EKErrorSourceDoesNotAllowReminders@24$EKErrorSourceMismatch@33$EKErrorStartDateCollidesWithOtherOccurrence@10$EKErrorStartDateTooFarInFuture@9$EKErrorStructuredLocationsNotSupported@19$EKEventAvailabilityBusy@0$EKEventAvailabilityFree@1$EKEventAvailabilityNotSupported@-1$EKEventAvailabilityTentative@2$EKEventAvailabilityUnavailable@3$EKEventStatusCanceled@3$EKEventStatusConfirmed@1$EKEventStatusNone@0$EKEventStatusTentative@2$EKFriday@6$EKMonday@2$EKParticipantRoleChair@3$EKParticipantRoleNonParticipant@4$EKParticipantRoleOptional@2$EKParticipantRoleRequired@1$EKParticipantRoleUnknown@0$EKParticipantScheduleStatusCannotDeliver@7$EKParticipantScheduleStatusDelivered@3$EKParticipantScheduleStatusDeliveryFailed@6$EKParticipantScheduleStatusNoPrivileges@5$EKParticipantScheduleStatusNone@0$EKParticipantScheduleStatusPending@1$EKParticipantScheduleStatusRecipientNotAllowed@8$EKParticipantScheduleStatusRecipientNotRecognized@4$EKParticipantScheduleStatusSent@2$EKParticipantStatusAccepted@2$EKParticipantStatusCompleted@6$EKParticipantStatusDeclined@3$EKParticipantStatusDelegated@5$EKParticipantStatusInProcess@7$EKParticipantStatusPending@1$EKParticipantStatusTentative@4$EKParticipantStatusUnknown@0$EKParticipantTypeGroup@4$EKParticipantTypePerson@1$EKParticipantTypeResource@3$EKParticipantTypeRoom@2$EKParticipantTypeUnknown@0$EKRecurrenceFrequencyDaily@0$EKRecurrenceFrequencyMonthly@2$EKRecurrenceFrequencyWeekly@1$EKRecurrenceFrequencyYearly@3$EKReminderPriorityHigh@1$EKReminderPriorityLow@9$EKReminderPriorityMedium@5$EKReminderPriorityNone@0$EKSaturday@7$EKSourceTypeBirthdays@5$EKSourceTypeCalDAV@2$EKSourceTypeExchange@1$EKSourceTypeLocal@0$EKSourceTypeMobileMe@3$EKSourceTypeSubscribed@4$EKSpanFutureEvents@1$EKSpanThisEvent@0$EKSunday@1$EKThursday@5$EKTuesday@3$EKWednesday@4$EKWeekdayFriday@6$EKWeekdayMonday@2$EKWeekdaySaturday@7$EKWeekdaySunday@1$EKWeekdayThursday@5$EKWeekdayTuesday@3$EKWeekdayWednesday@4$"""
32
+ enums = """$EKAlarmProximityEnter@1$EKAlarmProximityLeave@2$EKAlarmProximityNone@0$EKAlarmTypeAudio@1$EKAlarmTypeDisplay@0$EKAlarmTypeEmail@3$EKAlarmTypeProcedure@2$EKAuthorizationStatusAuthorized@3$EKAuthorizationStatusDenied@2$EKAuthorizationStatusFullAccess@3$EKAuthorizationStatusNotDetermined@0$EKAuthorizationStatusRestricted@1$EKAuthorizationStatusWriteOnly@4$EKCalendarEventAvailabilityBusy@1$EKCalendarEventAvailabilityFree@2$EKCalendarEventAvailabilityNone@0$EKCalendarEventAvailabilityTentative@4$EKCalendarEventAvailabilityUnavailable@8$EKCalendarTypeBirthday@4$EKCalendarTypeCalDAV@1$EKCalendarTypeExchange@2$EKCalendarTypeLocal@0$EKCalendarTypeSubscription@3$EKEntityMaskEvent@1$EKEntityMaskReminder@2$EKEntityTypeEvent@0$EKEntityTypeReminder@1$EKErrorAlarmGreaterThanRecurrence@8$EKErrorAlarmProximityNotSupported@21$EKErrorCalendarDoesNotAllowEvents@22$EKErrorCalendarDoesNotAllowReminders@23$EKErrorCalendarHasNoSource@14$EKErrorCalendarIsImmutable@16$EKErrorCalendarReadOnly@6$EKErrorCalendarSourceCannotBeModified@15$EKErrorDatesInverted@4$EKErrorDurationGreaterThanRecurrence@7$EKErrorEventNotMutable@0$EKErrorEventStoreNotAuthorized@29$EKErrorInternalFailure@5$EKErrorInvalidEntityType@27$EKErrorInvalidInviteReplyCalendar@31$EKErrorInvalidSpan@13$EKErrorInvitesCannotBeMoved@12$EKErrorLast@37$EKErrorNoCalendar@1$EKErrorNoEndDate@3$EKErrorNoStartDate@2$EKErrorNotificationCollectionMismatch@34$EKErrorNotificationSavedWithoutCollection@35$EKErrorNotificationsCollectionFlagNotSet@32$EKErrorOSNotSupported@30$EKErrorObjectBelongsToDifferentStore@11$EKErrorPriorityIsInvalid@26$EKErrorProcedureAlarmsNotMutable@28$EKErrorRecurringReminderRequiresDueDate@18$EKErrorReminderAlarmContainsEmailOrUrl@36$EKErrorReminderLocationsNotSupported@20$EKErrorSourceDoesNotAllowCalendarAddDelete@17$EKErrorSourceDoesNotAllowEvents@25$EKErrorSourceDoesNotAllowReminders@24$EKErrorSourceMismatch@33$EKErrorStartDateCollidesWithOtherOccurrence@10$EKErrorStartDateTooFarInFuture@9$EKErrorStructuredLocationsNotSupported@19$EKEventAvailabilityBusy@0$EKEventAvailabilityFree@1$EKEventAvailabilityNotSupported@-1$EKEventAvailabilityTentative@2$EKEventAvailabilityUnavailable@3$EKEventStatusCanceled@3$EKEventStatusConfirmed@1$EKEventStatusNone@0$EKEventStatusTentative@2$EKFriday@6$EKMonday@2$EKParticipantRoleChair@3$EKParticipantRoleNonParticipant@4$EKParticipantRoleOptional@2$EKParticipantRoleRequired@1$EKParticipantRoleUnknown@0$EKParticipantScheduleStatusCannotDeliver@7$EKParticipantScheduleStatusDelivered@3$EKParticipantScheduleStatusDeliveryFailed@6$EKParticipantScheduleStatusNoPrivileges@5$EKParticipantScheduleStatusNone@0$EKParticipantScheduleStatusPending@1$EKParticipantScheduleStatusRecipientNotAllowed@8$EKParticipantScheduleStatusRecipientNotRecognized@4$EKParticipantScheduleStatusSent@2$EKParticipantStatusAccepted@2$EKParticipantStatusCompleted@6$EKParticipantStatusDeclined@3$EKParticipantStatusDelegated@5$EKParticipantStatusInProcess@7$EKParticipantStatusPending@1$EKParticipantStatusTentative@4$EKParticipantStatusUnknown@0$EKParticipantTypeGroup@4$EKParticipantTypePerson@1$EKParticipantTypeResource@3$EKParticipantTypeRoom@2$EKParticipantTypeUnknown@0$EKRecurrenceFrequencyDaily@0$EKRecurrenceFrequencyMonthly@2$EKRecurrenceFrequencyWeekly@1$EKRecurrenceFrequencyYearly@3$EKReminderPriorityHigh@1$EKReminderPriorityLow@9$EKReminderPriorityMedium@5$EKReminderPriorityNone@0$EKSaturday@7$EKSourceTypeBirthdays@5$EKSourceTypeCalDAV@2$EKSourceTypeExchange@1$EKSourceTypeLocal@0$EKSourceTypeMobileMe@3$EKSourceTypeSubscribed@4$EKSpanFutureEvents@1$EKSpanThisEvent@0$EKSunday@1$EKThursday@5$EKTuesday@3$EKWednesday@4$EKWeekdayFriday@6$EKWeekdayMonday@2$EKWeekdaySaturday@7$EKWeekdaySunday@1$EKWeekdayThursday@5$EKWeekdayTuesday@3$EKWeekdayWednesday@4$"""
35
33
  misc.update(
36
34
  {
37
35
  "EKCalendarEventAvailabilityMask": NewType(
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyobjc-framework-EventKit
3
- Version: 12.2.1
3
+ Version: 13.0
4
4
  Summary: Wrappers for the framework Accounts on macOS
5
5
  Home-page: https://github.com/ronaldoussoren/pyobjc
6
6
  Author: Ronald Oussoren
@@ -17,22 +17,22 @@ Classifier: Operating System :: MacOS :: MacOS X
17
17
  Classifier: Programming Language :: Python
18
18
  Classifier: Programming Language :: Python :: 3
19
19
  Classifier: Programming Language :: Python :: 3 :: Only
20
- Classifier: Programming Language :: Python :: 3.10
21
20
  Classifier: Programming Language :: Python :: 3.11
22
21
  Classifier: Programming Language :: Python :: 3.12
23
22
  Classifier: Programming Language :: Python :: 3.13
24
23
  Classifier: Programming Language :: Python :: 3.14
25
24
  Classifier: Programming Language :: Python :: 3.15
25
+ Classifier: Programming Language :: Python :: 3.16
26
26
  Classifier: Programming Language :: Python :: Implementation :: CPython
27
27
  Classifier: Programming Language :: Python :: Free Threading :: 3 - Stable
28
28
  Classifier: Programming Language :: Objective C
29
29
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
30
30
  Classifier: Topic :: Software Development :: User Interfaces
31
- Requires-Python: >=3.10
31
+ Requires-Python: >=3.11
32
32
  Description-Content-Type: text/x-rst; charset=UTF-8
33
33
  License-File: LICENSE.txt
34
- Requires-Dist: pyobjc-core>=12.2.1
35
- Requires-Dist: pyobjc-framework-Cocoa>=12.2.1
34
+ Requires-Dist: pyobjc-core>=13.0
35
+ Requires-Dist: pyobjc-framework-Cocoa>=13.0
36
36
  Dynamic: author
37
37
  Dynamic: author-email
38
38
  Dynamic: classifier
@@ -14,7 +14,6 @@ Lib/pyobjc_framework_EventKit.egg-info/pyobjc-build-info.txt
14
14
  Lib/pyobjc_framework_EventKit.egg-info/requires.txt
15
15
  Lib/pyobjc_framework_EventKit.egg-info/top_level.txt
16
16
  PyObjCTest/__init__.py
17
- PyObjCTest/test_ekalarm.py
18
17
  PyObjCTest/test_ekcalendar.py
19
18
  PyObjCTest/test_ekcalendaritem.py
20
19
  PyObjCTest/test_ekerror.py
@@ -30,5 +29,5 @@ PyObjCTest/test_ekvirtualconferenceprovider.py
30
29
  PyObjCTest/test_eventkit.py
31
30
  metadata/EventKit.fwinfo
32
31
  metadata/metadata.ini
33
- metadata/raw/arm64-26.5.fwinfo
34
- metadata/raw/x86_64-26.5.fwinfo
32
+ metadata/raw/arm64-27.fwinfo
33
+ metadata/raw/x86_64-27.fwinfo
@@ -0,0 +1,3 @@
1
+ macOS 27.2 (26B123)
2
+ Apple clang version 21.0.0 (clang-2100.4.1.1)
3
+ SDK: macOS 27.2
@@ -0,0 +1,2 @@
1
+ pyobjc-core>=13.0
2
+ pyobjc-framework-Cocoa>=13.0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyobjc-framework-EventKit
3
- Version: 12.2.1
3
+ Version: 13.0
4
4
  Summary: Wrappers for the framework Accounts on macOS
5
5
  Home-page: https://github.com/ronaldoussoren/pyobjc
6
6
  Author: Ronald Oussoren
@@ -17,22 +17,22 @@ Classifier: Operating System :: MacOS :: MacOS X
17
17
  Classifier: Programming Language :: Python
18
18
  Classifier: Programming Language :: Python :: 3
19
19
  Classifier: Programming Language :: Python :: 3 :: Only
20
- Classifier: Programming Language :: Python :: 3.10
21
20
  Classifier: Programming Language :: Python :: 3.11
22
21
  Classifier: Programming Language :: Python :: 3.12
23
22
  Classifier: Programming Language :: Python :: 3.13
24
23
  Classifier: Programming Language :: Python :: 3.14
25
24
  Classifier: Programming Language :: Python :: 3.15
25
+ Classifier: Programming Language :: Python :: 3.16
26
26
  Classifier: Programming Language :: Python :: Implementation :: CPython
27
27
  Classifier: Programming Language :: Python :: Free Threading :: 3 - Stable
28
28
  Classifier: Programming Language :: Objective C
29
29
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
30
30
  Classifier: Topic :: Software Development :: User Interfaces
31
- Requires-Python: >=3.10
31
+ Requires-Python: >=3.11
32
32
  Description-Content-Type: text/x-rst; charset=UTF-8
33
33
  License-File: LICENSE.txt
34
- Requires-Dist: pyobjc-core>=12.2.1
35
- Requires-Dist: pyobjc-framework-Cocoa>=12.2.1
34
+ Requires-Dist: pyobjc-core>=13.0
35
+ Requires-Dist: pyobjc-framework-Cocoa>=13.0
36
36
  Dynamic: author
37
37
  Dynamic: author-email
38
38
  Dynamic: classifier
@@ -0,0 +1,10 @@
1
+ from PyObjCTools.TestSupport import TestCase
2
+
3
+ import EventKit
4
+
5
+
6
+ class TestEKCalendar(TestCase):
7
+ def test_methods(self):
8
+ self.assertResultIsBOOL(EventKit.EKCalendar.allowsContentModifications)
9
+ self.assertResultIsBOOL(EventKit.EKCalendar.isImmutable)
10
+ self.assertResultIsBOOL(EventKit.EKCalendar.isSubscribed)
@@ -1,15 +1,10 @@
1
- from PyObjCTools.TestSupport import TestCase, min_os_level
1
+ from PyObjCTools.TestSupport import TestCase
2
2
 
3
3
  import EventKit
4
4
 
5
5
 
6
6
  class TestEKCalendarItem(TestCase):
7
- @min_os_level("10.8")
8
- def testBasic(self):
9
- self.assertTrue(hasattr(EventKit, "EKCalendarItem"))
10
-
11
- @min_os_level("10.8")
12
- def testMethods10_8(self):
7
+ def test_methods(self):
13
8
  self.assertResultIsBOOL(EventKit.EKCalendarItem.hasAlarms)
14
9
  self.assertResultIsBOOL(EventKit.EKCalendarItem.hasAttendees)
15
10
  self.assertResultIsBOOL(EventKit.EKCalendarItem.hasNotes)
@@ -1,15 +1,10 @@
1
- from PyObjCTools.TestSupport import TestCase, min_os_level
1
+ from PyObjCTools.TestSupport import TestCase
2
2
  import EventKit
3
3
 
4
4
 
5
5
  class TestEKAlarm(TestCase):
6
- def test_enum_types(self):
6
+ def test_enums(self):
7
7
  self.assertIsEnumType(EventKit.EKErrorCode)
8
-
9
- @min_os_level("10.8")
10
- def testConstants10_8(self):
11
- self.assertIsInstance(EventKit.EKErrorDomain, str)
12
-
13
8
  self.assertEqual(EventKit.EKErrorEventNotMutable, 0)
14
9
  self.assertEqual(EventKit.EKErrorNoCalendar, 1)
15
10
  self.assertEqual(EventKit.EKErrorNoStartDate, 2)
@@ -48,4 +43,7 @@ class TestEKAlarm(TestCase):
48
43
  self.assertEqual(EventKit.EKErrorNotificationSavedWithoutCollection, 35)
49
44
  self.assertEqual(EventKit.EKErrorReminderAlarmContainsEmailOrUrl, 36)
50
45
 
51
- self.assertEqual(EventKit.EKErrorLast, 31)
46
+ self.assertEqual(EventKit.EKErrorLast, 37)
47
+
48
+ def test_constants(self):
49
+ self.assertIsInstance(EventKit.EKErrorDomain, str)
@@ -1,31 +1,23 @@
1
- from PyObjCTools.TestSupport import TestCase, min_os_level
1
+ from PyObjCTools.TestSupport import TestCase
2
2
  import EventKit
3
3
 
4
4
 
5
5
  class TestEKEvent(TestCase):
6
- def test_enum_types(self):
6
+ def test_enums(self):
7
7
  self.assertIsEnumType(EventKit.EKEventAvailability)
8
- self.assertIsEnumType(EventKit.EKEventStatus)
9
-
10
- @min_os_level("10.8")
11
- def testBasic(self):
12
- self.assertTrue(hasattr(EventKit, "EKEvent"))
13
-
14
- @min_os_level("10.8")
15
- def testMethods10_8(self):
16
- self.assertResultIsBOOL(EventKit.EKEvent.isAllDay)
17
- self.assertResultIsBOOL(EventKit.EKEvent.isDetached)
18
- self.assertResultIsBOOL(EventKit.EKEvent.refresh)
19
-
20
- @min_os_level("10.8")
21
- def testConstants10_8(self):
22
8
  self.assertEqual(EventKit.EKEventAvailabilityNotSupported, -1)
23
9
  self.assertEqual(EventKit.EKEventAvailabilityBusy, 0)
24
10
  self.assertEqual(EventKit.EKEventAvailabilityFree, 1)
25
11
  self.assertEqual(EventKit.EKEventAvailabilityTentative, 2)
26
12
  self.assertEqual(EventKit.EKEventAvailabilityUnavailable, 3)
27
13
 
14
+ self.assertIsEnumType(EventKit.EKEventStatus)
28
15
  self.assertEqual(EventKit.EKEventStatusNone, 0)
29
16
  self.assertEqual(EventKit.EKEventStatusConfirmed, 1)
30
17
  self.assertEqual(EventKit.EKEventStatusTentative, 2)
31
18
  self.assertEqual(EventKit.EKEventStatusCanceled, 3)
19
+
20
+ def test_methods(self):
21
+ self.assertResultIsBOOL(EventKit.EKEvent.isAllDay)
22
+ self.assertResultIsBOOL(EventKit.EKEvent.isDetached)
23
+ self.assertResultIsBOOL(EventKit.EKEvent.refresh)
@@ -3,27 +3,21 @@ import EventKit
3
3
 
4
4
 
5
5
  class TestEKEventStore(TestCase):
6
- def test_enum_types(self):
6
+ def test_enums(self):
7
7
  self.assertIsEnumType(EventKit.EKSpan)
8
-
9
- @min_os_level("10.8")
10
- def testConstants10_8(self):
11
8
  self.assertEqual(EventKit.EKSpanThisEvent, 0)
12
9
  self.assertEqual(EventKit.EKSpanFutureEvents, 1)
13
10
 
14
- self.assertIsInstance(EventKit.EKEventStoreChangedNotification, str)
15
-
11
+ self.assertIsEnumType(EventKit.EKAuthorizationStatus)
16
12
  self.assertEqual(EventKit.EKAuthorizationStatusNotDetermined, 0)
17
13
  self.assertEqual(EventKit.EKAuthorizationStatusRestricted, 1)
18
14
  self.assertEqual(EventKit.EKAuthorizationStatusDenied, 2)
19
15
  self.assertEqual(EventKit.EKAuthorizationStatusAuthorized, 3)
20
16
 
21
- @min_os_level("10.8")
22
- def testBasic(self):
23
- self.assertTrue(hasattr(EventKit, "EKEventStore"))
17
+ def test_constants(self):
18
+ self.assertIsInstance(EventKit.EKEventStoreChangedNotification, str)
24
19
 
25
- @min_os_level("10.8")
26
- def testMethods10_8(self):
20
+ def test_methods(self):
27
21
  self.assertResultIsBOOL(EventKit.EKEventStore.commit_)
28
22
  self.assertArgIsOut(EventKit.EKEventStore.commit_, 0)
29
23
 
@@ -60,14 +54,12 @@ class TestEKEventStore(TestCase):
60
54
  self.assertArgIsBOOL(EventKit.EKEventStore.saveReminder_commit_error_, 1)
61
55
  self.assertArgIsOut(EventKit.EKEventStore.saveReminder_commit_error_, 2)
62
56
 
63
- @min_os_level("10.9")
64
- def testMethods10_9(self):
65
57
  self.assertArgIsBlock(
66
58
  EventKit.EKEventStore.requestAccessToEntityType_completion_, 1, b"vZ@"
67
59
  )
68
60
 
69
61
  @min_os_level("10.15")
70
- def testMethods10_14(self):
62
+ def test_methods10_15(self):
71
63
  self.assertResultIsBOOL(EventKit.EKEventStore.saveEvent_span_error_)
72
64
  self.assertArgIsOut(EventKit.EKEventStore.saveEvent_span_error_, 2)
73
65
 
@@ -75,7 +67,7 @@ class TestEKEventStore(TestCase):
75
67
  self.assertArgIsOut(EventKit.EKEventStore.removeEvent_span_error_, 2)
76
68
 
77
69
  @min_os_level("14.0")
78
- def testMethods14_0(self):
70
+ def test_methods14_0(self):
79
71
  self.assertArgIsBlock(
80
72
  EventKit.EKEventStore.requestFullAccessToEventsWithCompletion_, 0, b"vZ@"
81
73
  )
@@ -1,14 +1,9 @@
1
- from PyObjCTools.TestSupport import TestCase, min_os_level
1
+ from PyObjCTools.TestSupport import TestCase
2
2
  import EventKit
3
3
 
4
4
 
5
5
  class TestEKEvent(TestCase):
6
- @min_os_level("10.8")
7
- def testBasic(self):
8
- self.assertTrue(hasattr(EventKit, "EKObject"))
9
-
10
- @min_os_level("10.8")
11
- def testMethods10_8(self):
6
+ def test_methods(self):
12
7
  self.assertResultIsBOOL(EventKit.EKObject.hasChanges)
13
8
  self.assertResultIsBOOL(EventKit.EKObject.isNew)
14
9
  self.assertResultIsBOOL(EventKit.EKObject.refresh)
@@ -1,24 +1,17 @@
1
- from PyObjCTools.TestSupport import TestCase, min_os_level
1
+ from PyObjCTools.TestSupport import TestCase
2
2
  import EventKit
3
3
 
4
4
 
5
5
  class TestEKParticipant(TestCase):
6
- @min_os_level("10.8")
7
- def testBasic(self):
8
- self.assertTrue(hasattr(EventKit, "EKParticipant"))
9
-
10
- @min_os_level("10.9")
11
- def testMethods10_9(self):
12
- self.assertResultIsBOOL(EventKit.EKParticipant.isCurrentUser)
13
-
14
- @min_os_level("10.8")
15
- def testConstants10_8(self):
6
+ def test_enums(self):
7
+ self.assertIsEnumType(EventKit.EKParticipantRole)
16
8
  self.assertEqual(EventKit.EKParticipantRoleUnknown, 0)
17
9
  self.assertEqual(EventKit.EKParticipantRoleRequired, 1)
18
10
  self.assertEqual(EventKit.EKParticipantRoleOptional, 2)
19
11
  self.assertEqual(EventKit.EKParticipantRoleChair, 3)
20
12
  self.assertEqual(EventKit.EKParticipantRoleNonParticipant, 4)
21
13
 
14
+ self.assertIsEnumType(EventKit.EKParticipantStatus)
22
15
  self.assertEqual(EventKit.EKParticipantStatusUnknown, 0)
23
16
  self.assertEqual(EventKit.EKParticipantStatusPending, 1)
24
17
  self.assertEqual(EventKit.EKParticipantStatusAccepted, 2)
@@ -28,8 +21,12 @@ class TestEKParticipant(TestCase):
28
21
  self.assertEqual(EventKit.EKParticipantStatusCompleted, 6)
29
22
  self.assertEqual(EventKit.EKParticipantStatusInProcess, 7)
30
23
 
24
+ self.assertIsEnumType(EventKit.EKParticipantType)
31
25
  self.assertEqual(EventKit.EKParticipantTypeUnknown, 0)
32
26
  self.assertEqual(EventKit.EKParticipantTypePerson, 1)
33
27
  self.assertEqual(EventKit.EKParticipantTypeRoom, 2)
34
28
  self.assertEqual(EventKit.EKParticipantTypeResource, 3)
35
29
  self.assertEqual(EventKit.EKParticipantTypeGroup, 4)
30
+
31
+ def test_methods(self):
32
+ self.assertResultIsBOOL(EventKit.EKParticipant.isCurrentUser)
@@ -0,0 +1,27 @@
1
+ from PyObjCTools.TestSupport import TestCase
2
+ import EventKit
3
+
4
+
5
+ class TestEKRecurrenceRule(TestCase):
6
+ def test_enums(self):
7
+ self.assertIsEnumType(EventKit.EKRecurrenceFrequency)
8
+ self.assertEqual(EventKit.EKRecurrenceFrequencyDaily, 0)
9
+ self.assertEqual(EventKit.EKRecurrenceFrequencyWeekly, 1)
10
+ self.assertEqual(EventKit.EKRecurrenceFrequencyMonthly, 2)
11
+ self.assertEqual(EventKit.EKRecurrenceFrequencyYearly, 3)
12
+
13
+ self.assertIsEnumType(EventKit.EKWeekday)
14
+ self.assertEqual(EventKit.EKWeekdaySunday, 1)
15
+ self.assertEqual(EventKit.EKWeekdayMonday, 2)
16
+ self.assertEqual(EventKit.EKWeekdayTuesday, 3)
17
+ self.assertEqual(EventKit.EKWeekdayWednesday, 4)
18
+ self.assertEqual(EventKit.EKWeekdayThursday, 5)
19
+ self.assertEqual(EventKit.EKWeekdayFriday, 6)
20
+ self.assertEqual(EventKit.EKWeekdaySaturday, 7)
21
+ self.assertEqual(EventKit.EKSunday, EventKit.EKWeekdaySunday)
22
+ self.assertEqual(EventKit.EKMonday, EventKit.EKWeekdayMonday)
23
+ self.assertEqual(EventKit.EKTuesday, EventKit.EKWeekdayTuesday)
24
+ self.assertEqual(EventKit.EKWednesday, EventKit.EKWeekdayWednesday)
25
+ self.assertEqual(EventKit.EKThursday, EventKit.EKWeekdayThursday)
26
+ self.assertEqual(EventKit.EKFriday, EventKit.EKWeekdayFriday)
27
+ self.assertEqual(EventKit.EKSaturday, EventKit.EKWeekdaySaturday)
@@ -1,19 +1,15 @@
1
- from PyObjCTools.TestSupport import TestCase, min_os_level
1
+ from PyObjCTools.TestSupport import TestCase
2
2
  import EventKit
3
3
 
4
4
 
5
5
  class TestEKReminder(TestCase):
6
- @min_os_level("10.8")
7
- def testBasic(self):
8
- self.assertTrue(hasattr(EventKit, "EKReminder"))
9
-
10
- @min_os_level("10.8")
11
- def testMethods10_8(self):
12
- self.assertResultIsBOOL(EventKit.EKReminder.isCompleted)
13
- self.assertArgIsBOOL(EventKit.EKReminder.setCompleted_, 0)
14
-
15
- def testConstants(self):
6
+ def test_enums(self):
7
+ self.assertIsEnumType(EventKit.EKReminderPriority)
16
8
  self.assertEqual(EventKit.EKReminderPriorityNone, 0)
17
9
  self.assertEqual(EventKit.EKReminderPriorityHigh, 1)
18
10
  self.assertEqual(EventKit.EKReminderPriorityMedium, 5)
19
11
  self.assertEqual(EventKit.EKReminderPriorityLow, 9)
12
+
13
+ def test_methods(self):
14
+ self.assertResultIsBOOL(EventKit.EKReminder.isCompleted)
15
+ self.assertArgIsBOOL(EventKit.EKReminder.setCompleted_, 0)
@@ -3,12 +3,8 @@ import EventKit
3
3
 
4
4
 
5
5
  class TestEKSource(TestCase):
6
- @min_os_level("10.8")
7
- def testBasic(self):
8
- self.assertTrue(hasattr(EventKit, "EKSource"))
9
-
10
- @min_os_level("10.8")
11
- def testConstants10_8(self):
6
+ def test_enums(self):
7
+ self.assertIsEnumType(EventKit.EKSourceType)
12
8
  self.assertEqual(EventKit.EKSourceTypeLocal, 0)
13
9
  self.assertEqual(EventKit.EKSourceTypeExchange, 1)
14
10
  self.assertEqual(EventKit.EKSourceTypeCalDAV, 2)
@@ -16,6 +12,7 @@ class TestEKSource(TestCase):
16
12
  self.assertEqual(EventKit.EKSourceTypeSubscribed, 4)
17
13
  self.assertEqual(EventKit.EKSourceTypeBirthdays, 5)
18
14
 
15
+ self.assertIsEnumType(EventKit.EKEntityType)
19
16
  self.assertEqual(EventKit.EKEntityTypeEvent, 0)
20
17
  self.assertEqual(EventKit.EKEntityTypeReminder, 1)
21
18
 
@@ -1,29 +1,15 @@
1
- from PyObjCTools.TestSupport import TestCase, min_os_level
1
+ from PyObjCTools.TestSupport import TestCase
2
2
  import EventKit
3
3
 
4
4
 
5
5
  class TestEKTypes(TestCase):
6
- def test_enum_types(self):
6
+ def test_enums(self):
7
7
  self.assertIsEnumType(EventKit.EKAlarmProximity)
8
- self.assertIsEnumType(EventKit.EKAlarmType)
9
- self.assertIsEnumType(EventKit.EKAuthorizationStatus)
10
- self.assertIsEnumType(EventKit.EKCalendarEventAvailabilityMask)
11
- self.assertIsEnumType(EventKit.EKCalendarType)
12
- self.assertIsEnumType(EventKit.EKEntityMask)
13
- self.assertIsEnumType(EventKit.EKEntityType)
14
- self.assertIsEnumType(EventKit.EKParticipantRole)
15
- self.assertIsEnumType(EventKit.EKParticipantScheduleStatus)
16
- self.assertIsEnumType(EventKit.EKParticipantStatus)
17
- self.assertIsEnumType(EventKit.EKParticipantType)
18
- self.assertIsEnumType(EventKit.EKRecurrenceFrequency)
19
- self.assertIsEnumType(EventKit.EKReminderPriority)
20
- self.assertIsEnumType(EventKit.EKSourceType)
21
- self.assertIsEnumType(EventKit.EKWeekday)
22
-
23
- @min_os_level("10.8")
24
- def testConstacts(self):
8
+ self.assertEqual(EventKit.EKAlarmProximityNone, 0)
9
+ self.assertEqual(EventKit.EKAlarmProximityEnter, 1)
25
10
  self.assertEqual(EventKit.EKAlarmProximityLeave, 2)
26
11
 
12
+ self.assertIsEnumType(EventKit.EKAuthorizationStatus)
27
13
  self.assertEqual(EventKit.EKAuthorizationStatusNotDetermined, 0)
28
14
  self.assertEqual(EventKit.EKAuthorizationStatusRestricted, 1)
29
15
  self.assertEqual(EventKit.EKAuthorizationStatusDenied, 2)
@@ -34,6 +20,7 @@ class TestEKTypes(TestCase):
34
20
  EventKit.EKAuthorizationStatusFullAccess,
35
21
  )
36
22
 
23
+ self.assertIsEnumType(EventKit.EKWeekday)
37
24
  self.assertEqual(EventKit.EKWeekdaySunday, 1)
38
25
  self.assertEqual(EventKit.EKWeekdayMonday, 2)
39
26
  self.assertEqual(EventKit.EKWeekdayTuesday, 3)
@@ -50,23 +37,27 @@ class TestEKTypes(TestCase):
50
37
  self.assertEqual(EventKit.EKFriday, EventKit.EKWeekdayFriday)
51
38
  self.assertEqual(EventKit.EKSaturday, EventKit.EKWeekdaySaturday)
52
39
 
40
+ self.assertIsEnumType(EventKit.EKRecurrenceFrequency)
53
41
  self.assertEqual(EventKit.EKRecurrenceFrequencyDaily, 0)
54
42
  self.assertEqual(EventKit.EKRecurrenceFrequencyWeekly, 1)
55
43
  self.assertEqual(EventKit.EKRecurrenceFrequencyMonthly, 2)
56
44
  self.assertEqual(EventKit.EKRecurrenceFrequencyYearly, 3)
57
45
 
46
+ self.assertIsEnumType(EventKit.EKParticipantType)
58
47
  self.assertEqual(EventKit.EKParticipantTypeUnknown, 0)
59
48
  self.assertEqual(EventKit.EKParticipantTypePerson, 1)
60
49
  self.assertEqual(EventKit.EKParticipantTypeRoom, 2)
61
50
  self.assertEqual(EventKit.EKParticipantTypeResource, 3)
62
51
  self.assertEqual(EventKit.EKParticipantTypeGroup, 4)
63
52
 
53
+ self.assertIsEnumType(EventKit.EKParticipantRole)
64
54
  self.assertEqual(EventKit.EKParticipantRoleUnknown, 0)
65
55
  self.assertEqual(EventKit.EKParticipantRoleRequired, 1)
66
56
  self.assertEqual(EventKit.EKParticipantRoleOptional, 2)
67
57
  self.assertEqual(EventKit.EKParticipantRoleChair, 3)
68
58
  self.assertEqual(EventKit.EKParticipantRoleNonParticipant, 4)
69
59
 
60
+ self.assertIsEnumType(EventKit.EKParticipantScheduleStatus)
70
61
  self.assertEqual(EventKit.EKParticipantScheduleStatusNone, 0)
71
62
  self.assertEqual(EventKit.EKParticipantScheduleStatusPending, 1)
72
63
  self.assertEqual(EventKit.EKParticipantScheduleStatusSent, 2)
@@ -77,6 +68,7 @@ class TestEKTypes(TestCase):
77
68
  self.assertEqual(EventKit.EKParticipantScheduleStatusCannotDeliver, 7)
78
69
  self.assertEqual(EventKit.EKParticipantScheduleStatusRecipientNotAllowed, 8)
79
70
 
71
+ self.assertIsEnumType(EventKit.EKParticipantStatus)
80
72
  self.assertEqual(EventKit.EKParticipantStatusUnknown, 0)
81
73
  self.assertEqual(EventKit.EKParticipantStatusPending, 1)
82
74
  self.assertEqual(EventKit.EKParticipantStatusAccepted, 2)
@@ -86,18 +78,21 @@ class TestEKTypes(TestCase):
86
78
  self.assertEqual(EventKit.EKParticipantStatusCompleted, 6)
87
79
  self.assertEqual(EventKit.EKParticipantStatusInProcess, 7)
88
80
 
81
+ self.assertIsEnumType(EventKit.EKCalendarType)
89
82
  self.assertEqual(EventKit.EKCalendarTypeLocal, 0)
90
83
  self.assertEqual(EventKit.EKCalendarTypeCalDAV, 1)
91
84
  self.assertEqual(EventKit.EKCalendarTypeExchange, 2)
92
85
  self.assertEqual(EventKit.EKCalendarTypeSubscription, 3)
93
86
  self.assertEqual(EventKit.EKCalendarTypeBirthday, 4)
94
87
 
88
+ self.assertIsEnumType(EventKit.EKCalendarEventAvailabilityMask)
95
89
  self.assertEqual(EventKit.EKCalendarEventAvailabilityNone, 0)
96
90
  self.assertEqual(EventKit.EKCalendarEventAvailabilityBusy, (1 << 0))
97
91
  self.assertEqual(EventKit.EKCalendarEventAvailabilityFree, (1 << 1))
98
92
  self.assertEqual(EventKit.EKCalendarEventAvailabilityTentative, (1 << 2))
99
93
  self.assertEqual(EventKit.EKCalendarEventAvailabilityUnavailable, (1 << 3))
100
94
 
95
+ self.assertIsEnumType(EventKit.EKSourceType)
101
96
  self.assertEqual(EventKit.EKSourceTypeLocal, 0)
102
97
  self.assertEqual(EventKit.EKSourceTypeExchange, 1)
103
98
  self.assertEqual(EventKit.EKSourceTypeCalDAV, 2)
@@ -105,23 +100,23 @@ class TestEKTypes(TestCase):
105
100
  self.assertEqual(EventKit.EKSourceTypeSubscribed, 4)
106
101
  self.assertEqual(EventKit.EKSourceTypeBirthdays, 5)
107
102
 
103
+ self.assertIsEnumType(EventKit.EKEntityType)
108
104
  self.assertEqual(EventKit.EKEntityTypeEvent, 0)
109
105
  self.assertEqual(EventKit.EKEntityTypeReminder, 1)
110
106
 
107
+ self.assertIsEnumType(EventKit.EKEntityMask)
111
108
  self.assertEqual(EventKit.EKEntityMaskEvent, (1 << EventKit.EKEntityTypeEvent))
112
109
  self.assertEqual(
113
110
  EventKit.EKEntityMaskReminder, (1 << EventKit.EKEntityTypeReminder)
114
111
  )
115
112
 
116
- self.assertEqual(EventKit.EKAlarmProximityNone, 0)
117
- self.assertEqual(EventKit.EKAlarmProximityEnter, 1)
118
- self.assertEqual(EventKit.EKAlarmProximityLeave, 2)
119
-
113
+ self.assertIsEnumType(EventKit.EKAlarmType)
120
114
  self.assertEqual(EventKit.EKAlarmTypeDisplay, 0)
121
115
  self.assertEqual(EventKit.EKAlarmTypeAudio, 1)
122
116
  self.assertEqual(EventKit.EKAlarmTypeProcedure, 2)
123
117
  self.assertEqual(EventKit.EKAlarmTypeEmail, 3)
124
118
 
119
+ self.assertIsEnumType(EventKit.EKReminderPriority)
125
120
  self.assertEqual(EventKit.EKReminderPriorityNone, 0)
126
121
  self.assertEqual(EventKit.EKReminderPriorityHigh, 1)
127
122
  self.assertEqual(EventKit.EKReminderPriorityMedium, 5)
@@ -4,7 +4,7 @@ import EventKit
4
4
 
5
5
  class TestEKVirtualConferenceProvider(TestCase):
6
6
  @min_os_level("12.0")
7
- def testMethods12_0(self):
7
+ def test_methods12_0(self):
8
8
  self.assertArgIsBlock(
9
9
  EventKit.EKVirtualConferenceProvider.fetchAvailableRoomTypesWithCompletionHandler_,
10
10
  0,
@@ -0,0 +1,94 @@
1
+ # objective.metada exceptions file, see its document
2
+ # for information on how to update this file.
3
+ {
4
+ "definitions": {
5
+ "expressions": {
6
+ "DATE_COMPONENTS": { "ignore": true },
7
+ "DATETIME_COMPONENTS": { "ignore": true }
8
+ },
9
+ "classes": {
10
+ "EKCalendarItem": {
11
+ "methods": [
12
+ {
13
+ "retval": { "type": "Z" },
14
+ "class_method": false,
15
+ "selector": "isAllDay"
16
+ }
17
+ ]
18
+ },
19
+ "EKEventStore": {
20
+ "methods": [
21
+ {
22
+ "args": {
23
+ "1": {
24
+ "callable": {
25
+ "arguments": {
26
+ "0": {
27
+ "type": "^v"
28
+ },
29
+ "1": {
30
+ "type": "Z"
31
+ },
32
+ "2": {
33
+ "type": "@"
34
+ }
35
+ },
36
+ "retval": {
37
+ "type": "v"
38
+ }
39
+ }
40
+ }
41
+ },
42
+ "class_method": false,
43
+ "selector": "requestAccessToEntityType:completion:"
44
+ },
45
+ {
46
+ "args": {
47
+ "1": {
48
+ "callable": {
49
+ "arguments": {
50
+ "0": {
51
+ "type": "^v"
52
+ },
53
+ "1": {
54
+ "type": "@"
55
+ }
56
+ },
57
+ "retval": {
58
+ "type": "v"
59
+ }
60
+ }
61
+ }
62
+ },
63
+ "class_method": false,
64
+ "selector": "fetchRemindersMatchingPredicate:completion:"
65
+ },
66
+ {
67
+ "args": {
68
+ "1": {
69
+ "callable": {
70
+ "arguments": {
71
+ "0": {
72
+ "type": "^v"
73
+ },
74
+ "1": {
75
+ "type": "@"
76
+ },
77
+ "2": {
78
+ "type": "o^B"
79
+ }
80
+ },
81
+ "retval": {
82
+ "type": "v"
83
+ }
84
+ }
85
+ }
86
+ },
87
+ "class_method": false,
88
+ "selector": "enumerateEventsMatchingPredicate:usingBlock:"
89
+ }
90
+ ]
91
+ }
92
+ }
93
+ }
94
+ }
@@ -1,7 +1,6 @@
1
1
  // GENERATED FILE DO NOT EDIT
2
2
  //
3
3
  // This file was generated by objective.metadata
4
- // Last update: Sun May 24 11:48:24 2026
5
4
  {
6
5
  "arch": "arm64",
7
6
  "definitions": {
@@ -5517,6 +5516,6 @@
5517
5516
  "EKVirtualConferenceProvider.h",
5518
5517
  "EventKitDefines.h"
5519
5518
  ],
5520
- "release": "26.5",
5521
- "sdk": "/Users/ronald/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.5.sdk"
5519
+ "release": "macOS 27.2",
5520
+ "sdk": "Xcode 27.2 (27B5038i)/MacOSX27.sdk"
5522
5521
  }
@@ -1,7 +1,6 @@
1
1
  // GENERATED FILE DO NOT EDIT
2
2
  //
3
3
  // This file was generated by objective.metadata
4
- // Last update: Sun May 24 11:48:22 2026
5
4
  {
6
5
  "arch": "x86_64",
7
6
  "definitions": {
@@ -5517,6 +5516,6 @@
5517
5516
  "EKVirtualConferenceProvider.h",
5518
5517
  "EventKitDefines.h"
5519
5518
  ],
5520
- "release": "26.5",
5521
- "sdk": "/Users/ronald/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX26.5.sdk"
5519
+ "release": "macOS 27.2",
5520
+ "sdk": "Xcode 27.2 (27B5038i)/MacOSX27.sdk"
5522
5521
  }
@@ -110,13 +110,11 @@ class oc_egg_info(egg_info.egg_info):
110
110
  else:
111
111
  sdk_version = os.path.basename(sdk_root)
112
112
 
113
- build_info = textwrap.dedent(
114
- f"""\
113
+ build_info = textwrap.dedent(f"""\
115
114
  macOS {macos_version} ({macos_build})
116
115
  {clang_version}
117
116
  SDK: {sdk_version}
118
- """
119
- )
117
+ """)
120
118
 
121
119
  self.write_file(
122
120
  "pyobjc-build-info.txt",
@@ -204,7 +202,7 @@ class oc_test(Command):
204
202
  "errors": len(result.errors),
205
203
  "xfails": len(getattr(result, "expectedFailures", [])),
206
204
  "xpass": len(getattr(result, "unexpectedSuccesses", [])),
207
- "skip=": len(getattr(result, "skipped", [])),
205
+ "skip": len(getattr(result, "skipped", [])),
208
206
  "testSeconds": (time_after - time_before),
209
207
  }
210
208
  print(f"SUMMARY: {summary}")
@@ -228,12 +226,12 @@ Operating System :: MacOS :: MacOS X
228
226
  Programming Language :: Python
229
227
  Programming Language :: Python :: 3
230
228
  Programming Language :: Python :: 3 :: Only
231
- Programming Language :: Python :: 3.10
232
229
  Programming Language :: Python :: 3.11
233
230
  Programming Language :: Python :: 3.12
234
231
  Programming Language :: Python :: 3.13
235
232
  Programming Language :: Python :: 3.14
236
233
  Programming Language :: Python :: 3.15
234
+ Programming Language :: Python :: 3.16
237
235
  Programming Language :: Python :: Implementation :: CPython
238
236
  Programming Language :: Python :: Free Threading :: 3 - Stable
239
237
  Programming Language :: Objective C
@@ -499,6 +497,8 @@ def Extension(*args, **kwds):
499
497
  "-DPyObjC_BUILD_RELEASE=%02d%02d"
500
498
  % (tuple(map(int, version.split(".")[:2])))
501
499
  )
500
+ ldflags.append("-isysroot")
501
+ ldflags.append(data)
502
502
  else:
503
503
  cflags.append(
504
504
  "-DPyObjC_BUILD_RELEASE=%02d%02d"
@@ -677,7 +677,7 @@ def setup(
677
677
  zip_safe=False,
678
678
  license="MIT",
679
679
  classifiers=CLASSIFIERS,
680
- python_requires=">=3.10",
680
+ python_requires=">=3.11",
681
681
  keywords=["PyObjC"] + [p for p in k["packages"] if p not in ("PyObjCTools",)],
682
682
  options=options,
683
683
  **k,
@@ -15,7 +15,7 @@ sys.path.insert(0, os.path.dirname(__file__))
15
15
 
16
16
  from pyobjc_setup import setup # noqa: E402
17
17
 
18
- VERSION = "12.2.1"
18
+ VERSION = "13.0"
19
19
 
20
20
  setup(
21
21
  name="pyobjc-framework-EventKit",
@@ -1,3 +0,0 @@
1
- macOS 26.5 (25F71)
2
- Apple clang version 21.0.0 (clang-2100.1.1.101)
3
- SDK: macOS 26.5
@@ -1,2 +0,0 @@
1
- pyobjc-core>=12.2.1
2
- pyobjc-framework-Cocoa>=12.2.1
@@ -1,19 +0,0 @@
1
- from PyObjCTools.TestSupport import TestCase, min_os_level
2
- import EventKit
3
-
4
-
5
- class TestEKAlarm(TestCase):
6
- @min_os_level("10.8")
7
- def testBasic(self):
8
- self.assertTrue(hasattr(EventKit, "EKAlarm"))
9
-
10
- @min_os_level("10.8")
11
- def testConstants10_8(self):
12
- self.assertEqual(EventKit.EKAlarmTypeDisplay, 0)
13
- self.assertEqual(EventKit.EKAlarmTypeAudio, 1)
14
- self.assertEqual(EventKit.EKAlarmTypeProcedure, 2)
15
- self.assertEqual(EventKit.EKAlarmTypeEmail, 3)
16
-
17
- self.assertEqual(EventKit.EKAlarmProximityNone, 0)
18
- self.assertEqual(EventKit.EKAlarmProximityEnter, 1)
19
- self.assertEqual(EventKit.EKAlarmProximityLeave, 2)
@@ -1,29 +0,0 @@
1
- from PyObjCTools.TestSupport import TestCase, min_os_level
2
-
3
- import EventKit
4
-
5
-
6
- class TestEKCalendar(TestCase):
7
- @min_os_level("10.8")
8
- def testBasic(self):
9
- self.assertTrue(hasattr(EventKit, "EKCalendar"))
10
-
11
- @min_os_level("10.8")
12
- def testMethods10_8(self):
13
- self.assertResultIsBOOL(EventKit.EKCalendar.allowsContentModifications)
14
- self.assertResultIsBOOL(EventKit.EKCalendar.isImmutable)
15
- self.assertResultIsBOOL(EventKit.EKCalendar.isSubscribed)
16
-
17
- @min_os_level("10.8")
18
- def testConstants10_8(self):
19
- self.assertEqual(EventKit.EKCalendarTypeLocal, 0)
20
- self.assertEqual(EventKit.EKCalendarTypeCalDAV, 1)
21
- self.assertEqual(EventKit.EKCalendarTypeExchange, 2)
22
- self.assertEqual(EventKit.EKCalendarTypeSubscription, 3)
23
- self.assertEqual(EventKit.EKCalendarTypeBirthday, 4)
24
-
25
- self.assertEqual(EventKit.EKCalendarEventAvailabilityNone, 0)
26
- self.assertEqual(EventKit.EKCalendarEventAvailabilityBusy, 1 << 0)
27
- self.assertEqual(EventKit.EKCalendarEventAvailabilityFree, 1 << 1)
28
- self.assertEqual(EventKit.EKCalendarEventAvailabilityTentative, 1 << 2)
29
- self.assertEqual(EventKit.EKCalendarEventAvailabilityUnavailable, 1 << 3)
@@ -1,23 +0,0 @@
1
- from PyObjCTools.TestSupport import TestCase, min_os_level
2
- import EventKit
3
-
4
-
5
- class TestEKRecurrenceRule(TestCase):
6
- @min_os_level("10.8")
7
- def testBasic(self):
8
- self.assertTrue(hasattr(EventKit, "EKRecurrenceRule"))
9
-
10
- @min_os_level("10.8")
11
- def testConstants10_8(self):
12
- self.assertEqual(EventKit.EKRecurrenceFrequencyDaily, 0)
13
- self.assertEqual(EventKit.EKRecurrenceFrequencyWeekly, 1)
14
- self.assertEqual(EventKit.EKRecurrenceFrequencyMonthly, 2)
15
- self.assertEqual(EventKit.EKRecurrenceFrequencyYearly, 3)
16
-
17
- self.assertEqual(EventKit.EKSunday, 1)
18
- self.assertEqual(EventKit.EKMonday, 2)
19
- self.assertEqual(EventKit.EKTuesday, 3)
20
- self.assertEqual(EventKit.EKWednesday, 4)
21
- self.assertEqual(EventKit.EKThursday, 5)
22
- self.assertEqual(EventKit.EKFriday, 6)
23
- self.assertEqual(EventKit.EKSaturday, 7)
@@ -1,180 +0,0 @@
1
- # objective.metada exceptions file, see its document
2
- # for information on how to update this file.
3
- {
4
- "definitions": {
5
- "enum": {
6
- "EKErrorOSNotSupported": { "value": 30 },
7
- "EKErrorLast": { "value": 31 },
8
- "EKWeekdaySunday": { "value": 1 },
9
- "EKWeekdayMonday": { "value": 2 },
10
- "EKWeekdayTuesday": { "value": 3 },
11
- "EKWeekdayWednesday": { "value": 4 },
12
- "EKWeekdayThursday": { "value": 5 },
13
- "EKWeekdayFriday": { "value": 6 },
14
- "EKWeekdaySaturday": { "value": 7 },
15
- "EKParticipantScheduleStatusNone": { "value": 0 },
16
- "EKParticipantScheduleStatusPending": { "value": 1 },
17
- "EKParticipantScheduleStatusSent": { "value": 2 },
18
- "EKParticipantScheduleStatusDelivered": { "value": 3 },
19
- "EKParticipantScheduleStatusRecipientNotRecognized": { "value": 4 },
20
- "EKParticipantScheduleStatusNoPrivileges": { "value": 5 },
21
- "EKParticipantScheduleStatusDeliveryFailed": { "value": 6 },
22
- "EKParticipantScheduleStatusCannotDeliver": { "value": 7 },
23
- "EKParticipantScheduleStatusRecipientNotAllowed": { "value": 8 }
24
- },
25
- "expressions": {
26
- "DATE_COMPONENTS": { "ignore": true },
27
- "DATETIME_COMPONENTS": { "ignore": true }
28
- },
29
- "classes": {
30
- "EKCalendarItem": {
31
- "methods": [
32
- {
33
- "retval": { "type": "Z" },
34
- "class_method": false,
35
- "selector": "isAllDay"
36
- }
37
- ]
38
- },
39
- "EKEventStore": {
40
- "methods": [
41
- {
42
- "args": {
43
- "1": {
44
- "callable": {
45
- "arguments": {
46
- "0": {
47
- "type": "^v"
48
- },
49
- "1": {
50
- "type": "Z"
51
- },
52
- "2": {
53
- "type": "@"
54
- }
55
- },
56
- "retval": {
57
- "type": "v"
58
- }
59
- }
60
- }
61
- },
62
- "class_method": false,
63
- "selector": "requestAccessToEntityType:completion:"
64
- },
65
- {
66
- "args": {
67
- "1": {
68
- "callable": {
69
- "arguments": {
70
- "0": {
71
- "type": "^v"
72
- },
73
- "1": {
74
- "type": "@"
75
- }
76
- },
77
- "retval": {
78
- "type": "v"
79
- }
80
- }
81
- }
82
- },
83
- "class_method": false,
84
- "selector": "fetchRemindersMatchingPredicate:completion:"
85
- },
86
- {
87
- "args": {
88
- "1": {
89
- "callable": {
90
- "arguments": {
91
- "0": {
92
- "type": "^v"
93
- },
94
- "1": {
95
- "type": "@"
96
- },
97
- "2": {
98
- "type": "o^B"
99
- }
100
- },
101
- "retval": {
102
- "type": "v"
103
- }
104
- }
105
- }
106
- },
107
- "class_method": false,
108
- "selector": "enumerateEventsMatchingPredicate:usingBlock:"
109
- },
110
- {
111
- "args": {
112
- "2": { "type_modifier": "o" }
113
- },
114
- "class_method": false,
115
- "selector": "saveCalendar:commit:error:"
116
- },
117
- {
118
- "args": {
119
- "2": { "type_modifier": "o" }
120
- },
121
- "class_method": false,
122
- "selector": "removeCalendar:commit:error:"
123
- },
124
- {
125
- "args": {
126
- "2": { "type_modifier": "o" }
127
- },
128
- "class_method": false,
129
- "selector": "saveEvent:span:error:"
130
- },
131
- {
132
- "args": {
133
- "3": { "type_modifier": "o" }
134
- },
135
- "class_method": false,
136
- "selector": "saveEvent:span:commit:error:"
137
- },
138
- {
139
- "args": {
140
- "3": { "type_modifier": "o" }
141
- },
142
- "class_method": false,
143
- "selector": "removeEvent:span:commit:error:"
144
- },
145
- {
146
- "args": {
147
- "2": { "type_modifier": "o" }
148
- },
149
- "class_method": false,
150
- "selector": "removeEvent:span:error:"
151
- },
152
- {
153
- "args": {
154
- "2": { "type_modifier": "o" }
155
- },
156
- "class_method": false,
157
- "selector": "saveReminder:commit:error:"
158
- },
159
- {
160
- "args": {
161
- "2": { "type_modifier": "o" }
162
- },
163
- "class_method": false,
164
- "selector": "removeReminder:commit:error:"
165
- },
166
- {
167
- "args": {
168
- "0": { "type_modifier": "o"}
169
- },
170
- "class_method": false,
171
- "selector": "commit:"
172
- }
173
- ]
174
- }
175
- },
176
- "formal_protocols": {},
177
- "functions": {},
178
- "informal_protocols": {}
179
- }
180
- }