thrust-py 0.2.2

Python binding to trafficrs core functions (Rust version of traffic)
Documentation
[project]
name = "traffic-thrust"
requires-python = ">=3.11"
readme = "readme.md"
dependencies = ["pandas>=3.0"]
classifiers = [
  "Programming Language :: Rust",
  "Programming Language :: Python :: Implementation :: CPython",
  "Programming Language :: Python :: Implementation :: PyPy",
]
dynamic = ["version"]

[project.urls]
repository = "https://github.com/xoolive/thrust"

[tool.maturin]
module-name = "thrust.core"
features = ["pyo3/extension-module"]
python-ext-module = true


[tool.uv]
cache-keys = [
  { file = "pyproject.toml" },
  { file = "Cargo.toml" },
  { file = "../Cargo.toml" },
  { file = "../**/*.rs" },
]

[dependency-groups]
dev = ["httpx>=0.28.1", "pytest>=9.0.1", "ruff>=0.14.5", "stamina>=25.2.0", "ty>=0.0.1a16"]

[build-system]
requires = ["maturin>=1.4,<2.0"]
build-backend = "maturin"


[tool.ruff]
lint.select = [
  "E",
  "W",   # pycodestyle
  "F",   # pyflakes
  "I",   # isort
  "NPY", # numpy
  # "PD",  # pandas
  "DTZ", # flake8-datetimez
  "RUF",
]
line-length = 80
target-version = "py311"

[tool.pytest.ini_options]
addopts = "--log-level=INFO --color=yes"

[[tool.ty.overrides]]
include = ["tests/**/*.py"]
rules = { "unresolved-import" = "ignore" }

[[tool.ty.overrides]]
include = ["thrust/core/**/*.pyi"]
rules = { "unresolved-import" = "ignore" }

[[tool.ty.overrides]]
include = ["thrust/*.py"]
rules = { "unresolved-import" = "ignore" }

[[tool.ty.overrides]]
include = ["thrust/core.pyi"]
rules = { "unresolved-import" = "ignore" }