content: [build-system]
  requires = ["setuptools >= 69.0", "setuptools-scm>=8.0"]
  build-backend = "setuptools.build_meta"
  
  [project]
  name = "meds"
  dynamic = ["version"]
  description = "A data standard for working with event stream data"
  authors = [
    {name="Matthew McDermott", email="mattmcdermott8@gmail.com"},
    {name="Ethan Steinberg", email="ethanid@stanford.edu"},
    {name="Tom Pollard", email="tpollard@mit.edu"},
    {name="Robin van de Water", email="Robin.VandeWater@hpi.de"},
  ]
  readme = "README.md"
  license = {text = "Apache-2.0"}
  requires-python = ">=3.10"
  classifiers = [
      "Programming Language :: Python :: 3",
      "License :: OSI Approved :: MIT License",
      "Operating System :: OS Independent",
  ]
  dependencies = [
      "pyarrow >= 8",
      "jsonschema >= 4.0.0",
      "typing_extensions >= 4.0",
      "flexible_schema ~= 0.1.0",
  ]
  
  [project.urls]
  Homepage = "https://medical-event-data-standard.github.io/"
  Issues = "https://github.com/Medical-Event-Data-Standard/meds/issues"
  
  [project.optional-dependencies]
  dev = ["pre-commit<4", "ruff"]
  tests = ["pytest", "pytest-cov[toml]"]
  
  [tool.pytest.ini_options]
  addopts = [
    "--color=yes",
    "--doctest-glob=README.md",
  ]
  doctest_optionflags = ["NORMALIZE_WHITESPACE", "ELLIPSIS"]
  
  [tool.setuptools_scm]
  version_file = "src/meds/_version.py"
  
  [tool.coverage.report]
  omit = ["src/meds/_version.py"]
  
  [tool.ruff]
  target-version = "py311"
  line-length = 110
  extend-exclude = ["docs/index.md"]
  
  # Enable linters
  [tool.ruff.lint]
  select = [
      "E",   # pycodestyle
      "F",   # pyflakes
      "I",   # isort
      "UP",  # pyupgrade
      "B",   # flake8-bugbear
      "C4",  # flake8-comprehensions
      "DTZ", # flake8-datetimez
      "RUF", # Ruff-specific rules
      "SIM", # flake8-simplify
      "TCH", # flake8-type-checking
      "N",   # pep8-naming
  ]
  
  [tool.ruff.lint.per-file-ignores]
  "__init__.py" = ["F401"]  # Unused imports in __init__ files
  "test_*.py" = ["DTZ001"]  # Ignore datetimez in test files
  
  [tool.ruff.lint.pep8-naming]
  extend-ignore-names = ["*MEDS*"]  # Ignore MEDS in variable names
  