diff options
author | Erlend E. Aasland <erlend@python.org> | 2024-04-08 08:11:08 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-08 08:11:08 (GMT) |
commit | e338e1a4ec5e43a02447f4ec80320d7fc12b3ed4 (patch) | |
tree | b6d640c3e54f88b1ffda8a9bc28491cbfe54ee19 | |
parent | e1eeb990bd169491075eeaea31481a4a96bdecbb (diff) | |
download | cpython-e338e1a4ec5e43a02447f4ec80320d7fc12b3ed4.zip cpython-e338e1a4ec5e43a02447f4ec80320d7fc12b3ed4.tar.gz cpython-e338e1a4ec5e43a02447f4ec80320d7fc12b3ed4.tar.bz2 |
gh-111726: Remove some doctests from sqlite3 docs (#117623)
* remove load extension doctest since we cannot skip it conditionally
* remove sys.unraisablehook example; using unraisable hooks is not "an
improved debug experience"
-rw-r--r-- | Doc/library/sqlite3.rst | 43 |
1 files changed, 7 insertions, 36 deletions
diff --git a/Doc/library/sqlite3.rst b/Doc/library/sqlite3.rst index b17ac19..9b857b0 100644 --- a/Doc/library/sqlite3.rst +++ b/Doc/library/sqlite3.rst @@ -394,29 +394,11 @@ Module functions will get tracebacks from callbacks on :data:`sys.stderr`. Use ``False`` to disable the feature again. - Register an :func:`unraisable hook handler <sys.unraisablehook>` for an - improved debug experience: - - .. testsetup:: sqlite3.trace - - import sqlite3 + .. note:: - .. doctest:: sqlite3.trace - - >>> sqlite3.enable_callback_tracebacks(True) - >>> con = sqlite3.connect(":memory:") - >>> def evil_trace(stmt): - ... 5/0 - ... - >>> con.set_trace_callback(evil_trace) - >>> def debug(unraisable): - ... print(f"{unraisable.exc_value!r} in callback {unraisable.object.__name__}") - ... print(f"Error message: {unraisable.err_msg}") - >>> import sys - >>> sys.unraisablehook = debug - >>> cur = con.execute("SELECT 1") - ZeroDivisionError('division by zero') in callback evil_trace - Error message: None + Errors in user-defined function callbacks are logged as unraisable exceptions. + Use an :func:`unraisable hook handler <sys.unraisablehook>` for + introspection of the failed callback. .. function:: register_adapter(type, adapter, /) @@ -1068,13 +1050,10 @@ Connection objects .. versionchanged:: 3.10 Added the ``sqlite3.enable_load_extension`` auditing event. - .. testsetup:: sqlite3.loadext - - import sqlite3 - con = sqlite3.connect(":memory:") + .. We cannot doctest the load extension API, since there is no convenient + way to skip it. - .. testcode:: sqlite3.loadext - :skipif: True # not testable at the moment + .. code-block:: con.enable_load_extension(True) @@ -1098,14 +1077,6 @@ Connection objects for row in con.execute("SELECT rowid, name, ingredients FROM recipe WHERE name MATCH 'pie'"): print(row) - con.close() - - .. testoutput:: sqlite3.loadext - :hide: - - (2, 'broccoli pie', 'broccoli cheese onions flour') - (3, 'pumpkin pie', 'pumpkin sugar flour butter') - .. method:: load_extension(path, /, *, entrypoint=None) Load an SQLite extension from a shared library. |