Document that PyPy does not work with mysqlconnector and remove it from the matrix.

This commit is contained in:
Jason Madden 2018-02-02 09:29:42 -06:00
parent c7319f7d10
commit 7015f597e3
No known key found for this signature in database
GPG Key ID: 349F84431A08B99E
3 changed files with 41 additions and 20 deletions

View File

@ -19,8 +19,11 @@ matrix:
- RS_MY_DRIVER="C MySQL Connector/Python"
- python: 3.6
env: ENV=mysqlconnector
- python: pypy
env: ENV=mysqlconnector
# PyPy 5.8.0 is knonwn to be broken. Check again
# when Travis updates.
#- python: pypy
# env: ENV=mysqlconnector
- python: 3.6
env: ENV=mysql

View File

@ -10,7 +10,9 @@
CFFI compilation environment. Fixes :issue:`187`, reported by
Johannes Raggam.
- Test with MySQL Connector/Python 8.0.6, up from 2.1.5.
- Test with MySQL Connector/Python 8.0.6, up from 2.1.5. Note that
PyPy 5.8.0 is known to *not* work with MySQL Connector/Python
(although PyPy 5.6.0 did).
2.1a2 (2017-04-15)

View File

@ -49,27 +49,31 @@ PyMySQL, MySQL Connector/Python and pg8000 are also known to work.
On PyPy, install psycopg2cffi 2.7.4+ or PyMySQL 0.6.6+ (PyPy will
generally work with psycopg2 and mysqlclient, but it will be *much*
slower; in contrast, pg8000 performs nearly as well. cx_Oracle is
untested on PyPy).
untested on PyPy). MySQL Connector/Python is explicitly known *not* to
work on recent versions of PyPy. [#f1]_
Here's a table of known (tested) working adapters; adapters **in
bold** are the recommended adapter.
+----------+---------------------+---------------------+--------------+
| Platform | MySQL | PostgreSQL | Oracle |
+==========+=====================+=====================+==============+
| CPython2 | | 1. **psycopg2** | **cx_Oracle**|
| | 1. **mysqlclient** | 2. pg8000 | |
| | 2. PyMySQL | | |
| | 3. umysqldb | | |
| | 4. MySQL Connector | | |
+----------+---------------------+---------------------+--------------+
| CPython3 | 1. **mysqlclient** | 1. **psycopg2** | **cx_Oracle**|
| | 2. PyMySQL | 2. pg8000 | |
| | 3. MySQL Connector | | |
+----------+---------------------+---------------------+--------------+
| PyPy | 1. **PyMySQL** | 1. **psycopg2cffi** | |
| | 2. MySQL Connector | 2. pg8000 | |
+----------+---------------------+---------------------+--------------+
.. table:: Tested Adapters
:widths: auto
+----------+---------------------+---------------------+--------------+
| Platform | MySQL | PostgreSQL | Oracle |
+==========+=====================+=====================+==============+
| CPython2 | 1. **mysqlclient** | 1. **psycopg2** | **cx_Oracle**|
| | 2. PyMySQL | 2. pg8000 | |
| | 3. umysqldb | | |
| | 4. MySQL Connector | | |
| | | | |
+----------+---------------------+---------------------+--------------+
| CPython3 | 1. **mysqlclient** | 1. **psycopg2** | **cx_Oracle**|
| | 2. PyMySQL | 2. pg8000 | |
| | 3. MySQL Connector | | |
+----------+---------------------+---------------------+--------------+
| PyPy | 1. **PyMySQL** | 1. **psycopg2cffi** | |
| | | 2. pg8000 | |
+----------+---------------------+---------------------+--------------+
mysqlclient, MySQL Connector/Python (without its C extension), pg8000
@ -91,3 +95,15 @@ on CPython and PyPy, compatible with gevent).
Once RelStorage is installed, it's time to :doc:`configure the database <configure-database>`
you'll be using.
.. rubric:: Footnotes
.. [#f1] Broken tests `were observed
<https://travis-ci.org/zodb/relstorage/jobs/336589498#L912>`_
for PyPy2 5.8.0 using both Connector 2.1.5 and 8.0.6. `Tests
passed <https://travis-ci.org/zodb/relstorage/builds/245866051>`_
using PyPy2 5.6.0 and Connector 2.1.5. On the other hand,
CPython 2.7.14 and CPython 2.7.9 are tested to work with the
C extension, and CPython 3.6.0 and 3.6.3 have been tested to
work with the pure-Python extension (the same extension PyPy
would use).