git_env-v2-1-0 / pyproject.toml
burtenshaw's picture
burtenshaw HF Staff
Upload folder using huggingface_hub
459c40c verified
[build-system]
requires = ["setuptools>=45", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "openenv-core"
version = "0.2.0"
description = "A unified framework for reinforcement learning environments"
readme = "README.md"
requires-python = ">=3.10"
dependencies = [
# Core shared dependencies - minimal set required for all environments
# Heavy dependencies (torch, numpy, smolagents, etc.) should be in
# individual environment pyproject.toml files
"fastapi>=0.104.0",
"pydantic>=2.0.0",
"uvicorn>=0.24.0",
"requests>=2.25.0",
# CLI dependencies
"typer>=0.9.0",
"rich>=13.0.0",
"pyyaml>=6.0",
"huggingface_hub>=0.20.0",
"openai>=2.7.2",
"tomli>=2.3.0",
"tomli-w>=1.2.0",
"websockets>=15.0.1",
# MCP support
"fastmcp>=2.0.0",
# Web UI dependencies
"gradio>=4.0.0",
]
[project.optional-dependencies]
core = [
"fastapi>=0.104.0",
"pydantic>=2.0.0",
"uvicorn>=0.24.0",
"requests>=2.25.0",
"websockets>=15.0.1",
]
cli = [
"typer>=0.9.0",
"rich>=13.0.0",
"pyyaml>=6.0",
"huggingface_hub>=0.20.0",
"openai>=2.7.2",
"tomli>=2.3.0",
"tomli-w>=1.2.0",
]
all = [
"openenv-core[core]",
"openenv-core[cli]",
]
daytona = [
"daytona>=0.136.0",
"pyyaml>=6.0",
]
[project.scripts]
openenv = "openenv.cli.__main__:main"
[tool.setuptools]
package-dir = {"" = "src"}
include-package-data = true
[tool.setuptools.package-data]
"openenv.cli" = ["templates/**/*"]
[tool.setuptools.packages.find]
where = ["src"]
[tool.coverage.run]
omit = [
"openenv/cli/templates/**",
"**/templates/**",
"openenv/cli/__main__.py",
]
[tool.coverage.report]
exclude_lines = [
"pragma: no cover",
"def __repr__",
"raise AssertionError",
"raise NotImplementedError",
"if __name__ == .__main__.:",
"if TYPE_CHECKING:",
]
[tool.pytest.ini_options]
asyncio_mode = "auto"
asyncio_default_fixture_loop_scope = "function"
markers = [
"docker: Tests that require Docker to be running",
"network: Tests that require network access (HuggingFace, etc.)",
"integration: Integration tests with external resources",
]
[tool.ruff]
line-length = 88
[tool.ruff.lint]
select = ["E", "F", "W"]
ignore = [
"E402", # Module level import not at top of file (needed for pytest.importorskip patterns)
"E501", # Line too long (not enforced previously, would require large refactor)
]
[tool.ruff.lint.per-file-ignores]
# Context manager variables that are intentionally unused
"tests/envs/test_websockets.py" = ["F841"]
"tests/test_cli/test_push.py" = ["F841"]
# Compatibility shim module
"src/openenv_core/__init__.py" = ["F401"]