Stan Ulbrych
13efe3f599
gh-133934: Mention special commands in sqlite3 .help
message (GH-135224)
2025-06-19 13:47:29 +02:00
Stan Ulbrych
ecd83e02b1
gh-133439: Fix the error message in the sqlite3 CLI (GH-133807)
...
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2025-06-19 13:46:33 +02:00
Petr Viktorin
e7a3c20b92
gh-133390: Support SQL keyword completion for sqlite3 CLI (GH-133393) (GH-135292)
...
Tests / Windows MSI (push) Blocked by required conditions
Tests / Change detection (push) Waiting to run
Tests / Docs (push) Blocked by required conditions
Tests / Check if Autoconf files are up to date (push) Blocked by required conditions
Tests / Check if generated files are up to date (push) Blocked by required conditions
Tests / (push) Blocked by required conditions
Tests / Ubuntu SSL tests with OpenSSL (push) Blocked by required conditions
Tests / WASI (push) Blocked by required conditions
Tests / Hypothesis tests on Ubuntu (push) Blocked by required conditions
Tests / Address sanitizer (push) Blocked by required conditions
Tests / Cross build Linux (push) Blocked by required conditions
Tests / CIFuzz (push) Blocked by required conditions
Tests / All required checks pass (push) Blocked by required conditions
Lint / lint (push) Waiting to run
mypy / Run mypy on Lib/_pyrepl (push) Waiting to run
mypy / Run mypy on Lib/test/libregrtest (push) Waiting to run
mypy / Run mypy on Lib/tomllib (push) Waiting to run
mypy / Run mypy on Tools/build (push) Waiting to run
mypy / Run mypy on Tools/cases_generator (push) Waiting to run
mypy / Run mypy on Tools/clinic (push) Waiting to run
mypy / Run mypy on Tools/jit (push) Waiting to run
mypy / Run mypy on Tools/peg_generator (push) Waiting to run
Co-authored-by: Tan Long <tanloong@foxmail.com>
2025-06-12 16:28:30 +02:00
Petr Viktorin
24069fbca8
Revert "gh-133390: Support SQL keyword completion for sqlite3 CLI ( #133393 )" temporarily (GH-135232)
...
This reverts commit 62b3d2d443
,
which broke buildbots
2025-06-07 08:56:43 +00:00
Tan Long
62b3d2d443
gh-133390: Support SQL keyword completion for sqlite3 CLI ( #133393 )
2025-06-06 16:52:41 +02:00
Stan Ulbrych
30b1d8f11d
gh-133447: Add basic color to sqlite3
CLI ( #133461 )
2025-05-10 07:59:01 +00:00
Tan Long
ebd4881db2
gh-133439: Fix dot commands with trailing spaces are mistaken for multi-line sqlite statements in the sqlite3 command-line interface (GH-133440)
2025-05-09 11:41:10 +00:00
Hugo van Kemenade
4ac916ae33
gh-130645: Add color to stdlib argparse CLIs (gh-133380)
2025-05-05 19:46:46 +02:00
scotscotmcc
8190571a75
gh-130893: Fix typo in SqliteInteractiveConsole.runsource docstring ( #130894 )
2025-03-06 22:10:37 -08:00
Erlend E. Aasland
ecd2f84555
gh-105875: amend sqlite3 docstring wrt. SQLite requirement ( #129599 )
2025-02-02 23:03:54 +00:00
Serhiy Storchaka
7d2c39752f
gh-91818: Use default program name in the CLI of many modules (GH-124867)
...
As argparse now detects by default when the code was run as a module.
This leads to using the actual executable name instead of simply "python"
to display in the usage message ("usage: python -m ...").
2024-10-10 00:20:53 +03:00
Victor Stinner
6ae254aaa0
gh-120417: Add #noqa to used imports in the stdlib ( #120421 )
...
Tools such as ruff can ignore "imported but unused" warnings if a
line ends with "# noqa: F401". It avoids the temptation to remove
an import which is used effectively.
2024-06-13 16:14:50 +02:00
Hugo van Kemenade
a019347947
gh-118924: Remove sqlite3.version
and sqlite3.version_info
( #118925 )
2024-05-10 20:42:34 +00:00
Erlend E. Aasland
e38b43c213
gh-118221: Always use the default row factory in sqlite3.iterdump() ( #118223 )
...
sqlite3.iterdump() depends on the row factory returning resulting rows
as tuples; it will fail with custom row factories like for example a
dict factory.
With this commit, we explicitly reset the row factory of the cursor used
by iterdump(), so we always get predictable results. This does not
affect the row factory of the parent connection.
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2024-04-25 10:11:45 +02:00
Mariusz Felisiak
1a10437a14
gh-91602: Add iterdump() support for filtering database objects ( #114501 )
...
Add optional 'filter' parameter to iterdump() that allows a "LIKE"
pattern for filtering database objects to dump.
Co-authored-by: Erlend E. Aasland <erlend@python.org>
2024-02-06 12:34:56 +01:00
Mariusz Felisiak
de777e490f
gh-108364: In sqlite3, disable foreign keys before dumping SQL schema ( #113957 )
...
sqlite3.Connection.iterdump now ensures that foreign key support is
disabled before dumping the database schema, if there is any foreign key
violation.
Co-authored-by: Erlend E. Aasland <erlend@python.org>
2024-01-12 10:50:37 +01:00
Serhiy Storchaka
254e30c487
gh-109151: Enable readline in the sqlite3 CLI (GH-109152)
2023-10-04 14:16:44 +03:00
Erlend E. Aasland
2a3926fa51
gh-108590: Revert gh-108657 (commit 400a1cebc
) ( #108686 )
...
Reverted per Serhiy's request.
2023-08-30 14:53:10 +00:00
Corvin
400a1cebc7
gh-108590: Fix sqlite3.iterdump for invalid Unicode in TEXT columns ( #108657 )
...
Co-authored-by: Erlend E. Aasland <erlend@python.org>
2023-08-30 09:06:21 +00:00
Erlend E. Aasland
c8847841cc
gh-108550: Fix sqlite3 CLI regression from gh-108551 ( #108618 )
2023-08-29 09:39:42 +00:00
Erlend E. Aasland
0e8b3fc718
gh-108550: Speed up sqlite3 tests ( #108551 )
...
Refactor the CLI so we can easily invoke it and mock command-line
arguments. Adapt the CLI tests so we no longer have to launch a
separate process.
Disable the busy handler for all concurrency tests; we have full
control over the order of the SQLite C API calls, so we can safely
do this.
The sqlite3 test suite now completes ~8 times faster than before.
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2023-08-28 14:17:34 +02:00
Erlend E. Aasland
d0160c7c22
gh-64662: Add virtual table support to sqlite3.Connection.iterdump ( #108340 )
...
Co-authored-by: Aviv Palivoda <palaviv@gmail.com>
2023-08-28 00:18:32 +02:00
Mariusz Felisiak
75903f29f6
gh-108364: Simplify quoting values and identifiers in sqlite3's iterdump() ( #108472 )
2023-08-25 12:31:52 +00:00
Erlend E. Aasland
56c7176d1d
gh-102628: Fix sqlite3 CLI prompt in IDLE on Windows ( #103945 )
2023-04-27 21:22:26 +00:00
Erlend E. Aasland
8def5ef016
gh-102628: Fix sqlite3 CLI prompt for Windows console users ( #103898 )
...
The prompt will still be incorrect in IDLE on Windows,
as IDLE uses CTRL-D for EOF on all platforms.
2023-04-27 21:23:10 +02:00
Erlend E. Aasland
e6623e7083
gh-95273: Improve sqlite3.complete_statement docs ( #95840 )
...
Co-authored-by: Ezio Melotti <ezio.melotti@gmail.com>
Co-authored-by: CAM Gerlach <CAM.Gerlach@Gerlach.CAM>
2022-08-12 01:05:12 +02:00
Erlend Egeberg Aasland
bc7c7cd18a
gh-77617: Add sqlite3 command-line interface ( #95026 )
...
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2022-08-01 12:25:16 +02:00
Erlend Egeberg Aasland
6dadf6ca01
gh-90016: Deprecate default sqlite3 adapters and converters ( #94276 )
...
Co-authored-by: CAM Gerlach <CAM.Gerlach@Gerlach.CAM>
2022-07-20 21:37:59 +02:00
itssme
affa9f22cf
gh-79009: sqlite3.iterdump now correctly handles tables with autoincrement ( #9621 )
...
Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
2022-06-20 00:59:24 +02:00
Kalyan
ffc58a9710
gh-93370: Deprecate sqlite3.version and sqlite3.version_info ( #93482 )
...
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
2022-06-08 01:34:50 +02:00
Erlend Egeberg Aasland
00f22e8cc2
gh-92547: Remove deprecated sqlite3 features ( #92548 )
...
The following sqlite3 features were deprecated in 3.10, scheduled for
removal in 3.12:
- sqlite3.OptimizedUnicode (gh-23163)
- sqlite3.enable_shared_cache (gh-24008)
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
Signed-off-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
2022-05-16 19:52:08 +02:00
Jonathan
66584c890d
Fix typo in the sqlite3 docs (GH-31915)
...
Co-authored-by: Jonathan <89750679+AHypnotoad@users.noreply.github.com>
2022-03-28 11:44:41 -07:00
Erlend Egeberg Aasland
6c5a312fb6
bpo-45677: Reword first section of sqlite3
docs ( #29326 )
...
* bpo-45677: Avoid addressing the reader as 'you' in sqlite3 docs
* Adjust wording
* Adjust wording again
* Typo
* Update Doc/library/sqlite3.rst
Co-authored-by: Jacob Walls <jacobtylerwalls@gmail.com>
* Address review: adjust wording
* Update Doc/library/sqlite3.rst
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* Update Lib/sqlite3/__init__.py
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* Update Doc/library/sqlite3.rst
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* Update Doc/library/sqlite3.rst
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* Update Lib/sqlite3/__init__.py
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* Update Doc/library/sqlite3.rst
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
* Apply Alex' suggestion, and apply 80 char limit to PR
* Minor adjustment
Co-authored-by: Jacob Walls <jacobtylerwalls@gmail.com>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2021-11-15 14:22:42 -08:00
Erlend Egeberg Aasland
c273986711
bpo-45613: Set sqlite3.threadsafety
dynamically (GH-29227)
...
Use the compile-time selected default SQLite threaded mode to set the
DB-API 2.0 attribute 'threadsafety'
Mappings:
- SQLITE_THREADSAFE=0 => threadsafety=0
- SQLITE_THREADSAFE=1 => threadsafety=3
- SQLITE_THREADSAFE=2 => threadsafety=1
2021-11-03 21:01:37 +00:00
Erlend Egeberg Aasland
62bf263a77
bpo-10572: Move sqlite3
tests to Lib/test
(GH-29304)
...
Automerge-Triggered-By: GH:brettcannon
2021-10-29 15:08:19 -07:00
Erlend Egeberg Aasland
4dd1e84789
bpo-45612: Add sqlite3 module docstring (GH-29224)
2021-10-28 21:55:27 +02:00
Erlend Egeberg Aasland
8deb7afbaa
bpo-16379: Fix SQLite version checks in test_module_constants() (GH-28809)
...
Automerge-Triggered-By: GH:pablogsal
2021-10-07 12:48:13 -07:00
Erlend Egeberg Aasland
3f2c433da5
bpo-45041: Restore sqlite3
executescript behaviour for SELECT
queries (GH-28509)
...
* bpo-45041: Restore sqlite3 executescript behaviour for select queries
* Add regression test
2021-10-07 10:16:45 +01:00
Christian Clauss
745c9d9dfc
Fix typos in the Lib directory (GH-28775)
...
Fix typos in the Lib directory as identified by codespell.
Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu>
2021-10-06 16:13:48 -07:00
Erlend Egeberg Aasland
3e3ff09058
bpo-44958: Fix ref. leak introduced in GH-27844 (GH-28490)
...
Modify managed_connect() helper to support in-memory databases. Use it
for the regression tests added in GH-27844.
Automerge-Triggered-By: GH:pablogsal
2021-09-21 06:15:54 -07:00
Erlend Egeberg Aasland
050d103595
bpo-44958: Only reset sqlite3
statements when needed (GH-27844)
2021-09-21 12:20:34 +01:00
Konstantin Popov
d081eab7df
Fix typo in Lib/sqlite3/test/test_types.py (GH-28226)
...
preceeding -> preceding
Co-authored-by: Łukasz Langa <lukasz@langa.pl>
2021-09-15 22:09:08 +02:00
Serhiy Storchaka
3e19409d64
bpo-45181: Simplify loading sqlite3 tests (GH-28304)
...
Use unittest discover instead of manually enumerating all
test modules and classes.
Also add support for filtering them by pattern.
2021-09-13 14:16:26 +03:00
Erlend Egeberg Aasland
e34bb40919
bpo-45041: Increase coverage for sqlite3.Cursor.executescript() (GH-28074)
2021-08-30 22:14:27 +01:00
Erlend Egeberg Aasland
86d8b46523
bpo-16379: expose SQLite error codes and error names in sqlite3
(GH-27786)
2021-08-30 19:32:21 +01:00
Erlend Egeberg Aasland
f62763d267
bpo-43398: Add test for defect connection factories (GH-27966)
2021-08-30 18:49:34 +01:00
Serhiy Storchaka
07d3d54f4e
bpo-25130: Make SQLite tests more compatible with PyPy (GH-28021)
2021-08-29 13:07:40 +03:00
Erlend Egeberg Aasland
7ecd3425d4
bpo-27334: roll back transaction if sqlite3 context manager fails to commit (GH-26202)
...
Co-authored-by: Luca Citi
Co-authored-by: Berker Peksag <berker.peksag@gmail.com>
2021-08-25 11:59:42 +01:00
Serhiy Storchaka
0eec6276fd
bpo-44859: Improve error handling in sqlite3 and and raise more accurate exceptions. (GH-27654)
...
* MemoryError is now raised instead of sqlite3.Warning when
memory is not enough for encoding a statement to UTF-8
in Connection.__call__() and Cursor.execute().
* UnicodEncodeError is now raised instead of sqlite3.Warning when
the statement contains surrogate characters
in Connection.__call__() and Cursor.execute().
* TypeError is now raised instead of ValueError for non-string
script argument in Cursor.executescript().
* ValueError is now raised for script containing the null
character instead of truncating it in Cursor.executescript().
* Correctly handle exceptions raised when getting boolean value
of the result of the progress handler.
* Add many tests covering different corner cases.
Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@innova.no>
2021-08-08 08:49:44 +03:00
Serhiy Storchaka
7d747f26e6
bpo-44839: Raise more specific errors in sqlite3 (GH-27613)
...
MemoryError raised in user-defined functions will now preserve
its type. OverflowError will now be converted to DataError.
Previously both were converted to OperationalError.
2021-08-06 21:28:47 +03:00