jsc-logo.jpg

Author: Jens Henrik Göbbert

List of included Python packages


This lists the python packages available and installed by the install script for Python, SciPy-Stack and Jupyter:

  • $EBROOTPYTHON/easybuild/*.eb
  • $EBROOTSCIPYMINSTACK/easybuild/*.eb
  • $EBROOTJUPYTER/easybuild/*.eb
In [ ]:
!ls $EBROOTJUPYTER/lib/python3.6/site-packages/ | grep .dist-info > ${PKG_DISTINFO}
In [1]:
pkg_list = [
        # Python module
                ("setuptools",      "41.6.0",    ""),
                ("webencodings",    "0.5.1",     ""),
                ("six",             "1.12.0",    ""),
                ("decorator",       "4.4.0",     ""),
                ("MarkupSafe",      "1.1.1",     "markupsafe"),
                ("more-itertools",  "7.2.0",     "more_itertools"),
                ("pickleshare",     "0.7.5",     ""),
                ("jedi",            "0.15.1",    ""),
                ("wcwidth",         "0.1.7",     ""),
                ("attr",            "19.3.0",    ""),
                ("parso",           "0.5.1",     ""),
                ("jinja2",          "2.10.1",    ""),
                ("pytz",            "2019.3",    ""),
                ("pyparsing",       "2.2.0",     ""),
                ("packaging",       "19.2",      ""),
                ("urllib3",         "1.25.6",    ""),
                ("certifi",         "2019.9.11", ""),
                ("requests",        "2.22.0",    ""),
                ("python-dateutil", "2.8.1",     "dateutil"),
                ("Pillow",          "6.2.1",     "PIL"),
                ("ply",             "3.11",      ""),
                ("pyrsistent",      "0.15.4",    ""),
                ("lxml",            "4.4.1",     ""),
                ("idna",            "2.8",       ""),
                ("chardet",         "3.0.4",     ""),
                ("pycparser",       "2.19",      ""),
                ("cffi",            "1.13.2",    ""),
                ("psutil",          "5.6.3",     ""),
                ("SQLAlchemy",      "1.3.10",    "sqlalchemy"),
                ("certipy",         "0.1.3",     ""),
                ("python-editor",   "1.0.4",     "editor"),
                ("Mako",            "1.1.0",     "mako"),
                ("alembic",         "1.2.1",     ""),
                ("click",           "7.0",       ""),
                ("appdirs",         "1.4.3",     ""),
                ("cloudpickle",     "1.2.2",     ""),
                ("toolz",           "0.10.0",    ""),
                ("cryptography",    "2.8",       ""),
    
                ("prompt-toolkit",  "2.0.10",    "prompt_toolkit"),
                ("oauthlib",        "3.1.0",     ""),
                ("async-generator", "1.10",      "async_generator"),
                ("smmap",           "0.9.0",     ""),
                ("typed-ast",       "1.4.0",     "typed_ast"),

        # SciPy-Stack module
                ("cycler",          "0.10.0",    ""),
                ("numpy",           "1.15.2",    ""),
                ("scipy",           "1.2.1",     ""),
                ("sympy",           "1.4",       ""),
                ("pandas",          "0.25.3",    ""),
                ("mpmath",          "1.1.0",     ""),
                ("kiwisolver",      "1.1.0",     ""),
                ("backports.functools_lru_cache", "1.5", ""),
                ("matplotlib",      "3.1.1",     ""),
                ("xarray",          "0.11.3",    ""),
    
        # Jupyter module
                ("pyOpenSSL",       "19.0.0",    "OpenSSL"),
                ("entrypoints",     "0.3",       ""),
                ("async_generator", "1.10",      ""),
                ("absl-py",         "0.8.1",     "absl"),
                ("cryptography",    "2.8",       ""),
                ("tornado",         "6.0.3",     ""),
                ("bokeh",           "1.3.4",     ""),
                ("seaborn",         "0.9.0",     ""),
                ("nbformat",        "4.4.0",     ""),
                ("param",           "1.9.2",     ""),
                ("pyviz_comms",     "0.7.2",     ""),
                ("holoviews",       "1.12.6",    ""),
                ("alabaster",       "0.7.12",    ""),
                ("Babel",           "2.7.0",     "babel"),
                ("snowballstemmer", "2.0.0",     ""),
                ("docutils",        "0.15.2",    ""),
                ("imagesize",       "1.1.0",     ""),
                ("sphinxcontrib-websupport", "1.1.2", "sphinxcontrib.websupport"),
                ("Sphinx",          "1.8.5",     "sphinx"),
                ("pexpect",         "4.7.0",     ""),
                ("ipython",         "7.9.0",     "IPython"),
                ("ipynb",           "0.5.1",     ""),
                ("jupyter_core",    "4.6.1",     ""),
                ("retrying",        "1.3.3",     ""),
                ("plotly",          "4.2.1",     ""),
                ("tikzplotlib",     "0.8.4",     ""),
                ("jupyter_client",  "5.3.4",     ""),
                ("traitlets",       "4.3.3",     ""),
                ("pyzmq",           "18.1.0",    "zmq"),
                ("singledispatch",  "3.4.0.3",   ""),
                ("ipyparallel",     "6.2.4",     ""),
                ("ipykernel",       "5.1.3",     ""),
                ("terminado",       "0.8.2",     ""),
                ("bleach",          "3.1.0",     ""),
                ("mistune",         "0.8.4",     ""),
                ("pandocfilters",   "1.4.2",     ""),
                ("Pygments",        "2.4.2",     "pygments"),
                ("testpath",        "0.4.4",     ""),
                ("nbconvert",       "5.6.1",     ""),
                ("ipython_genutils","0.2.0",     ""),
                ("Send2Trash",      "1.5.0",     "send2trash"),
                ("notebook",        "6.0.2",     ""),
                ("version_information", "1.0.3", ""),
                ("lesscpy",         "0.13.0",    ""),
                ("prometheus-client", "0.7.1",   "prometheus_client"),
                ("jupyterthemes",   "0.20.0",    ""),
                ("zipp",            "0.6.0",     ""),
                ("importlib_metadata", "0.23",   ""),
                ("jsonschema",      "3.1.1",     ""),
                ("jupyterlab_launcher", "0.13.1",""),
                ("sphinx_rtd_theme","0.4.3",     ""),
                ("future",          "0.18.1",    ""),
                ("commonmark",      "0.9.1",     ""),
                ("recommonmark",    "0.6.0",     ""),
                ("jupyterlab",      "1.2.1",     ""),
                ("json5",           "0.8.5",     ""),
                ("jupyterlab_server", "1.0.6",   ""),
                ("ptyprocess",      "0.6.0",     ""),
                ("defusedxml",      "0.6.0",     ""),
                ("widgetsnbextension", "3.5.1",  ""),
                ("ipywidgets",      "7.5.1",     ""),
                ("ipydatawidgets",  "4.0.1",     ""),
                ("traittypes",      "0.2.1",     ""),
                ("bqplot",          "0.11.9",    ""),
                ("jupyter_bokeh",   "1.1.1",     ""),
                ("pythreejs",       "2.1.1",     ""),
                ("PyWavelets",      "1.1.1",     "pywt"),
                ("imageio",         "2.6.1",     ""),
                ("networkx",        "2.3",       ""),
                ("scikit-image",    "0.16.2",    "skimage"),
                ("ipywebrtc",       "0.5.0",     ""),
                ("ipyvolume",       "0.5.2",     ""),
                ("branca",          "0.3.1",     ""),
                ("ipyleaflet",      "0.11.4",    ""),
                ("ipympl",          "0.3.3",     ""),
                ("PyYAML",          "5.1.2",     "yaml"),
                ("jupyter_nbextensions_configurator", "0.4.1", ""),
                ("jupyter_latex_envs", "1.4.6",  "latex_envs"),
                ("jupyter_highlight_selected_word", "0.2.0", ""),
                ("jupyter_contrib_core", "0.3.3",""),
                ("jupyter_contrib_nbextensions", "0.5.1", ""),
                ("rise",            "5.5.1",    ""),
                ("typing-extensions", "3.7.4",  "typing_extensions"),
                ("idna-ssl",        "1.1.0",    "idna_ssl"),
                ("multidict",       "4.5.2",    ""),
                ("yarl",            "1.3.0",    ""),
                ("async-timeout",   "3.0.1",    "async_timeout"),
                ("aiohttp",         "3.6.2",    ""),
                ("simpervisor",     "0.3",      ""),
                ("jupyter_server",  "0.1.1",    ""),
                ("jupyter-server-proxy", "1.1.0", "jupyter_server_proxy"),
                ("jupyterlab_github", "1.0.1",  ""),
                ("jupyterlab-gitlab", "0.3.0",  "jupyterlab_gitlab"),
                ("jupyterlab-quickopen", "0.3.0", "jupyterlab_quickopen"),
                ("zstandard",       "0.12.0",   ""),
                ("itk_core",        "5.0.1",    ""),
                ("itk_filtering",   "5.0.1",    ""),
                ("itk_segmentation","5.0.1",    ""),
                ("itk_numerics",    "5.0.1",    ""),
                ("itk_registration","5.0.1",    ""),
                ("itk_io",          "5.0.1",    ""),
                ("itk-meshtopolydata", "0.5.1", ""),
                ("pyct",            "0.4.6",    ""),
                ("colorcet",        "2.0.2",    ""),
                ("itkwidgets",      "0.22.0",   ""),
                ("ujson",           "1.35",     ""),
                ("jupyterlab_iframe", "0.2.1",  ""),
                ("python-dotenv",   "0.10.3",   "dotenv"),
                ("jupyterlab_latex","1.0.0",    ""),
                ("jupyterlab_slurm","1.0.5",    ""),
                ("jupyterlmod",     "1.7.5",    ""),
                ("nbresuse",        "0.3.2",    ""),
                ("colorama",        "0.4.1",    ""),
                ("nbdime",          "1.1.0",    ""),
                ("smmap2",          "2.0.5",    "smmap"),
                ("gitdb2",          "2.0.6",    "gitdb"),
                ("GitPython",       "3.0.4",    "git"),
                ("jupyterlab-git",  "0.8.1",    "jupyterlab_git"),
                ("sidecar",         "0.3.0",    ""),
                ("pycodestyle",     "2.5.0",    ""),
                ("autopep8",        "1.4.4",    ""),
                ("yapf",            "0.28.0",   ""),
                ("toml",            "0.10.0",   ""),
                ("pathspec",        "0.6.0",    ""),
                ("typed_ast",       "1.4.0",    ""),
                ("regex",           "2019.11.1",""),
                ("black",           "19.3b0",  ""),
                ("jupyterlab-code-formatter", "0.6.1", "jupyterlab_code_formatter"),
                ("pamela",          "1.0.0",    ""),
                ("certipy",         "0.1.3",    ""),
                ("oauthlib",        "3.1.0",    ""),
                ("jupyterhub",      "1.0.0",    ""),
                ("appmode",         "0.6.0",    ""),
                ("HeapDict",        "1.0.1",    "heapdict"),
                ("zict",            "1.0.0",    ""),
                ("tblib",           "1.5.0",    ""),
                ("sortedcontainers","2.1.0",    ""),
                ("msgpack",         "0.6.2",    ""),
                ("dask",            "2.6.0",    ""),
                ("distributed",     "2.6.0",    ""),
                ("dask-jobqueue",   "0.7.0",    ""),
                ("dask_labextension", "1.0.3",  ""),
                ("Automat",         "0.8.0",    "automat"),
                ("PyHamcrest",      "1.9.0",    "hamcrest"),
                ("Twisted",         "19.7.0",   "twisted"),
                ("autobahn",        "19.10.1",  ""),
                ("constantly",      "15.1.0",   ""),
                ("hyperlink",       "19.0.0",   ""),
                ("incremental",     "17.5.0",   ""),
                ("txaio",           "18.8.1",   ""),
                ("zope.interface",  "4.6.0",    ""),
                ("backcall",        "0.1.0",    ""),
                ("wslink",          "0.1.11",   ""),
                ("jupyterlab_pygments", "0.1.0",""),
                ("ipyvue",          "1.0.0",    ""),
                ("ipyvuetify",      "1.1.1",    ""),
                ("voila",           "0.1.14",   ""),
                ("voila-material",  "0.2.5",    "-"),
                ("voila-gridstack", "0.0.6",    "-"),
                ("voila-vuetify",   "0.1.1",    "-"),   
                ("dicom-upload",    "v0.1.0",   ""),
                ("fileupload",      "master",   ""),
                ("pvlink",          "0.1.2",    ""),
                ("julia",           "0.5.0",    ""),
                ("textwrap3",       "0.9.2",    ""),
                ("ansiwrap",        "0.8.4",    ""),
                ("backports.weakref","1.0.post1",""),
                ("backports.tempfile","1.0",    ""),
                ("tqdm",            "4.41.0",   ""),
                ("tenacity",        "6.0.0",    ""),
                ("papermill",       "1.2.1",    ""),
        
   # PythonPackages for Tutorials
                ("patsy",           "0.5.1",    ""),
                ("statsmodels",     "0.10.2",   ""),
                ("cftime",          "1.0.4.2",  ""),
                ("vega_datasets",   "0.8.0",    ""),
                ("arviz",           "0.5.1",    ""),
                ("Theano",          "1.0.4",    ""),
                ("altair",          "3.3.0",    ""),
                ("cssselect",       "1.1.0",    ""),
                ("smopy",           "0.0.7",    ""),
                ("joblib",          "0.14.1",   ""),
                ("scikit-learn",    "0.22",     ""),
                ("memory_profiler", "0.55.0",   ""),
                ("h5py",            "2.10.0",   ""),
                ("line_profiler",   "2.1.2",    ""),
                ("pymc3",           "3.8",      ""),
                ("llvmlite",        "0.30.0",   ""),
                ("numba",           "0.46.0",   ""),
                ("numexpr",         "2.7.0",    ""),
                ("ipythonblocks",   "1.9.0",    ""),
                ("pydub",           "0.23.1",   ""),
                ("multipledispatch","0.6.0",    ""),
                ("partd",           "1.1.0",    ""),
                ("locket",          "0.2.0",    ""),
                ("fsspec",          "0.6.2",    ""),
                ("datashape",       "0.5.2",    ""),
                ("datashader",      "0.9.0",    ""),
                ("selenium",        "3.141.0",  ""),
                ("graphviz",        "0.13.2",   ""),
                ("vincent",         "0.4.4",    ""),
                ("Shapely",         "1.6.4.post2",""),
                ("pyshp",           "2.1.0",    ""),
                ("Cartopy",         "0.17.0",   ""),
                ("pandas-datareader","0.8.1",   ""),
]

from pip._vendor import pkg_resources
def get_version(package):
    package = package.lower()
    return next((p.version for p in pkg_resources.working_set if p.project_name.lower() == package), f"{Fore.RED}NO MATCH{Style.RESET_ALL}")

Run a Sanity Check

A test of the Python packages follows here.

Attention:

  • Slight changes in the version numbers are due to compatibility problems we encountered and therefore had to make adjustments.
  • "NO MATCH" - Not all package versions can be automatically found by this script
  • "IMPORT FAILED" - Import failures are possible if python packages are not ment to be importable by the developer.
In [1]:
import importlib
from colorama import Fore, Style
from timeit import default_timer as timer

print("PYPI NAME".ljust(20), ":  ", "IMPORT NAME".ljust(20) + "REQ.VERS.|INST.VERS.".ljust(25) + "IMPORT TIME")
print("=================================================================================")
for pkg_name, pkg_version, pkg_importname in pkg_list:
    if not pkg_importname:
        pkg_importname = pkg_name
    pkg = None
       
    try:
        # import package
        start_time = timer()
        if pkg_importname != "-":
            pkg = importlib.import_module(pkg_importname)
        import_time = timer() - start_time
            
        # get version
        try:
            version = pkg.__version__
            if not isinstance(pkg.__version__, str):
                raise
        except:
            version = get_version(pkg_name)
            
        if version != pkg_version:
            version = pkg_version.ljust(10) + " != " + f"{Fore.RED}" + version.ljust(10) + f"{Style.RESET_ALL}"

        print(pkg_name.ljust(20), ":  ", pkg_importname.ljust(20), version.ljust(24), f"{import_time:.6f}"+"s")
    except:
        print(pkg_name.ljust(20), ":  ", pkg_importname.ljust(20), f"{Fore.RED}IMPORT FAILED{Style.RESET_ALL}")  
    
    #try:
    #    print("".ljust(24), pkg.__file__)
    #except:
    #    print("".ljust(24), f"{Fore.RED}UNKNOWN{Style.RESET_ALL}")
PYPI NAME            :   IMPORT NAME         REQ.VERS.|INST.VERS.     IMPORT TIME
=================================================================================
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-1-09245ef6496d> in <module>
      5 print("PYPI NAME".ljust(20), ":  ", "IMPORT NAME".ljust(20) + "REQ.VERS.|INST.VERS.".ljust(25) + "IMPORT TIME")
      6 print("=================================================================================")
----> 7 for pkg_name, pkg_version, pkg_importname in pkg_list:
      8     if not pkg_importname:
      9         pkg_importname = pkg_name

NameError: name 'pkg_list' is not defined
In [ ]: