[tool.poetry]
name = "solders"
version = "0.14.3"
description = "Python bindings for Solana Rust tools"
authors = ["kevinheavey <kevinheavey123@gmail.com>"]
license = "Apache"
[tool.poetry.dependencies]
python = "^3.7"
[tool.poetry.group.dev.dependencies]
sphinx = "4.5.0"
sphinx-rtd-theme = "1.0.0"
maturin = "0.14.10"
pybip39 = "0.1.0"
based58 = "0.1.1"
bumpversion = "0.6.0"
"jsonalias" = "0.1.1"
ruff = "0.0.226"
black = "22.12.0"
mypy = "0.991"
pytest = "7.2.1"
[build-system]
requires = ["maturin>=0.13.2,<0.14"]
build-backend = "maturin"
[project]
name = "solders"
version = "0.14.3"
description = "Python binding to the Solana Rust SDK"
authors = [ {name = "kevinheavey", email = "kevinheavey123@gmail.com"} ]
license = {file = "LICENSE"}
requires-python = ">=3.7"
classifiers = [
"Programming Language :: Rust",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Python :: Implementation :: PyPy",
]
dependencies = ["typing-extensions >=4.2.0", "jsonalias ==0.1.1"]
[project.urls]
homepage = "https://github.com/kevinheavey/solders"
documentation = "https://kevinheavey.github.io/solders/"
repository = "https://github.com/kevinheavey/solders"
changelog = "https://github.com/kevinheavey/solders/blob/main/CHANGELOG.md"
[tool.maturin]
python-source = "python"
[tool.pyright]
reportMissingModuleSource = false
[tool.ruff]
line-length = 120
select = ["A", "B", "D", "E", "F", "I", "ARG", "BLE", "C4", "SIM", "PLC", "PLE", "PLR", "PLW", "RUF"]
ignore = ["D203"]
exclude = [
".bzr",
".direnv",
".eggs",
".git",
".hg",
".mypy_cache",
".nox",
".pants.d",
".ruff_cache",
".svn",
".tox",
".venv",
"__pypackages__",
"_build",
"buck-out",
"build",
"dist",
"node_modules",
"venv",
]
dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
target-version = "py39"
[tool.ruff.per-file-ignores]
"src/solana/blockhash.py" = ["A003"]
"tests/**/*.py" = ["D100", "D103", "D104", "E501", "ARG001", "PLR2004"]
"python/solders/*.pyi" = ["D", "ARG", "A"]
"python/solders/__init__.py" = ["D104"]
"python/solders/system_program.py" = ["D100", "I001"]
[tool.ruff.pydocstyle]
convention = "google"