content: [build-system]
  build-backend = "setuptools.build_meta"
  requires = ["setuptools", "wheel", "cibuildwheel", "hatch", "ruff"]
  
  [project]
  authors = [
      { email = "tech@nextmv.io", name = "Nextmv" }
  ]
  classifiers = [
      "License :: Other/Proprietary License",
      "Operating System :: OS Independent",
      "Programming Language :: Python :: 3",
      "Programming Language :: Python :: 3.8",
      "Programming Language :: Python :: 3.9",
      "Programming Language :: Python :: 3.10",
      "Programming Language :: Python :: 3.11",
      "Programming Language :: Python :: 3.12",
      "Programming Language :: Python :: 3.13",
  ]
  dependencies = [
      "pydantic>=2.5.2",
  ]
  description = "Nextroute is an engine for solving Vehicle Routing Problems (VRPs)."
  dynamic = [
      "version",
  ]
  keywords = [
      "decision engineering",
      "decision science",
      "decisions",
      "nextmv",
      "optimization",
      "operations research",
      "solver",
      "vehicle routing problem",
  ]
  license = { file = "LICENSE" }
  maintainers = [
      { email = "tech@nextmv.io", name = "Nextmv" }
  ]
  name = "nextroute"
  readme = "README.md"
  requires-python = ">=3.8"
  
  [project.urls]
  Homepage = "https://www.nextmv.io"
  Documentation = "https://www.nextmv.io/docs/vehicle-routing"
  Repository = "https://github.com/nextmv-io/nextroute"
  
  [tool.ruff]
  target-version = "py38"
  lint.select = [
      "E",  # pycodestyle errors
      "W",  # pycodestyle warnings
      "F",  # pyflakes
      "I",  # isort
      "C",  # flake8-comprehensions
      "B",  # flake8-bugbear
      "UP",  # pyupgrade
  ]
  line-length = 120
  
  [tool.hatch.version]
  path = "src/nextroute/__about__.py"
  
  [tool.setuptools.packages.find]
  where = ["src/"]
  exclude = ["tests"]
  
  [tool.setuptools.package-data]
  nextroute = ["bin/*.exe"]
  
  [tool.cibuildwheel]
  test-command = 'python -c "exec(\"import nextroute\nprint(nextroute.nextroute_version())\")"'
  build = "cp3{8,9,10,11,12,13}-*"
  skip = "*musllinux*"
  archs = "native"
  manylinux-x86_64-image = "quay.io/pypa/manylinux_2_28_x86_64"
  manylinux-aarch64-image = "quay.io/pypa/manylinux_2_28_aarch64"
  
  [tool.cibuildwheel.linux]
  before-all = """
  dnf update -y
  dnf -y install go
  """
  