content: [project]
  name = "RF-Solver-Editing"
  authors = [
    { name = "Jiangshan Wang, Junfu Pu, et al.", email = "wjs23@mails.tsinghua.edu.cn" },
  ]
  description = "Inference codebase for RF-Solver-Editing"
  readme = "README.md"
  requires-python = ">=3.10"
  license = { file = "LICENSE.md" }
  dynamic = ["version"]
  dependencies = [
    "torch >= 2.0.0",
    "torchvision",
    "einops",
    "fire >= 0.6.0",
    "huggingface-hub",
    "safetensors",
    "sentencepiece",
    "transformers",
    "tokenizers",
    "protobuf",
    "requests",
    "invisible-watermark",
  ]
  
  [project.optional-dependencies]
  streamlit = [
    "streamlit",
    "streamlit-keyup",
  ]
  gradio = [
    "gradio",
  ]
  all = [
    "flux[streamlit]",
    "flux[gradio]",
    "matplotlib",
    "diffusers",
    "scipy"
  ]
  
  [project.scripts]
  flux = "flux.edit:main"
  
  [build-system]
  build-backend = "setuptools.build_meta"
  requires = ["setuptools>=64", "wheel", "setuptools_scm>=8"]
  
  [tool.ruff]
  line-length = 110
  target-version = "py310"
  extend-exclude = ["/usr/lib/*"]
  
  [tool.ruff.lint]
  ignore = [
    "E501", # line too long - will be fixed in format
  ]
  
  [tool.ruff.format]
  quote-style = "double"
  indent-style = "space"
  line-ending = "auto"
  skip-magic-trailing-comma = false
  docstring-code-format = true
  exclude = [
    "src/flux/_version.py", # generated by setuptools_scm
  ]
  
  [tool.ruff.lint.isort]
  combine-as-imports = true
  force-wrap-aliases = true
  known-local-folder = ["src"]
  known-first-party = ["flux"]
  
  [tool.pyright]
  include = ["src"]
  exclude = [
    "**/__pycache__", # cache directories
    "./typings",      # generated type stubs
  ]
  stubPath = "./typings"
  
  [tool.tomlsort]
  in_place = true
  no_sort_tables = true
  spaces_before_inline_comment = 1
  spaces_indent_inline_array = 2
  trailing_comma_inline_array = true
  sort_first = [
    "project",
    "build-system",
    "tool.setuptools",
  ]
  
  # needs to be last for CI reasons
  [tool.setuptools_scm]
  write_to = "src/flux/_version.py"
  parentdir_prefix_version = "flux-"
  fallback_version = "0.0.0"
  version_scheme = "post-release"
  