Commit Graph

2126 Commits

Author SHA1 Message Date
Daniele Varrazzo
1442655d3c Merge branch 'qstring-writable-encoding' 2016-07-01 18:03:12 +01:00
Daniele Varrazzo
4a450b63c4 Don't hope to encode stuff in an arbitrary encoding
libpq's PQescapeString will use the same encoding it has seen before in
a connection (static_client_encoding).

So I think I'll leave this feature here for people who know what is
doing, but won't really document it as a feature: it can't really work
in a generic way (unless adding some disgusting hack like creating a
fake connection with the encoding we want to call PQescapeStringConn
instead of PQescapeString).
2016-07-01 18:02:20 +01:00
Daniele Varrazzo
2e8e61b8d4 Test moved to the right module, cleanup, but same problem 2016-07-01 18:01:16 +01:00
Daniele Varrazzo
bada1f1f8e Work in progress on writable encoding
Would help using adapt(unicode) to quote strings without a connection,
see ticket #331.

Currently in heisenbug state: if test_connection_wins_anyway and
test_encoding_default run (in this order), the latter fail because the
returned value is "'\xe8 '", with an extra space. Skipping the first
test, the second succeed.

The bad value is returned by the libpq:

    ql = PQescapeString(to+eq+1, from, len);

just returns len = 2 and an extra space in the string... meh.
2016-07-01 18:00:05 +01:00
Daniele Varrazzo
c29b5cd46a Fixed build on win32
Fix #422.
2016-07-01 02:24:49 +01:00
Daniele Varrazzo
7aedc61d41 Fixed segfault on repr() for uninitialized connections
Close #361.
2016-07-01 02:11:21 +01:00
Daniele Varrazzo
b7330283bc Wordsmithing on COPY commands
Address somehow issue #397.
2016-07-01 01:40:25 +01:00
Daniele Varrazzo
52753b23e8 Document that the libpq must be available at runtime
Fix issue #408.
2016-07-01 01:19:28 +01:00
Greg Ward
3ed2c54790 Fix scattered grammar/spelling errors in comments, debug output, etc. 2016-06-30 21:09:15 +01:00
Oleksandr Shulgin
d5443c65fd Fix TODOs in ReplicationMessage inline docs 2016-04-21 15:32:05 +02:00
Gabriel Kihlman
5ce00f8e5b Avoid a possible null deref, tz might be NULL.
Found by clang static analyzer.
2016-04-18 17:28:50 +02:00
Daniele Varrazzo
732ea90a4f Merge pull request #373 from nonZero/patch-1
Suggest installing psycopg2 in windows using pip
2016-03-10 12:25:23 +00:00
Daniele Varrazzo
4fa1b983e7 Merge pull request #415 from bmwiedemann/master
dont claim copyright for future years
2016-03-10 12:22:59 +00:00
Daniele Varrazzo
caa3e491f2 Merge pull request #416 from dargor/doc_typos
Typo.
2016-03-10 12:22:01 +00:00
Daniele Varrazzo
3033361883 Merge branch 'py35' 2016-03-10 12:14:11 +00:00
Daniele Varrazzo
4fb236e688 Start advertising Py 3.5 support 2016-03-10 12:13:57 +00:00
Daniele Varrazzo
65ec7e8bcb Fixed read() exception propagation in copy_from
Close issue #412.
2016-03-10 12:13:52 +00:00
Daniele Varrazzo
82ef9cfadd Merge branch 'msvc-2015-fix' 2016-03-10 12:12:40 +00:00
Daniele Varrazzo
48260c6406 Py 3.5 MSVC 2015 build fixed noted in news
Close issue #380.
2016-03-10 12:12:24 +00:00
Christian Ullrich
654eeec24c Work around late initialization in distutils._msvccompiler. 2016-03-10 12:12:19 +00:00
Daniele Varrazzo
1b7cebc41e Merge branch 'setuptools' 2016-03-10 12:11:29 +00:00
Daniele Varrazzo
006693421d Fixed 'make sdist' to work with setuptools 2016-03-10 12:10:51 +00:00
Daniele Varrazzo
2d91864977 setuptools in the news 2016-03-10 12:09:20 +00:00
Jason Erickson
22fe6e7aad Modify setup.py to support setuptools/wheel
To support creation of whl files for PyPI, setuptools need to be imported
instead of distutils.  Created try/except case to fall back to integrated
distutils if setuptools is not installed.
2016-03-10 12:09:15 +00:00
Daniele Varrazzo
8611d91b35 Fixed build on Python 2.5 2016-03-10 12:06:28 +00:00
Daniele Varrazzo
244f233e1c Fixed manifest trying to include Makefiles from build env 2016-03-10 12:05:57 +00:00
Daniele Varrazzo
eb687103b4 Skip null array test on Postgres versions not supporting it 2016-03-10 12:04:41 +00:00
Daniele Varrazzo
499366ba2d Merge branch 'patch-328' 2016-03-10 12:02:39 +00:00
Daniele Varrazzo
c13956dc10 Fixed compiler warnings about Py_ssize_t printf format 2016-03-10 12:02:23 +00:00
Jason Erickson
d0309333b7 Removed added Dprintf statements
Removed extra Dprintf statements added to trouble large objects
2016-03-10 12:02:06 +00:00
Jason Erickson
2cdc8d61a2 Fix Windows 64bit lobject support for very (>2GB) large objects
The type 'long' with Windows Visual C is 32bits in size for both 32bit and 64bit platforms.  Changed type of variables that could be > 2GB from long to Py_ssize_t.
2016-03-10 12:02:00 +00:00
Gabriel Linder
88d3d7fc7e Typo. 2016-03-09 21:51:02 +01:00
Bernhard M. Wiedemann
d829a75f2e dont claim copyright for future years
otherwise, when building from unchanged source in 2018,
it would claim Copyright 2018
which is not true

Being able to reproduce identical output from identical input
is important to Linux distributions
2016-03-09 16:33:54 +01:00
Oleksandr Shulgin
a7887fab07 Merge remote-tracking branch 'zalando/feature/replication-protocol' into feature/replication-protocol-c-connection-object 2016-03-08 18:56:58 +01:00
Oleksandr Shulgin
3f10b4dd31 Remove duplicated doc for make_dsn() 2016-03-08 18:52:29 +01:00
Oleksandr Shulgin
b21c8f7a4e Move replication-related imports to extras.py 2016-03-08 18:52:29 +01:00
Oleksandr Shulgin
2de2ed7c63 Remove some dead code 2016-03-08 18:52:29 +01:00
Oleksandr Shulgin
1d52f34e60 We don't need to expose cursor_init(), call tp_init() on the type instead. 2016-03-08 18:52:21 +01:00
Oleksandr Shulgin
da6e061ee8 Use python-defined make_dsn() for ReplicationConnection class 2016-03-08 18:52:21 +01:00
Oleksandr Shulgin
cb7032554e Merge branch 'master' into feature/replication-protocol-c-connection-object 2016-03-04 10:52:10 +01:00
Daniele Varrazzo
ab5d8f4190 Style the dsn arg in connect() as a normal optional parameter
Plus some more connect() docs wordsmithing.
2016-03-03 17:28:56 +00:00
Daniele Varrazzo
d43b74681f Merge branch 'make_dsn'
Close issue #363 instead of the proposed merge request.
2016-03-03 17:10:39 +00:00
Daniele Varrazzo
e33073576c Brag about make_dsn in the NEWS file 2016-03-03 17:09:15 +00:00
Daniele Varrazzo
c9fd828f8a Allow make_dsn to take no parameter
The behaviour of connect() is unchanged: either dsn or params must be
specified.
2016-03-03 17:09:15 +00:00
Daniele Varrazzo
7aab934ae5 Validate output result from make_dsn()
The output is not necessarily munged anyway: if no keyword is passed,
validate the input but return it untouched.
2016-03-03 17:09:15 +00:00
Daniele Varrazzo
7155d06cdc Test that the empty dsn is a valid make_dsn input 2016-03-03 17:09:15 +00:00
Daniele Varrazzo
6893295a87 Added docs about make_dsn
connect() docs updated to document the arguments merging.
2016-03-03 17:09:15 +00:00
Daniele Varrazzo
52087a79d9 Added test suite specific for make_dsn 2016-03-03 15:31:37 +00:00
Daniele Varrazzo
2c55a1bd53 Verify that the dsn is not manipulated by make_dsn if not necessary 2016-03-03 15:07:38 +00:00
Daniele Varrazzo
1c4523f0ac Implementation of make_dsn in Python
This is equivalent to what proposed in #363, but with a much simpler
implementation.
2016-03-03 04:33:59 +00:00