diff --git a/.github/workflows/mypy.yml b/.github/workflows/mypy.yml index 72822e8..d6779d8 100644 --- a/.github/workflows/mypy.yml +++ b/.github/workflows/mypy.yml @@ -24,8 +24,8 @@ jobs: - name: Install dependencies run: | python -m pip install --upgrade pip - pip install mypy - pip install . + pip install uv + uv sync --group typecheckers - name: Run type checker run: mypy -p argenta diff --git a/.github/workflows/ruff.yml b/.github/workflows/ruff.yml index 1b71574..f504400 100644 --- a/.github/workflows/ruff.yml +++ b/.github/workflows/ruff.yml @@ -24,7 +24,8 @@ jobs: - name: Install dependencies run: | python -m pip install --upgrade pip - pip install ruff + pip install uv + uv sync --group linters - name: Run linter run: ruff check ./src diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index e893acf..c58b8ce 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -25,7 +25,7 @@ jobs: run: | python -m pip install --upgrade pip pip install uv - uv sync --group dev + uv sync --group tests - name: Run tests - run: uv run python -m pytest tests + run: pytest tests diff --git a/docs/root/api/orchestrator/argspace.rst b/docs/root/api/orchestrator/argspace.rst new file mode 100644 index 0000000..a2964ba --- /dev/null +++ b/docs/root/api/orchestrator/argspace.rst @@ -0,0 +1,4 @@ +.. _root_api_orchestrator_argspace: + +ArgSpace +========== \ No newline at end of file diff --git a/docs/root/api/orchestrator/index.rst b/docs/root/api/orchestrator/index.rst index c95e028..3475fe9 100644 --- a/docs/root/api/orchestrator/index.rst +++ b/docs/root/api/orchestrator/index.rst @@ -34,7 +34,7 @@ Orchestrator ----- Основные методы --------------- +---------------- .. py:method:: start_polling(self, app: App) -> None @@ -49,7 +49,7 @@ Orchestrator ----- Назначение и использование --------------------------- +---------------------------- ``Orchestrator`` абстрагирует от вас всю сложность, связанную с настройкой внедрения зависимостей и парсингом стартовых аргументов. Типичный сценарий использования ``Argenta`` выглядит следующим образом: @@ -70,3 +70,4 @@ Orchestrator argparser arguments + argspace diff --git a/pyproject.toml b/pyproject.toml index d0f2615..baad867 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -13,6 +13,26 @@ dependencies = [ "dishka>=1.7.2", ] +[dependency-groups] +linters = [ + "isort>=7.0.0", + "ruff>=0.12.12", + "wemake-python-styleguide>=0.17.0", +] +typecheckers = [ + "mypy>=1.14.1", +] +docs = [ + "shibuya>=2025.9.25", + "sphinx>=8.2.3", + "sphinx-autobuild>=2025.8.25", + "sphinx-intl>=2.3.2", +] +tests = [ + "pyfakefs>=5.5.0", + "pytest>=8.3.2", +] + [tool.ruff] exclude = [ ".idea", @@ -32,16 +52,3 @@ disable_error_code = "import-untyped" [build-system] requires = ["hatchling"] build-backend = "hatchling.build" - -[dependency-groups] -dev = [ - "isort>=7.0.0", - "mypy>=1.14.1", - "pytest>=8.3.2", - "ruff>=0.12.12", - "shibuya>=2025.9.25", - "sphinx>=8.2.3", - "sphinx-autobuild>=2025.8.25", - "sphinx-intl>=2.3.2", - "wemake-python-styleguide>=0.17.0", -]