{"id":6080,"library":"pyobjc-framework-cinematic","title":"PyObjC Framework Cinematic","description":"PyObjC is a bridge between Python and Objective-C, enabling Python scripts to use macOS frameworks. This specific package, `pyobjc-framework-cinematic` (version 12.1), provides Python wrappers for Apple's Cinematic framework on macOS. PyObjC generally has a regular release cadence, aligning with macOS SDK updates and Python version support changes.","status":"active","version":"12.1","language":"python","source_language":"en","source_url":"https://github.com/ronaldoussoren/pyobjc","tags":["macOS","objective-c","cocoa","apple","framework","cinematic"],"install":[{"cmd":"pip install pyobjc-framework-cinematic","lang":"bash","label":"Install latest version"}],"dependencies":[{"reason":"Provides the core Python-Objective-C bridge functionality.","package":"pyobjc-core"}],"imports":[{"note":"Most classes and functions from the Cinematic framework are exposed directly under the 'Cinematic' module.","symbol":"Cinematic","correct":"import Cinematic"},{"note":"The core PyObjC bridge module for utility functions and types.","symbol":"objc","correct":"import objc"},{"note":"Often needed for basic macOS types and utilities, typically from `pyobjc-framework-Cocoa` (a common `pyobjc` meta-package dependency).","symbol":"Foundation","correct":"import Foundation"}],"quickstart":{"code":"import Cinematic\nimport Foundation\nimport objc\n\n# Note: This is a placeholder. Actual usage requires consulting Apple's\n# Cinematic framework documentation for available classes and methods.\n\n# Attempt to get a hypothetical Cinematic object (replace with actual class/method)\ntry:\n    # Example: Trying to access a class like CIMovie, common pattern is 'FrameworkName.ClassName'\n    movie_manager_class = Cinematic.NSObject.alloc().init() # Fallback to NSObject as a generic example\n    print(f\"Successfully accessed a Cinematic-related object: {movie_manager_class}\")\n    # Further interaction would depend on the specific Cinematic API\nexcept Exception as e:\n    print(f\"Could not access Cinematic framework classes (this is expected if no specific Cinematic API is called): {e}\")\n\n# Example of using a basic Foundation type\nns_string = Foundation.NSString.stringWithString_(\"Hello from PyObjC Cinematic!\")\nprint(f\"Foundation NSString example: {ns_string}\")\n\n# Example of using a core objc bridge utility\nprint(f\"PyObjC bridge version: {objc.__version__}\")","lang":"python","description":"This quickstart demonstrates importing the `Cinematic` framework module along with `Foundation` (for common macOS types) and the core `objc` bridge. It shows a generic pattern for instantiating a (placeholder) class within the `Cinematic` module. Actual functional code would require referring to Apple's Cinematic framework documentation for specific classes and methods, as PyObjC provides direct Pythonic access to these Objective-C APIs."},"warnings":[{"fix":"Upgrade Python to 3.10 or later, or use an older PyObjC version (e.g., v11.x) that supports Python 3.9.","message":"PyObjC v12.0 and later dropped support for Python 3.9. Ensure your Python environment is 3.10 or newer.","severity":"breaking","affected_versions":">=12.0"},{"fix":"Upgrade Python to 3.9 or later.","message":"PyObjC v11.0 and later dropped support for Python 3.8. Ensure your Python environment is 3.9 or newer.","severity":"breaking","affected_versions":">=11.0"},{"fix":"Migrate away from the `IMServicePlugIn` framework, as it is no longer supported by macOS or PyObjC.","message":"The `IMServicePlugIn` framework bindings were removed in PyObjC v10.0 as the entire framework was deprecated and removed by Apple in macOS 14.","severity":"breaking","affected_versions":">=10.0"},{"fix":"Review custom Objective-C initializers implemented in Python, particularly those interacting with `alloc` and `init` patterns, to ensure they adhere to ARC expectations.","message":"PyObjC v11.1 introduced changes to how initializer methods are handled to align with `clang`'s Automatic Reference Counting (ARC) documentation. Methods in the 'init' family now correctly model stealing a reference to `self` and returning a new reference. This might subtly change memory management behavior for custom initializers.","severity":"gotcha","affected_versions":">=11.1"},{"fix":"Avoid using `__init__` for classes that rely on PyObjC's default `__new__` implementation or carefully test `__init__` behavior if you provide a custom `__new__`.","message":"PyObjC v10.3 temporarily broke the ability to use `__init__` when a class or its superclasses implement `__new__`. While partially re-introduced in v10.3.1 for user-implemented `__new__`, code relying on PyObjC's provided `__new__` still cannot use `__init__` for custom initialization.","severity":"gotcha","affected_versions":"10.3.0, >=10.3.1 (specific scenarios)"},{"fix":"For PyObjC v12.0, ensure your Python environment is 3.10 or newer. For Python 3.9, you must use an older PyObjC version (e.g., v11.x) or upgrade to PyObjC v12.1+ if Python 3.10+ is available.","message":"PyObjC v12.0's packaging metadata incorrectly indicated Python 3.9 support, leading to potential installation issues on Python 3.9. This was corrected in v12.1.","severity":"gotcha","affected_versions":"12.0"}],"env_vars":null,"search_vec":"'12.1':29 'align':47 'appl':34,62 'bridg':7 'c':13,60 'cadenc':46 'chang':56 'cinemat':3,27,36,64 'cocoa':61 'enabl':14 'framework':2,20,26,37,63 'general':41 'maco':19,39,49,57 'object':12,59 'objective-c':11,58 'packag':23 'provid':30 'pyobjc':1,4,25,40 'pyobjc-framework-cinemat':24 'python':9,15,31,53 'regular':44 'releas':45 'script':16 'sdk':50 'specif':22 'support':55 'updat':51 'use':18 'version':28,54 'wrapper':32","created_at":"2026-04-14T18:41:04.240877+00:00","updated_at":"2026-04-16T19:10:35.303386+00:00","problems":{"verify_error":"× Failed to build `pyobjc-framework-metal==12.2.1`\n  ├─▶ The build backend returned an error\n  ╰─▶ Call to `setuptools.build_meta.build_wheel` failed (exit status: 1)\n\n      [stderr]\n      Traceback (most recent call last):\n        File \"<string>\", line 14, in <module>\n        File\n      \"/home/xor/"},"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"12.2","cli_name":"","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/ronaldoussoren/pyobjc","docs":"https://pyobjc.readthedocs.io/en/latest/","changelog":null,"pypi":"https://pypi.org/project/pyobjc-framework-cinematic/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":[],"base_url":null,"auth_type":null,"provenance":{"verified_status":"install_fail","verified_at":"2026-06-28","last_verified":"2026-06-28","next_check":"2026-07-05","install_tag":null}}