From ba8cf383695e147e3e616b39f7b09d29b9ff3bd5 Mon Sep 17 00:00:00 2001 From: Antti Soininen Date: Thu, 25 Apr 2024 13:04:37 +0300 Subject: [PATCH] Update dependencies to a post-Dagster world Spine Engine doesn't use Dagster anymore, so we need not restrict spinedb_api dependencies anymore. Also, removed requirements.txt files in favor of pyproject.toml. Developer and documentation dependencies can now be installed by specifying the [dev] tag when telling Pip to install this package, i.e. python -mpip install -e .[dev] Re spine-tools/Spine-Toolbox#2522 --- .github/workflows/run_unit_tests.yml | 6 ++---- README.md | 10 ++++------ docs/requirements.txt | 9 --------- docs/source/conf.py | 5 ++++- pyproject.toml | 12 +++++++++--- requirements.txt | 1 - 6 files changed, 19 insertions(+), 24 deletions(-) delete mode 100644 docs/requirements.txt delete mode 100644 requirements.txt diff --git a/.github/workflows/run_unit_tests.yml b/.github/workflows/run_unit_tests.yml index ac42522b..4a8b7295 100644 --- a/.github/workflows/run_unit_tests.yml +++ b/.github/workflows/run_unit_tests.yml @@ -84,13 +84,10 @@ jobs: run: | python -m pip install --upgrade pip python -m pip install -r requirements.txt + python -m pip install -e .[dev] - name: List packages run: python -m pip list - - name: Install python3 kernelspecs - run: | - python -m pip install ipykernel - python -m ipykernel install --user - name: Run tests run: | if [ "$RUNNER_OS" != "Windows" ]; then @@ -127,6 +124,7 @@ jobs: run: | python -m pip install --upgrade pip python -m pip install -r requirements.txt + python -m pip install -e .[dev] - name: List packages run: python -m pip list diff --git a/README.md b/README.md index ecb7e6e0..cd68e934 100644 --- a/README.md +++ b/README.md @@ -36,21 +36,19 @@ To install the latest development version use the Git repository url: ## Building the documentation Source files for the documentation can be found in `docs/source` directory. In order to -build the HTML docs, you need to install the additional documentation building requirements +build the HTML docs, you need to install the developer dependencies by running: - $ pip install -r dev-requirements.txt + $ pip install -e .[dev] This installs Sphinx (among other things), which is required in building the documentation. When Sphinx is installed, you can build the HTML pages from the source files by running: - > docs\make.bat html + > bin\build_doc.bat or - $ pushd docs - $ make html - $ popd + $ bin/build_doc.py depending on your operating system. diff --git a/docs/requirements.txt b/docs/requirements.txt deleted file mode 100644 index e42a014d..00000000 --- a/docs/requirements.txt +++ /dev/null @@ -1,9 +0,0 @@ -# Requirements for compiling the documentation -markupsafe < 2.1 # Jinja2<3.0 tries to import soft_unicode, which has been removed in markupsafe 2.1 -jinja2 < 3.0 # Dagster 0.12.8 requires Jinja2<3.0 -docutils < 0.17 -sphinx < 5.2 -sphinx_rtd_theme -recommonmark -astroid < 3.0 # sphinx-autoapi installs the latest astroid. We are not compatible with astroid v3.0 -sphinx-autoapi < 2.1 # 2.1 removed support for sphinx < 5.2.0 diff --git a/docs/source/conf.py b/docs/source/conf.py index 80b15481..2fb6dc94 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -281,7 +281,10 @@ def setup(sphinx): # -- Options for intersphinx extension --------------------------------------- # Example configuration for intersphinx: refer to the Python standard library. -intersphinx_mapping = {"https://docs.python.org/": None, "https://docs.sqlalchemy.org/en/13/": None} +intersphinx_mapping = { + "python": ("https://docs.python.org/", None), + "sqlalchemy": ("https://docs.sqlalchemy.org/en/13/", None) +} # -- Options for todo extension ---------------------------------------------- diff --git a/pyproject.toml b/pyproject.toml index 3969813e..2b02e621 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -16,10 +16,8 @@ dependencies = [ # v1.4 does not pass tests "sqlalchemy >=1.3, <1.4", "alembic >=1.7", - "faker >=8.1.2", "datapackage >=1.15.2", "python-dateutil >=2.8.1", - # v1.22 requires Python 3.8 or later "numpy >=1.20.2", "scipy >=1.7.1", "openpyxl >=3.0.7, !=3.1.1", @@ -34,7 +32,15 @@ dependencies = [ Repository = "https://github.com/spine-tools/Spine-Database-API" [project.optional-dependencies] -dev = ["coverage[toml]", "pyperf"] +dev = [ + "coverage[toml]", + "pyperf", + "sphinx", + "sphinx-autoapi", + "sphinx_rtd_theme", + "recommonmark", + "black == 21.12b0" +] [build-system] requires = ["setuptools>=64", "setuptools_scm[toml]>=6.2", "wheel", "build"] diff --git a/requirements.txt b/requirements.txt deleted file mode 100644 index d6e1198b..00000000 --- a/requirements.txt +++ /dev/null @@ -1 +0,0 @@ --e .