The current pyproject.toml specify the exact version of each dependency to be used with pyproject.
I suggest to avoid this as it makes it hard to use it with other packages. For example, pydantic version is old.
As you have CI, if a new version of a package breaks something, you will notice and can then put it a max version on pyproject.
dependencies = [
"geopy==2.4.1",
"geographiclib==2.1",
"pint==0.25",
"price-parser==0.5.0",
"pydantic==2.12.0",
"python-dateutil==2.9.0.post0",
"pytimeparse2==1.7.1",
"unidecode==1.4.0",
"url-normalize==2.2.1",
"word2number==1.1",
"usaddress==0.5.16",
"us==3.2.0",
"usaddress-scourgify==0.6.0",
"beautifulsoup4==4.14.2",
"jsonpath-ng==1.7.0",
"compact-json==1.8.1",
"thefuzz>=0.22.1",
]
The current pyproject.toml specify the exact version of each dependency to be used with pyproject.
I suggest to avoid this as it makes it hard to use it with other packages. For example, pydantic version is old.
As you have CI, if a new version of a package breaks something, you will notice and can then put it a max version on pyproject.