diff --git a/431_Spyder/spyder_2023a.eb b/431_Spyder/spyder_2023a.eb new file mode 100644 index 00000000..502753bb --- /dev/null +++ b/431_Spyder/spyder_2023a.eb @@ -0,0 +1,101 @@ +easyblock = 'PythonBundle' + +name = 'Spyder' +version = '6.0.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/spyder-ide/spyder' +description = """Spyder is an interactive Python development environment providing MATLAB-like features in a simple + and light-weighted software.""" + +toolchain = {'name': 'foss', 'version': '2023a'} +# toolchainopts = {'cstd': 'c++11'} + +# DEPS: + # 'aiohttp>=3.9.3', NO - too new for 2023a + # 'asyncssh>=2.14.0,<3.0.0', ok + # 'atomicwrites>=1.2.0', ok + # 'chardet>=2.0.0', + # 'cloudpickle>=0.5.0', + # 'cookiecutter>=1.6.0', + # 'diff-match-patch>=20181111', + # # While this is only required for python <3.10, it is safe enough to + # # install in all cases and helps the tests to pass. + # 'importlib-metadata>=4.6.0', + # 'intervaltree>=3.0.2', + # 'ipython>=8.12.2,<8.13.0; python_version=="3.8"', + # 'ipython>=8.13.0,<9.0.0,!=8.17.1; python_version>"3.8"', + # 'jedi>=0.17.2,<0.20.0', + # 'jellyfish>=0.7', + # 'jsonschema>=3.2.0', + # 'keyring>=17.0.0', + # 'nbconvert>=4.0', + # 'numpydoc>=0.6.0', + # 'parso>=0.7.0,<0.9.0', + # 'pexpect>=4.4.0', + # 'pickleshare>=0.4', + # 'psutil>=5.3', + # 'pygithub>=2.3.0', + # 'pygments>=2.0', + # 'pylint>=3.1,<4', + # 'pylint-venv>=3.0.2', + # 'pyls-spyder>=0.4.0', + # 'pyqt5>=5.15,<5.16', + # 'pyqtwebengine>=5.15,<5.16', + # 'python-lsp-black>=2.0.0,<3.0.0', + # 'python-lsp-server[all]>=1.12.0,<1.13.0', + # 'pyuca>=1.2', + # 'pyxdg>=0.26;platform_system=="Linux"', + # 'pyzmq>=24.0.0', + # 'qdarkstyle>=3.2.0,<3.3.0', + # 'qstylizer>=0.2.2', + # 'qtawesome>=1.3.1,<1.4.0', + # 'qtconsole>=5.6.0,<5.7.0', + # 'qtpy>=2.4.0', + # 'rtree>=0.9.7', + # 'setuptools>=49.6.0', + # 'sphinx>=0.6.6', + # 'spyder-kernels>=3.0.0,<3.2.0', + # 'superqt>=0.6.2,<1.0.0', + # 'textdistance>=4.2.0', + # 'three-merge>=0.1.1', + # 'watchdog>=0.10.3', + # 'yarl>=1.9.4', + +builddependencies = [ + ('CMake', '3.26.3'), +] +dependencies = [ + ('Python', '3.11.3'), + ('aiohttp', '3.8.5'), + # ('ZeroMQ', '4.3.2'), + # ('PyQt5', '5.15.1', versionsuffix), + # ('IPython', '7.15.0', versionsuffix), + # ('geopandas', '0.8.1', versionsuffix), +] + +use_pip = True + +# strip out (too strict version) requirements for pyqt5 and pyqtwebengine, +# because they are not installed with pip, but are provided via the PyQt5 dependency +# local_spyder_preinstallopts = ( +# """sed -i "s/'pyqt5.*,//g" setup.py && """ +# """sed -i "s/'pyqtwebengine.*,//g" setup.py && """ +# ) + +exts_list = [ + ('asyncssh', '2.17.0'), + ('atomicwrites', '1.4.1'), + (name, version), +] + +sanity_check_paths = { + 'files': ['bin/spyder3'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["spyder3 --help"] + +sanity_pip_check = True + +moduleclass = 'tools' diff --git a/431_Spyder/spyder_2023b.eb b/431_Spyder/spyder_2023b.eb new file mode 100644 index 00000000..92e4d5cd --- /dev/null +++ b/431_Spyder/spyder_2023b.eb @@ -0,0 +1,116 @@ +easyblock = 'PythonBundle' + +name = 'Spyder' +version = '6.0.1' +versionsuffix = '-Python-%(pyver)s' + +homepage = 'https://github.com/spyder-ide/spyder' +description = """Spyder is an interactive Python development environment providing MATLAB-like features in a simple + and light-weighted software.""" + +toolchain = {'name': 'foss', 'version': '2023b'} +# toolchainopts = {'cstd': 'c++11'} + +# DEPS: + # 'aiohttp>=3.9.3', OK + # 'asyncssh>=2.14.0,<3.0.0', ok + # 'atomicwrites>=1.2.0', OK pupi bundle + # 'chardet>=2.0.0', OK pupi bundle + # 'cloudpickle>=0.5.0', OK pypi bundle + # 'cookiecutter>=1.6.0', ok + # 'diff-match-patch>=20181111', ok + # 'importlib-metadata>=4.6.0', ok + # 'intervaltree>=3.0.2', OK pypi bundle + # 'ipython>=8.13.0,<9.0.0,!=8.17.1; python_version>"3.8"', OK + # 'jedi>=0.17.2,<0.20.0', OK + # 'jellyfish>=0.7', NO -> CREATE (Qt5 ok) + # 'jsonschema>=3.2.0', OK pypi bundle + # 'keyring>=17.0.0', OK pypi bundle + # 'nbconvert>=4.0', OK jupyter-server + # 'numpydoc>=0.6.0', ok + # 'parso>=0.7.0,<0.9.0', OK in jedi + # 'pexpect>=4.4.0', OK pypi bundle + # 'pickleshare>=0.4', OK in IPython + # 'psutil>=5.3', OK pypi bundle + # 'pygithub>=2.3.0', ok + # 'pygments>=2.0', OK pypi bundle + # 'pylint>=3.1,<4', OK + # 'pylint-venv>=3.0.2', ok + # 'pyls-spyder>=0.4.0', ok + # 'pyqt5>=5.15,<5.16', NO -> CREATE + # 'pyqtwebengine>=5.15,<5.16', no - will be in pyqt5 + # 'python-lsp-black>=2.0.0,<3.0.0', ok + # 'python-lsp-server[all]>=1.12.0,<1.13.0', ok + # 'pyuca>=1.2', ok + # 'pyxdg>=0.26;platform_system=="Linux"', ok + # 'pyzmq>=24.0.0', OK + # 'qdarkstyle>=3.2.0,<3.3.0', ok + # 'qstylizer>=0.2.2', ok + # 'qtawesome>=1.3.1,<1.4.0', + # 'qtconsole>=5.6.0,<5.7.0', + # 'qtpy>=2.4.0', + # 'rtree>=0.9.7', + # 'setuptools>=49.6.0', + # 'sphinx>=0.6.6', + # 'spyder-kernels>=3.0.0,<3.2.0', + # 'superqt>=0.6.2,<1.0.0', + # 'textdistance>=4.2.0', + # 'three-merge>=0.1.1', + # 'watchdog>=0.10.3', + # 'yarl>=1.9.4', + +# builddependencies = [ +# ('CMake', '3.27.6'), +# ] +dependencies = [ + ('Python', '3.11.5'), + ('Python-bundle-PyPI', '2023.10'), + ('aiohttp', '3.9.5'), + ('IPython', '8.17.2'), + ('jedi', '0.19.1'), + ('jupyter-server', '2.14.0'), + ('Pylint', '3.2.5'), + ('PyZMQ', '25.1.2'), +] + +use_pip = True + +# strip out (too strict version) requirements for pyqt5 and pyqtwebengine, +# because they are not installed with pip, but are provided via the PyQt5 dependency +# local_spyder_preinstallopts = ( +# """sed -i "s/'pyqt5.*,//g" setup.py && """ +# """sed -i "s/'pyqtwebengine.*,//g" setup.py && """ +# ) + +exts_list = [ + ('asyncssh', '2.17.0'), + ('cookiecutter', '2.6.0'), + ('diff-match-patch', '20230430'), + ('importlib_metadata', '8.5.0'), + ('numpydoc', '1.8.0'), + ('pygithub', '2.4.0', { + 'modulename': 'github', + }), + ('pylint_venv', '3.0.3'), + ('pyls-spyder', '0.4.0'), + ('python-lsp-black', '2.0.0'), + ('python_lsp_server', '1.12.0'), + ('pyuca', '1.2'), + ('pyxdg', '0.28', { + 'modulename': 'xdg', + }), + ('QDarkStyle', '3.2.3'), + ('qstylizer', '0.2.3'), + (name, version), +] + +sanity_check_paths = { + 'files': ['bin/spyder3'], + 'dirs': ['lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = ["spyder3 --help"] + +sanity_pip_check = True + +moduleclass = 'tools'