summaryrefslogtreecommitdiff
path: root/pyproject.toml
blob: cb9caf657e70a30f0134e941a1015d99debc2f9a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
[project]
name = "jwebmail"
requires-python = "~= 3.9"
authors = [ {name = "Jannis M. Hoffmann", email = "jannis@fehcom.de"} ]
description = ""
dynamic = ["version"]
dependencies = [
  "Flask",
  "Flask-Babel",
  "Flask-Login",
  "Flask-WTF",
  "flask-paginate",
  "email-validator",
  "redis",
  "protobuf",
]

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[tool.hatch]

[tool.hatch.version]
path = "src/jwebmail/__init__.py"

[tool.hatch.envs.dev]
dependencies = [
  "isort",
  "black",
  "pip-tools",
  "click",
]

[tool.hatch.envs.dev.scripts]
serve = "flask --app src/jwebmail --debug run --extra-files src/jwebmail/translations"
server = "env JWEBMAIL_CONFIG=../../jwebmail.toml flask --app src/jwebmail run"
tr-compile = "pybabel compile -d src/jwebmail/translations/"
tr-extract = "pybabel extract -F babel.cfg -o messages.pot -k lazy_gettext src/ && pybabel update -i messages.pot -d src/jwebmail/translations/"
pb-generate = "protoc -I src/jwebmail/model --python_out=src/jwebmail/model/ jwebmail.proto"

[tool.hatch.build.targets.wheel]
ignore-vcs = true
sources = ["src"]
include = [
  "src/jwebmail/*.py",
  "src/jwebmail/model/*.py",
  "src/jwebmail/templates/*.html",
  "src/jwebmail/static/src/*.js",
  "src/jwebmail/static/css/*.css",
  "src/jwebmail/translations/*/LC_MESSAGES/messages.mo",
]

[tool.isort]
profile = "black"

[tool.pip-tools]
generate-hashes = true
strip-extras = true