You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

151 lines
3.3 KiB

2 years ago
2 years ago
  1. [tool.poetry]
  2. name = "doccano"
  3. version = "0.0.0"
  4. description = "doccano, text annotation tool for machine learning practitioners"
  5. authors = ["Hironsan <hiroki.nakayama.py@gmail.com>"]
  6. license = "MIT"
  7. readme = "README.md"
  8. homepage = "https://doccano.github.io/doccano/"
  9. repository = "https://github.com/doccano/doccano"
  10. documentation = "https://doccano.github.io/doccano/"
  11. classifiers = [
  12. "Programming Language :: Python",
  13. "Programming Language :: Python :: 3.8",
  14. ]
  15. packages = [
  16. { include = "backend", from = ".." },
  17. ]
  18. include = [
  19. "client/dist/**/*",
  20. "staticfiles/**/*"
  21. ]
  22. exclude = [
  23. "filepond-temp-uploads",
  24. "media",
  25. "db.sqlite3*",
  26. "poetry.lock"
  27. ]
  28. [tool.poetry.extras]
  29. mssql = ["django-mssql-backend"]
  30. postgresql = ["psycopg2-binary"]
  31. [tool.poetry.scripts]
  32. doccano = 'backend.cli:main'
  33. [tool.poetry.dependencies]
  34. python = "^3.8"
  35. Django = "^4.0.2"
  36. environs = "^9.5.0"
  37. furl = "^2.1.3"
  38. djangorestframework = "^3.13.1"
  39. django-filter = "^21.1"
  40. django-polymorphic = "^3.1.0"
  41. django-cors-headers = "^3.11.0"
  42. drf-yasg = "^1.20.0"
  43. django-rest-polymorphic = "^0.1.9"
  44. chardet = "^4.0.0"
  45. pyexcel = "^0.7.0"
  46. seqeval = "^1.2.2"
  47. whitenoise = "^6.0.0"
  48. dj-database-url = "^0.5.0"
  49. pyexcel-xlsx = "^0.6.0"
  50. gunicorn = "^20.1.0"
  51. auto-labeling-pipeline = "^0.1.21"
  52. dj-rest-auth = "^2.2.3"
  53. django-drf-filepond = "^0.4.1"
  54. celery = "^5.2.3"
  55. django-celery-results = "2.2.0"
  56. SQLAlchemy = "^1.4.31"
  57. waitress = "^2.0.0"
  58. django-health-check = "^3.16.5"
  59. djangorestframework-xml = "^2.0.0"
  60. django-storages = {extras = ["google"], version = "^1.12.3"}
  61. django-cleanup = "^6.0.0"
  62. filetype = "^1.0.10"
  63. [tool.poetry.dev-dependencies]
  64. model-mommy = "^2.0.0"
  65. coverage = "^6.3.1"
  66. flake8 = "^4.0.1"
  67. isort = {extras = ["pyproject"], version = "^5.10.1"}
  68. autopep8 = "^1.6.0"
  69. mypy = "^0.931"
  70. watchdog = "^2.1.6"
  71. black = "^22.1.0"
  72. pyproject-flake8 = "^0.0.1-alpha.2"
  73. types-chardet = "^4.0.3"
  74. types-requests = "^2.27.10"
  75. types-waitress = "^2.0.6"
  76. taskipy = "^1.10.1"
  77. unittest-xml-reporting = "^3.2.0"
  78. [build-system]
  79. requires = ["poetry-core>=1.0.0", "poetry-dynamic-versioning"]
  80. build-backend = "poetry.core.masonry.api"
  81. [tool.poetry-dynamic-versioning]
  82. enable = true
  83. [tool.black]
  84. line-length = 120
  85. target-version = ['py37', 'py38']
  86. include = '\.pyi?$'
  87. [tool.flake8]
  88. max-line-length = 120
  89. max-complexity = 18
  90. ignore = "E203,E266,W503,"
  91. filename = "*.py"
  92. [tool.mypy]
  93. python_version = "3.8"
  94. ignore_missing_imports = true
  95. show_error_codes = true
  96. exclude = [
  97. "migrations",
  98. "config",
  99. ]
  100. [tool.isort]
  101. profile = "black"
  102. include_trailing_comma = true
  103. multi_line_output = 3
  104. known_first_party = [
  105. "api",
  106. "auto_labeling",
  107. "config",
  108. "data_export",
  109. "data_import",
  110. "examples",
  111. "label_types",
  112. "labels",
  113. "metrics",
  114. "projects",
  115. "roles",
  116. "users"
  117. ]
  118. known_local_folder = [
  119. "api",
  120. "auto_labeling",
  121. "config",
  122. "data_export",
  123. "data_import",
  124. "examples",
  125. "label_types",
  126. "labels",
  127. "metrics",
  128. "projects",
  129. "roles",
  130. "users"
  131. ]
  132. [tool.taskipy.tasks]
  133. isort = "isort . -c --skip migrations"
  134. flake8 = "pflake8 --filename \"*.py\" --extend-exclude \"*/migrations\""
  135. black = "black --check ."
  136. mypy = "mypy --namespace-packages --explicit-package-bases ."
  137. wait_for_db = "python manage.py wait_for_db"
  138. test = "python manage.py test --pattern=\"test*.py\""
  139. migrate = "python manage.py migrate"
  140. collectstatic = "python manage.py collectstatic --noinput"