134 Commits

Author SHA1 Message Date
edeab3040d Use cp1252 for latin1 charset (#398) 2019-11-18 21:22:39 +09:00
0da81656e9 fix PyMemberDef type of two attributes (#395) 2019-11-08 00:59:46 +09:00
acf4cdcf89 Add 'auth_plugin' option (#389) 2019-10-23 19:19:23 +09:00
b400acddd0 set charset before connect (#382) 2019-08-11 11:23:40 +09:00
62c8c8c62b call mysql_library_init in module initialization (#377) 2019-08-08 21:31:25 +09:00
6f5f48b76c use PY_SSIZE_T_CLEAN (#360)
Fixes #359
2019-06-08 23:53:46 +09:00
b66971ee36 memory leak in ConnectionObject_Initialize when mysql_real_connect fails (#350)
We can't set open=0 after we mysql_init or dealloc will not cleanup the memory.

Also if mysql_init returns NULL we are out of memory and shouldn't set open=1, or we could segfault in dealloc if we didn't seg before that.
2019-03-26 06:46:32 +09:00
e04c5972f5 Add missing break (#346)
Fixes #343
2019-03-19 17:02:44 +09:00
f683ee7826 Fix typo in docstring and minor formatting (#336) 2019-03-03 12:13:38 +09:00
3870135037 Fix windows build (#322) 2019-01-18 20:52:10 +09:00
ea80e8f07a Fix error handling of mysql_real_connect (#317)
Fixes #316
2018-12-17 19:27:54 +09:00
8ad1525c3f Raise ProgrammingError for nan and inf (#314)
* Raise ProgrammingError when inf or nan is passed
  Fixes #246
* Rename _mysql_exceptions -> _exceptions
2018-12-14 16:46:30 +09:00
911bef988c Refactor extension module initialization (#313) 2018-12-13 20:23:46 +09:00
0b6c6656f2 Refactoring JSON support (#312) 2018-12-13 17:40:37 +09:00
4b40c8ce05 Remove _mysql.thread_safe() (#311) 2018-12-13 16:10:58 +09:00
aca63e5d1c Use Py_RETURN_NONE 2018-12-13 12:44:25 +09:00
fe8032430c Reimplement JSON support (#310) 2018-12-13 12:41:53 +09:00
3bea8cd8dd Faster string and int decoder (#305) 2018-12-11 11:50:42 +09:00
ae6b108b56 Remove HAVE_MYSQL_OPT_TIMEOUTS
Drop MySQL<5.1.12 support
2018-12-10 19:08:19 +09:00
819688b630 Simplify converters (#304) 2018-12-07 13:50:05 +09:00
5e8eeac47f Stop using surrogate escape (#302)
It was workaround for `bytes %`.
Since we dropped Python 3.4 support, we can use just `bytes %` now.
2018-12-07 02:39:33 +09:00
c754b25080 Support field name other than UTF-8 (#301) 2018-12-06 02:39:25 +09:00
27e40186e3 Resurrect Connection.fileno() (#300)
This permits low-level access to the underlying network connection.
For example, this can be used to tweak the TCP timeout (TCP_USER_TIMEOUT).
2018-12-05 19:08:35 +09:00
41581254f8 Fix a reference leak in store_result and use_result if result object initialization fails. (#298) 2018-12-05 12:31:33 +09:00
20ee2e307b Fix warnings 2018-12-04 22:06:08 +09:00
16915a0353 Remove fileno, escape_sequence, and escape_dict from Connection (#297) 2018-12-04 21:50:30 +09:00
833816ee87 Move _mysql and _mysql_exceptions into MySQLdb/ (#293) 2018-12-04 20:19:04 +09:00
7a846cf5e3 Allow pip install from git
Merged with modifications from a815269010
2012-10-04 13:34:39 -04:00
cd44524fef Patch 4/4: Fix TEXT vs. BLOB conversion.
This patch assumes an applied patch 3 (https://sourceforge.net/p/mysql-python/patches/79/). Looks a bit like a hack, but the infrastructure doesn't seem to allow anything else. And it works here very well. I'm not sure, how it works with very old mysql versions (<= 4.0).

https://sourceforge.net/p/mysql-python/patches/80/
2012-10-03 13:20:19 -04:00
c05a2c6a50 Patch 3/4: _mysql.c reference counting and exception issues
This patch fixes a reference leak and improves the error handling in the converter mapping code. Rather accidentially it also drops the cleanup: label and the gotos ;)

https://sourceforge.net/p/mysql-python/patches/79/
2012-10-03 13:17:35 -04:00
8041cc6df6 Some (many) tests actually pass now on Python 3. May no longer be backwards-compatible with Python < 2.6. 2012-09-08 20:24:45 +00:00
fe917fcced _mysql imports now, but still crashes 2012-09-08 18:44:34 +00:00
a5c7996f60 Fix import _mysql SystemError so that now we get the ImportError... 2012-09-08 18:16:28 +00:00
ece1e0e08b _mysql.c compiles and links with Python 3.2.3 now. Need to fix the Python code now... 2012-09-08 16:55:16 +00:00
c1d15552e6 A couple more Python 3 fixes. 2012-09-07 22:48:55 +00:00
66abb0e8d0 A lot more Python 3 fixes for _mysql. It still ain't fixed or broken yet (for Python <3) 2012-09-07 22:09:31 +00:00
9737a4cb39 Some Python 3 fixes for _mysql. It ain't fixed but at least it ain't broken yet (for Python <3) 2012-09-07 20:19:56 +00:00
c12e7cca7e Force HAVE_OPENSSL if the client library is 5.5 or newer. Fixes #3535584. 2012-09-07 17:09:13 +00:00
e6d24c358d Fix: Error is not checked if mysql_store_result returns NULL (#3546166) 2012-09-07 16:53:15 +00:00
11ade40463 Windows build fixes. 2012-09-05 00:38:57 +00:00
1a728edd49 Unpack kill argument into an unsigned long correctly.
SF bug #2902635
2009-12-08 00:17:13 +00:00
29b884d0cc Defer adding references until after all our C calls so we can avoid having
to decrement them if we bail out early.

Fixes bug 2811033.
2009-07-24 00:18:07 +00:00
f19386dd83 2009-03-30 23:01:58 +00:00
7d57743ff4 Fix bug 1808476 for OSX compilation, ported from trunk. 2009-02-24 02:48:29 +00:00
e9c57bd414 don't leak special-case tuples (present in unicode modes) 2009-02-23 23:39:00 +00:00
0340376f05 Revert previous reconnect patches and just handle it
with ping([reconnect]).
2007-02-10 19:03:18 +00:00
e60e46cab1 Add connection.autoreconnect() (variant of bug #1574825) 2007-02-10 04:37:15 +00:00
b56eedab05 reconnect option for connect (bug #1550388).
Enjoy your toes while they last.
2007-02-10 04:16:53 +00:00
cfd4a94682 Fix for Python 2.5.
Added a unit test for single character columns.

Updated download URL.
2006-10-27 23:33:35 +00:00
1699cc8eb1 Metadata updates, 1.2.2b2 2006-10-13 22:12:34 +00:00