wpt icon indicating copy to clipboard operation
wpt copied to clipboard

Bump pyobjc-framework-quartz from 11.0 to 11.1 in /tools

Open dependabot[bot] opened this issue 5 months ago • 0 comments

Bumps pyobjc-framework-quartz from 11.0 to 11.1.

Release notes

Sourced from pyobjc-framework-quartz's releases.

v11.1

The major change in this release is aligning behaviour of the core bridge with clang's documentation for automatic reference counting <https://clang.llvm.org/docs/AutomaticReferenceCounting.html>_ for initializer methods. In particular, PyObjC now correctly models that methods in the "init" family steal a reference to self and return a new reference.

In previous version of PyObjC the proxy for [NSObject alloc] would be marked as 'partially initialized' and would be cleared when the -init method returns something else then self.

This has two problems:

  1. Behaviour is incorrect when +alloc returns a singleton whose -init method(s) are factory methods (such as NSArray in recent versions of macOS)

  2. The proxy for Objective-C objects needs to contain mutable state. This in turn requires locking in the implementation to work correctly with free-threading.

This version drops the concept of "uninitialized" values and correctly models how reference counts are handled by -init methods.

  • Update framework bindings for the macOS 15.5 SDK

  • Added bindings for the SecurityUI framework

  • Restructure the PyObjC website

    The theme of the PyObjC websites is now shibuya to give a more modern look and feel to the website.

    The actual content is mostly still the same, with some minor restructuring of pages. Restructuring will continue in future updates.

  • :class:objc.FSRef now implements :class:os.PathLike.

  • :issue:642: Fix concurrency issue when creating NSArray instances using NSArray.alloc().init....

    In previous versions the following would fail on recent versions of macOS:

    .. sourcecode:: python

    value1 = NSArray.alloc() value2 = NSArray.alloc()

    value1 = value1.init() value2 = value2.init()

... (truncated)

Changelog

Sourced from pyobjc-framework-quartz's changelog.

Version 11.1

The major change in this release is aligning behaviour of the core bridge with clang's documentation for automatic reference counting <https://clang.llvm.org/docs/AutomaticReferenceCounting.html>_ for initializer methods. In particular, PyObjC now correctly models that methods in the "init" family steal a reference to self and return a new reference.

In previous version of PyObjC the proxy for [NSObject alloc] would be marked as 'partially initialized' and would be cleared when the -init method returns something else then self.

This has two problems:

  1. Behaviour is incorrect when +alloc returns a singleton whose -init method(s) are factory methods (such as NSArray in recent versions of macOS)

  2. The proxy for Objective-C objects needs to contain mutable state. This in turn requires locking in the implementation to work correctly with free-threading.

This version drops the concept of "uninitialized" values and correctly models how reference counts are handled by -init methods.

  • Update framework bindings for the macOS 15.5 SDK

  • Added bindings for the SecurityUI framework

  • Restructure the PyObjC website

    The theme of the PyObjC websites is now shibuya to give a more modern look and feel to the website.

    The actual content is mostly still the same, with some minor restructuring of pages. Restructuring will continue in future updates.

  • :class:objc.FSRef now implements :class:os.PathLike.

  • :issue:642: Fix concurrency issue when creating NSArray instances using NSArray.alloc().init....

    In previous versions the following would fail on recent versions of macOS:

    .. sourcecode:: python

    value1 = NSArray.alloc() value2 = NSArray.alloc()

... (truncated)

Commits
  • 54423f1 Issue #651: Fix build issue in pyobjc-core on macOS 10.12
  • 2dc6101 Update release date
  • cbaf9de Recent free-threaded changes broke 3.13, fix again
  • 68f68ec Fix issue that prevented running the full test suite
  • 4bbcdd0 Add error checking to calls to PyObject_IsTrue where needed
  • 63f4be6 Last bit of the removal of pkg_resources usage.
  • bf1d1f4 Add type annotation to some development helpers
  • 6c9a01c Drop dependency on pkg_resources
  • f09eca2 Fix build error with Python 3.10
  • 9b6493f Re-enable optimized build
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

dependabot[bot] avatar Jun 17 '25 00:06 dependabot[bot]