Python 3.11.6+numpy externals for Max (pre-release)
Pre-releaseThis pre-release contains two pairs of codesigned and notarized Python 3.11.6 externals (py and pyjs) based on the minimal shared-tiny-ext variant.
Notably,
-
The first pair includes a tiny (9.1 MB) version of
pywhich contains a greatly enhanced builtinapimodule that wraps a decent subset of the Max c-api.The revised
apimodule now includes a bunch of cython extension classes which correspond to Max objects and data-structures:MaxObject,Atom,Table,Buffer,Dictionary,Database,Binbuf,Atombuf,Patcher, andPyExternal.The
Bufferclass in particular, thanks to feedback from @jamesb93 now enables array-based modules such as the builtinarraymodule andnumpyto efficiently read from and write tobuffer~objects.A group of pure python tests for the
apimodule are included in theexamples/testsfolder with related test patchers in thepatchers/testsfolder. -
The
numpyversion of thepyexternal contains everything in (1) but also includes a recent version ofnumpyas well (but without the BLAS and LAPACK linear algebra libraries), and is around 20.9 MB in size. -
In addition, the latest version of the
pyjsjavascript extension is included to enable a bridge between python3 and the javascript Max api inside the[js]object (but without theapimodule ornumpy) at around 8.1 MB in size.
Enjoy!