lnbits/pyproject.toml
2023-01-30 11:46:43 +00:00

162 lines
3.1 KiB
TOML

[tool.poetry]
name = "lnbits"
version = "0.9.7"
description = "LNbits, free and open-source Lightning wallet and accounts system."
authors = ["Alan Bits <alan@lnbits.com>"]
[tool.poetry.build]
generate-setup-file = false
script = "build.py"
[tool.poetry.dependencies]
python = "^3.10 | ^3.9 | ^3.8 | ^3.7"
aiofiles = "0.8.0"
asgiref = "3.4.1"
attrs = "22.2.0"
bech32 = "1.2.0"
bitstring = "3.1.9"
certifi = "2022.12.7"
charset-normalizer = "2.0.12"
click = "8.0.4"
ecdsa = "0.18.0"
embit = "0.4.9"
fastapi = "0.83.0"
h11 = "0.12.0"
httpcore = "0.15.0"
httptools = "0.4.0"
httpx = "0.23.0"
idna = "3.4"
importlib-metadata = "5.2.0"
jinja2 = "3.0.1"
lnurl = "0.3.6"
markupsafe = "2.0.1"
marshmallow = "3.19.0"
outcome = "1.2.0"
psycopg2-binary = "2.9.1"
pycryptodomex = "3.16.0"
pydantic = "1.10.4"
pypng = "0.0.21"
pyqrcode = "1.2.1"
pyScss = "1.4.0"
pyyaml = "5.4.1"
represent = "1.6.0.post0"
rfc3986 = "1.5.0"
secp256k1 = "0.14.0"
shortuuid = "1.0.1"
six = "1.16.0"
sniffio = "1.3.0"
sqlalchemy = "1.3.24"
sqlalchemy-aio = "0.17.0"
sse-starlette = "0.6.2"
typing-extensions = "4.4.0"
uvicorn = "0.18.3"
uvloop = "0.16.0"
watchgod = "0.7"
websockets = "10.0"
zipp = "3.11.0"
loguru = "0.6.0"
cffi = "1.15.1"
websocket-client = "1.3.3"
grpcio = "1.51.1"
protobuf = "4.21.12"
Cerberus = "1.3.4"
async-timeout = "4.0.2"
pyln-client = "0.11.1"
boltz-client = "0.1.3"
cashu = "0.9.0"
[tool.poetry.dev-dependencies]
isort = "^5.10.1"
pytest = "^7.1.2"
mock = "^4.0.3"
black = "^22.6.0"
pytest-asyncio = "^0.19.0"
pytest-cov = "^3.0.0"
mypy = "^0.971"
types-protobuf = "^3.19.22"
flake8 = { version = "^6.0.0", python = ">=3.8.1" }
pylint = { version = "^2.15.10", python = ">=3.7.2" }
[build-system]
requires = ["poetry-core>=1.0.0", "pyScss"]
build-backend = "poetry.core.masonry.api"
[tool.poetry.scripts]
lnbits = "lnbits.server:main"
[tool.isort]
profile = "black"
[tool.pyright]
include = [
"lnbits"
]
exclude = [
"lnbits/wallets/lnd_grpc_files",
]
[tool.mypy]
files = "lnbits"
exclude = """(?x)(
^lnbits/wallets/lnd_grpc_files.
)"""
[[tool.mypy.overrides]]
module = [
"embit.*",
"secp256k1.*",
"uvicorn.*",
"sqlalchemy.*",
"sqlalchemy_aio.*",
"websocket.*",
"websockets.*",
"pyqrcode.*",
"cashu.*",
"shortuuid.*",
"grpc.*",
"lnurl.*",
"bitstring.*",
"ecdsa.*",
"psycopg2.*",
"pyngrok.*",
]
ignore_missing_imports = "True"
[tool.pytest.ini_options]
addopts = "--durations=1 -s --cov=lnbits --cov-report=xml"
testpaths = [
"tests"
]
[tool.pylint.'MESSAGES CONTROL']
max-line-length = 300
disable = "all"
enable = [
"assignment-from-none",
"chained-comparison",
"consider-merging-isinstance",
"consider-using-dict-comprehension",
"consider-using-dict-items",
"consider-using-f-string",
"consider-using-in",
"dangerous-default-value",
"inconsistent-return-statements",
"lost-exception",
"pointless-string-statement",
"simplifiable-if-statement",
"super-init-not-called",
"superfluous-parens",
"unused-variable",
"use-list-literal",
"useless-else-on-loop",
"useless-object-inheritance",
]
[tool.pylint.MASTER]
ignore-paths = [
"^lnbits/wallets/lnd_grpc_files/.*$",
]
fail-under = 10.0
jobs = 0