diff --git a/.github/workflows/workflow.yaml b/.github/workflows/workflow.yaml index f7bed23..2922318 100644 --- a/.github/workflows/workflow.yaml +++ b/.github/workflows/workflow.yaml @@ -29,7 +29,7 @@ jobs: with: python-version: ${{ matrix.python-version }} - name: Install dependencies - run: uv sync --all-extras --group test + run: uv sync --extra test - name: Run test suite run: uv run pytest --cov=order_matching @@ -49,7 +49,7 @@ jobs: with: python-version: "3.12" - name: Install dependencies - run: uv sync --all-extras --group test + run: uv sync --extra test - name: Run benchmark run: uv run ./benchmark.sh - name: Download previous benchmark data @@ -105,7 +105,7 @@ jobs: with: python-version: "3.12" - name: Install dependencies - run: uv sync --all-extras --group doc + run: uv sync --extra doc - name: Build documentation run: uv run mkdocs build -s -c diff --git a/pyproject.toml b/pyproject.toml index 092f1ae..c09f503 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -22,10 +22,7 @@ dependencies = ["pandas", "pandera", "faker"] Source = "https://github.com/khrapovs/OrderBookMatchingEngine" Documentation = "https://order-book-matching-engine.readthedocs.io/" -[tool.uv] -default-groups = ["dev", "test", "doc"] - -[dependency-groups] +[project.optional-dependencies] test = ["pytest", "pytest-cov", "pytest-xdist", "pytest-benchmark[histogram]"] doc = [ "mkdocs-material", diff --git a/uv.lock b/uv.lock index d8a7f45..2168999 100644 --- a/uv.lock +++ b/uv.lock @@ -662,7 +662,7 @@ wheels = [ [[package]] name = "order-matching" -version = "0.3.6" +version = "0.3.8" source = { editable = "." } dependencies = [ { name = "faker" }, @@ -670,7 +670,7 @@ dependencies = [ { name = "pandera" }, ] -[package.dev-dependencies] +[package.optional-dependencies] dev = [ { name = "pre-commit" }, ] @@ -692,25 +692,19 @@ test = [ [package.metadata] requires-dist = [ { name = "faker" }, + { name = "mkdocs-gen-files", marker = "extra == 'doc'" }, + { name = "mkdocs-literate-nav", marker = "extra == 'doc'" }, + { name = "mkdocs-macros-plugin", marker = "extra == 'doc'" }, + { name = "mkdocs-material", marker = "extra == 'doc'" }, + { name = "mkdocstrings", extras = ["python"], marker = "extra == 'doc'" }, { name = "pandas" }, { name = "pandera" }, -] - -[package.metadata.requires-dev] -dev = [{ name = "pre-commit" }] -doc = [ - { name = "mkdocs-gen-files" }, - { name = "mkdocs-literate-nav" }, - { name = "mkdocs-macros-plugin" }, - { name = "mkdocs-material" }, - { name = "mkdocstrings", extras = ["python"] }, - { name = "pymdown-extensions" }, -] -test = [ - { name = "pytest" }, - { name = "pytest-benchmark", extras = ["histogram"] }, - { name = "pytest-cov" }, - { name = "pytest-xdist" }, + { name = "pre-commit", marker = "extra == 'dev'" }, + { name = "pymdown-extensions", marker = "extra == 'doc'" }, + { name = "pytest", marker = "extra == 'test'" }, + { name = "pytest-benchmark", extras = ["histogram"], marker = "extra == 'test'" }, + { name = "pytest-cov", marker = "extra == 'test'" }, + { name = "pytest-xdist", marker = "extra == 'test'" }, ] [[package]]