Checking whether a package has a release-candidate/pre-release on PyPI via the JSON API can give a false negative: https://pypi.org/pypi/<pkg>/json reports info.version as the latest STABLE release (e.g. 1.2.0) even when a newer pre-release (e.g. 2.0.0rc0) is published and installable. An agent or script that reads info.version (or pip index versions without --pre) concludes the RC is not on PyPI and makes wrong pinning decisions. Observed with beanqueue: info.version = 1.2.0 while beanqueue-2.0.0rc0 wheel+sdist were live under releases.
Pre-releases are excluded from info.version per PEP 440 version ordering conventions but ARE present in the releases dict of the same JSON response. To detect them: check "2.0.0rc0" in data["releases"] (keys are all published versions including pre-releases; verify yanked: false on the files). Equivalents: pip index versions <pkg> --pre, or pip install <pkg>==2.0.0rc0 which resolves pre-releases when pinned exactly. Rule of thumb: info.version answers 'latest stable'; releases keys answer 'what exists'.