Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | gh-83638: Add sqlite3.Connection.autocommit for PEP 249 compliant behaviour ↵ | Erlend E. Aasland | 2022-11-12 | 1 | -0/+173 |
| | | | | | | | | | | (#93823) Introduce the autocommit attribute to Connection and the autocommit parameter to connect() for PEP 249-compliant transaction handling. Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> Co-authored-by: C.A.M. Gerlach <CAM.Gerlach@Gerlach.CAM> Co-authored-by: Géry Ogam <gery.ogam@gmail.com> | ||||
* | gh-77617: Add sqlite3 command-line interface (#95026) | Erlend Egeberg Aasland | 2022-08-01 | 1 | -0/+155 |
| | | | Co-authored-by: Serhiy Storchaka <storchaka@gmail.com> | ||||
* | gh-95132: Correctly relay *args and **kwds from sqlite3.connect to factory ↵ | Erlend Egeberg Aasland | 2022-07-23 | 1 | -0/+20 |
| | | | | | | | | | | | | (#95146) This PR partially reverts gh-24421 (PR) and fixes the remaining concerns given in gh-93044 (issue): - keyword arguments are passed as positional arguments to factory() - if an argument is not passed to sqlite3.connect(), its default value is passed to factory() Co-authored-by: Serhiy Storchaka <storchaka@gmail.com> | ||||
* | gh-90016: Deprecate default sqlite3 adapters and converters (#94276) | Erlend Egeberg Aasland | 2022-07-20 | 2 | -11/+26 |
| | | | Co-authored-by: CAM Gerlach <CAM.Gerlach@Gerlach.CAM> | ||||
* | gh-94998: Remove redundant condition in test_sqlite3/__main__.py (#95052) | Erlend Egeberg Aasland | 2022-07-20 | 1 | -2/+1 |
| | |||||
* | gh-93370: Don't print deprecated pysqlite version in test_sqlite3 (#95017) | Erlend Egeberg Aasland | 2022-07-19 | 1 | -3/+1 |
| | |||||
* | gh-84461: Fix test_sqlite for Emscripten/WASI (#94125) | Christian Heimes | 2022-06-23 | 1 | -1/+8 |
| | |||||
* | gh-84623: Remove unused imports (#94132) | Victor Stinner | 2022-06-22 | 1 | -1/+1 |
| | |||||
* | gh-94028: Clear and reset sqlite3 statements properly in cursor iternext ↵ | Erlend Egeberg Aasland | 2022-06-21 | 1 | -0/+39 |
| | | | | (GH-94042) | ||||
* | gh-79009: sqlite3.iterdump now correctly handles tables with autoincrement ↵ | itssme | 2022-06-19 | 1 | -0/+47 |
| | | | | | (#9621) Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com> | ||||
* | gh-93795: Use test.support TESTFN/unlink in sqlite3 tests (#93796) | Erlend Egeberg Aasland | 2022-06-14 | 1 | -17/+15 |
| | |||||
* | gh-79579: Improve DML query detection in sqlite3 (#93623) | Erlend Egeberg Aasland | 2022-06-14 | 1 | -10/+56 |
| | | | | | | | | | The fix involves using pysqlite_check_remaining_sql(), not only to check for multiple statements, but now also to strip leading comments and whitespace from SQL statements, so we can improve DML query detection. pysqlite_check_remaining_sql() is renamed lstrip_sql(), to more accurately reflect its function, and hardened to handle more SQL comment corner cases. | ||||
* | gh-84623: Remove unused imports in tests (#93772) | Victor Stinner | 2022-06-13 | 1 | -1/+0 |
| | |||||
* | gh-93421: Update sqlite3 cursor.rowcount only after SQLITE_DONE (#93526) | Erlend Egeberg Aasland | 2022-06-08 | 1 | -0/+8 |
| | |||||
* | gh-93370: Deprecate sqlite3.version and sqlite3.version_info (#93482) | Kalyan | 2022-06-07 | 1 | -0/+11 |
| | | | | | 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> | ||||
* | gh-93117: Remove too large sqlite3 bigmemtest (#93154) | Erlend Egeberg Aasland | 2022-05-25 | 1 | -8/+1 |
| | |||||
* | GH-93115: Fix version check in sqlite3 module constants test (#93116) | Florian Bruhin | 2022-05-23 | 1 | -18/+18 |
| | |||||
* | Clean up the sqlite3 tests (GH-93056) | Serhiy Storchaka | 2022-05-21 | 2 | -33/+23 |
| | | | | Remove helper managed_connect(). Use memory_database() or contextlib.closing() + addCleanup(unlink) instead. | ||||
* | Improve tests for opening Sqlite by URI (GH-93047) | Serhiy Storchaka | 2022-05-21 | 1 | -5/+42 |
| | | | | * Test with with escaped non-ascii characters * Test read-only open of existing DB. | ||||
* | gh-93044: No longer convert the database argument of sqlite3.connect() to ↵ | Serhiy Storchaka | 2022-05-21 | 1 | -0/+13 |
| | | | | | bytes (GH-93046) Just pass it to the factory as is. | ||||
* | gh-91922: Fix sqlite connection on nonstardard locales and paths (GH-92926) | Serhiy Storchaka | 2022-05-20 | 1 | -11/+17 |
| | |||||
* | gh-92547: Remove deprecated sqlite3 features (#92548) | Erlend Egeberg Aasland | 2022-05-16 | 2 | -21/+0 |
| | | | | | | | | | | 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> | ||||
* | gh-89022: Improve sqlite3 exceptions related to binding params and API ↵ | Erlend Egeberg Aasland | 2022-05-04 | 2 | -5/+5 |
| | | | | | | | | | | | | | misuse (#91572) * Map SQLITE_MISUSE to sqlite3.InterfaceError SQLITE_MISUSE implies misuse of the SQLite C API, which, if it happens, is _not_ a user error; it is an sqlite3 extension module error. * Raise better errors when binding parameters fail. Instead of always raising InterfaceError, guessing what went wrong, raise accurate exceptions with more accurate error messages. | ||||
* | gh-80254: Disallow recursive usage of cursors in `sqlite3` converters (#29054) | Erlend Egeberg Aasland | 2022-05-03 | 1 | -0/+39 |
| | | | | Co-authored-by: Sergey Fedoseev <fedoseev.sergey@gmail.com> Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com> | ||||
* | gh-89301: Fix regression with bound values in traced SQLite statements (#92053) | Erlend Egeberg Aasland | 2022-05-02 | 1 | -1/+61 |
| | |||||
* | gh-92019: Make sqlite3.Blob indexing conform with the norm (#92020) | Erlend Egeberg Aasland | 2022-04-30 | 1 | -22/+29 |
| | | | | | | - get index now returns an int - set index now requires an int in range(0, 256) Resolves #92019 | ||||
* | gh-69093: Add indexing and slicing support to sqlite3.Blob (#91599) | Erlend Egeberg Aasland | 2022-04-22 | 1 | -4/+134 |
| | | | | Authored-by: Aviv Palivoda <palaviv@gmail.com> Co-authored-by: Erlend E. Aasland <erlend.aasland@innova.no> | ||||
* | gh-69093: Add context manager support to sqlite3.Blob (GH-91562) | Erlend Egeberg Aasland | 2022-04-16 | 1 | -0/+23 |
| | |||||
* | gh-69093: Don't allow instantiation of sqlite3.Blob objects (GH-91570) | Erlend Egeberg Aasland | 2022-04-15 | 1 | -0/+1 |
| | |||||
* | gh-69093: Expose sqlite3.Blob as a class (GH-91550) | Jelle Zijlstra | 2022-04-15 | 1 | -0/+3 |
| | | | | I noticed this was missing while writing typeshed stubs. It's useful to expose it for use in annotations and for exploration. | ||||
* | gh-69093: Support basic incremental I/O to blobs in `sqlite3` (GH-30680) | Erlend Egeberg Aasland | 2022-04-15 | 1 | -1/+156 |
| | | | | | | | Authored-by: Aviv Palivoda <palaviv@gmail.com> Co-authored-by: Erlend E. Aasland <erlend.aasland@innova.no> Co-authored-by: palaviv <palaviv@gmail.com> Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com> Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com> | ||||
* | gh-79097: Add support for aggregate window functions in sqlite3 (GH-20903) | Erlend Egeberg Aasland | 2022-04-12 | 2 | -5/+165 |
| | |||||
* | bpo-41930: Add support for SQLite serialise/deserialise API (GH-26728) | Erlend Egeberg Aasland | 2022-04-05 | 1 | -0/+55 |
| | | | | Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com> Co-authored-by: Kumar Aditya <59607654+kumaraditya303@users.noreply.github.com> | ||||
* | bpo-44859: Raise more accurate exceptions in `sqlite3` (GH-27695) | Erlend Egeberg Aasland | 2022-03-17 | 3 | -9/+28 |
| | | | | | | | | | | | | * Improve exception compliance with PEP 249 * Raise InterfaceError instead of ProgrammingError for SQLITE_MISUSE. If SQLITE_MISUSE is raised, it is a sqlite3 module bug. Users of the sqlite3 module are not responsible for using the SQLite C API correctly. * Don't overwrite BufferError with ValueError when conversion to BLOB fails. * Raise ProgrammingError instead of Warning if user tries to execute() more than one SQL statement. * Raise ProgrammingError instead of ValueError if an SQL query contains null characters. * Make sure `_pysqlite_set_result` raises an exception if it returns -1. | ||||
* | bpo-45138: Revert GH-28240: Expand traced SQL statements (GH-31788) | Erlend Egeberg Aasland | 2022-03-09 | 1 | -60/+1 |
| | | | | | This reverts commit d1777515f9f53b452a4231d68196a7c0e5deb879. Automerge-Triggered-By: GH:JelleZijlstra | ||||
* | bpo-45138: Expand traced SQL statements in `sqlite3` trace callback (GH-28240) | Erlend Egeberg Aasland | 2022-03-09 | 1 | -1/+60 |
| | |||||
* | bpo-46874: Speed up sqlite3 user-defined aggregate 'step' method (GH-31604) | Erlend Egeberg Aasland | 2022-03-03 | 1 | -2/+4 |
| | |||||
* | bpo-43853: Expand test suite for SQLite UDF's (GH-27642) | Erlend Egeberg Aasland | 2022-01-26 | 1 | -64/+64 |
| | |||||
* | bpo-46425: use absolute imports in `test_sqlite3` (GH-30676) | Nikita Sobolev | 2022-01-22 | 4 | -6/+5 |
| | |||||
* | bpo-44092: Don't reset statements/cursors before rollback (GH-26026) | Erlend Egeberg Aasland | 2022-01-03 | 2 | -28/+39 |
| | | | In SQLite versions pre 3.7.11, pending statements would block a rollback. This is no longer the case, so remove the workaround. | ||||
* | bpo-45828: Use unraisable exceptions within sqlite3 callbacks (FH-29591) | Erlend Egeberg Aasland | 2021-11-29 | 2 | -29/+34 |
| | |||||
* | bpo-45512: Extend `sqlite3` test suite regarding isolation levels (GH-29576) | Erlend Egeberg Aasland | 2021-11-17 | 2 | -3/+124 |
| | |||||
* | bpo-45126: Harden `sqlite3` connection initialisation (GH-28227) | Erlend Egeberg Aasland | 2021-11-16 | 1 | -0/+38 |
| | |||||
* | bpo-45512: Raise exception if sqlite3.Connection.__init__ is called with bad ↵ | Erlend Egeberg Aasland | 2021-11-15 | 1 | -2/+16 |
| | | | | | | | | | | | | | | | isolation level (#29561) * bpo-45512: Raise sqlite3.Connection.__init__ is called with bad isolation level * Also explicitly test allowed isolation levels * Use subTest for better error messages if something goes wrong * Update Lib/test/test_sqlite3/test_dbapi.py Co-authored-by: Dong-hee Na <donghee.na92@gmail.com> Co-authored-by: Dong-hee Na <donghee.na92@gmail.com> | ||||
* | bpo-45754: Use correct SQLite limit when checking statement length (GH-29489) | Erlend Egeberg Aasland | 2021-11-10 | 2 | -7/+7 |
| | |||||
* | bpo-45243: Use connection limits to simplify `sqlite3` tests (GH-29356) | Erlend Egeberg Aasland | 2021-11-05 | 3 | -21/+54 |
| | |||||
* | bpo-45613: Set `sqlite3.threadsafety` dynamically (GH-29227) | Erlend Egeberg Aasland | 2021-11-03 | 1 | -2/+3 |
| | | | | | | | | | 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 | ||||
* | bpo-24139: Fix test_sqlite3 `test_extended_error_code_on_exception()` on ↵ | Erlend Egeberg Aasland | 2021-11-03 | 1 | -1/+1 |
| | | | | s390x RHEL buildbots (GH-29382) | ||||
* | bpo-24139: Add support for SQLite extended result codes (GH-28076) | Erlend Egeberg Aasland | 2021-11-02 | 1 | -2/+127 |
| | |||||
* | bpo-45243: Add support for setting/getting `sqlite3` connection limits ↵ | Erlend Egeberg Aasland | 2021-11-01 | 1 | -0/+38 |
| | | | | (GH-28463) |