luah 0.1.0

An unofficial lua impl by HydroRoll-Team.
Documentation
[build-system]
requires = ["maturin>=1.4,<2.0"]
build-backend = "maturin"

[project]
name = "luah"
dynamic = ["version"]
description = "HydroRoll Lua Impl Project"
authors = [
    {name = "HsiangNianian", email = "leader@hydroroll.team"},
]
dependencies = [
]
requires-python = ">=3.9"
readme.content-type = "text/x-rst"
readme.file = "README.rst"
license = {text = "AGPL-3.0"}
keywords = ["hydroroll", "lua", "pyo3"]
classifiers = [
    "Development Status :: 5 - Production/Stable", 
    "Framework :: Robot Framework", 
    "Framework :: Robot Framework :: Library", 
    "Operating System :: OS Independent", 
    "Programming Language :: Python :: 3",
    "Programming Language :: Rust",
    "Programming Language :: Python :: Implementation :: CPython",
    "Programming Language :: Python :: Implementation :: PyPy",
]

[project.urls]
homepage = "https://hydroroll.team/"
repository = "https://github.com/HydroRoll-Team/luah"
documentation = "https://luah.hydroroll.team/"

[project.scripts]
luah = "luah.cli:main"

[tool.maturin]
features = ["pyo3/extension-module"]
module-name = "luah.LibCore"

[tool.pdm.dev-dependencies]
dev = [
    "pip>=24.0",
    "maturin>=1.6.0",
    "ruff>=0.4.9",
]
docs = [
    "docutils>=0.20.1",
    "furo>=2024.5.6",
    "sphinx-autobuild>=2024.4.16",
    "myst-parser>=3.0.1",
    "sphinx>=7.3.7",
    "tomli>=2.0.1",
    "sphinx-intl>=2.2.0",
    "sphinxcontrib-httpdomain>=1.8.1",
]
pygments = [
    "docutils>=0.20.1",
]

[tool.ruff]
# Exclude a variety of commonly ignored directories.
exclude = [
    ".bzr",
    ".direnv",
    ".eggs",
    ".git",
    ".git-rewrite",
    ".hg",
    ".ipynb_checkpoints",
    ".mypy_cache",
    ".nox",
    ".pants.d",
    ".pyenv",
    ".pytest_cache",
    ".pytype",
    ".ruff_cache",
    ".svn",
    ".tox",
    ".venv",
    ".vscode",
    "__pypackages__",
    "_build",
    "buck-out",
    "build",
    "dist",
    "node_modules",
    "site-packages",
    "venv",
]

# Same as Black.
line-length = 88
indent-width = 4

# Assume Python 3.8
target-version = "py38"

[tool.ruff.lint]
# Enable Pyflakes (`F`) and a subset of the pycodestyle (`E`)  codes by default.
select = ["E4", "E7", "E9", "F"]
ignore = []

# Allow fix for all enabled rules (when `--fix`) is provided.
fixable = ["ALL"]
unfixable = []

# Allow unused variables when underscore-prefixed.
dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"

[tool.ruff.format]
# Like Black, use double quotes for strings.
quote-style = "double"

# Like Black, indent with spaces, rather than tabs.
indent-style = "space"

# Like Black, respect magic trailing commas.
skip-magic-trailing-comma = false

# Like Black, automatically detect the appropriate line ending.
line-ending = "auto"