Python Support
Compose supports Python 3.8 as a scripting language.
Supported Packages - Windows
absl-py 2.2.1 aiohappyeyeballs 2.4.4 aiohttp 3.10.11 aiosignal 1.3.1 alabaster 0.7.13 alembic 1.14.1 annotated-types 0.7.0 antlr4-python3-runtime 4.13.2 anyio 4.6.2 apipkg 3.0.2 appdirs 1.4.4 argon2-cffi 23.1.0 argon2-cffi-bindings 21.2.0 asn1crypto 1.5.1 astroid 2.11.7 asttokens 3.0.0 astunparse 1.6.3 async-lru 2.0.4 async-timeout 5.0.1 atomicwrites 1.4.1 attrs 25.3.0 Automat 24.8.1 babel 2.17.0 backcall 0.2.0 backports.tarfile 1.2.0 bcrypt 4.2.1 beautifulsoup4 4.13.3 bleach 6.1.0 blinker 1.8.2 boto3 1.37.21 botocore 1.37.21 Brotli 1.1.0 bson 0.5.10 CacheControl 0.14.2 cached-property 2.0.1 cachetools 5.5.2 cachy 0.3.0 certifi 2025.1.31 cffi 1.17.1 chardet 5.2.0 charset-normalizer 3.4.1 cleo 0.8.1 click 8.1.8 clikit 0.6.2 cloudpickle 3.1.1 colorama 0.4.6 comm 0.2.2 configparser 7.1.0 constantly 15.1.0 contourpy 1.1.1 cov-core 1.15.0 coverage 7.5.4 cppy 1.3.1 crashtest 0.4.1 cryptography 44.0.2 cycler 0.12.1 Cython 0.29.37 cytoolz 1.0.1 dask 2023.5.0 databricks-sdk 0.48.0 debugpy 1.8.13 decorator 5.2.1 deepdiff 7.0.1 defusedxml 0.7.1 Deprecated 1.2.18 deprecation 2.1.0 derivative 0.6.0 dill 0.3.9 dip_commercial 0.4.6 distlib 0.3.9 dnspython 2.6.1 docker 7.1.0 docopt 0.6.2 docutils 0.20.1 entrypoints 0.4 et_xmlfile 2.0.0 exceptiongroup 1.2.2 execnet 2.1.1 executing 2.2.0 ezdxf 1.1.4 falcon 3.1.3 falcon-jsonify 1.2 fastapi 0.115.12 fastjsonschema 2.21.1 filelock 3.16.1 flake8 7.1.2 Flask 3.0.3 flatbuffers 20250318192437 FMPy 0.3.21 fonttools 4.56.0 frozenlist 1.5.0 fsspec 2025.3.0 future 1.0.0 gast 0.4.0 GitPython 3.1.44 google-auth 2.38.0 google-pasta 0.2.0 graphene 3.4.3 graphql-core 3.2.6 graphql-relay 3.2.0 graphviz 0.20.3 greenlet 3.1.0 grpcio 1.68.1 gunicorn 23.0.0 h11 0.14.0 h5py 3.7.0 hdbscan 0.8.37 html5lib 1.1 httpcore 1.0.7 httpx 0.28.1 hyperlink 21.0.0 hypothesis 6.113.0 idna 3.10 imageio 2.35.1 imagesize 1.4.1 importlib_metadata 8.5.0 importlib_resources 6.4.5 imutils 0.5.4 incremental 24.7.2 iniconfig 2.1.0 invoke 2.2.0 ipykernel 6.29.5 ipyparallel 9.0.1 ipython 8.12.3 ipython_genutils 0.2.0 ipywidgets 8.1.3 isort 5.13.2 itsdangerous 2.2.0 jaraco.classes 3.4.0 jaraco.context 6.0.1 jaraco.functools 4.1.0 jdcal 1.4.1 jedi 0.19.2 jeepney 0.9.0 Jinja2 3.1.6 jmespath 1.0.1 joblib 1.4.2 json5 0.10.0 jsondiff 2.2.1 jsonpath-ng 1.7.0 jsonschema 4.23.0 jsonschema-specifications 2023.12.1 jupyter 1.1.1 jupyter-console 6.6.2 jupyter-events 0.10.0 jupyter-lsp 2.2.5 jupyter_client 8.6.3 jupyter_core 5.7.2 jupyter_server 2.14.2 jupyter_server_terminals 0.5.3 jupyterlab 4.3.6 jupyterlab_pygments 0.3.0 jupyterlab_server 2.27.3 jupyterlab_widgets 3.0.11 keras 2.7.0 Keras_Preprocessing 1.1.2 keyring 25.5.0 kiwisolver 1.4.6 lark 1.2.2 latex2mathml 3.77.0 lazy-object-proxy 1.10.0 llvmlite 0.41.1 locket 1.0.0 lxml 4.9.3 Mako 1.3.9 Markdown 3.7 markdown-it-py 3.0.0 MarkupSafe 2.1.5 mathml2omml 0.0.2 matplotlib 3.7.5 matplotlib-inline 0.1.7 maturin 1.8.2 mccabe 0.7.0 mdurl 0.1.2 metakernel 0.30.2 mflow 0.0.4 mglearn 0.2.0 mistune 0.8.4 mlflow 2.17.2 mlflow-skinny 2.17.2 mock 5.2.0 more-itertools 10.5.0 mpmath 1.3.0 msgpack 1.1.0 multidict 6.1.0 multipledispatch 1.0.0 nats-py 2.10.0 nbclient 0.10.1 nbconvert 6.5.4 nbformat 5.10.4 nest_asyncio 1.6.0 networkx 3.1 nh3 0.2.21 nkeys 0.2.1 nltk 3.9.1 nose 1.3.7 nose2 0.15.1 notebook 7.3.3 notebook_shim 0.2.4 numba 0.58.1 numpy 1.22.1 numpydoc 1.6.0 oldest-supported-numpy 2023.12.21 olefile 0.47 openpyxl 3.1.5 opentelemetry-api 1.31.1 opentelemetry-sdk 1.31.1 opentelemetry-semantic-conventions 0.52b1 opt_einsum 3.4.0 ordered-set 4.1.0 overrides 7.7.0 packaging 24.2 paho-mqtt 2.1.0 pandas 2.0.3 pandocfilters 1.5.1 paramiko 3.5.1 parso 0.8.4 partd 1.4.1 pastel 0.2.1 pathlib2 2.3.7.post1 pbr 6.1.1 pexpect 4.8.0 pickleshare 0.7.5 pika 1.3.2 pillow 10.4.0 pkgconfig 1.5.5 pkginfo 1.12.1.2 pkgutil_resolve_name 1.3.10 platformdirs 4.3.6 plotly 5.24.1 pluggy 1.5.0 ply 3.11 poetry 1.3.2 poetry-core 1.9.1 portalocker 3.0.0 portpicker 1.6.0 prettytable 3.11.0 prometheus_client 0.21.1 prompt_toolkit 3.0.50 protobuf 3.20.3 psutil 7.0.0 pure_eval 0.2.3 py 1.11.0 py-make 0.1.2 pyarrow 16.1.0 pyasn1 0.6.1 pyasn1_modules 0.4.1 pybind11 2.13.6 pycodestyle 2.12.1 pycparser 2.22 pydantic 2.10.6 pydantic_core 2.27.2 pydash 8.0.5 pyDOE3 1.0.4 pydot 3.0.4 pyflakes 3.2.0 Pygments 2.19.1 PyHamcrest 2.1.0 pylev 1.4.0 pylint 2.14.5 PyNaCl 1.5.0 pyodbc 5.2.0 pyparsing 3.1.4 pypiserver 2.3.2 pyproject-api 1.8.0 PyQt6-commercial 6.7.1 PyQt6_sip 13.8.0 Pyro5 5.15 pyrsistent 0.20.0 pysindy 1.7.5 pyswarms 1.3.0 pytest 8.3.5 pytest-cov 6.0.0 pytest-forked 1.6.0 pytest-localserver 0.9.0.post0 pytest-reportlog 0.4.0 pytest-runner 6.0.1 pytest-timeout 2.3.1 pytest-xdist 3.6.1 python-dateutil 2.9.0.post0 python-docx 1.1.2 python-json-logger 3.3.0 python-mimeparse 2.0.0 python-pptx 1.0.2 pyttk 0.3.2 pytz 2025.2 PyWavelets 1.4.1 pywin32 305 pywin32-ctypes 0.2.3 pywinpty 2.0.14 PyYAML 6.0.2 pyzmq 25.1.2 qtconsole 5.6.1 QtPy 2.4.2 readme_renderer 43.0 referencing 0.35.1 regex 2024.11.6 reportlab 4.3.1 requests 2.32.3 requests-toolbelt 0.10.1 rfc3339_validator 0.1.4 rfc3986 2.0.0 rfc3986_validator 0.1.1 rich 13.9.4 rpds-py 0.20.1 rsa 4.9 s3transfer 0.11.4 scandir 1.10.0 schema 0.7.7 scikit-image 0.17.2 scikit-learn 1.2.2 scipy 1.6.3 SecretStorage 3.3.3 Send2Trash 1.8.3 serpent 1.41 setuptools-scm 8.2.1 shellingham 1.5.4 simplegeneric 0.8.1 singledispatch 4.1.0 six 1.17.0 sniffio 1.3.1 sortedcontainers 2.4.0 soupsieve 2.6 Sphinx 5.1.1 sphinx_rtd_theme 0.4.3 sphinxcontrib-asyncio 0.3.0 sphinxcontrib-websupport 1.2.4 SQLAlchemy 2.0.39 sqlparse 0.5.3 stack_data 0.6.3 starlette 0.44.0 sympy 1.13.3 tabulate 0.8.10 tenacity 9.0.0 tensorboard 2.7.0 termcolor 2.4.0 terminado 0.18.1 testpath 0.6.0 threadpoolctl 3.2.0 tifffile 2024.5.22 tinycss2 1.4.0 TkinterTreectrl 2.0 tomli 2.0.2 tomlkit 0.13.2 toolz 1.0.0 tornado 6.4.2 tox 4.23.2 tqdm 4.67.1 traitlets 5.14.3 twine 6.0.1 Twisted 24.11.0 typed_ast 1.5.5 typing_extensions 4.13.0 tzdata 2025.2 ujson 5.10.0 urllib3 1.26.18 uvicorn 0.33.0 virtualenv 20.29.3 waitress 3.0.0 wcwidth 0.2.13 webencodings 0.5.1 websocket-client 1.8.0 Werkzeug 3.0.6 widgetsnbextension 4.0.11 wrapt 1.17.2 xlrd 2.0.1 XlsxWriter 3.2.2 xlwt 1.3.0 yarl 1.13.1 zipp 3.20.2 zope.event 5.0 zope.interface 7.2
Supported Packages - Linux
absl-py 2.2.1 aiohappyeyeballs 2.4.4 aiohttp 3.10.11 aiosignal 1.3.1 alabaster 0.7.13 alembic 1.14.1 annotated-types 0.7.0 antlr4-python3-runtime 4.13.2 anyio 4.6.2 apipkg 3.0.2 appdirs 1.4.4 argon2-cffi 23.1.0 argon2-cffi-bindings 21.2.0 asn1crypto 1.5.1 astroid 2.11.7 asttokens 3.0.0 astunparse 1.6.3 async-lru 2.0.4 async-timeout 5.0.1 atomicwrites 1.4.1 attrs 25.3.0 Automat 24.8.1 babel 2.17.0 backcall 0.2.0 backports.tarfile 1.2.0 bcrypt 4.2.1 beautifulsoup4 4.13.3 bleach 6.1.0 blinker 1.8.2 boto3 1.37.21 botocore 1.37.21 Brotli 1.1.0 bson 0.5.10 CacheControl 0.14.2 cached-property 2.0.1 cachetools 5.5.2 cachy 0.3.0 certifi 2025.1.31 cffi 1.17.1 chardet 5.2.0 charset-normalizer 3.4.1 cleo 0.8.1 click 8.1.8 clikit 0.6.2 cloudpickle 3.1.1 colorama 0.4.6 comm 0.2.2 configparser 7.1.0 constantly 15.1.0 contourpy 1.1.1 cov-core 1.15.0 coverage 7.5.4 cppy 1.3.1 crashtest 0.4.1 cryptography 44.0.2 cycler 0.12.1 Cython 0.29.37 cytoolz 1.0.1 dask 2023.5.0 databricks-sdk 0.48.0 debugpy 1.8.13 decorator 5.2.1 deepdiff 7.0.1 defusedxml 0.7.1 Deprecated 1.2.18 deprecation 2.1.0 derivative 0.6.0 dill 0.3.9 dip_commercial 0.4.6 distlib 0.3.9 dnspython 2.6.1 docker 7.1.0 docopt 0.6.2 docutils 0.20.1 entrypoints 0.4 et_xmlfile 2.0.0 exceptiongroup 1.2.2 execnet 2.1.1 executing 2.2.0 ezdxf 1.1.4 falcon 3.1.3 falcon-jsonify 1.2 fastapi 0.115.12 fastjsonschema 2.21.1 filelock 3.16.1 flake8 7.1.2 Flask 3.0.3 flatbuffers 20250318231640 FMPy 0.3.21 fonttools 4.56.0 frozenlist 1.5.0 fsspec 2025.3.0 future 1.0.0 gast 0.4.0 GitPython 3.1.44 google-auth 2.38.0 google-pasta 0.2.0 graphene 3.4.3 graphql-core 3.2.6 graphql-relay 3.2.0 graphviz 0.20.3 greenlet 3.1.0 grpcio 1.68.1 gunicorn 23.0.0 h11 0.14.0 h5py 3.7.0 hdbscan 0.8.37 html5lib 1.1 httpcore 1.0.7 httpx 0.28.1 hyperlink 21.0.0 hypothesis 6.113.0 idna 3.10 imageio 2.35.1 imagesize 1.4.1 importlib_metadata 8.5.0 importlib_resources 6.4.5 imutils 0.5.4 incremental 24.7.2 iniconfig 2.1.0 invoke 2.2.0 ipykernel 6.29.5 ipyparallel 9.0.1 ipython 8.12.3 ipython_genutils 0.2.0 ipywidgets 8.1.3 isort 5.13.2 itsdangerous 2.2.0 jaraco.classes 3.4.0 jaraco.context 6.0.1 jaraco.functools 4.1.0 jdcal 1.4.1 jedi 0.19.2 jeepney 0.9.0 Jinja2 3.1.6 jmespath 1.0.1 joblib 1.4.2 json5 0.10.0 jsondiff 2.2.1 jsonpath-ng 1.7.0 jsonschema 4.23.0 jsonschema-specifications 2023.12.1 jupyter 1.1.1 jupyter-console 6.6.2 jupyter-events 0.10.0 jupyter-lsp 2.2.5 jupyter_client 8.6.3 jupyter_core 5.7.2 jupyter_server 2.14.2 jupyter_server_terminals 0.5.3 jupyterlab 4.3.6 jupyterlab_pygments 0.3.0 jupyterlab_server 2.27.3 jupyterlab_widgets 3.0.11 keras 2.7.0 Keras_Preprocessing 1.1.2 keyring 25.5.0 kiwisolver 1.4.6 lark 1.2.2 latex2mathml 3.77.0 lazy-object-proxy 1.10.0 llvmlite 0.41.1 locket 1.0.0 lxml 4.9.3 Mako 1.3.9 Markdown 3.7 markdown-it-py 3.0.0 MarkupSafe 2.1.5 mathml2omml 0.0.2 matplotlib 3.7.5 matplotlib-inline 0.1.7 maturin 1.8.2 mccabe 0.7.0 mdurl 0.1.2 metakernel 0.30.2 mflow 0.0.4 mglearn 0.2.0 mistune 0.8.4 mlflow 2.17.2 mlflow-skinny 2.17.2 mock 5.2.0 more-itertools 10.5.0 mpmath 1.3.0 msgpack 1.1.0 multidict 6.1.0 multipledispatch 1.0.0 nats-py 2.10.0 nbclient 0.10.1 nbconvert 6.5.4 nbformat 5.10.4 nest_asyncio 1.6.0 networkx 3.1 nh3 0.2.21 nkeys 0.2.1 nltk 3.9.1 nose 1.3.7 nose2 0.15.1 notebook 7.3.3 notebook_shim 0.2.4 numba 0.58.1 numpy 1.22.1 numpydoc 1.6.0 oldest-supported-numpy 2023.12.21 olefile 0.47 openpyxl 3.1.5 opentelemetry-api 1.31.1 opentelemetry-sdk 1.31.1 opentelemetry-semantic-conventions 0.52b1 opt_einsum 3.4.0 ordered-set 4.1.0 overrides 7.7.0 packaging 24.2 paho-mqtt 2.1.0 pandas 2.0.3 pandocfilters 1.5.1 paramiko 3.5.1 parso 0.8.4 partd 1.4.1 pastel 0.2.1 pathlib2 2.3.7.post1 pbr 6.1.1 pexpect 4.8.0 pickleshare 0.7.5 pika 1.3.2 pillow 10.4.0 pkgconfig 1.5.5 pkginfo 1.12.1.2 pkgutil_resolve_name 1.3.10 platformdirs 4.3.6 plotly 5.24.1 pluggy 1.5.0 ply 3.11 poetry 1.3.2 poetry-core 1.9.1 portalocker 3.0.0 portpicker 1.6.0 prettytable 3.11.0 prometheus_client 0.21.1 prompt_toolkit 3.0.50 protobuf 3.20.3 psutil 7.0.0 ptyprocess 0.7.0 pure_eval 0.2.3 py 1.11.0 py-make 0.1.2 pyarrow 16.1.0 pyasn1 0.6.1 pyasn1_modules 0.4.1 pybind11 2.13.6 pycodestyle 2.12.1 pycparser 2.22 pydantic 2.10.6 pydantic_core 2.27.2 pydash 8.0.5 pyDOE3 1.0.4 pydot 3.0.4 pyflakes 3.2.0 Pygments 2.19.1 PyHamcrest 2.1.0 pylev 1.4.0 pylint 2.14.5 PyNaCl 1.5.0 pyodbc 5.2.0 pyparsing 3.1.4 pypiserver 2.3.2 pyproject-api 1.8.0 PyQt6-commercial 6.7.1 PyQt6_sip 13.8.0 Pyro5 5.15 pyrsistent 0.20.0 pysindy 1.7.5 pyswarms 1.3.0 pytest 8.3.5 pytest-cov 6.0.0 pytest-forked 1.6.0 pytest-localserver 0.9.0.post0 pytest-reportlog 0.4.0 pytest-runner 6.0.1 pytest-timeout 2.3.1 pytest-xdist 3.6.1 python-dateutil 2.9.0.post0 python-docx 1.1.2 python-json-logger 3.3.0 python-mimeparse 2.0.0 python-pptx 1.0.2 pyttk 0.3.2 pytz 2025.2 PyWavelets 1.4.1 PyYAML 6.0.2 pyzmq 25.1.2 qtconsole 5.6.1 QtPy 2.4.2 readme_renderer 43.0 referencing 0.35.1 regex 2024.11.6 reportlab 4.3.1 requests 2.32.3 requests-toolbelt 0.10.1 rfc3339_validator 0.1.4 rfc3986 2.0.0 rfc3986_validator 0.1.1 rich 13.9.4 rpds-py 0.20.1 rsa 4.9 s3transfer 0.11.4 scandir 1.10.0 schema 0.7.7 scikit-image 0.17.2 scikit-learn 1.2.2 scipy 1.6.3 SecretStorage 3.3.3 Send2Trash 1.8.3 serpent 1.41 setuptools-scm 8.2.1 shellingham 1.5.4 simplegeneric 0.8.1 singledispatch 4.1.0 six 1.17.0 sniffio 1.3.1 sortedcontainers 2.4.0 soupsieve 2.6 Sphinx 5.1.1 sphinx_rtd_theme 0.4.3 sphinxcontrib-asyncio 0.3.0 sphinxcontrib-websupport 1.2.4 SQLAlchemy 2.0.39 sqlparse 0.5.3 stack_data 0.6.3 starlette 0.44.0 sympy 1.13.3 tabulate 0.8.10 tenacity 9.0.0 tensorboard 2.7.0 termcolor 2.4.0 terminado 0.18.1 testpath 0.6.0 threadpoolctl 3.2.0 tifffile 2024.5.22 tinycss2 1.4.0 TkinterTreectrl 2.0 tomli 2.0.2 tomlkit 0.13.2 toolz 1.0.0 tornado 6.4.2 tox 4.23.2 tqdm 4.67.1 traitlets 5.14.3 twine 6.0.1 Twisted 24.11.0 typed_ast 1.5.5 typing_extensions 4.13.0 tzdata 2025.2 ujson 5.10.0 urllib3 1.26.18 uvicorn 0.33.0 virtualenv 20.29.3 waitress 3.0.0 wcwidth 0.2.13 webencodings 0.5.1 websocket-client 1.8.0 Werkzeug 3.0.6 widgetsnbextension 4.0.11 wrapt 1.17.2 xlrd 2.0.1 XlsxWriter 3.2.2 xlwt 1.3.0 yarl 1.13.1 zipp 3.20.2 zope.event 5.0 zope.interface 7.2
Known Issues
- Py TTk does not work.
- Python unit testing frame work:
- Use the following workaround to use the Python unit testing framework:
import sys import unittest def addNum(a,b): return a + b def delNum(a,b): return a - b class TestFun(unittest.TestCase): def testAdd(self): self.assertEqual(2,addNum(1,1)) def testDel(self): self.assertEqual(2,addNum(1,1)) try: if __name__ == "__main__": unittest.main(argv=[sys.argv[0]]) except SystemExit: pass - Debugger
- Built-in data types are supported.
- Imported data types are not supported in the Watch window.
- Python command window may not be usable after executing an IPython magic command, such as %quickref.
- You cannot use the tkinter package.
- Debugger watch window:
- Any element added to or deleted from the existing container is not reflected in
the Watch window. For example:
- Add a breakpoint at line 2 and add ‘
data’ to the Watch window: - Add a break point at line 4. '
data' is updated in the Watch window, but only three elements are displayed under 'data'.
- Any element added to or deleted from the existing container is not reflected in
the Watch window. For example:
- The following limitations exist when using the system commands and the
os.system() function.
- Launching a new console freezes the application on Windows.
- The following code freezes
application:
import os;os.system('cmd.exe') - Use this code as a
workaround:
import os;os.system('start cmd.exe')
- The following code freezes
application:
- Using the pause command as shown below freezes the application
on Windows and does not work as expected on Linux.
import os;os.system('pause')
- Launching a new console freezes the application on Windows.
- Installing/upgrading Python packages fails on Windows
when the install path is too long.
- Windows has limited path length support. Paths longer than MAX_PATH (historically defined as 260 characters) does not resolve and can cause errors.
- While installing/upgrading the Python package, the entire installation path is appended to the TEMP path, which can exceed the maximum path length supported by Windows.
- Example:
Compose installation path: D:\Program Files\Altair\20xx.x
Upgrading pip using the command "python.exe -m pip install --upgrade pip" creates following error message:FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Users\\<username>\\AppData\\Local\\Temp\\pip-vefbh9ve-uninstall\\program files\\altair\\20xx.x\\compose20xx.x\\common\\python\\python3.5\\win64\\lib\\site-packages\\pip\\_vendor\\requests\\packages\\urllib3\\packages\\ssl_match_hostname\\__pycache__\\__init__.cpython-35.pyc'
- Administrative rights are required to install Python
modules in restricted directories.
If Compose is installed in "C:\Program Files\...", administrative rights are required to update or install Python modules.
- To import a user-defined Python module, add the location
of the module to sys.path.
For example:
import sys; sys.path.append("D:/user_module") - While executing a Python script in the Command Window , add the "liveexecution()"
function call after the Python print statement to live
print.For example:
for i in range(1,5000): print( i ) liveexecution()
Note: You may experience unexpected results if PYTHONHOME points to a Python library version other than Python 3.8, or
if PYTHONPATH points to Python modules which are not
compatible with Python 3.8.