From aa6a6559b0178cec7eeafce2bf929c5051469834 Mon Sep 17 00:00:00 2001 From: Stephen Finucane Date: Fri, 12 Sep 2025 14:14:18 +0100 Subject: [PATCH] Migrate setup configuration to pyproject.toml Change-Id: Id5c5cdc7695672afff09099aa5ba1a11c0bd8d50 Signed-off-by: Stephen Finucane --- pyproject.toml | 86 ++++++++++++++++++++++++++++++++++++++++++++++++++ setup.cfg | 68 --------------------------------------- 2 files changed, 86 insertions(+), 68 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 2a38d6bc..c5dc4790 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,3 +1,89 @@ [build-system] requires = ["pbr>=6.1.1"] build-backend = "pbr.build" + +[project] +name = "tooz" +description = "Coordination library for distributed systems." +authors = [ + {name = "OpenStack", email = "openstack-discuss@lists.openstack.org"}, +] +readme = {file = "README.rst", content-type = "text/x-rst"} +license = {text = "Apache-2.0"} +dynamic = ["version", "dependencies"] +requires-python = ">=3.10" +classifiers = [ + "Development Status :: 5 - Production/Stable", + "Environment :: Console", + "Intended Audience :: Developers", + "License :: OSI Approved :: Apache Software License", + "Operating System :: POSIX :: Linux", + "Programming Language :: Python", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", + "Topic :: System :: Distributed Computing", +] + +[project.urls] +Homepage = "https://docs.openstack.org/tooz" +Repository = "https://opendev.org/openstack/tooz" + +[project.entry-points."tooz.backends"] +"etcd" = "tooz.drivers.etcd:EtcdDriver" +"etcd3+http" = "tooz.drivers.etcd3gw:Etcd3Driver" +"etcd3+https" = "tooz.drivers.etcd3gw:Etcd3Driver" +"kazoo" = "tooz.drivers.zookeeper:KazooDriver" +"zake" = "tooz.drivers.zake:ZakeDriver" +"memcached" = "tooz.drivers.memcached:MemcachedDriver" +"ipc" = "tooz.drivers.ipc:IPCDriver" +"redis" = "tooz.drivers.redis:RedisDriver" +"postgresql" = "tooz.drivers.pgsql:PostgresDriver" +"mysql" = "tooz.drivers.mysql:MySQLDriver" +"file" = "tooz.drivers.file:FileDriver" +"zookeeper" = "tooz.drivers.zookeeper:KazooDriver" +"consul" = "tooz.drivers.consul:ConsulDriver" +"kubernetes" = "tooz.drivers.kubernetes:SherlockDriver" + +[project.optional-dependencies] +consul = [ + "python-consul2>=0.0.16", # MIT License +] +etcd = [ + "requests>=2.10.0", # Apache-2.0 +] +etcd3gw = [ + "etcd3gw>=2.3.0", # Apache-2.0 +] +zake = [ + "zake>=0.1.6", # Apache-2.0 +] +redis = [ + "redis>=4.0.0", # MIT +] +postgresql = [ + "psycopg2>=2.5", # LGPL/ZPL +] +mysql = [ + "PyMySQL>=0.6.2", # MIT License +] +zookeeper = [ + "kazoo>=2.6", # Apache-2.0 +] +memcached = [ + "pymemcache>=1.2.9", # Apache 2.0 License +] +ipc = [ + "sysv-ipc>=0.6.8", # BSD License +] +kubernetes = [ + "kubernetes>=2.8.1", # Apache-2.0 + "sherlock>=0.4.1", # MIT License +] + +[tool.setuptools] +packages = [ + "tooz" +] diff --git a/setup.cfg b/setup.cfg index 2bffa7de..f110666f 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,70 +1,2 @@ [metadata] name = tooz -author = OpenStack -author_email = openstack-discuss@lists.openstack.org -summary = Coordination library for distributed systems. -description_file = README.rst -license = Apache-2 -home_page = https://docs.openstack.org/tooz/latest/ -python_requires = >=3.10 -classifier = - Environment :: OpenStack - Intended Audience :: Developers - Intended Audience :: Information Technology - License :: OSI Approved :: Apache Software License - Operating System :: POSIX :: Linux - Programming Language :: Python - Programming Language :: Python :: 3 - Programming Language :: Python :: 3.10 - Programming Language :: Python :: 3.11 - Programming Language :: Python :: 3.12 - Programming Language :: Python :: 3.13 - Programming Language :: Python :: 3 :: Only - Programming Language :: Python :: Implementation :: CPython - Topic :: System :: Distributed Computing - -[files] -packages = - tooz - -[entry_points] -tooz.backends = - etcd = tooz.drivers.etcd:EtcdDriver - etcd3+http = tooz.drivers.etcd3gw:Etcd3Driver - etcd3+https = tooz.drivers.etcd3gw:Etcd3Driver - kazoo = tooz.drivers.zookeeper:KazooDriver - zake = tooz.drivers.zake:ZakeDriver - memcached = tooz.drivers.memcached:MemcachedDriver - ipc = tooz.drivers.ipc:IPCDriver - redis = tooz.drivers.redis:RedisDriver - postgresql = tooz.drivers.pgsql:PostgresDriver - mysql = tooz.drivers.mysql:MySQLDriver - file = tooz.drivers.file:FileDriver - zookeeper = tooz.drivers.zookeeper:KazooDriver - consul = tooz.drivers.consul:ConsulDriver - kubernetes = tooz.drivers.kubernetes:SherlockDriver - -[extras] -consul = - python-consul2>=0.0.16 # MIT License -etcd = - requests>=2.10.0 # Apache-2.0 -etcd3gw = - etcd3gw>=2.3.0 # Apache-2.0 -zake = - zake>=0.1.6 # Apache-2.0 -redis = - redis>=4.0.0 # MIT -postgresql = - psycopg2>=2.5 # LGPL/ZPL -mysql = - PyMySQL>=0.6.2 # MIT License -zookeeper = - kazoo>=2.6 # Apache-2.0 -memcached = - pymemcache>=1.2.9 # Apache 2.0 License -ipc = - sysv-ipc>=0.6.8 # BSD License -kubernetes = - kubernetes>=2.8.1 # Apache-2.0 - sherlock>=0.4.1 # MIT License