def _warn_deprecated_python()

in src/aws_encryption_sdk/compatability.py [0:0]


def _warn_deprecated_python():
    """Template for deprecation of Python warning."""
    deprecated_versions = {
        (2, 7): {"date": DEPRECATION_DATE_MAP["2.x"]},
        (3, 4): {"date": DEPRECATION_DATE_MAP["2.x"]},
        (3, 5): {"date": "2021-11-10"},
        (3, 7): {"date": "2024-03-04"},
    }
    py_version = (sys.version_info.major, sys.version_info.minor)
    minimum_version = (3, 8)

    if py_version in deprecated_versions:
        params = deprecated_versions[py_version]
        warning = (
            "aws-encryption-sdk will no longer support Python {}.{} "
            "starting {}. To continue receiving service updates, "
            "bug fixes, and security updates please upgrade to Python {}.{} or "
            "later. For more information, see SUPPORT_POLICY.rst: "
            "https://github.com/aws/aws-encryption-sdk-python/blob/master/SUPPORT_POLICY.rst"
        ).format(py_version[0], py_version[1], params["date"], minimum_version[0], minimum_version[1])
        warnings.warn(warning, DeprecationWarning)