Package: psycopg2cffi
ContentsInstallationDevelopmentRelease notes2.9.0 (27 Jan 2021)2.8.1 (31 July 2018)2.8.0 (31 July 2018)2.7.7 (13 November 2017)2.7.6 (11 August 2017)2.7.5 (31 October 2016)2.7.4 (01 April 2016)2.7.3 (29 February 2016)2.7.2 (06 August 2015)2.7.1 (20 June 2015)2.7.0 (21 May 2015)2.6.1 (08 Feb 2015)2.6.0 (24 Jan 2015)2.5.1 (14 May 2014)2.5.0 (3 Sep 2013)An implementation of the psycopg2 module using cffi.
The module is currently compatible with Psycopg 2.5.InstallationYou can  installpsycopg2cffifrom PyPI:pip install psycopg2cffiOr from source:python setup.py installInstallation requirements are the same as forpsycopg2- you must
havelibpqheaders,pg_configsomewhere on your$PATH,
Python development headers (python-devor similar), andffi-devforcffi.
Installation was tested on Ubuntu 12.04, Ubuntu 14.04, CentOS (RHEL 5.0),
OS X 10.8 - 10.10.
It should be possible to make it work on Windows, but I did not test it.This module works under CPython 2.7+, CPython 3.5+, PyPy 2 and PyPy 3
(PyPy version should be at least 2.0, which is ancient history now).To use this package with Django or SQLAlchemy invoke a compatibility
hook (for example, fromsettings.pyin case of Django, or
from apsycopg2.pyfile in site-packages of your virtual env):from psycopg2cffi import compat
compat.register()This will mappsycopg2cffitopsycopg2, so now any code that
doesimport psycopg2will usepsycopg2cffi.Submit issues tohttps://github.com/chtd/psycopg2cffi/issuesIf you notice thatpsycopg2cffiunder PyPy is noticeably slower thanpsycopg2under CPython, submit this to the issues too - it should
not be the case.This is a port of (Michael van Tellingen porthttps://github.com/mvantellingen/psycopg2-ctypesof Alex Gaynor’s RPython port
(https://bitbucket.org/alex_gaynor/pypy-postgresql/overview) of psycopg2 to
Python + ctypes) to cffi.The main motivation for a port was speed - the writeup with benchmarks
is here:http://chtd.ru/blog/bystraya-rabota-s-postgres-pod-pypy/?lang=enDevelopmentTo run tests, installpytestand run them with:py.test psycopg2cffiNote that forcffi>=1.0you need to runpython setup.py developto rebuild_libpq.so(if you changed bindings).
And forcffi<1.0(only PyPy 2.5 and below) you need to runpython setup.py installonce to generatepsycopg2cffi/_config.py,
otherwise each import will run config and notify tests will fail.You can also run Django tests. You need to checkout Django source, add
psycopg2 compat as described above, and, from the root of the Django checkout:PYTHONPATH=`pwd` ./tests/runtests.py \
    --settings=psycopg2cffi.tests.psycopg2_tests.testconfigIn case of problems with Django tests, see official Django docshttps://docs.djangoproject.com/en/dev/internals/contributing/writing-code/unit-tests/#running-the-unit-testsRelease notes2.9.0 (27 Jan 2021)New features:Add execute_batch and execute_values to psycopg2cffi.extras by @fake-name in #98psycopg2cffi.extras: add fetch argument to execute_values() by @intelfx in #119Bug fixes:Fix for async keyword argument when creating a connection by @donalm in #104Allow adapters to be passed as arguments of cursor’s execute() by @amigrave in #107Fix installation with old cffi by dand-oss in #116Test changes:Dropped support for python 2.6, 3.3, 3.4 by @thedrow in #109Added support for python 3.8 by @thedrow in #1082.8.1 (31 July 2018)Release date added2.8.0 (31 July 2018)Python 3.7 support by unimariJo (#92) and farrokhi (#101).async_should be used instead ofasyncin public APIs
(but the change is backwards compatible,asyncis still supported as an alias).2.7.7 (13 November 2017)Bugfixes:Support installation under Postgres 10 by jimbattin (#90)2.7.6 (11 August 2017)Bugfixes:Named cursors fix (affects newer Django) by danchr (#81)Python 3 fixes in extras by avanov (#83)Null check added in fast parser utils by malthe (#79)2.7.5 (31 October 2016)Windows wheels support added by ryoyoko (#69).Bugfixes:Non-ascii notice messages fixed by asterite3 (#72)AsIs with non-text/bytes fixed by jinty (#64)Silent failures in copy_from and copy_to fixed by gobbledygook88 (#62)Infinite recursion error fixed in errorcodes.lookup (#68)Typos in README fixed by PavloKapyshin (#66)2.7.4 (01 April 2016)Fix a regression with error handling when establishing the connection (#61)2.7.3 (29 February 2016)Fix a bug with non-ascii error messages (#56)2.7.2 (06 August 2015)Fixes for FreeBSD support by Andrew Coleman2.7.1 (20 June 2015)JSONB support2.7.0 (21 May 2015)Use cffi 1.0, which makes installation more robust, and import is faster.
cffi<1.0 is used now only for PyPy 2.5 or below.2.6.1 (08 Feb 2015)Fixing things that were broken in 2.6.0:Fix issue #31 - bigint on 32-bitFix issue #32 - register_type and unicode2.6.0 (24 Jan 2015)Python 3 supportA bit faster reading of int, long, float, double fields2.5.1 (14 May 2014)Small bugfixes2.5.0 (3 Sep 2013)Bugfixes and a lot of compatibility work by Daniele VarrazzoOlder releases lack release notes, first release of psycopg2cffi around Nov 2012.