@@ -8,7 +8,7 @@ dynamic = ["version"]
88description = " A Python SDK for integrating with M-Pesa APIs"
99readme = " README.md"
1010license = { text = " APACHE-2.0" }
11- requires-python = " >=3.10 "
11+ requires-python = " >=3.12 "
1212authors = [
1313 { name = " John Kagunda" , email = " johnmkagunda@gmail.com" }
1414]
@@ -19,43 +19,59 @@ classifiers = [
1919 " Development Status :: 4 - Beta" ,
2020 " Intended Audience :: Developers" ,
2121 " License :: OSI Approved :: Apache Software License" ,
22- " Programming Language :: Python :: 3.10" ,
23- " Programming Language :: Python :: 3.11" ,
2422 " Programming Language :: Python :: 3.12" ,
2523 " Operating System :: OS Independent" ,
2624 " Topic :: Software Development :: Libraries :: Python Modules" ,
2725 " Topic :: Internet :: WWW/HTTP :: Dynamic Content" ,
2826 " Typing :: Typed"
2927]
30- keywords = [" mpesa" , " sdk" , " payment" , " africa" , " flask" , " django" , " fastapi" , " rest" , " api" ]
31- urls = { Homepage = " https://github.com/rafaeljohn9/mpesa-daraja-sdk" , Repository = " https://github.com/rafaeljohn9/mpesa-daraja-sdk" }
28+ keywords = [
29+ " mpesa" ,
30+ " sdk" ,
31+ " payment" ,
32+ " africa" ,
33+ " flask" ,
34+ " django" ,
35+ " fastapi" ,
36+ " rest" ,
37+ " api" ,
38+ " mobile money" ,
39+ " payments" ,
40+ ]
41+
42+ dependencies = [
43+ " pydantic >=2.10.6,<3.0.0" ,
44+ " pydantic[email] >=2.10.6,<3.0.0" ,
45+ " requests >=2.32.3,<3.0.0" ,
46+ " typing_extensions >= 4.12.2,<5.0.0"
47+ ]
48+
49+ [project .urls ]
50+ Homepage = " https://github.com/rafaeljohn9/mpesa-sdk"
51+ Repository = " https://github.com/rafaeljohn9/mpesa-sdk"
52+ Issues = " https://github.com/rafaeljohn9/mpesa-sdk/issues"
53+
3254
3355[project .optional-dependencies ]
3456dev = [
35- " bandit" ,
3657 " build" ,
3758 " coverage" ,
3859 " hatch" ,
3960 " hatch-vcs" ,
4061 " hatchling" ,
4162 " mypy" ,
42- " pydantic " ,
63+ " bandit " ,
4364 " pytest" ,
4465 " pytest-cov" ,
45- " requests" ,
4666 " ruff" ,
4767 " types-requests"
4868]
49- install = [
50- " pydantic" ,
51- " requests"
52- ]
5369test = [
70+ " bandit" ,
71+ " mypy" ,
5472 " pyngrok" ,
5573 " pytest" ,
5674 " pytest-cov" ,
57- " requests" ,
58- " pydantic" ,
5975 " types-requests"
6076]
6177
@@ -71,13 +87,18 @@ include = [
7187[tool .hatch .build .targets .wheel ]
7288packages = [" mpesa_sdk" ]
7389
74- # Ruff configuration
90+ # Ruff configuration-sdk/is
7591[tool .ruff ]
7692target-version = " py312"
7793fix = true
7894
7995[tool .ruff .lint ]
80- select = [" D" , " E" , " W" , " F" ] # Enable docstring checks, pycodestyle errors, and warnings
96+ select = [
97+ " D" , # pydocstyle
98+ " E" , # pycodestyle errors
99+ " W" , # pycodestyle warnings
100+ " F" # pyflakes
101+ ]
81102ignore = [
82103 " D104" , # Missing docstring in public package
83104 " D105" , # Missing docstring in magic method
0 commit comments