JSON API 中 PyPi 的 requires_dist 是什么格式

What is a format of PyPi's requires_dist in JSON API

PyPi 提供了一个JSON API 来查询包的信息。它包括一个名为 info/requires_dist.

的包依赖项字段

样本数据(来自requests包):

urllib3 (<1.27,>=1.21.1)
certifi (>=2017.4.17)
chardet (<5,>=3.0.2) ; python_version < "3"
idna (<3,>=2.5) ; python_version < "3"
charset-normalizer (~=2.0.0) ; python_version >= "3"
idna (<4,>=2.5) ; python_version >= "3"
PySocks (!=1.5.7,>=1.5.6) ; extra == 'socks'
win-inet-pton ; (sys_platform == "win32" and python_version == "2.7") and extra == 'socks'
chardet (<5,>=3.0.2) ; extra == 'use_chardet_on_py3'

该数据的格式是什么?有相关文档吗?

更具体地说:~= 到底是什么意思?什么是支持的“变量”集(如 sys_platformpython_version)?

规范在 https://www.python.org/dev/peps/pep-0508/.

~= 的解释在