From fcf0cd0a808876c7e48cbe1fb983d660da0b8ab1 Mon Sep 17 00:00:00 2001 From: Chris Mayo Date: Mon, 11 Mar 2024 19:33:47 +0000 Subject: [PATCH] Resolve CryptographyDeprecationWarning for not_valid_after MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit linkchecker/linkcheck/httputil.py:31: CryptographyDeprecationWarning: Properties that return a naïve datetime object have been deprecated. Please switch to not_valid_after_utc. --- linkcheck/httputil.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/linkcheck/httputil.py b/linkcheck/httputil.py index b81ff723..6a9f5f14 100644 --- a/linkcheck/httputil.py +++ b/linkcheck/httputil.py @@ -28,7 +28,11 @@ def x509_to_dict(x509): 'subjectAltName': [ ('DNS', value) for value in ext.value.get_values_for_type(DNSName)] } - notAfter = crypto_cert.not_valid_after + try: + # cryptography >= 42.0.0 + notAfter = crypto_cert.not_valid_after_utc + except AttributeError: + notAfter = crypto_cert.not_valid_after if notAfter is not None: res['notAfter'] = notAfter.strftime('%b %d %H:%M:%S %Y GMT') return res