11import sys
22from pathlib import Path
3+ from typing import Any
34
45from setuptools import find_packages , setup
56
@@ -39,14 +40,9 @@ def setup_approvaltests(
3940 build_dir = _SCRIPT_DIR / "build"
4041 build_dir .mkdir (exist_ok = True )
4142
42- setup (
43+ setup_approvals (
4344 name = package_name ,
44- version = get_version (),
4545 description = package_description ,
46- author = "ApprovalTests Contributors" ,
47- author_email = "llewellyn.falco@gmail.com" ,
48- url = "https://github.com/approvals/ApprovalTests.Python" ,
49- python_requires = ">=3.10" ,
5046 packages = find_packages (include = ["approvaltests*" ]),
5147 package_data = {"approvaltests" : ["reporters/reporters.json" ]},
5248 entry_points = {
@@ -55,10 +51,26 @@ def setup_approvaltests(
5551 ],
5652 },
5753 install_requires = required ,
58- extras_require = extra_requires ,
54+ extra_requires = extra_requires ,
5955 long_description = (_SCRIPT_DIR .parent / "README.md" ).read_text (),
6056 long_description_content_type = "text/markdown" ,
57+ additional_classifiers = [
58+ "Topic :: Software Development :: Testing" ,
59+ "Topic :: Utilities" ,
60+ ],
61+ )
62+
63+ def setup_approvals (
64+ additional_classifiers : list [str ] = [],
65+ ** kwargs : Any ,
66+ ) -> None :
67+ setup (
68+ version = get_version (),
6169 license = "Apache-2.0" ,
70+ author = "ApprovalTests Contributors" ,
71+ author_email = "llewellyn.falco@gmail.com" ,
72+ url = "https://github.com/approvals/ApprovalTests.Python" ,
73+ python_requires = ">=3.10" ,
6274 classifiers = [
6375 "Development Status :: 4 - Beta" ,
6476 "Intended Audience :: Developers" ,
@@ -67,7 +79,7 @@ def setup_approvaltests(
6779 "Operating System :: MacOS :: MacOS X" ,
6880 * PYTHON_VERSION_CLASSIFIERS ,
6981 "Topic :: Software Development :: Libraries" ,
70- "Topic :: Software Development :: Testing" ,
71- "Topic :: Utilities" ,
82+ * additional_classifiers ,
7283 ],
73- )
84+ ** kwargs ,
85+ )
0 commit comments