Regarding the update to the default version of Python:
In order to ensure that old Python-2-only scripts break cleanly and promptly in a Python-3-only system environment, please make sure to reserve the command name
python and the
/usr/bin/python for Python 2.
That means, in any context (other than a virtualenv) where Python 3 is installed and Python 2 isn’t, only
python3 should be available.
/usr/bin/python must not exist at all, and the bare command name
python must not work.
This applies to all build environments, whether or not they are technically Python-related, since it is a popular scripting language for other types of build.