Spaces:
Sleeping
Sleeping
File size: 3,422 Bytes
d989c27 d10d3ce d989c27 d10d3ce d989c27 d10d3ce d989c27 d10d3ce d989c27 d10d3ce d989c27 d10d3ce d989c27 73accd1 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 |
[build-system]
requires = ["setuptools>=45", "wheel", "setuptools_scm[toml]>=6.2"]
build-backend = "setuptools.build_meta"
[project]
name = "bayesian-game"
description = "Interactive Bayesian inference game with domain-driven design"
readme = "README.md"
license = "MIT"
authors = [
{name = "Thompson", email = "thompsonson@example.com"},
]
classifiers = [
"Development Status :: 4 - Beta",
"Intended Audience :: Education",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Topic :: Scientific/Engineering :: Artificial Intelligence",
"Topic :: Education",
]
requires-python = ">=3.10"
dependencies = [
"gradio>=4.0.0",
"numpy>=1.21.0",
"matplotlib>=3.5.0",
]
dynamic = ["version"]
[project.optional-dependencies]
dev = [
"pytest>=7.0.0",
"pytest-cov>=4.0.0",
"pytest-xdist>=3.0.0",
"pre-commit>=3.0.0",
"ruff>=0.1.0",
"mypy>=1.0.0",
"bandit>=1.7.0",
]
[project.urls]
Homepage = "https://github.com/thompsonson/bayesian_game"
Repository = "https://github.com/thompsonson/bayesian_game"
"Bug Tracker" = "https://github.com/thompsonson/bayesian_game/issues"
"Hugging Face Space" = "https://huggingface.co/spaces/thompsonson/bayesian_game"
[tool.setuptools]
packages = ["domains", "ui"]
[tool.setuptools_scm]
[tool.ruff]
target-version = "py310"
line-length = 88
[tool.ruff.lint]
select = [
"E", # pycodestyle errors
"W", # pycodestyle warnings
"F", # pyflakes
"I", # isort
"B", # flake8-bugbear
"C4", # flake8-comprehensions
"UP", # pyupgrade
"ARG", # flake8-unused-arguments
"SIM", # flake8-simplify
"TCH", # flake8-type-checking
"PTH", # flake8-use-pathlib
"ERA", # eradicate
"PL", # pylint
"RUF", # ruff-specific rules
]
ignore = [
"E501", # line too long, handled by formatter
"B008", # do not perform function calls in argument defaults
"C901", # too complex
"PLR0913", # too many arguments
"PLR0915", # too many statements
]
[tool.ruff.lint.per-file-ignores]
"tests/**/*" = ["PLR2004", "S101", "ARG001"]
[tool.ruff.format]
quote-style = "double"
indent-style = "space"
skip-magic-trailing-comma = false
line-ending = "auto"
[tool.mypy]
python_version = "3.10"
check_untyped_defs = true
disallow_any_generics = false
disallow_incomplete_defs = false
disallow_untyped_defs = false
no_implicit_optional = true
warn_redundant_casts = true
warn_unused_ignores = false
warn_return_any = false
strict_equality = true
[[tool.mypy.overrides]]
module = [
"matplotlib.*",
"gradio.*",
]
ignore_missing_imports = true
[tool.pytest.ini_options]
minversion = "7.0"
addopts = "-ra -q --strict-markers --strict-config"
testpaths = ["tests"]
python_files = ["test_*.py"]
python_classes = ["Test*"]
python_functions = ["test_*"]
markers = [
"slow: marks tests as slow",
"integration: marks tests as integration tests",
"unit: marks tests as unit tests",
]
[tool.coverage.run]
source = ["domains", "ui"]
omit = [
"tests/*",
"app.py",
]
[tool.coverage.report]
exclude_lines = [
"pragma: no cover",
"def __repr__",
"raise AssertionError",
"raise NotImplementedError",
"if __name__ == .__main__.:",
"if TYPE_CHECKING:",
]
[tool.bandit]
exclude_dirs = ["tests"]
skips = ["B101", "B601"]
|