[project] name = "harlequin-odbc" version = "0.4.0" description = "A Harlequin adapter for ODBC drivers." authors = [ {name = "Ted Conbeer", email = "tconbeer@users.noreply.github.com"}, ] license = "MIT" readme = "README.md" requires-python = ">=3.10" dependencies = [ "harlequin>=1.25,<3", "pyodbc>=5.0,<6", # temp pin to allow prerelease versions "duckdb>=1.4.2.dev0; python_version>='3.14'" ] [project.entry-points."harlequin.adapter"] odbc = "harlequin_odbc:HarlequinOdbcAdapter" [dependency-groups] dev = [ "harlequin==2.4.0", "ruff>=0.6,<1", "pytest>=7.4.3,<8", "mypy>=1.7.0,<2", "pre-commit>=3.5.0,<4", ] [build-system] requires = ["hatchling"] build-backend = "hatchling.build" [tool.hatch.build.targets.wheel] packages = [ "src/harlequin_odbc", ] [tool.hatch.build.targets.sdist] only-include = [ "src", "README.md", "CHANGELOG.md", "LICENSE", "pyproject.toml" ] [tool.ruff] target-version = "py310" [tool.ruff.lint] select = ["A", "B", "E", "F", "I"] [tool.mypy] python_version = "3.10" files = [ "src/**/*.py", "tests/**/*.py", ] mypy_path = "src:stubs" show_column_numbers = true # show error messages from unrelated files follow_imports = "normal" # be strict disallow_untyped_calls = true disallow_untyped_defs = true check_untyped_defs = true disallow_untyped_decorators = true disallow_incomplete_defs = true disallow_subclassing_any = true strict_optional = true warn_return_any = true warn_no_return = true warn_redundant_casts = true warn_unused_ignores = true warn_unused_configs = true no_implicit_reexport = true strict_equality = true