content: [tool.poetry]
  name = "mozilla-nimbus-schemas"
  version = "3001.0.0"
  description = "Schemas used by Mozilla Nimbus and related projects."
  authors = ["mikewilli"]
  license = "MPL 2.0"
  readme = "README.md"
  packages = [{ include = "mozilla_nimbus_schemas" }]
  include = [
      { path = "mozilla_nimbus_schemas/schemas", format = [
          "sdist",
          "wheel",
      ] },
  ]
  
  [tool.poetry.dependencies]
  python = "^3.10"
  pydantic = "^2"
  polyfactory = "^2.7.2"
  typing-extensions = ">=4.0.1" # Required until Python 3.11
  jsonschema = "^4.23.0"
  
  [tool.poetry.group.dev.dependencies]
  PyYAML = "^6.0"
  black = ">=23.3,<25.0"
  pytest = "^7.3.1"
  rfc3987 = "^1.3.8"
  ruff = ">=0.5.0,<0.13.1"
  twine = "^5.1.1"
  
  
  [build-system]
  requires = ["poetry-core>=2.1.1"]
  build-backend = "poetry.core.masonry.api"
  
  [tool.pytest.ini_options]
  addopts = ["--import-mode=importlib"]
  
  [tool.ruff]
  # # Enable Pyflakes `E` and `F` codes by default.
  lint.select = ["F", "E", "W", "I", "N", "YTT", "A", "C4", "RET", "SIM"]
  lint.ignore = [
      "A003",
      "A005",
      "E402",
      "E741",
      "F403",
      "N802",
      "N803",
      "N806",
      "N812",
      "N815",
      "RET503",
      "RET504",
      "RET505",
      "SIM102",
  ]
  line-length = 90
  [tool.ruff.lint.pep8-naming]
  classmethod-decorators = ["classmethod"]
  
  [tool.flake8]
  max-line-length = 90
  [tool.black]
  line-length = 90
  