Serhiy Storchaka
6cca5c8459
bpo-30592: Fixed error messages for some builtins. ( #1996 )
...
Error messages when pass keyword arguments to some builtins that
don't support keyword arguments contained double parenthesis: "()()".
The regression was introduced by bpo-30534.
2017-06-08 14:41:19 +03:00
Serhiy Storchaka
0b3ec19225
Use NULL rather than 0. ( #778 )
...
There was few cases of using literal 0 instead of NULL in the context of
pointers. While this was a legitimate C code, using NULL rather than 0 makes
the code clearer.
2017-03-23 17:53:47 +02:00
Serhiy Storchaka
aefa7ebf0f
bpo-6532: Make the thread id an unsigned integer. ( #781 )
...
* bpo-6532: Make the thread id an unsigned integer.
From C API side the type of results of PyThread_start_new_thread() and
PyThread_get_thread_ident(), the id parameter of
PyThreadState_SetAsyncExc(), and the thread_id field of PyThreadState
changed from "long" to "unsigned long".
* Restore a check in thread_get_ident().
2017-03-23 14:48:39 +01:00
Aviv Palivoda
86a670543f
bpo-9303: Migrate sqlite3 module to _v2 API to enhance performance ( #359 )
2017-03-03 13:58:17 +03:00
Berker Peksag
4a926caf8e
bpo-28518: Start a transaction implicitly before a DML statement ( #245 )
...
Patch by Aviv Palivoda.
2017-02-26 18:22:38 +03:00
Serhiy Storchaka
228b12edcc
Issue #28999 : Use Py_RETURN_NONE, Py_RETURN_TRUE and Py_RETURN_FALSE wherever
...
possible. Patch is writen with Coccinelle.
2017-01-23 09:47:21 +02:00
Berker Peksag
00b1ae0dfc
Issue #28985 : Update authorizer constants in sqlite3 module
...
Dates and version information from the changelog:
* 2006-08-12 (3.3.7) added SQLITE_CREATE_VTABLE, SQLITE_DROP_VTABLE
* 2006-10-09 (3.3.8) added SQLITE_FUNCTION
* 2009-01-12 (3.6.8) added SQLITE_SAVEPOINT
* 2014-02-03 (3.8.3) added SQLITE_RECURSIVE
Patch by Dingyuan Wang.
2017-01-02 06:38:10 +03:00
Serhiy Storchaka
5ab81d787f
Issue #28959 : Added private macro PyDict_GET_SIZE for retrieving the size of dict.
2016-12-16 16:18:57 +02:00
Victor Stinner
070c4d7ca7
Issue #28915 : Use _PyObject_CallNoArg()
...
Replace PyObject_CallFunction(func, NULL) with _PyObject_CallNoArg(func).
2016-12-09 12:29:18 +01:00
Serhiy Storchaka
85b0f5beb1
Added the const qualifier to char* variables that refer to readonly internal
...
UTF-8 represenatation of Unicode objects.
2016-11-20 10:16:47 +02:00
Serhiy Storchaka
06515833fe
Replaced outdated macros _PyUnicode_AsString and _PyUnicode_AsStringAndSize
...
with PyUnicode_AsUTF8 and PyUnicode_AsUTF8AndSize.
2016-11-20 09:13:07 +02:00
Serhiy Storchaka
3b73ea1278
Issue #28701 : Replace PyUnicode_CompareWithASCIIString with _PyUnicode_EqualToASCIIString.
...
The latter function is more readable, faster and doesn't raise exceptions.
2016-11-16 10:19:20 +02:00
Serhiy Storchaka
f4934ea77d
Issue #28701 : Replace PyUnicode_CompareWithASCIIString with _PyUnicode_EqualToASCIIString.
...
The latter function is more readable, faster and doesn't raise exceptions.
2016-11-16 10:17:58 +02:00
Serhiy Storchaka
22805ca54e
Issue #27897 : Fixed possible crash in sqlite3.Connection.create_collation()
...
if pass invalid string-like object as a name. Patch by Xiang Zhang.
2016-09-27 00:14:24 +03:00
Serhiy Storchaka
407ac47690
Issue #27897 : Fixed possible crash in sqlite3.Connection.create_collation()
...
if pass invalid string-like object as a name. Patch by Xiang Zhang.
2016-09-27 00:10:03 +03:00
Berker Peksag
59da4b324f
Issue #28037 : Use sqlite3_get_autocommit() instead of setting Connection->inTransaction manually
...
Patch adapted from 9b79188edb
2016-09-12 07:16:43 +03:00
Berker Peksag
9af13ca565
Issue #28036 : Remove unused pysqlite_flush_statement_cache function
2016-09-11 15:37:30 +03:00
Berker Peksag
ab994ed8b9
Issue #10740 : sqlite3 no longer implicitly commit an open transaction before DDL statements
...
This commit contains the following commits from ghaering/pysqlite:
* f254c53494
* 796b3afe38
* cae87ee686
* 3567b31bb5
With the following additions:
* Fixed a refcount error
* Fixed a compiler warning
* Made the string comparison a little more robust
* Added a whatsnew entry
2016-09-11 12:57:15 +03:00
Serhiy Storchaka
2891492d23
Issue #27881 : Fixed possible bugs when setting sqlite3.Connection.isolation_level.
...
Based on patch by Xiang Zhang.
2016-09-01 22:18:03 +03:00
Benjamin Peterson
47ff0734b8
more PY_LONG_LONG to long long
2016-09-08 09:15:54 -07:00
Victor Stinner
3466bde1cc
Avoid calling functions with an empty string as format string
...
Directly pass NULL rather than an empty string.
2016-09-05 18:16:01 -07:00
Benjamin Peterson
ed4aa83ff7
require a long long data type ( closes #27961 )
2016-09-05 17:44:18 -07:00
Serhiy Storchaka
af0628e045
Issue #27881 : Fixed possible bugs when setting sqlite3.Connection.isolation_level.
...
Based on patch by Xiang Zhang.
2016-09-01 22:21:05 +03:00
Serhiy Storchaka
8631da64bb
Issue #27861 : Fixed a crash in sqlite3.Connection.cursor() when a factory
...
creates not a cursor. Patch by Xiang Zhang.
2016-08-29 15:11:52 +03:00
Serhiy Storchaka
ef113cd4cc
Issue #27861 : Fixed a crash in sqlite3.Connection.cursor() when a factory
...
creates not a cursor. Patch by Xiang Zhang.
2016-08-29 14:29:55 +03:00
Berker Peksag
6ed442c48d
Issue #10513 : Merge from 3.5
2016-08-26 22:08:51 +03:00
Berker Peksag
cc9afa9b51
Issue #10513 : Fix a regression in Connection.commit()
...
Statements should not be reset after a commit.
Backported from 029050896b
2016-08-26 22:07:51 +03:00
Berker Peksag
d7f3cdd07d
Issue #21718 : Merge from 3.5
2016-08-21 19:41:38 +03:00
Berker Peksag
6afe85827c
Issue #21718 : cursor.description is now available for queries using CTEs
...
According to PEP 249, cursor.description must be
available for any SELECT statements, such as those
that use CTEs.
Backported from f67fa9c898
Additional test cases added by me.
2016-08-21 19:38:47 +03:00
Berker Peksag
e0b70cd8a9
Issue #16864 : Cursor.lastrowid now supports REPLACE statement
...
Initial patch by Alex LordThorsen.
2016-06-14 15:25:36 +03:00
Berker Peksag
f84f259b0b
Merge from 3.5
2016-06-12 19:18:17 +03:00
Berker Peksag
0e1d6802ff
Fix typo in _sqlite/module.h
2016-06-12 19:17:49 +03:00
Berker Peksag
0f355c0022
Issue #27190 : Merge from 3.5
2016-06-12 14:10:24 +03:00
Berker Peksag
7bea2347c7
Issue #27190 : Raise NotSupportedError if sqlite3 is older than 3.3.1
...
Patch by Dave Sawyer.
2016-06-12 14:09:51 +03:00
Serhiy Storchaka
f01e408c16
Issue #26200 : Added Py_SETREF and replaced Py_XSETREF with Py_SETREF
...
in places where Py_DECREF was used.
2016-04-10 18:12:01 +03:00
Serhiy Storchaka
57a01d3a0e
Issue #26200 : Added Py_SETREF and replaced Py_XSETREF with Py_SETREF
...
in places where Py_DECREF was used.
2016-04-10 18:05:40 +03:00
Berker Peksag
fe21de9836
Issue #26687 : Use Py_RETURN_NONE macro in sqlite3 module
2016-04-09 07:34:39 +03:00
Serhiy Storchaka
ec39756960
Issue #22570 : Renamed Py_SETREF to Py_XSETREF.
2016-04-06 09:50:03 +03:00
Serhiy Storchaka
48842714b9
Issue #22570 : Renamed Py_SETREF to Py_XSETREF.
2016-04-06 09:45:48 +03:00
Serhiy Storchaka
726fc139a5
Issue #20440 : More use of Py_SETREF.
...
This patch is manually crafted and contains changes that couldn't be handled
automatically.
2015-12-27 15:44:33 +02:00
Serhiy Storchaka
191321d11b
Issue #20440 : More use of Py_SETREF.
...
This patch is manually crafted and contains changes that couldn't be handled
automatically.
2015-12-27 15:41:34 +02:00
Serhiy Storchaka
2d06e84455
Issue #25923 : Added the const qualifier to static constant arrays.
2015-12-25 19:53:18 +02:00
Serhiy Storchaka
5a57ade58e
Issue #20440 : Massive replacing unsafe attribute setting code with special
...
macro Py_SETREF.
2015-12-24 10:35:59 +02:00
Serhiy Storchaka
e79ec70801
Issue #24257 : Fixed incorrect uses of PyObject_IsInstance().
...
Fixed segmentation fault in sqlite3.Row constructor with faked cursor type.
Fixed system error in the comparison of faked types.SimpleNamespace.
2015-05-22 11:13:20 +03:00
Serhiy Storchaka
08d230a540
Issue #24257 : Fixed incorrect uses of PyObject_IsInstance().
...
Fixed segmentation fault in sqlite3.Row constructor with faked cursor type.
Fixed system error in the comparison of faked types.SimpleNamespace.
2015-05-22 11:02:49 +03:00
Larry Hastings
3b12e957a7
Issue #20274 : When calling a _sqlite.Connection, it now complains if passed
...
any keyword arguments. Previously it silently ignored them.
Also: merge related change from 3.4, also reported on Issue #20274 .
2015-05-08 07:45:10 -07:00
Larry Hastings
01b0883602
Issue #20274 : Remove ignored and erroneous "kwargs" parameters from three
...
METH_VARARGS methods on _sqlite.Connection.
2015-05-08 07:37:49 -07:00
Serhiy Storchaka
72e731cc03
Issue #13583 : sqlite3.Row now supports slice indexing.
...
Tests by Jessica McKellar.
2015-03-31 13:33:11 +03:00
Serhiy Storchaka
009b811d67
Removed unintentional trailing spaces in non-external and non-generated C files.
2015-03-18 21:53:15 +02:00
Victor Stinner
4a7cc88472
Issue #23571 : PyObject_Call(), PyCFunction_Call() and call_function() now
...
raise a SystemError if a function returns a result and raises an exception.
The SystemError is chained to the previous exception.
Refactor also PyObject_Call() and PyCFunction_Call() to make them more readable.
Remove some checks which became useless (duplicate checks).
Change reviewed by Serhiy Storchaka.
2015-03-06 23:35:27 +01:00
Serhiy Storchaka
483405bcca
Issue #22883 : Got rid of outdated references to PyInt and PyString in comments.
2015-02-17 10:14:30 +02:00
Serhiy Storchaka
26861b0b29
Issue #23450 : Fixed possible integer overflows.
2015-02-16 20:52:17 +02:00
Serhiy Storchaka
3dd3e26680
Issue #22896 : Avoid to use PyObject_AsCharBuffer(), PyObject_AsReadBuffer()
...
and PyObject_AsWriteBuffer().
2015-02-03 01:25:42 +02:00
Serhiy Storchaka
4fdb68491e
Issue #22896 : Avoid to use PyObject_AsCharBuffer(), PyObject_AsReadBuffer()
...
and PyObject_AsWriteBuffer().
2015-02-03 01:21:08 +02:00
Serhiy Storchaka
2c16df269a
Issue #21147 : sqlite3 now raises an exception if the request contains a null
...
character instead of truncate it. Based on patch by Victor Stinner.
2014-09-11 13:30:48 +03:00
Serhiy Storchaka
42d67af87f
Issue #21147 : sqlite3 now raises an exception if the request contains a null
...
character instead of truncate it. Based on patch by Victor Stinner.
2014-09-11 13:29:05 +03:00
Victor Stinner
cfcde8ca40
Issue #22218 : Fix "comparison between signed and unsigned integers" warning in
...
Modules/_sqlite/cursor.c.
2014-08-17 21:09:30 +02:00
Serhiy Storchaka
3d4b2d4df2
Issue #21975 : Fixed crash when using uninitialized sqlite3.Row (in particular
...
when unpickling pickled sqlite3.Row). sqlite3.Row is now initialized in the
__new__() method.
2014-08-06 17:50:39 +03:00
Victor Stinner
297d104248
Issue #21858 : Better handling of Python exceptions in the sqlite3 module.
2014-06-26 23:32:00 +02:00
Serhiy Storchaka
47a981337a
Issue #10203 : sqlite3.Row now truly supports sequence protocol. In particulr
...
it supports reverse() and negative indices. Original patch by Claudiu Popa.
2014-05-28 12:58:34 +03:00
Serhiy Storchaka
dfe98a102e
Issue #20437 : Fixed 22 potential bugs when deleting objects references.
2014-02-09 13:46:20 +02:00
Serhiy Storchaka
505ff755d7
Issue #20437 : Fixed 21 potential bugs when deleting objects references.
2014-02-09 13:33:53 +02:00
Victor Stinner
08263f10f8
(Merge 3.3) Issue #20026 : Fix the sqlite module to handle correctly invalid
...
isolation level (wrong type).
2013-12-19 16:39:00 +01:00
Victor Stinner
cb1f74ec40
Issue #20026 : Fix the sqlite module to handle correctly invalid isolation level
...
(wrong type).
2013-12-19 16:38:03 +01:00
Victor Stinner
afccb0a821
sqlite: Use Py_ssize_t to store a size instead of an int
...
Fix a compiler warning on Windows 64-bit
2013-11-18 02:07:29 +01:00
Victor Stinner
3f658bec35
sqlite: raise an OverflowError if a string or a BLOB is longer than INT_MAX
...
bytes
Fix compiler warnings on Windows 64-bit
2013-11-18 01:36:29 +01:00
Victor Stinner
83e30bf4bd
Fix a compiler warning on Windows 64-bit: _sqlite module
2013-11-18 01:27:30 +01:00
Victor Stinner
83ed42bfbf
sqlite: raise an OverflowError if the result is longer than INT_MAX bytes
...
Fix a compiler warning on Windows 64-bit
2013-11-18 01:24:31 +01:00
Martin v. Löwis
e75fc14813
Issue #19514 : Deduplicate some _Py_IDENTIFIER declarations.
...
Patch by Andrei Dorian Duma.
2013-11-07 18:46:53 +01:00
Victor Stinner
85a12a8beb
Issue #19437 : Fix pysqlite_cursor_iternext() of sqlite3, when the row factory
...
fails, don't consume the row (restore it) and fail immediatly (don't call
pysqlite_step())
2013-11-05 14:50:30 +01:00
Victor Stinner
b3e1ef1ce0
Issue #19437 : Fix pysqlite_connection_call() of sqlite3, return NULL when
...
PyList_Append() fails
2013-11-05 14:46:13 +01:00
Victor Stinner
dd4b299df1
Issue #19437 : Fix pysqlite_cursor_iternext() of sqlite3, handle
...
_pysqlite_fetch_one_row() failure
2013-11-05 14:30:11 +01:00
Serhiy Storchaka
c679227e31
Issue #1772673 : The type of `char*` arguments now changed to `const char*`.
2013-10-19 21:03:34 +03:00
Victor Stinner
340f712b84
(Merge 3.3) Fix compilation of the _sqlite module if threads are disabled
2013-08-28 01:45:39 +02:00
Victor Stinner
b84fc0fd9f
Fix compilation of the _sqlite module if threads are disabled
2013-08-28 01:44:42 +02:00
Serhiy Storchaka
cbad3a367e
Issue #18701 : Remove sqlitecompat.h.
2013-08-17 01:01:23 +03:00
Serhiy Storchaka
8fa8ee3970
Issue #18701 : Remove support of old CPython versions (<3.0) from C code.
2013-08-17 00:48:02 +03:00
Victor Stinner
ffff763161
Issue #18519 : Fix test_sqlite on old versions of libsqlite3
...
With old SQLite versions, _sqlite3_result_error() sets a new Python exception,
so don't restore the previous exception.
2013-08-02 01:48:10 +02:00
Victor Stinner
d4095d95f8
Issue #18519 : the Python authorizer callback of sqlite3 must not raise Python exceptions
...
The exception is printed if sqlite3.enable_callback_tracebacks(True) has been
called, otherwise the exception is cleared.
2013-07-26 22:23:33 +02:00
Victor Stinner
3a8573230c
Issue #18488 : Fix _pysqlite_final_callback()
...
Restore behaviour of Python 3.3: print the finalizer() error if
sqlite3.enable_callback_tracebacks() has been called, clear the error
otherwise.
But keep (save/restore) also the AttributeError raised in
_pysqlite_step_callback().
2013-07-22 08:34:32 +02:00
Victor Stinner
41801f5812
Issue #18519 , #18408 : Fix sqlite authorizer callback
...
If a previous call to the authorizer callback failed and raised an exception,
don't call the Python authorizer callback, but just return SQLITE_DENY.
2013-07-21 13:05:38 +02:00
Victor Stinner
4abda5d5b0
Issue #18408 : Fix _pysqlite_fetch_one_row(), in debug mode, don't call
...
type_call() with an exception set
2013-07-18 01:54:37 +02:00
Victor Stinner
e9af4cface
Issue #18488 : _pysqlite_final_callback() should not clear the exception set by
...
the last call to the step() method of a user function
2013-07-18 01:42:04 +02:00
Victor Stinner
725e421222
Fix compilater warnings on Windows 64-bit
2013-05-17 00:19:59 +02:00
Serhiy Storchaka
5f99fa7287
Issue #17857 : Prevent build failures with pre-3.5.0 versions of sqlite3,
...
such as was shipped with Centos 5 and Mac OS X 10.4.
2013-04-28 14:11:55 +03:00
Serhiy Storchaka
d160b12292
Issue #17857 : Prevent build failures with pre-3.5.0 versions of sqlite3,
...
such as was shipped with Centos 5 and Mac OS X 10.4.
2013-04-28 14:10:27 +03:00
Antoine Pitrou
902fc8b5a0
Issue #13773 : sqlite3.connect() gets a new `uri` parameter to pass the filename as a URI, allowing to pass custom options.
2013-02-10 00:02:44 +01:00
Serhiy Storchaka
2efdc90b0f
Issue #17073 : Fix some integer overflows in sqlite3 module.
2013-02-07 17:03:46 +02:00
Serhiy Storchaka
3cf96ac248
Issue #17073 : Fix some integer overflows in sqlite3 module.
2013-02-07 17:01:47 +02:00
Petri Lehtinen
8b24506534
Merge branch '3.2'
...
Closes #8033 .
2012-02-21 13:59:40 +02:00
Petri Lehtinen
4fe85abab9
sqlite3: Fix 64-bit integer handling in user functions on 32-bit architectures
...
Closes #8033 .
2012-02-21 13:49:50 +02:00
Petri Lehtinen
bc35bebb45
Undocument and clean up sqlite3.OptimizedUnicode
...
Closes #13921 .
2012-02-09 21:09:03 +02:00
Petri Lehtinen
4a84f58143
Issue #10811 : Fix recursive usage of cursors. Instead of crashing, raise a ProgrammingError now.
2012-02-06 22:04:18 +02:00
Petri Lehtinen
8940f6242c
Merge branch 3.2
...
Closes #13676 .
2012-02-01 22:21:05 +02:00
Petri Lehtinen
023fe334bb
sqlite3: Handle strings with embedded zeros correctly
...
Closes #13676 .
2012-02-01 22:18:35 +02:00
Amaury Forgeot d'Arc
864741b2c7
Issue #13350 : Replace most usages of PyUnicode_Format by PyUnicode_FromFormat.
2011-11-06 15:10:48 +01:00
Martin v. Löwis
bd928fef42
Rename _Py_identifier to _Py_IDENTIFIER.
2011-10-14 10:20:37 +02:00
Martin v. Löwis
afe55bba33
Add API for static strings, primarily good for identifiers.
...
Thanks to Konrad Schöbel and Jasper Schulz for helping with the mass-editing.
2011-10-09 10:38:36 +02:00
Antoine Pitrou
8e4dd08f23
Issue #13099 : Fix sqlite3.Cursor.lastrowid under a Turkish locale.
...
Reported and diagnosed by Thomas Kluyver.
2011-10-04 13:37:06 +02:00
Antoine Pitrou
1665d2c75f
Issue #13099 : Fix sqlite3.Cursor.lastrowid under a Turkish locale.
...
Reported and diagnosed by Thomas Kluyver.
2011-10-04 13:35:28 +02:00