# IT4Innovations # LK 2024 easyblock = 'PythonBundle' name = 'jupyter-server' version = "2.14.0" homepage = 'https://jupyter.org/' description = """The Jupyter Server provides the backend (i.e. the core services, APIs, and REST endpoints) for Jupyter web applications like Jupyter notebook, JupyterLab, and Voila.""" toolchain = {'name': 'GCCcore', 'version': '13.2.0'} builddependencies = [ ('binutils', '2.40'), ('maturin', '1.3.1'), # needed by rpds_py ('hatch-jupyter-builder', '0.9.1'), ] dependencies = [ ('Python', '3.11.5'), ('PyYAML', '6.0.1'), ('PyZMQ', '25.1.2'), ('tornado', '6.4'), ('BeautifulSoup', '4.12.2'), # needed by nbconvert ] sanity_pip_check = True use_pip = True # WARNING: the versions of ipywidgets, widgetsnbextension and jupyterlab_widgets are tied between them # use the versions published in a single release commit instead of blindly pushing to last available version, # see for instance https://github.com/jupyter-widgets/ipywidgets/commit/b728926f58ed3ffef08f716998ac6c226dafc1aa exts_list = [ ('websocket_client', '1.8.0', { 'modulename': 'websocket', 'checksums': ['3239df9f44da632f96012472805d40a23281a991027ce11d2f45a6f24ac4c3da'], }), ('terminado', '0.18.1', { 'checksums': ['de09f2c4b85de4765f7714688fff57d3e75bad1f909b589fde880460c753fd2e'], }), ('Send2Trash', '1.8.3', { 'checksums': ['b18e7a3966d99871aefeb00cfbcfdced55ce4871194810fc71f4aa484b953abf'], }), ('prometheus_client', '0.20.0', { 'checksums': ['287629d00b147a32dcb2be0b9df905da599b2d82f80377083ec8463309a4bb89'], }), ('overrides', '7.7.0', { 'checksums': ['55158fa3d93b98cc75299b1e67078ad9003ca27945c76162c1c0766d6f91820a'], }), ('jupyter_core', '5.7.2', { 'patches': ['jupyter-core-%(version)s_fix_jupyter_path.patch'], 'checksums': [ {'jupyter_core-5.7.2.tar.gz': 'aa5f8d32bbf6b431ac830496da7392035d6f61b4f54872f15c4bd2a9c3f536d9'}, {'jupyter-core-5.7.2_fix_jupyter_path.patch': '1ed5088728c1ad49687b66e31ed23965c36645ad285693785b2b96c4ff1b2f93'}, ], }), ('fastjsonschema', '2.19.1', { 'checksums': ['e3126a94bdc4623d3de4485f8d468a12f02a67921315ddc87836d6e456dc789d'], }), ('tinycss2', '1.3.0', { 'checksums': ['152f9acabd296a8375fbca5b84c961ff95971fcfc32e79550c8df8e29118c54d'], }), ('pandocfilters', '1.5.1', { 'checksums': ['002b4a555ee4ebc03f8b66307e287fa492e4a77b4ea14d3f934328297bb4939e'], }), ('mistune', '3.0.2', { 'checksums': ['fc7f93ded930c92394ef2cb6f04a8aabab4117a91449e72dcc8dfa646a508be8'], }), ('deprecation', '2.1.0', { 'checksums': ['72b3bde64e5d778694b0cf68178aed03d15e15477116add3fb773e581f9518ff'], }), ('jupyter_packaging', '0.12.3', { 'checksums': ['9d9b2b63b97ffd67a8bc5391c32a421bc415b264a32c99e4d8d8dd31daae9cf4'], }), ('jupyterlab_pygments', '0.3.0', { 'checksums': ['721aca4d9029252b11cfa9d185e5b5af4d54772bb8072f9b7036f4170054d35d'], }), ('defusedxml', '0.7.1', { 'checksums': ['1bb3032db185915b62d7c6209c5a8792be6a32ab2fedacc84e01b52c51aa3e69'], }), ('bleach', '6.1.0', { 'checksums': ['0a31f1837963c41d46bbf1331b8778e1308ea0791db03cc4e7357b97cf42a8fe'], }), ('nbformat', '5.10.4', { 'checksums': ['322168b14f937a5d11362988ecac2a4952d3d8e3a2cbeb2319584631226d5b3a'], }), ('nbclient', '0.10.0', { 'checksums': ['4b3f1b7dba531e498449c4db4f53da339c91d449dc11e9af3a43b4eb5c5abb09'], }), ('jupyter_client', '8.6.1', { 'checksums': ['e842515e2bab8e19186d89fdfea7abd15e39dd581f94e399f00e2af5a1652d3f'], }), ('nbconvert', '7.16.4', { 'checksums': ['86ca91ba266b0a448dc96fa6c5b9d98affabde2867b363258703536807f9f7f4'], }), ('jupyter_server_terminals', '0.5.3', { 'checksums': ['5ae0295167220e9ace0edcfdb212afd2b01ee8d179fe6f23c899590e9b8a5269'], }), ('rfc3986_validator', '0.1.1', { 'checksums': ['3d44bde7921b3b9ec3ae4e3adca370438eccebc676456449b145d533b240d055'], }), ('rfc3339_validator', '0.1.4', { 'checksums': ['138a2abdf93304ad60530167e51d2dfb9549521a836871b88d7f4695d0022f6b'], }), ('rpds_py', '0.18.1', { 'modulename': 'rpds', 'checksums': ['dc48b479d540770c811fbd1eb9ba2bb66951863e448efec2e2c102625328e92f'], }), ('referencing', '0.35.1', { 'checksums': ['25b42124a6c8b632a425174f24087783efb348a6f1e0008e63cd4466fedf703c'], }), ('python-json-logger', '2.0.7', { 'modulename': 'pythonjsonlogger', 'checksums': ['23e7ec02d34237c5aa1e29a070193a4ea87583bb4e7f8fd06d3de8264c4b2e1c'], }), ('jsonschema_specifications', '2023.12.1', { 'checksums': ['48a76787b3e70f5ed53f1160d2b81f586e4ca6d1548c5de7085d1682674764cc'], }), ('jsonschema', '4.22.0', { 'checksums': ['5b22d434a45935119af990552c862e5d6d564e8f6601206b305a61fdf661a2b7'], }), ('jupyter_events', '0.10.0', { 'checksums': ['670b8229d3cc882ec782144ed22e0d29e1c2d639263f92ca8383e66682845e22'], }), ('argon2-cffi-bindings', '21.2.0', { 'modulename': '_argon2_cffi_bindings', 'checksums': ['bb89ceffa6c791807d1305ceb77dbfacc5aa499891d2c55661c6459651fc39e3'], }), ('argon2_cffi', '23.1.0', { 'modulename': 'argon2', 'checksums': ['879c3e79a2729ce768ebb7d36d4609e3a78a4ca2ec3a9f12286ca057e3d0db08'], }), ('sniffio', '1.3.1', { 'checksums': ['f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc'], }), ('anyio', '4.3.0', { 'checksums': ['f75253795a87df48568485fd18cdd2a3fa5c4f7c5be8e5e36637733fce06fed6'], }), ('jupyter_server', version, { 'checksums': ['659154cea512083434fd7c93b7fe0897af7a2fd0b9dd4749282b42eaac4ae677'], }), ('jupyterlab_widgets', '3.0.10', { 'checksums': ['04f2ac04976727e4f9d0fa91cdc2f1ab860f965e504c29dbd6a65c882c9d04c0'], }), ('widgetsnbextension', '4.0.10', { 'checksums': ['64196c5ff3b9a9183a8e699a4227fb0b7002f252c814098e66c4d1cd0644688f'], }), ('comm', '0.2.2', { 'checksums': ['3fd7a84065306e07bea1773df6eb8282de51ba82f77c72f9c85716ab11fe980e'], }), ('ipywidgets', '8.1.2', { 'checksums': ['d0b9b41e49bae926a866e613a39b0f0097745d2b9f1f3dd406641b4a57ec42c9'], }), # The following few extensions are needed for e.g. JupyterLab but also nbclassic. # Avoid duplication by making it part of this bundle ('notebook_shim', '0.2.4', { 'checksums': ['b4b2cfa1b65d98307ca24361f5b30fe785b53c3fd07b7a47e89acb5e6ac638cb'], }), ('nest_asyncio', '1.6.0', { 'checksums': ['6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe'], }), ('ipykernel', '6.29.4', { 'checksums': ['3d44070060f9475ac2092b760123fadf105d2e2493c24848b6691a7c4f42af5c'], }), ('ipython_genutils', '0.2.0', { 'checksums': ['eb2e116e75ecef9d4d228fdc66af54269afa26ab4463042e33785b887c628ba8'], }), ('debugpy', '1.8.1', { 'source_tmpl': '%(name)s-%(version)s-py2.py3-none-any.whl', 'checksums': ['28acbe2241222b87e255260c76741e1fbf04fdc3b6d094fcf57b6c6f75ce1242'], }), ] sanity_check_paths = { 'files': ['bin/jupyter'], 'dirs': ['share/jupyter', 'etc/jupyter'], } sanity_check_commands = ['jupyter --help'] modextrapaths = {'EB_ENV_JUPYTER_ROOT': ''} moduleclass = 'tools'