justvanrossum / fontgoggles

FontGoggles: Visual OTL Preview and QA
Apache License 2.0
399 stars 42 forks source link

Scheduled weekly dependency update for week 22 #414

Closed pyup-bot closed 4 months ago

pyup-bot commented 4 months ago

Update pyobjc from 10.2 to 10.3.

Changelog ### 10.3 ``` ------------ * The release contains binary wheels for Python 3.13 PyObjC does at this time not support the experimental free threading support in Python 3.13. * :issue:`569`: Removed the workaround for a bug in Xcode 15.0 The workaround is no longer necessary, and caused problems when building with the Command Line Tools development tools from Apple. * Updated SDK bindings for macOS 14.5 * A minor change in the (currently private) tooling I use for collecting the raw metadata resulted in minor fixes to the framework bindings, in particular for metadata for a number of block and function typed arguments and return values. * :issue:`275`: It is now possible to create instances of Objective-C classes by calling the class, e.g. ``NSObject()`` instead of ``NSObject.alloc().init()``. The implementation of ``__new__`` forwards calls to the underlying ``SomeClass.alloc().init...()`` pattern. In particular, all public init methods are translated into sets of keyword arguments: - Remove `init` or `initWith` from the start of the selector name - Lowercase the first character of what's left over - The strings before colons are acceptable keywords, in that order For example, given a selector ``initWithX:y:`` the ``__new__`` method will accept ``x, y`` as keyword arguments, in that order. Framework bindings have been updated with additional metadata to support this pattern, and the sets of keyword arguments are automatically calculated for subclasses in written in Python. The limitation on the order of keyword arguments may be lifted in a future version, it is currently present to keep the code closer to the Objective-C spelling which should make it easier to look up documentation on Apple's website. * For some Objective-C classes some of the `init` and `new` methods are not available even if they are available in super classes. Those methods are marked with ``NS_UNAVAILABLE`` in Apple's headers. As of this version these methods are also not available in Python code, trying to call them will result in an exception. To make methods unavailable in Python classes set these methods to ``None``, e.g.: python class MyObject(NSObject): init = None NS_UNAVAILABLE * Added :func:`objc.registerUnavailableMethod`, :func:`objc.registerNewKeywordsFromSelector` and :func:`objc.registerNewKeywords` to support the generic ``__new__`` in framework bindings. A limitation for ``registerUnavailableMethod`` is that it is currently not supported to reintroduce the method in a subclass, primarily because that functionality is not needed for framework bindings. * Instantiating an Objective-C class by calling the class (e.g. invoking ``__new__``) will not call ``__init__`` even if one is defined. The implementation of a subclass of ``NSObject`` should always follow the Objective-C convention for initializing using one or more methods with a name starting with ``init``. This can affect code that manually defines a ``__new__`` method for an Objective-C class, in previous versions that was the only way to create instances in a Pythontic way. * ``NSArray``, ``NSMutableArray``, ``NSSet`` and ``NSMutableSet`` accepted a ``sequence`` keyword argument in previous versions. This is no longer supported. It is still supported to create instances using a positional argument for a sequence, e.g. ``NSArray([1, 2, 3])``. * ``NSData``, ``NSMutableData``, ``NSDecimal``, ``NSString`` and ``NSMutableString`` accepted a ``value`` keyword argument in previous versions. This is no longer supported. It is still supported to create instances using a positional argument, e.g. ``NSData(b"hello")``. * ``NSDictionary`` and ``NSMutableDictionary`` do *not* support the generic new interface because this conflicts with having a similar interface to ``dict`` for creating instances. That is, ``NSDictionary(a=4, b=5)`` is the same as ``NSDictionary({"a":4, "b":5})``, and not like ``NSDictionary.alloc().initWithA_b_(4, 5)``. ``` ### 10.2.1 ``` -------------- * Fix possible memory corruption in the implementation of ``forwardInvocation:`` for Python classes. * Fix build error when building with a python configured with ``--with-pydebug``. * Don't override ``tp_dealloc`` slot in :class:`objc.super` but use the one inherited from :class:`super`. This makes sure construction and deallocation are consistent with each other (found while testing with ``--with-pydebug``). * Fix deprecation warning while compiling ``pyobjc-framework-Quartz``. ```
Links - PyPI: https://pypi.org/project/pyobjc - Changelog: https://data.safetycli.com/changelogs/pyobjc/ - Repo: https://github.com/ronaldoussoren/pyobjc

Update fonttools[woff,type1,lxml,ufo,unicode] from 4.52.1 to 4.53.0.

Changelog ### 4.53.0 ``` ---------------------------- - [ttLib.removeOverlaps] Support CFF table to aid in downconverting CFF2 fonts (3528) - [avar] Fix crash when accessing not-yet-existing attribute (3550) - [docs] Add buildMathTable to otlLib.builder documentation (3540) - [feaLib] Allow UTF-8 with BOM when reading features (3495) - [SVGPathPen] Revert rounding coordinates to two decimal places by default (3543) - [varLib.instancer] Refix output filename decision-making (3545, 3544, 3548) ``` ### 4.52.4 ``` ---------------------------- - [varLib.cff] Restore and deprecate convertCFFtoCFF2 that was removed in 4.52.0 release as it is used by downstream projects (3535). ``` ### 4.52.3 ``` ---------------------------- - Fixed a small syntax error in the reStructuredText-formatted NEWS.rst file which caused the upload to PyPI to fail for 4.52.2. No other code changes. ``` ### 4.52.2 ``` ---------------------------- - [varLib.interpolatable] Ensure that scipy/numpy output is JSON-serializable (3522, 3526). - [housekeeping] Regenerate table lists, to fix pyinstaller packaging of the new ``VARC`` table (3531, 3529). - [cffLib] Make CFFToCFF2 and CFF2ToCFF more robust (3521, 3525). ```
Links - PyPI: https://pypi.org/project/fonttools - Changelog: https://data.safetycli.com/changelogs/fonttools/ - Repo: http://github.com/fonttools/fonttools

Update ufo2ft from 3.2.3 to 3.2.4.

Changelog ### 3.2.4 ``` - Fix variable anchors when DesignSpace source specifies a layer (842). - Update the old kernFeatureWriter2.py to be able to output variable FEA for use when compiling features once per VF (841, 845). ```
Links - PyPI: https://pypi.org/project/ufo2ft - Changelog: https://data.safetycli.com/changelogs/ufo2ft/ - Repo: https://github.com/googlefonts/ufo2ft