Skip to content

0.5.0

Latest
Compare
Choose a tag to compare
@github-actions github-actions released this 07 Jan 00:24
· 3 commits to main since this release
6b8b2a4

Features

  • Retain Objective-C objects when creating Python wrappers and release them when the Python wrapped is garbage collected. This means that manual retain calls and subsequent release or autorelease calls from Python are no longer needed with very few exceptions, for example when writing implementations of copy that return an existing object. (#256)
  • Support for Python 3.14 was added. (#529)

Bugfixes

  • Protection was added against a potential race condition when loading methods defined on a superclass. (#473)
  • A workaround for python/cpython#81061 is now conditionally applied only for the Python versions that require it (Python 3.9 and earlier). (#517)

Backward Incompatible Changes

  • Manual calls to release or autorelease no longer cause Rubicon to skip releasing an Objective-C object when its Python wrapper is garbage collected. This means that fewer retain than release calls will cause segfaults on garbage collection. Review your code carefully for unbalanced retain and release calls before updating. (#256)
  • Python 3.8 is no longer a supported platform. (#529)

Documentation

  • Building Rubicon ObjC's documentation now requires the use of Python 3.12. (#496)

Misc