[build-system]
requires = ["pbr>=6.1.1"]
build-backend = "pbr.build"

[project]
name = "oslo.db"
description = "Oslo Database library"
authors = [
    {name = "OpenStack", email = "openstack-discuss@lists.openstack.org"},
]
readme = {file = "README.rst", content-type = "text/x-rst"}
license = "Apache-2.0"
dynamic = ["version", "dependencies"]
requires-python = ">=3.11"
classifiers = [
    "Development Status :: 5 - Production/Stable",
    "Environment :: OpenStack",
    "Intended Audience :: Information Technology",
    "Intended Audience :: System Administrators",
    "Operating System :: POSIX :: Linux",
    "Programming Language :: Python",
    "Programming Language :: Python :: 3",
    "Programming Language :: Python :: 3.11",
    "Programming Language :: Python :: 3.12",
    "Programming Language :: Python :: 3.13",
    "Programming Language :: Python :: 3.14",
    "Programming Language :: Python :: 3 :: Only",
    "Programming Language :: Python :: Implementation :: CPython",
]

[project.urls]
Homepage = "https://docs.openstack.org/oslo.db"
Repository = "https://opendev.org/openstack/oslo.db"
"Bug Tracker" = "https://bugs.launchpad.net/oslo.db"

[project.optional-dependencies]
# So e.g. nova can test-depend on oslo.db[mysql]
mysql = [
    "PyMySQL>=0.7.6", # MIT License
]
# or oslo.db[postgresql]
postgresql = [
    "psycopg2-binary>=2.8.0", # LGPL/ZPL
]

# users of the test_fixtures should oslo.db[test]
test = [
    # need to be kept in sync with requirements.txt
    # until these can move here for good
    "testresources>=2.0.0", # Apache-2.0/BSD
    "testscenarios>=0.4", # Apache-2.0/BSD
]

[project.entry-points."oslo.config.opts"]
"oslo.db" = "oslo_db.options:list_opts"

[project.entry-points."oslo.db.migration"]
alembic = "oslo_db.sqlalchemy.migration_cli.ext_alembic:AlembicExtension"

[tool.setuptools.packages.find]
include = ["oslo_db*"]

[tool.bandit]
exclude_dirs = ["tests"]
skips = ['B105', 'B311']
