summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorErlend E. Aasland <erlend@python.org>2024-04-08 08:11:08 (GMT)
committerGitHub <noreply@github.com>2024-04-08 08:11:08 (GMT)
commite338e1a4ec5e43a02447f4ec80320d7fc12b3ed4 (patch)
treeb6d640c3e54f88b1ffda8a9bc28491cbfe54ee19
parente1eeb990bd169491075eeaea31481a4a96bdecbb (diff)
downloadcpython-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.rst43
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.