| [build-system] |
| requires = ["hatchling>=1.25"] |
| build-backend = "hatchling.build" |
|
|
| [project] |
| name = "gcmd-science-keyword-classifier" |
| version = "0.1.0" |
| description = "MVP for constrained hierarchical GCMD Science Keyword classification." |
| readme = "README.md" |
| requires-python = ">=3.11" |
| license = { text = "Proprietary" } |
| authors = [ |
| { name = "GCMD Classifier Contributors" } |
| ] |
| dependencies = [ |
| "pydantic>=2.7,<3", |
| ] |
|
|
| [project.optional-dependencies] |
| dev = [ |
| "pytest>=8,<9", |
| "ruff>=0.5,<1", |
| ] |
| openai = [ |
| "openai>=1.0,<2", |
| ] |
| gradio = [ |
| "gradio>=4,<6", |
| ] |
|
|
| [tool.pytest.ini_options] |
| testpaths = ["tests"] |
| pythonpath = ["src"] |
| addopts = "-q" |
| markers = [ |
| "integration: tests that may require live external services and are skipped by default", |
| ] |
|
|
| [tool.ruff] |
| line-length = 100 |
| target-version = "py311" |
| src = ["src", "tests"] |
| exclude = [ |
| "prototype", |
| "outputs", |
| ".venv", |
| ] |
|
|
| [tool.ruff.lint] |
| select = ["E", "F", "I", "UP", "B"] |
| ignore = [] |
|
|
| [tool.ruff.format] |
| quote-style = "double" |
| indent-style = "space" |
| line-ending = "auto" |
|
|
| [tool.hatch.build.targets.wheel] |
| packages = ["src/gcmd_classifier"] |
|
|
| [tool.hatch.build.targets.sdist] |
| include = [ |
| "src/gcmd_classifier", |
| "README.md", |
| "PROJECT_SPEC.md", |
| "AGENTS.md", |
| ] |