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.

152 lines
3.4 KiB

2 years ago
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. pandas = "^1.4.2"
  64. [tool.poetry.dev-dependencies]
  65. model-mommy = "^2.0.0"
  66. coverage = "^6.3.1"
  67. flake8 = "^4.0.1"
  68. isort = {extras = ["pyproject"], version = "^5.10.1"}
  69. autopep8 = "^1.6.0"
  70. mypy = "^0.931"
  71. watchdog = "^2.1.6"
  72. black = "^22.1.0"
  73. pyproject-flake8 = "^0.0.1-alpha.2"
  74. types-chardet = "^4.0.3"
  75. types-requests = "^2.27.10"
  76. types-waitress = "^2.0.6"
  77. taskipy = "^1.10.1"
  78. unittest-xml-reporting = "^3.2.0"
  79. [build-system]
  80. requires = ["poetry-core>=1.0.0", "poetry-dynamic-versioning"]
  81. build-backend = "poetry.core.masonry.api"
  82. [tool.poetry-dynamic-versioning]
  83. enable = true
  84. [tool.black]
  85. line-length = 120
  86. target-version = ['py37', 'py38']
  87. include = '\.pyi?$'
  88. [tool.flake8]
  89. max-line-length = 120
  90. max-complexity = 18
  91. ignore = "E203,E266,W503,"
  92. filename = "*.py"
  93. [tool.mypy]
  94. python_version = "3.8"
  95. ignore_missing_imports = true
  96. show_error_codes = true
  97. exclude = [
  98. "migrations",
  99. "config",
  100. ]
  101. [tool.isort]
  102. profile = "black"
  103. include_trailing_comma = true
  104. multi_line_output = 3
  105. known_first_party = [
  106. "api",
  107. "auto_labeling",
  108. "config",
  109. "data_export",
  110. "data_import",
  111. "examples",
  112. "label_types",
  113. "labels",
  114. "metrics",
  115. "projects",
  116. "roles",
  117. "users"
  118. ]
  119. known_local_folder = [
  120. "api",
  121. "auto_labeling",
  122. "config",
  123. "data_export",
  124. "data_import",
  125. "examples",
  126. "label_types",
  127. "labels",
  128. "metrics",
  129. "projects",
  130. "roles",
  131. "users"
  132. ]
  133. [tool.taskipy.tasks]
  134. isort = "isort . -c --skip migrations"
  135. flake8 = "pflake8 --filename \"*.py\" --extend-exclude \"*/migrations\""
  136. black = "black --check ."
  137. mypy = "mypy --namespace-packages --explicit-package-bases ."
  138. wait_for_db = "python manage.py wait_for_db"
  139. test = "python manage.py test --pattern=\"test*.py\""
  140. migrate = "python manage.py migrate"
  141. collectstatic = "python manage.py collectstatic --noinput"