These changes will be committed in separate consecutive commits.
It's easier to review & build as a whole, hence the single diff.
Bump Python 3.9.2 → 3.9.7
If we're going to add a Python package to Blender, this usually means
rebuilding all of Python, so we might just as well bump it to the
latest 3.9 release.
Bump Python packages
certifi 2020.12.5 → 2021.10.8
chardet 4.0.0 → charset-normalizer 2.0.6
cython 0.29.21 → 0.29.24
idna 2.10 → 3.2
numpy 1.19.5 → 1.21.2
requests 2.25.1 → 2.26.0
urllib3 1.26.3 → 1.26.7
Bundle the zstandard Python package
This package allows Python scripts to handle compressed blend files.
This is for example needed by Blender Asset Tracer to send files to a
Flamenco render farm.
This change includes a new WITH_PYTHON_INSTALL_ZSTANDARD build-time
option, to control whether to actually install the package. For this
the already-existing approach for Requests was copied. I'm not too
happy with the way Python packages and their dependents (Audaspace &
Mantaflow) are handled, but that's for a different cleanup commit.