mirror of
https://github.com/mozilla-services/syncstorage-rs.git
synced 2026-04-01 11:42:15 +02:00
86 lines
2.8 KiB
TOML
86 lines
2.8 KiB
TOML
[project]
|
|
name = "syncstorage-rs"
|
|
version = "0.1.0"
|
|
description = "Python dependencies for the root of the syncstorage-rs project"
|
|
authors = [
|
|
{name = "Taddes",email = "tkorris@mozilla.com"}
|
|
]
|
|
license = "Mozilla Public License Version 2.0"
|
|
readme = "README.md"
|
|
requires-python = ">=3.12"
|
|
|
|
[tool.poetry]
|
|
package-mode = false
|
|
|
|
[tool.poetry.dependencies]
|
|
cryptography = "^46.0.5"
|
|
pyfxa = "^0.8.1"
|
|
tokenlib = "^2.0.0"
|
|
|
|
[tool.poetry.group.tokenserver-unit-tests.dependencies]
|
|
cryptography = "46.0.5"
|
|
hawkauthlib = "^2.0.0"
|
|
konfig = "^1.1"
|
|
mysqlclient = "^2.2.7"
|
|
psutil = "^7.0.0"
|
|
pyjwt = "^2.10.1"
|
|
pyramid = "^1.10.8"
|
|
pyramid-hawkauth = "^2.0.0"
|
|
pyfxa = "0.8.1"
|
|
pytest = "^8.4.0"
|
|
requests = "^2.32.4"
|
|
simplejson = "^3.20.1"
|
|
sqlalchemy = "^1.4.46"
|
|
tokenlib = "^2.0.0"
|
|
webtest = "^3.0.6"
|
|
wsgiproxy2 = "^0.5.1"
|
|
|
|
[tool.poetry.group.dev.dependencies]
|
|
mypy = "^1.19.1"
|
|
pydocstyle = "^6.3.0"
|
|
ruff = "^0.15.6"
|
|
black = "^26.3.1"
|
|
bandit = "^1.9.4"
|
|
isort = "^8.0.1"
|
|
|
|
[tool.pydocstyle]
|
|
match = ".*\\.py"
|
|
convention = "pep257"
|
|
# Error Code Ref: https://www.pydocstyle.org/en/stable/error_codes.html
|
|
# D212 Multi-line docstring summary should start at the first line
|
|
add-select = ["D212"]
|
|
# D105 Docstrings for magic methods
|
|
# D107 Docstrings for __init__
|
|
# D203 as it conflicts with D211 https://github.com/PyCQA/pydocstyle/issues/141
|
|
# D205 1 blank line required between summary line and description, awkward spacing
|
|
# D400 First line should end with a period, doesn't work when sentence spans 2 lines
|
|
add-ignore = ["D105","D107","D203", "D205", "D400"]
|
|
|
|
[tool.bandit]
|
|
# B101: https://bandit.readthedocs.io/en/latest/plugins/b101_assert_used.html
|
|
# B104: https://bandit.readthedocs.io/en/latest/plugins/b104_hardcoded_bind_all_interfaces.html
|
|
# B105: https://bandit.readthedocs.io/en/latest/plugins/b105_hardcoded_password_string.html — test fixture secrets only
|
|
# B106: https://bandit.readthedocs.io/en/latest/plugins/b106_hardcoded_password_funcarg.html — test fixture secrets only
|
|
# B311: https://bandit.readthedocs.io/en/latest/blacklists/blacklist_calls.html#b311-random
|
|
# B404: https://bandit.readthedocs.io/en/latest/blacklists/blacklist_imports.html#b404-import-subprocess
|
|
# B603: https://bandit.readthedocs.io/en/latest/plugins/b603_subprocess_without_shell_equals_true.html — subprocess on trusted internal binary path
|
|
skips = ["B101", "B104", "B105", "B106", "B311", "B404", "B603"]
|
|
|
|
[tool.mypy]
|
|
python_version = "3.12"
|
|
disable_error_code = "attr-defined"
|
|
disallow_untyped_calls = false
|
|
follow_imports = "normal"
|
|
ignore_missing_imports = true
|
|
pretty = true
|
|
show_error_codes = true
|
|
strict_optional = true
|
|
warn_no_return = true
|
|
warn_redundant_casts = true
|
|
warn_return_any = true
|
|
warn_unused_ignores = true
|
|
warn_unreachable = true
|
|
|
|
[build-system]
|
|
requires = ["poetry-core>=2.0.0,<3.0.0"]
|
|
build-backend = "poetry.core.masonry.api" |