This 0.3.0
release includes py
and pyjs
externals for macOS based on the recently released Python 3.13.0 engine.
One positive outcome of this Python version change is that externals are measurably smaller than the prior release due to the removal of a number of deprecated modules.
As usual, many arm64
and x86_64
external build variants are provided in this release. All are fully codesigned and notarized, which makes them also usable in your own projects and standalones. Please refer to the project's README
for an extended overview of the specific differences between these variants, but basically the '-ext' suffix in the name means a self-contained Max external, the '-pkg' suffix means a Max package where the externals in the 'externals' folder depend on the python library in the 'support' folder:
shared-ext
: self-contained external, fully loaded, dynamically linked.shared-ext-tiny
: self-contained external, size-minimized, dynamically linked.static-ext
: self-contained external, fully loaded, statically linked.static-ext-tiny
: self-contained external, size-minimized, statically linked.framework-ext
: self-contained external, fully loaded, built as a framework (dynamically linked).framework-pkg
: package-structure, Python.framework is in the support folder of the package with the py and pyjs externals linked to it.homebrew-ext
: self-contained external, fully loaded, built as a framework, (dynamically linked) but smaller than framework-ext.homebrew-pkg
: package-structure, Python.framework is in the support folder of the package with the py and pyjs externals linked to it (smaller than framework-pkg).
Variants which embed numpy
have the -np
suffix in their name:
In this case, the provided example of using numpy
to read/write Max buffer~ objects will likely be useful:
py-js/patchers/tests/test_api/test_api_buffer_np.maxpat
Changelog
Coming relatively soon after the prior 0.2.6 release, it only includes the following bug fixes, changes and enhancements:
-
Added support for Python 3.13.x
-
Added
make install-numpy
for automatically building and adding a shrunk version of numpy to the previously built external or package