[run]
plugins =
  coverage_conditional_plugin

[report]
exclude_lines =
  pragma: no cover
  def __repr__
  def __str__
  @(typing\.)?overload
  if (typing\.)?TYPE_CHECKING( is True)?:
  @(abc\.)?abstractmethod
  raise NotImplementedError
  warnings\.warn
  ^\.\.\.$
  pass
  if __name__ == .__main__.:

[coverage_conditional_plugin]
rules =
  "sys_platform != 'win32'": py-win32
  "sys_platform != 'linux'": py-linux
  "sys_platform != 'darwin'": py-darwin
  "sys_version_info < (3, 11)": py-gte-311
  "sys_version_info >= (3, 11)": py-lt-311
  "package_version('pydantic') < (2,)": pydantic-v2
  "package_version('pydantic') >= (2,)": pydantic-v1
