| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2025-10-21 | 12.7 kB | |
| v12.0 source code.tar.gz | 2025-10-21 | 13.7 MB | |
| v12.0 source code.zip | 2025-10-21 | 16.9 MB | |
| Totals: 3 Items | 30.6 MB | 2 | |
-
Drop support for Python 3.9, which will go out of support before PyObjC 3.12 is released.
-
Added
AVFAudioas a separate toplevel package, instead of keeping it merged in intoAVFoundation.
The package is included in the pyobjc-framework-AVFoundation distribution.
- Updated metadata for the macOS 26 SDK.
As part of this introduce bindings for the following new framework bindings:
- ARKit
- CompositorServices
- GameSave
There are no bindings for the MetalPerformancePrimitives at this time, it is
a low-level C++ library that would require a lot of work to create bindings.
-
In macOS 26 a number of type encodings for block arguments include a signature for the block interface. Update PyObjC runtime introspection to ignore that information.
-
Dropped old metadata scans. That is, all framework bindings are now created from the most recent macOS SDK headers with some manual additions and annotations.
This change required adding manual entries for, in particular, constants that were renamed in by now old versions of macOS and have been removed from Apple's headers by now. These will be removed from PyObjC in a future update as well (but after a transition period where using them will raise a warning).
This has the following user visible side effects (as far as they are visible, most of the the changes below affect versions of macOS that are long gone):
-
Accounts: The following constants are no longer available (on the old versions of macOS where these were available):
ACFacebookAppVersionKey,ACFacebookPermissionGroupKey,ACFacebookPermissionGroupRead,ACFacebookPermissionGroupReadWrite, andACFacebookPermissionGroupWrite. -
AppKit: The NSFileWrapper class no longer supports with keyword arguments
path, andserializedRepresentation, and the keyword set(URL, options, error). -
AuthenticationServices: The classes
ASAccountAuthenticationModificationReplacePasswordWithSignInWithAppleRequestandASAccountAuthenticationModificationUpgradePasswordToStrongPasswordRequestno longer have a keyword argument set named(user, serviceIdentifier). -
Automator: class
AMBundleActionno longer accepts the keyword set(definition, fromArchive). -
CFNetwork: The following functions were deprecated before macOS 10.6 and were removed in the macOS 10.15 SDK:
CFHTTPReadStreamSetRedirectsAutomatically, andCFNetServiceSetProtocolSpecificInformation. -
CloudKit:
CKDiscoverUserInfosOperationno longer recognizes the keyword set(emailAddresses, userRecordIDs).CKFetchDatabaseChangesOperationno longer recognizes the keyword argumentpreviousServerChangeToken.CKShareno longer recognizes the keyword argumentsrecordZoneID,rootRecord, and the keyword set(rootRecord, shareID).CKSubscriptionno longer recognizes the keyword argumentcoder, and the keyword sets(recordType, predicate, options),(recordType, predicate, subscriptionID, options),(zoneID, options)andzoneID, subscriptionID, options). -
CoreAudio: The following functions are no longer available (all were deprecated between macOS 10.5 and 10.8, and removed from the macOS 10.15 SDK):
AudioHardwareClaimAudioDeviceID,AudioHardwareDevicesDied,AudioHardwareDevicePropertyChanged,AudioHardwareDevicesCreated,AudioObjectCreate,AudioHardwareStreamPropertyChanged,AudioHardwareClaimAudioStreamID,AudioObjectPropertiesChanged,AudioHardwareStreamsCreated,AudioObjectsPublishedAndDied,AudioHardwareStreamsDied.The following constants are no longer available because they are not useful in python code:
CA_PREFER_FIXED_POINTandCOREAUDIOTYPES_VERSION. -
CoreData: The constant
NSFetchRequestExpressionTypeis no longer available. -
CoreLocation:
CLBeaconIdentityConstraintno longer supports the keywordUUIDand the keyword sets(UUID, major)and(UUID, major, minor). -
CoreServices: The following functions are no longer available (all were removed in the macOS 10.7 SDK):
LSInitandLSTerm. -
CoreText: The constant
kCTVersionNumber10_6_7is no longer available. -
CryptoTokenKit: The following constants are no longer available. Use the modern names instead:
TKSmartCardNoSlot,TKSmartCardSlotEmpty,TKSmartCardSlotProbing,TKSmartCardSlotMuteCard, andTKSmartCardSlotValidCard. -
DiscRecording: The following constants are no longer available:
DRCDTextEncodingASCII,kDRCDTextEncodingASCII,DRCDTextEncodingISOLatin1Modified, andkDRCDTextEncodingISOLatin1Modified. -
DiskArbitration: The following constants are no longer available:
kDADiskOptionEjectUponLogout,kDADiskOptionMountAutomatic,kDADiskOptionMountAutomaticNoDefer, andkDADiskOptionPrivate. -
GameController: The struct type registration
GCExtendedGamepadValueChangedHandleris gone (the existence of this type was a bug). -
ImageCaptureCore: Constant
ICCameraDeviceSupportsFastPTPis no longer available (only affects macOS 10.11). -
Intents: Removed constant
INMessageReactionTypeEmojiReaction, useINMessageReactionTypeEmojiinstead. -
Intents:
INAggregatedMessageReactionno longer accepts the keyword setreactionType, emoji, reactionCount).INMessageno longer accepts the keyword sets(identifier, conversationIdentifier, content, dateSent, sender, recipients, groupName, serviceName, messageType, referencedMessage, reaction, aggregatedReactions)and(identifier, conversationIdentifier, content, dateSent, sender, recipients, groupName, serviceName, messageType, referencedMessage, sticker, reaction, aggregatedReactions). It does accept these keyword sets without theaggregatedReactionskeyword though. -
Intents: The
INColorclass no longer accepts the keyword set(read, green, blue). -
Intents: The
INHeadUnitclass no longer accepts the keyword set(bluetoothIdentifier, iap2Identifier). -
Intents: The
INMediaSearchclass no longer accepts the keyword set(mediaType, sortOrder, mediaName, artistName, albumName, genreNames, moodNames, activityNames, releaseDate, reference, mediaIdentifier). -
Intents: The
INStartCallIntentclass no longer accepts the keyword set(audioRoute, destinationType, contacts, callCapability). -
JavaScriptCore: Constants
WEBKIT_VERSION_*are no longer available. -
LocalAuthentication: The following constants are no longer available:
kLAOptionAuthenticationReasonandkLAOptionUserFallback. -
Metal: The constant
MTLStitchedLibraryOptionStoreLibraryInMetalScriptis no longer available (was only present in a beta SDK) -
MLCompute: Class
MLCOptimizerno longer has a keyword argument nameddescriptor. -
PassKit: The following constants are no longer available:
PKDisbursementRequestScheduleFutureandPKDisbursementRequestScheduleOneTime.Because of this the type
PKDisbursementRequestSchedulehas been removed as well.The metadata for
PKDisbursementAuthorizationControllerhas been removed.Class
PKShareablePassMetadataPreviewno longer accepts the keyword set(passThumbnail, localizedDescription). -
PubSub: Class
PSFeedno longer accepts the keywordURLand the keyword set(data, URL).Note that the entire framework was removed in macOS 10.15, and the Python bindings will be removed in PyObjC 13 at the latest.
-
Quartz: The following constants are no longer available:
CGFLOAT_EPSILON,CA_TEST,CA_TESTABLE_CLASS,CA_TESTABLE,kCGErrorLast. -
Quartz: The following structs are no longer available (all of them contain callback pointers which aren't used in PyObjC's bindings for the APIs that use those structs):
CGFunctionCallbacks,CGDataProviderCallbacks,CGPatternCallbacks,CGDataConsumerCallbacks,CGDataProviderDirectAccessCallbacks,CGDataProviderSequentialCallbacks, andCGPSConverterCallbacks. -
Quartz: The CIColor class no longer accepts the keyword argument
CGColor. -
Quartz: The CIFilterGenerator class no longer accepts the keyword argument
contentsOfURL. -
Quartz: The CIFilterShape class no longer accepts the keyword argument
rect. -
Quartz: The CImage class no longer accepts the keyword sets
(bitmapData, bytesPerRow, size, format, colorSpace),(CGImage, options),(CGLayer, options),(CVImageBuffer, options),(CVPixelBuffer, options),(contentsOfURL, options),(data, options),(IOSurface, options),(IOSurface, plance, format, options),(imageProvider, size, format, colorSpace, options),(texture, size, flipped, colorSpace),(texture, size, flipped, options), and keywordsCGImage,CGLayer,CVImageBuffer,CVPixelBuffer,color,contentsOfURL,dataandIOSurface. -
Quartz: The CIImageAcculator class no longer accepts the keyword set
(extent, format, colorSpace). -
Quartz: The CISampler class no longer accepts the keyword sets
(image, keysAndValues),(image, options),(values, count),(x, y),(x, y, z),(x, y, z, w), and keywordsimage,CGAfineTransform,CGPoint,CGRect,string, andx. -
ScreenSaver: Class
ScreenSaverViewno longer acceptsframeas its sole keyword argument (always use it in combination withisPreview). -
Security: The constant
SEC_PROTOCOL_CERT_COMPRESSION_DEFAULTis no longer available. -
ServiceManagement: The following constants are no longer available:
kSMInfoKeyAuthorizedClientsandkSMInfoKeyPrivilegedExecutables. -
SharedWithYouCore:
SWCollaborationOptionno longer has a keyword argument namedcoder. -
SyncServices: Informal protocol
ISyncSessionDriverDataSourceOptionalMethodsis no longer available. -
SystemConfiguration: The following constants are no longer available:
kSCEntNetAppleTalk,kSCEntNetNetInfo,kSCNetworkProtocolTypeAppleTalk,kSCPropNetAppleTalkComputerName,kSCPropNetAppleTalkComputerNameEncoding,kSCPropNetAppleTalkConfigMethod,kSCPropNetAppleTalkDefaultZone,kSCPropNetAppleTalkNetworkID,kSCPropNetAppleTalkNetworkRange,kSCPropNetAppleTalkNodeID,kSCPropNetAppleTalkSeedNetworkRange,kSCPropNetAppleTalkSeedZones,kSCPropNetNetInfoBindingMethods,kSCPropNetNetInfoBroadcastServerTag,kSCPropNetNetInfoServerAddresses,kSCPropNetNetInfoServerTags,kSCValNetAppleTalkConfigMethodNode,kSCValNetAppleTalkConfigMethodRouter,kSCValNetAppleTalkConfigMethodSeedRouter,kSCValNetNetInfoBindingMethodsBroadcast,kSCValNetNetInfoBindingMethodsDHCP,kSCValNetNetInfoBindingMethodsManual, andkSCValNetNetInfoDefaultServerTag. -
WebKit: : The following constants are no longer available:
DOM_VARIABLES_RULEandWK_API_ENABLED. -
WebKit:
-[WKWebView callAsyncJavaScript:arguments:inContentWorld:completionHandler:],-[WKWebView evaluateJavaScript:inContentWorld:completionHandler:]block arguments are no longer supported.These methods were in a beta version of the macOS 11 SDK, but are no longer present in SDKs.
-
WebKit: A number of informal protocol definitions were removed. This should not affect using the library:
WebUIDelegate,WebViewEditingDelegate,WebPolicyDelegate,WebDownloadDelegate,WebResourceLoadDelegate,WebFrameLoadDelegate, andWebJavaPlugIn. -
Added
objc.NSInteger,objc.NSUIntegerandobjc.CGFloatthat will make it easier to use type annotations that match Apple's type information. -
Fix edge cases in method accessors when some uses of
SomeClass.pyobjc_instanceMethods.methodwould result in a method object that's bound to a meta class. -
Fix memory leak due to incorrect reference count handling in looking up metadata.
-
Fix edge case in handling registration of multiple custom helpers to call a selector.