Update Python dependencies
Update Python dependencies:
setuptools>=44.1.1;python_version<"3.5"
setuptools>=50.0.0;python_version>="3.5"
traitlets==4.3.3;python_version<"3.7"
traitlets==5.0.0;python_version>="3.7"
prompt-toolkit==1.0.18;python_version<"3.6"
prompt-toolkit==3.0.7;python_version>="3.6"
ipython==5.10.0;python_version<"3.5"
ipython==6.5.0;python_version>="3.5" and python_version<"3.6"
ipython==7.16.1;python_version>="3.6" and python_version<"3.7"
ipython==7.18.1;python_version>="3.7"
If anyone is wondering how I know which dependencies to update, there is a simple command for it:
pip list --outdated
Sometimes it's safe to keep Python dependencies on the latest version, and sometimes that causes conflicts. Here's an example of running that command:
$ pip list --outdated
Package Version Latest Type
----------- ------- ------ -----
parso 0.7.1 0.8.0 wheel
pytest-html 2.0.1 2.1.1 wheel
setuptools 49.6.0 50.0.0 wheel
traitlets 4.3.3 5.0.0 wheel
When possible, I try to keep SeleniumBase Python dependencies up-to-date when it is safe to do so. Also note that not all Python dependencies support the latest version of Python. Many of the latest dependencies have dropped support for older Python versions such as 2.7, 3.5, etc. Since SeleniumBase currently supports the following Python versions: 2.7, 3.5, 3.6, 3.7, and 3.8, I run unit tests to make sure that SeleniumBase still works on all those versions. That involves pinning Python dependencies to specific versions based on the version of Python installed.