Python Embeddable Distribution (PED)¶
Python Distribution¶
In the original Python Engine SDK, Alteryx Designer uses a Miniconda installation with virtual
environments to run Python SDK plugins. However, this results in a folder that is
2.5 GB and contains 86,000 files. The Designer install now comes with an embedded
Python distribution (about 15 MB) that is used by Designer’s out-of-process manager
to run the Python SDK Plugin, which is now bundled as a shiv
artifact.
Packaging Python SDK Plugin and Creating YXI¶
To leverage the PED, we bundle the Python SDK plugins into a .pyz
file using shiv
,
which you can run directly with the PED. The .pyz
format is a Python zipapp, part of PEP 441.
To package the plugin workspace, use the SDK command ayx_plugin_cli create-yxi
. Once you
create the YXI, you can install it and use it from Designer. The command ayx_plugin_cli designer-install
packages the YXI and installs the plugin for you. The plugins inside of the YXI
have a manifest.json
file that dictates which Python version Designer uses to run the
Python SDK Plugin. For now, the version is set to 3.8, but support for more versions will
be added in the future.
External Links