From: Michael J Gruber Date: Fri, 16 Jun 2023 11:19:26 +0000 (+0200) Subject: python: adjust legacy bindings to py 3.12 X-Git-Tag: 0.38_rc0~18 X-Git-Url: https://git.cworth.org/git?p=notmuch;a=commitdiff_plain;h=3771832b013012e408696897215fd0edde7dce37 python: adjust legacy bindings to py 3.12 Py 3.12 finally pulled the plug on the `SafeConfigParser` class which has been deprecated since py 3.2. We use it in the legacy bindings only, so take the easy route of importing `ConfigParser` as `SafeConfigParser` and monkey-patching so that the class has the expected interface. --- diff --git a/bindings/python/notmuch/compat.py b/bindings/python/notmuch/compat.py index c931329e..4a94e05c 100644 --- a/bindings/python/notmuch/compat.py +++ b/bindings/python/notmuch/compat.py @@ -47,7 +47,10 @@ if sys.version_info[0] == 2: return value else: - from configparser import SafeConfigParser + from configparser import ConfigParser as SafeConfigParser + + if not hasattr(SafeConfigParser, 'readfp'): # py >= 3.12 + SafeConfigParser.readfp = SafeConfigParser.read_file class Python3StringMixIn(object): def __str__(self):