solders 0.14.3

Python binding to the Solana Rust SDK
Documentation
[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"} # relative to the package/ directory
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 a variety of commonly ignored directories.
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",
]

# Allow unused variables when underscore-prefixed.
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"