Skip to content

Commit fffb074

Browse files
build: update package to use pyproject.toml (#445)
1 parent d7b180d commit fffb074

File tree

6 files changed

+86
-139
lines changed

6 files changed

+86
-139
lines changed

mypy.ini

Lines changed: 0 additions & 19 deletions
This file was deleted.

noxfile.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020

2121
BLACK_VERSION = "black==23.12.1"
2222
ISORT_VERSION = "isort==5.13.2"
23-
LINT_PATHS = ["google", "tests", "noxfile.py", "setup.py"]
23+
LINT_PATHS = ["google", "tests", "noxfile.py"]
2424

2525
SYSTEM_TEST_PYTHON_VERSIONS = ["3.9", "3.10", "3.11", "3.12", "3.13"]
2626
UNIT_TEST_PYTHON_VERSIONS = ["3.9", "3.10", "3.11", "3.12", "3.13"]
@@ -71,7 +71,7 @@ def lint(session):
7171
"--non-interactive",
7272
"--show-traceback",
7373
)
74-
# verify that setup.py is valid
74+
# verify that pyproject.toml is valid
7575
session.run("python", "-m", "build", "--sdist")
7676
session.run("twine", "check", "--strict", "dist/*")
7777

pyproject.toml

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# Copyright 2025 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
[build-system]
16+
requires = ["setuptools"]
17+
build-backend = "setuptools.build_meta"
18+
19+
[project]
20+
description = "A Python client library for connecting securely to your Google Cloud AlloyDB instances."
21+
name = "google-cloud-alloydb-connector"
22+
authors = [{ name = "Google LLC", email = "[email protected]" }]
23+
license = "Apache-2.0"
24+
license-files = ["LICENSE"]
25+
requires-python = ">=3.9"
26+
readme = "README.md"
27+
classifiers = [
28+
# Should be one of:
29+
# "Development Status :: 3 - Alpha"
30+
# "Development Status :: 4 - Beta"
31+
# "Development Status :: 5 - Production/Stable"
32+
"Development Status :: 5 - Production/Stable",
33+
"Intended Audience :: Developers",
34+
"Programming Language :: Python",
35+
"Programming Language :: Python :: 3",
36+
"Programming Language :: Python :: 3.9",
37+
"Programming Language :: Python :: 3.10",
38+
"Programming Language :: Python :: 3.11",
39+
"Programming Language :: Python :: 3.12",
40+
"Programming Language :: Python :: 3.13",
41+
"Operating System :: OS Independent",
42+
]
43+
dependencies = [
44+
"aiofiles",
45+
"aiohttp",
46+
"cryptography>=42.0.0",
47+
"requests",
48+
"google-auth",
49+
"protobuf",
50+
"google-cloud-alloydb",
51+
"google-api-core",
52+
]
53+
dynamic = ["version"]
54+
55+
[project.urls]
56+
Homepage = "https://github.com/GoogleCloudPlatform/alloydb-python-connector"
57+
Repository = "https://github.com/GoogleCloudPlatform/alloydb-python-connector.git"
58+
Issues = "https://github.com/GoogleCloudPlatform/alloydb-python-connector/issues"
59+
Changelog = "https://github.com/GoogleCloudPlatform/alloydb-python-connector/blob/main/CHANGELOG.md"
60+
61+
[project.optional-dependencies]
62+
pg8000 = ["pg8000>=1.31.1"]
63+
asyncpg = ["asyncpg>=0.30.0"]
64+
65+
[tool.setuptools.dynamic]
66+
version = { attr = "google.cloud.alloydb.connector.version.__version__" }
67+
68+
[tool.setuptools.package-data]
69+
"google.cloud.alloydb.connector" = ["py.typed"]
70+
71+
[tool.setuptools.packages.find]
72+
# Only include packages under the 'google' namespace. Do not include tests,
73+
# benchmarks, etc.
74+
include = ["google*"]
75+
76+
[tool.mypy]
77+
python_version = "3.9"
78+
namespace_packages = true
79+
ignore_missing_imports = true
80+
warn_unused_configs = true
81+
exclude = ['docs/*']
82+
83+
[tool.pytest.ini_options]
84+
asyncio_mode = "auto"

setup.cfg

Lines changed: 0 additions & 15 deletions
This file was deleted.

setup.py

Lines changed: 0 additions & 88 deletions
This file was deleted.

tests/pytest.ini

Lines changed: 0 additions & 15 deletions
This file was deleted.

0 commit comments

Comments
 (0)