From 3d53ea8b6f89c3a18bcdc0d1d297c647a40522be Mon Sep 17 00:00:00 2001 From: Harshil Srivastav <161273221+zealous-ideal-monk@users.noreply.github.com> Date: Tue, 19 Nov 2024 14:59:21 +0530 Subject: [PATCH] Move development dependencies to optional dependencies (#221) * move streamlit and other dev tools to optional dependencies * Moved dependencies in the respected place holder created before * refactor: reorganize dependencies and add 'all' group --- pyproject.toml | 31 ++++++++++++++++++++----------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index d511682..4f55193 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -6,32 +6,27 @@ build-backend = "setuptools.build_meta" name = "quartz_solar_forecast" version = "1.0.83" description = "Open Source Solar Forecasting for a Site" -authors = [ - { name = "Peter Dudfield", email = "info@openclimatefix.org" } -] +authors = [{ name = "Peter Dudfield", email = "info@openclimatefix.org" }] readme = "README.md" requires-python = ">=3.6" license = { text = "MIT" } +[project] dependencies = [ + # Keep core dependencies that are needed for the app to run "xarray==2022.12.0", "pv-site-prediction==0.1.19", "pydantic==2.6.2", - "huggingface_hub==0.17.3", # only for evaluation "python-dotenv==1.0.1", "openmeteo-requests==1.2.0", "requests-cache==1.2.0", "retry-requests==2.0.0", - "gdown==5.1.0", "xgboost==2.0.3", - "plotly", "typer", - "streamlit", "async_timeout", "uvicorn", - "fastapi", "pydantic_settings", - "httpx" + "httpx", ] [project.urls] @@ -42,10 +37,24 @@ packages = { find = { include = ["*"] } } package-data = { "quartz_solar_forecast" = ["*"] } [project.optional-dependencies] -dev = [] +dev = [ + "streamlit", + "plotly", + "huggingface_hub==0.17.3", + "gdown==5.1.0", + "fastapi", +] + # additional vendor-specific dependencies for connecting to inverter APIs inverters = ["ocf_vrmapi"] # victron -all = ["ocf_vrmapi"] +all = [ + "ocf_vrmapi", + "streamlit", + "plotly", + "huggingface_hub==0.17.3", + "gdown==5.1.0", + "fastapi", +] [tool.mypy]