Is your feature request related to a problem? Please describe.
DVT currently uses setup.py which is obsolete. Our setup was modeled on bigquery client which was the right decision. Now bigquery client has moved to a different model - see https://github.com/googleapis/google-cloud-python - that is many packages within one repository.
The Bigquery client within this package uses pyproject.toml - which is the modern standard. It allows us to have different versions of libraries for different python versions. It would be good to emulate this model
Specifically see https://github.com/googleapis/google-cloud-python/blob/main/packages/google-cloud-bigquery/noxfile.py
and
https://github.com/googleapis/google-cloud-python/blob/main/packages/google-cloud-bigquery/setup.py
Helen working with Neha attempted this in 2024 - see PR 1150 and then rolled this back because release please bot references setup.py. Looking at setup.py in the Bigquery project - it just calls setuptools.setup(). Setuptools prefers pyproject.toml to setup.py - so this should all work.
What version of DVT are you using?
8.3.0
Is your feature request related to a problem? Please describe.
DVT currently uses setup.py which is obsolete. Our setup was modeled on bigquery client which was the right decision. Now bigquery client has moved to a different model - see https://github.com/googleapis/google-cloud-python - that is many packages within one repository.
The Bigquery client within this package uses pyproject.toml - which is the modern standard. It allows us to have different versions of libraries for different python versions. It would be good to emulate this model
Specifically see https://github.com/googleapis/google-cloud-python/blob/main/packages/google-cloud-bigquery/noxfile.py
and
https://github.com/googleapis/google-cloud-python/blob/main/packages/google-cloud-bigquery/setup.py
Helen working with Neha attempted this in 2024 - see PR 1150 and then rolled this back because release please bot references setup.py. Looking at setup.py in the Bigquery project - it just calls
setuptools.setup(). Setuptools prefers pyproject.toml to setup.py - so this should all work.What version of DVT are you using?
8.3.0