content: [build-system]
  requires = ["hatchling"]
  build-backend = "hatchling.build"
  
  [project]
  name = "nbdistributed"
  version = "0.1.0"
  description = "Jupyter extension for interactive distributed PyTorch training"
  readme = "README.md"
  requires-python = ">=3.8"
  license = "MIT"
  authors = [
      { name = "Zach Mueller", email = "walkwithcode@gmail.com" }
  ]
  classifiers = [
      "Development Status :: 3 - Alpha",
      "Intended Audience :: Developers",
      "Intended Audience :: Science/Research",
      "License :: OSI Approved :: MIT License",
      "Programming Language :: Python :: 3",
      "Programming Language :: Python :: 3.8",
      "Programming Language :: Python :: 3.9",
      "Programming Language :: Python :: 3.10",
      "Programming Language :: Python :: 3.11",
      "Topic :: Scientific/Engineering :: Artificial Intelligence",
      "Topic :: Software Development :: Libraries :: Python Modules",
  ]
  dependencies = [
      "jupyter>=1.0.0",
      "ipython>=8.0.0",
      "torch>=1.12.0",
      "pyzmq>=24.0.0",
  ]
  
  [project.optional-dependencies]
  test = [
      "pytest>=7.0.0",
      "pytest-mock>=3.10.0",
      "pytest-asyncio>=0.21.0",
      "pytest-cov>=4.0.0",
      "nbformat>=5.7.0",
      "nbclient>=0.7.0",
  ]
  dev = [
      "black>=22.0.0",
      "isort>=5.10.0",
      "mypy>=0.991",
  ]
  
  [project.scripts]
  jupyter-dist-test = "nbdistributed.tests.test_integration:main"
  
  [tool.hatch.build.targets.wheel]
  packages = ["src/nbdistributed"]
  
  [tool.hatch.metadata]
  allow-direct-references = true
  
  [tool.pytest.ini_options]
  testpaths = ["tests"]
  python_files = ["test_*.py"]
  python_classes = ["Test*"]
  python_functions = ["test_*"]
  addopts = "-v --tb=short --strict-markers --disable-warnings"
  markers = [
      "slow: marks tests as slow (deselect with '-m \"not slow\"')",
      "integration: marks tests as integration tests",
      "unit: marks tests as unit tests",
  ]
  filterwarnings = [
      "ignore::DeprecationWarning",
      "ignore::PendingDeprecationWarning",
  ]
  
  [tool.black]
  line-length = 88
  target-version = ["py38"]
  include = '\.pyi?$'
  
  [tool.isort]
  profile = "black"
  multi_line_output = 3
  line_length = 88