Registry /
auth-security / pyobjc-framework-videosubscriberaccount
Install & Compatibility
Where this runs
tested against v? · pip install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslpy 3.10–3.920 runs
build_error
glibcpy 3.10–3.920 runs
build_error
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
VideoSubscriberAccount
✓ import VideoSubscriberAccount
Imports the entire VideoSubscriberAccount framework module.
VSAccountManager
✓ from VideoSubscriberAccount import VSAccountManager
Imports a specific class from the framework.
This quickstart demonstrates how to import the VideoSubscriberAccount framework and access its primary class, `VSAccountManager`. Due to the nature of this framework (TV provider authentication, requiring user interaction and specific application entitlements), a fully functional example within a simple Python script is not feasible. This code shows how to instantiate the `sharedAccountManager` singleton, which is the entry point for most interactions.
import VideoSubscriberAccount
from Foundation import NSObject # NSObject is fundamental to Objective-C, often needed for PyObjC examples
# The VideoSubscriberAccount framework primarily interacts with TV provider authentication
# and subscription management, typically within a full macOS application context
# and requires specific entitlements. This example demonstrates basic class access.
# Get the shared account manager instance
manager = VideoSubscriberAccount.VSAccountManager.sharedAccountManager()
print(f"VSAccountManager instance: {manager}")
# Attempting to fetch a property (e.g., current account) would typically
# require an active application, user interaction, and entitlements.
# For example, to get the primary account, you would usually call
# manager.enqueueAccountMetadataRequest:completionHandler:
# But this is often asynchronous and requires more setup than a quickstart.
# A simple synchronous property if available (conceptual example, may not directly map without setup)
# if manager.isKeyLoaded(): # Not a real method for VSAccountManager, just illustrative
# print("Account manager key is loaded.")
# else:
# print("Account manager key not yet loaded or not applicable in this context.")
# The framework is used to present authentication requests to the user.
# E.g., presenting a sign-in view controller via VSAccountManager.presentViewController:.
# This requires a running Cocoa app and is beyond a simple script quickstart.
Debug
Known issues
breakingPyObjC frequently drops support for older Python versions. PyObjC 12.0 dropped support for Python 3.9, and PyObjC 11.0 dropped Python 3.8. Ensure your Python version is compatible with the PyObjC version you are installing.fixUpgrade your Python environment to Python 3.10 or later for PyObjC 12.x. Always check `requires_python` on PyPI or the PyObjC changelog for specific version requirements.
affects: >=11.0
breakingPyObjC 11.1 changed how initializer methods (those in the 'init' family) are modeled, now correctly reflecting that they 'steal' a reference to `self` and return a new one, as per clang's ARC documentation. This affects object lifecycle and reference counting.fixReview code that interacts with object initialization, especially custom subclasses or factory methods, to ensure correct reference handling. While explicit memory management is rarely needed in Python, understanding the underlying Objective-C semantics is crucial for correct behavior.
affects: >=11.1
gotchaPyObjC framework wrappers, including `pyobjc-framework-videosubscriberaccount`, do not contain direct API documentation. Developers must refer to Apple's official VideoSubscriberAccount documentation for details on how to use the framework's classes, methods, and properties.fixConsult Apple's Developer Documentation for the VideoSubscriberAccount framework (e.g., `developer.apple.com/documentation/videosubscriberaccount`).
affects: All versions
gotchaThe `VideoSubscriberAccount` framework is deeply integrated with macOS security features and often requires specific application entitlements to function correctly (e.g., `com.apple.developer.video-subscriber-account.request`). Without these, framework calls may fail or return no data, particularly for authentication requests.fixEnsure your macOS application is properly code-signed and configured with the necessary entitlements through Xcode for accessing TV provider accounts.
affects: All versions
gotchaWhen subclassing Objective-C classes in Python and implementing both `__new__` and `__init__`, special care is needed. PyObjC 10.3 initially broke support for calling `__init__` when `__new__` was user-implemented, though 10.3.1 reintroduced some compatibility. Code relying on the PyObjC-provided `__new__` still cannot use `__init__` for custom initialization.fixIf implementing `__new__` in a Python subclass of an Objective-C class, ensure your initialization logic is handled within `__new__` or carefully consult the PyObjC documentation for `__init__` compatibility in subsequent versions. For classes relying on PyObjC's `__new__`, `__init__` cannot be used for initialization.
affects: >=10.3, <10.3.1 (partially fixed in 10.3.1)
Upgrade
Version history
12.2latest on PyPI · released May 30, 2026
Audit
Dependencies
pythonrequiredRequires Python 3.10 or newer.
pyobjc-corerequiredThis package is a wrapper for a specific macOS framework; 'pyobjc-core' provides the underlying bridge between Python and Objective-C.