Summary:
This diff -
1. Adds support for all python version from 3.6 and above.
2. py3.12 does not comes with setuptools, because of which setuptools installation via tar file fails as .tar.gz files need to be built during installation, which requires: setuptools (causing circular dependency). We will install setuptools and pywheel using .whl.
3. Exit the script in case venv is not settable. User can continue with system python using flag introduced `--use_system_python`.
4. Locked down versions for py3.6/7 and py3.8+.
5. Removes usage of requests from YNP
Test Plan:
iTest pipeline.
Manully verified universe creation with python 3.6-3.12
Reviewers: nsingh, anijhawan, dshubin
Reviewed By: dshubin
Subscribers: dshubin
Differential Revision: https://phorge.dev.yugabyte.com/D45519