Jiseok CHOI
a142de9abc
sqlite3: add Connection exception attributes and fix autocommit ValueError ( #8533 )
...
Add DB-API 2.0 optional extension: expose exception classes as attributes
on Connection objects (Warning, Error, InterfaceError, DatabaseError,
DataError, OperationalError, IntegrityError, InternalError,
ProgrammingError, NotSupportedError).
Also fix autocommit validation to raise ValueError (not TypeError) when
an unsupported type is passed.
Assisted-by: GitHub Copilot:claude-sonnet-4-6
2026-08-15 21:05:12 +09:00
Chanho Lee
4d890b33db
Fix sqlite autocommit cursor transactions ( #8419 )
...
Assisted-by: Codex:gpt-5.6-sol
2026-08-01 11:28:59 +09:00
Chanho Lee
15e7b2027e
Fix sqlite autocommit lifecycle ( #8387 )
...
* fix: open disabled sqlite autocommit transactions
Assisted-by: Codex:gpt-5.6-sol
* fix: reopen disabled sqlite transactions after commit
Assisted-by: Codex:gpt-5.6-sol
* fix: reopen disabled sqlite transactions after rollback
Assisted-by: Codex:gpt-5.6-sol
* fix: roll back disabled sqlite connections on close
Assisted-by: Codex:gpt-5.6-sol
2026-07-27 21:42:19 +09:00
Shahar Naveh
d93dd2a781
Update test_sqlite3 to 3.14.6 ( #8172 )
2026-06-30 23:49:27 +09:00
Jiseok CHOI
a6b06c80fd
sqlite3: handle int type in Connection.timeout parameter ( #7237 )
2026-02-28 10:38:30 +09:00
Jiseok CHOI
00440b179a
Update sqlite3 and the tests to CPython 3.14.2 ( #6787 )
...
* Update sqlite3, dbm.sqlite3 and tests to CPython 3.14.2
* Add skip decorators for failing sqlite3 tests
Skip tests that fail due to unimplemented features or behavior differences:
- _iterdump not implemented (test_dump.py)
- Unraisable exception handling not implemented (test_hooks.py, test_userfunctions.py)
- Keyword-only arguments not supported for various methods
- Autocommit behavior differences (test_transactions.py)
- TransactionTests skipped due to timeout parameter type issue
- Various error message differences (test_dbapi.py)
- SQLITE_DBCONFIG constants not implemented
- Row and Connection signature inspection issues
All tests now pass with 95 skipped out of 493 total tests.
* Change @unittest.skip to @unittest.expectedFailure per code review
- Convert @unittest.skip decorators to @unittest.expectedFailure for tests that fail without panic/hang
- Keep @unittest.skip only for TransactionTests class (setUp fails with timeout=0 int type)
* fixup
2026-01-19 02:45:47 +09:00
Jiseok CHOI
e6fdef43dc
fix(sqlite): autocommit mode transaction handling to match CPython ( #5918 )
2025-07-09 20:13:26 +09:00
Steve Shi
765933136c
Implement Sqlite3 Module ( #4260 )
...
* add supporting for PyAtomic<PyObject>
* create sqlite module
* add dependency sqlite3-sys
* add module constants
* import sqlite3 from cpython
* adjust lib
* add module structure
* impl Connection.cursor
* add module exceptions
* impl lstrip_sql
* impl statement new
* wip cursor.execute
* wip cursor
* wip error to exception
* add SqliteRaw and SqliteStatementRaw
* impl statement parameters binding
* wip cursor.execute
* add test_sqlite
* impl closeable connection
* impl closeable cursor
* impl cursor.executemany
* impl cursor.executescript
* impl cursor.fetch*
* impl connection.backup
* stage 1
* add support connection.backup with progress
* fix backup deadlock
* support changable isolation_level
* impl converter
* impl adapter
* impl text_factory and blob
* impl create_function
* impl create_function 2
* fix empty statement
* impl blob support
* impl create_aggregate
* impl create_aggregate 2
* refactor create_*
* impl enable_callback_traceback
* impl create_collation
* refactor create_* with CallbackData
* fix text and blob use SQLITE_TRANSIENT
* fix str to SQLITE_TEXT
* impl thread check
* impl Connection Factory
* impl busy timeout
* shift sqlite3-sys -> libsqlite3-sys
* refactor CallbackData
* impl create_window_function
* refactor callback functions
* add module attr converters
* fix nullable isolation_level
* add module attr adapters
* fix nullable adapt proto
* impl set_authorizer
* impl trace_callback
* impl set_progress_handler
* impl cancellable sqlite function*
* impl attributes for Connection
* fix some failed tests
* impl Row
* impl Blob methods
* impl Blob subscript & ass_subscript
* pass tests
* rebase
* no sqlite for wasm
* use ThreadId instead u64
* no libsqlite3-sys for wasm
* fix into_cstring for all platform
* fixup
* rebase
* fix windows into_bytes
* disable sqlite for android
* fixup
2023-01-07 22:03:24 +02:00