content: [tool.poetry]
  name = "dspy-inspector"
  version = "0.7.0"
  description = "DSPy program/pipeline inspector widget for Jupyter/VSCode Notebooks."
  authors = ["Alex Rodriguez <me@arn.sh>"]
  maintainers = ["Alex Rodriguez <me@arn.sh>"]
  license = "GPL-3.0"
  readme = "README.md"
  homepage = "https://github.com/neoxelox/dspy-inspector"
  repository = "https://github.com/neoxelox/dspy-inspector"
  documentation = "https://github.com/neoxelox/dspy-inspector"
  keywords = [
      "dspy",
      "inspector",
      "program",
      "pipeline",
      "plugin",
      "widget",
      "notebook",
      "jupyter",
      "vscode",
      "dspy-inspector",
  ]
  
  [tool.poetry.dependencies]
  python = "^3.11"
  ipywidgets = "^8.1.1"
  jupyterlab-widgets = "^3.0.9"
  dspy-ai = "2.1.10"
  tiktoken = "^0.5.2"
  ipycytoscape = "1.3.3"
  orjson = "^3.9.13"
  
  [tool.poetry.dev-dependencies]
  autoflake = { git = "https://github.com/neoxelox/autoflake.git" }
  black = "24.1.1"
  flake8 = "3.9.0"
  flake8-black = "0.2.3"
  flake8-colors = "0.1.9"
  flake8-isort = "4.1.1"
  flakehell = "0.9.0"
  isort = "5.13.2"
  mypy = "0.910"
  pylint = "2.10.2"
  pytest = "8.0.0"
  pytest-xdist = "3.5.0"
  superinvoke = "1.0.5"
  notebook = "7.0.7"
  python-dotenv = "1.0.1"
  
  [tool.flakehell]
  # List of error codes: (flakehell code <code>)
  # - https://flake8.pycqa.org/en/latest/user/error-codes.html
  # - https://pycodestyle.readthedocs.io/en/latest/intro.html#error-codes
  format = "${cyan_underline}%(path)s${reset}:${yellow_bold}%(row)d${reset}:${green_bold}%(col)d${reset}: ${red_bold}%(code)s${reset} ${white}%(text)s${reset}"
  max_line_length = 120
  show_source = true
  statistics = true
  count = true
  jobs = "auto"
  exclude = ["**/__pycache__/*", "**/__init__.py"]
  
  [tool.flakehell.plugins]
  "flake8-black" = ["+*", "-BLK999"]
  "flake8-isort" = ["+*"]
  mccabe = ["+*"]
  pycodestyle = ["+*", "-W0621", "-E203", "-E1101", "-W503"]
  pyflakes = ["+*"]
  pylint = ["+*", "-W0621", "-E1101", "-W503"]
  
  [tool.isort]
  profile = "black"
  py_version = "311"
  line_length = 120
  multi_line_output = 3
  known_first_party = ["dspy-inspector"]
  default_section = "THIRDPARTY"
  sections = ["FUTURE", "STDLIB", "THIRDPARTY", "FIRSTPARTY", "LOCALFOLDER"]
  extend_skip_glob = ["**/__pycache__/*", "**/__init__.py"]
  
  [tool.black]
  line-length = 120
  target-version = ['py311']
  include = '.*\.py'
  extend-exclude = '(.*__init__\.py)'
  
  [tool.autoflake]
  recursive = true
  in_place = true
  remove_unused_variables = true
  remove_all_unused_imports = true
  exclude = ["**/__pycache__/*", "**/__init__.py"]
  
  [tool.mypy]
  python_version = "3.11"
  disallow_untyped_defs = true
  disallow_any_unimported = true
  no_implicit_optional = true
  check_untyped_defs = true
  warn_return_any = true
  warn_unused_ignores = true
  show_error_codes = true
  files = ['**/*.py']
  exclude = '(.*__init__\.py)'
  
  [build-system]
  requires = ["poetry-core"]
  build-backend = "poetry.core.masonry.api"
  