[build-system] requires = ['maturin>=1,<2', 'typing_extensions'] build-backend = 'maturin' [project] name = 'pylimbo' description = "Limbo is a work-in-progress, in-process OLTP database management system, compatible with SQLite." requires-python = '>=3.9' classifiers = [ 'Development Status :: 3 - Alpha', 'Programming Language :: Python', 'Programming Language :: Python :: 3', 'Programming Language :: Python :: 3 :: Only', 'Programming Language :: Python :: 3.9', 'Programming Language :: Python :: 3.10', 'Programming Language :: Python :: 3.11', 'Programming Language :: Python :: 3.12', 'Programming Language :: Python :: 3.13', 'Programming Language :: Rust', 'License :: OSI Approved :: MIT License', 'Operating System :: POSIX :: Linux', 'Operating System :: Microsoft :: Windows', 'Operating System :: MacOS', 'Topic :: Database', 'Topic :: Software Development :: Libraries', 'Topic :: Software Development :: Libraries :: Python Modules', 'Topic :: Database :: Database Engines/Servers', ] dependencies = ['typing-extensions >=4.6.0,!=4.7.0'] dynamic = ['readme', 'version'] [project.optional-dependencies] dev = [ "mypy==1.11.0", "pytest==8.3.1", "pytest-cov==5.0.0", "ruff==0.5.4", "coverage==7.6.1", "maturin==1.7.8", ] [project.urls] Homepage = "https://github.com/tursodatabase/limbo" Source = "https://github.com/tursodatabase/limbo" [tool.maturin] bindings = 'pyo3' module-name = "limbo._limbo" features = ["pyo3/extension-module"] [tool.pip-tools] strip-extras = true header = false upgrade = false [tool.ruff] line-length = 120 [tool.ruff.lint] extend-select = [ "E", # pycodestyle errors "W", # pycodestyle warings "F", # pyflakes 'Q', # flake8-quotes 'C90', # mccabe 'I', # isort ] [tool.pytest.ini_options] testpaths = 'tests' log_format = '%(name)s %(levelname)s: %(message)s' [tool.coverage.run] source = ['limbo'] branch = true [tool.coverage.report] precision = 2 exclude_lines = [ 'pragma: no cover', 'raise NotImplementedError', 'if TYPE_CHECKING:', '@overload', ]