bpo-42064: Adapt `sqlite3` to multi-phase init (PEP 489) by erlend-aasland · Pull Request #29234 · python/cpython
$ cat measure.py
import gc
import sys
for _ in range(5):
gc.collect()
before = sys.gettotalrefcount()
import sqlite3
del sys.modules['sqlite3']
del sqlite3
gc.collect()
after = sys.gettotalrefcount()
print(f"{before=}, {after=}")
$ ./python.exe measure.py
before=51469, after=66883
before=66892, after=66892
before=66892, after=66892
before=66892, after=66892
before=66892, after=66892
Thank you so much for helping reviewing and improving this, @corona10, @vstinner, @encukou!
For a list of PR's:
$ git log --grep "bpo-\(42064\|41861\|40956\|42862\)" --oneline