mirror of
https://github.com/trailofbits/buttercup
synced 2026-06-21 14:11:39 +00:00
fb8aa17076
Bumps the uv group with 1 update in the /common directory: [urllib3](https://github.com/urllib3/urllib3). Bumps the uv group with 1 update in the /fuzzer directory: [urllib3](https://github.com/urllib3/urllib3). Bumps the uv group with 1 update in the /fuzzer_runner directory: [urllib3](https://github.com/urllib3/urllib3). Bumps the uv group with 1 update in the /orchestrator directory: [urllib3](https://github.com/urllib3/urllib3). Bumps the uv group with 1 update in the /patcher directory: [urllib3](https://github.com/urllib3/urllib3). Bumps the uv group with 1 update in the /program-model directory: [urllib3](https://github.com/urllib3/urllib3). Bumps the uv group with 1 update in the /seed-gen directory: [urllib3](https://github.com/urllib3/urllib3). Updates `urllib3` from 2.6.3 to 2.7.0 - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/2.6.3...2.7.0) Updates `urllib3` from 2.6.3 to 2.7.0 - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/2.6.3...2.7.0) Updates `urllib3` from 2.6.3 to 2.7.0 - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/2.6.3...2.7.0) Updates `urllib3` from 2.6.3 to 2.7.0 - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/2.6.3...2.7.0) Updates `urllib3` from 2.6.3 to 2.7.0 - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/2.6.3...2.7.0) Updates `urllib3` from 2.6.3 to 2.7.0 - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/2.6.3...2.7.0) Updates `urllib3` from 2.6.3 to 2.7.0 - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/2.6.3...2.7.0) --- updated-dependencies: - dependency-name: urllib3 dependency-version: 2.7.0 dependency-type: indirect dependency-group: uv - dependency-name: urllib3 dependency-version: 2.7.0 dependency-type: indirect dependency-group: uv - dependency-name: urllib3 dependency-version: 2.7.0 dependency-type: indirect dependency-group: uv - dependency-name: urllib3 dependency-version: 2.7.0 dependency-type: direct:production dependency-group: uv - dependency-name: urllib3 dependency-version: 2.7.0 dependency-type: indirect dependency-group: uv - dependency-name: urllib3 dependency-version: 2.7.0 dependency-type: indirect dependency-group: uv - dependency-name: urllib3 dependency-version: 2.7.0 dependency-type: indirect dependency-group: uv ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
111 lines
3.0 KiB
TOML
111 lines
3.0 KiB
TOML
[project]
|
|
name = "orchestrator"
|
|
version = "0.5.0"
|
|
description = "Buttercup orchestrator"
|
|
readme = "README.md"
|
|
authors = [{ name = "Trail of Bits", email = "opensource@trailofbits.com" }]
|
|
license = "AGPL-3.0-only"
|
|
requires-python = ">=3.12,<3.13"
|
|
dependencies = [
|
|
"argon2-cffi ~=21.3.0",
|
|
"common[full]",
|
|
"fastapi ~=0.128.0",
|
|
"pydantic ~=2.11.0",
|
|
"pydantic-settings ~=2.10.1",
|
|
"python-dateutil ~=2.9.0",
|
|
"pyyaml ~=6.0.1",
|
|
"requests ~=2.33.0",
|
|
"requests-file ~=2.1.0",
|
|
"rich ~=13.9.4",
|
|
"sqlalchemy ~=2.0.0",
|
|
"typing-extensions ~=4.12.2",
|
|
"urllib3~=2.7.0",
|
|
"uvicorn ~=0.34.0",
|
|
]
|
|
|
|
[project.urls]
|
|
Repository = "https://github.com/trailofbits/buttercup"
|
|
Issues = "https://github.com/trailofbits/buttercup/issues"
|
|
|
|
[project.scripts]
|
|
buttercup-task-server = "buttercup.orchestrator.task_server.__cli__:main"
|
|
buttercup-task-downloader = "buttercup.orchestrator.downloader.__cli__:main"
|
|
buttercup-scheduler = "buttercup.orchestrator.scheduler.__cli__:main"
|
|
buttercup-pov-reproducer = "buttercup.orchestrator.pov_reproducer.__cli__:main"
|
|
buttercup-auth-tool = "buttercup.orchestrator.task_server.auth_tool:main"
|
|
buttercup-scratch-cleaner = "buttercup.orchestrator.scratch_cleaner.__cli__:main"
|
|
buttercup-ui = "buttercup.orchestrator.ui.__cli__:main"
|
|
|
|
|
|
[dependency-groups]
|
|
dev = [
|
|
# Testing tools
|
|
"pytest ~=9.0.3",
|
|
"pytest-asyncio ~=1.3.0",
|
|
"pytest-cov ~=6.0.0",
|
|
"pytest-xdist ~=3.6.1",
|
|
"fastapi[standard] ~=0.128.0",
|
|
"responses ~=0.25.6",
|
|
"httpx ~=0.28.1",
|
|
# Linting and type checking
|
|
"ruff ~=0.14.0",
|
|
"ty", # Astral type checker (replaces mypy)
|
|
# Type stubs
|
|
"types-python-dateutil ~=2.9.0.20241206",
|
|
"types-requests ~=2.32.0",
|
|
"types-redis ~=4.6.0",
|
|
]
|
|
|
|
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["src/buttercup"]
|
|
|
|
[tool.uv.sources]
|
|
common = { path = "../common", editable = true }
|
|
|
|
[tool.ruff]
|
|
line-length = 120
|
|
target-version = "py312"
|
|
exclude = [
|
|
"src/buttercup/orchestrator/competition_api_client",
|
|
"test/test_types_*.py",
|
|
"test/test_vulnerability_api.py",
|
|
"test/test_patch_api.py",
|
|
"test/test_sarif_api.py",
|
|
"src/buttercup/orchestrator/task_server/models/",
|
|
]
|
|
|
|
[tool.ruff.lint]
|
|
select = ["E", "F", "I", "W", "UP"]
|
|
ignore = [
|
|
"COM812", "ISC001", # Formatter conflicts
|
|
]
|
|
|
|
[tool.ruff.lint.per-file-ignores]
|
|
"tests/**/*.py" = ["S101", "D"] # Allow asserts, no docstrings in tests
|
|
"test/test_submissions.py" = ["S101", "D", "UP045"] # UP045: Protobuf enums don't support | operator
|
|
"*/__cli__.py" = ["T201"] # Allow print in CLI modules
|
|
"*/auth_tool.py" = ["T201"]
|
|
|
|
[tool.ty.environment]
|
|
python-version = "3.12"
|
|
|
|
[tool.ty.src]
|
|
# Explicitly include src directory
|
|
include = ["src"]
|
|
exclude = [
|
|
"src/buttercup/orchestrator/competition_api_client",
|
|
"src/buttercup/orchestrator/ui/competition_api/models",
|
|
]
|
|
|
|
[tool.ty.rules]
|
|
# Start permissive, tighten over time
|
|
unresolved-import = "warn"
|
|
unresolved-attribute = "warn"
|
|
|
|
[tool.pytest.ini_options]
|
|
asyncio_default_fixture_loop_scope = "function"
|