pyproject.toml 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. [build-system]
  2. requires = ["setuptools>=45", "setuptools_scm[toml]>=6.2"]
  3. build-backend = "setuptools.build_meta"
  4. [tool.setuptools]
  5. packages = ["redmail"]
  6. [project]
  7. name = "redmail"
  8. description = "Email sending library"
  9. readme = "README.md"
  10. license = {file="LICENSE"}
  11. authors = [
  12. {name = "Mikael Koli", email = "koli.mikael@gmail.com"},
  13. ]
  14. requires-python = ">=3.6"
  15. classifiers = [
  16. "Topic :: Communications :: Email",
  17. "Operating System :: OS Independent",
  18. "License :: OSI Approved :: MIT License",
  19. "Programming Language :: Python :: 3",
  20. "Programming Language :: Python :: 3.6",
  21. "Programming Language :: Python :: 3.7",
  22. "Programming Language :: Python :: 3.8",
  23. "Programming Language :: Python :: 3.9",
  24. "Programming Language :: Python :: 3.10",
  25. "Programming Language :: Python :: 3.11",
  26. "Intended Audience :: Developers",
  27. "Intended Audience :: Customer Service",
  28. "Intended Audience :: Financial and Insurance Industry",
  29. ]
  30. dynamic = ["version"]
  31. dependencies = [
  32. 'jinja2',
  33. ]
  34. [tool.setuptools_scm]
  35. write_to = "redmail/_version.py"
  36. local_scheme = "no-local-version"
  37. [project.urls]
  38. Homepage = 'https://github.com/Miksus/red-mail'
  39. Documentation = 'https://red-mail.readthedocs.io'
  40. Funding = 'https://github.com/sponsors/Miksus'
  41. Source = 'https://github.com/Miksus/red-mail'
  42. Changelog = 'https://red-mail.readthedocs.io/en/stable/versions.html'
  43. [project.optional-dependencies]
  44. test = [
  45. 'pytest',
  46. # Package requirements
  47. 'jinja2',
  48. # Optional
  49. 'pandas',
  50. 'matplotlib',
  51. 'Pillow',
  52. 'openpyxl',
  53. ]
  54. docs = [
  55. 'sphinx >= 1.7.5',
  56. 'pydata-sphinx-theme',
  57. 'sphinx_material',
  58. 'sphinx-copybutton',
  59. 'sphinx_book_theme',
  60. ]
  61. [tool.coverage.run]
  62. source = ["redmail"]
  63. branch = false
  64. omit = [
  65. "test/*",
  66. "_version.py"
  67. ]
  68. data_file = "cov_data/.coverage"
  69. [tool.coverage.report]
  70. omit = [
  71. "redmail/test/*",
  72. "redmail/_version.py",
  73. "redmail/__main__.py"
  74. ]
  75. # Regexes for lines to exclude from consideration
  76. exclude_lines = [
  77. "pragma: no cover",
  78. # Don't complain about abstract methods, they aren't run:
  79. '''@(abc\.)?abstractmethod''',
  80. # Ignore type checking imports
  81. "if TYPE_CHECKING",
  82. ]
  83. ignore_errors = true
  84. [tool.coverage.html]
  85. directory = "htmlcov"