mirror of
				https://github.com/psycopg/psycopg2.git
				synced 2025-11-04 01:37:31 +03:00 
			
		
		
		
	Fix multiple misspellings
This commit is contained in:
		
							parent
							
								
									2eba97de70
								
							
						
					
					
						commit
						31b6ec63f8
					
				
							
								
								
									
										2
									
								
								INSTALL
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								INSTALL
									
									
									
									
									
								
							| 
						 | 
				
			
			@ -93,7 +93,7 @@ You can compile psycopg under Windows platform with mingw32
 | 
			
		|||
Dev-C++ (http://www.bloodshed.net/devcpp.html) and Code::Blocks
 | 
			
		||||
(http://www.codeblocks.org). gcc binaries should be in your PATH.
 | 
			
		||||
 | 
			
		||||
You need a PostgreSQL with include and libary files installed. At least v8.0
 | 
			
		||||
You need a PostgreSQL with include and library files installed. At least v8.0
 | 
			
		||||
is required.
 | 
			
		||||
 | 
			
		||||
First you need to create a libpython2X.a as described in
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										12
									
								
								NEWS
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								NEWS
									
									
									
									
									
								
							| 
						 | 
				
			
			@ -188,7 +188,7 @@ New features and changes:
 | 
			
		|||
    ISO885916, LATIN10, SHIFT_JIS_2004.
 | 
			
		||||
  - Dropped repeated dictionary lookups with unicode query/parameters.
 | 
			
		||||
 | 
			
		||||
- Improvements to the named cusors:
 | 
			
		||||
- Improvements to the named cursors:
 | 
			
		||||
 | 
			
		||||
  - More efficient iteration on named cursors, fetching 'itersize'
 | 
			
		||||
    records at time from the backend.
 | 
			
		||||
| 
						 | 
				
			
			@ -251,7 +251,7 @@ Main new features:
 | 
			
		|||
- `dict` to `hstore` adapter and `hstore` to `dict` typecaster, using both
 | 
			
		||||
  9.0 and pre-9.0 syntax.
 | 
			
		||||
- Two-phase commit protocol support as per DBAPI specification.
 | 
			
		||||
- Support for payload in notifications received from the backed.
 | 
			
		||||
- Support for payload in notifications received from the backend.
 | 
			
		||||
- `namedtuple`-returning cursor.
 | 
			
		||||
- Query execution cancel.
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -291,7 +291,7 @@ Bux fixes:
 | 
			
		|||
  The old register_tstz_w_secs() function is deprecated and will raise a
 | 
			
		||||
  warning if called.
 | 
			
		||||
- Exceptions raised by the column iterator are propagated.
 | 
			
		||||
- Exceptions raised by executemany() interators are propagated.
 | 
			
		||||
- Exceptions raised by executemany() iterators are propagated.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
What's new in psycopg 2.2.1
 | 
			
		||||
| 
						 | 
				
			
			@ -408,7 +408,7 @@ New features:
 | 
			
		|||
 | 
			
		||||
Bug fixes:
 | 
			
		||||
 | 
			
		||||
- Fixed exeception in setup.py.
 | 
			
		||||
- Fixed exception in setup.py.
 | 
			
		||||
- More robust detection of PostgreSQL development versions.
 | 
			
		||||
- Fixed exception in RealDictCursor, introduced in 2.0.10.
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -790,7 +790,7 @@ What's new in psycopg 1.99.11
 | 
			
		|||
 | 
			
		||||
* changed 'tuple_factory' cursor attribute name to 'row_factory'.
 | 
			
		||||
 | 
			
		||||
* the .cursor attribute is gone and connections and cursors are propely
 | 
			
		||||
* the .cursor attribute is gone and connections and cursors are properly
 | 
			
		||||
  gc-managed.
 | 
			
		||||
 | 
			
		||||
* fixes to the async core.
 | 
			
		||||
| 
						 | 
				
			
			@ -839,7 +839,7 @@ What's new in psycopg 1.99.8
 | 
			
		|||
* now cursors support .fileno() and .isready() methods, to be used in
 | 
			
		||||
  select() calls.
 | 
			
		||||
* .copy_from() and .copy_in() methods are back in (still using the old
 | 
			
		||||
  protocol, will be updated to use new one in next releasae.)
 | 
			
		||||
  protocol, will be updated to use new one in next release.)
 | 
			
		||||
* fixed memory corruption bug reported on win32 platform.
 | 
			
		||||
 | 
			
		||||
What's new in psycopg 1.99.7
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -23,7 +23,7 @@ Date: 	23 Oct 2001 09:53:11 +0600
 | 
			
		|||
 | 
			
		||||
We use psycopg and psycopg zope adapter since fisrt public
 | 
			
		||||
release (it seems version 0.4). Now it works on 3 our sites and in intranet
 | 
			
		||||
applications. We had few problems, but all problems were quckly
 | 
			
		||||
applications. We had few problems, but all problems were quickly
 | 
			
		||||
solved. The strong side of psycopg is that it's code is well organized
 | 
			
		||||
and easy to understand. When I found a problem with non-ISO datestyle in first
 | 
			
		||||
version of psycopg, it took for me 15 or 20 minutes to learn code and
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -255,7 +255,7 @@ Cursor Objects
 | 
			
		|||
            display_size, internal_size, precision, scale,
 | 
			
		||||
            null_ok). The first two items (name and type_code) are
 | 
			
		||||
            mandatory, the other five are optional and must be set to
 | 
			
		||||
            None if meaningfull values are not provided.
 | 
			
		||||
            None if meaningful values are not provided.
 | 
			
		||||
 | 
			
		||||
            This attribute will be None for operations that
 | 
			
		||||
            do not return rows or if the cursor has not had an
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -678,7 +678,7 @@ The ``connection`` class
 | 
			
		|||
 | 
			
		||||
        Return one of the constants defined in :ref:`poll-constants`. If it
 | 
			
		||||
        returns `~psycopg2.extensions.POLL_OK` then the connection has been
 | 
			
		||||
        estabilished or the query results are available on the client.
 | 
			
		||||
        established or the query results are available on the client.
 | 
			
		||||
        Otherwise wait until the file descriptor returned by `fileno()` is
 | 
			
		||||
        ready to read or to write, as explained in :ref:`async-support`.
 | 
			
		||||
        `poll()` should be also used by the function installed by
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,7 +25,7 @@ functionalities defined by the |DBAPI|_.
 | 
			
		|||
 | 
			
		||||
.. class:: cursor(conn, name=None)
 | 
			
		||||
 | 
			
		||||
    It is the class usually returnded by the `connection.cursor()`
 | 
			
		||||
    It is the class usually returned by the `connection.cursor()`
 | 
			
		||||
    method. It is exposed by the `extensions` module in order to allow
 | 
			
		||||
    subclassing to extend its behaviour: the subclass should be passed to the
 | 
			
		||||
    `!cursor()` method using the `cursor_factory` parameter. See
 | 
			
		||||
| 
						 | 
				
			
			@ -427,7 +427,7 @@ The module exports a few exceptions in addition to the :ref:`standard ones
 | 
			
		|||
 | 
			
		||||
    (subclasses `~psycopg2.OperationalError`)
 | 
			
		||||
 | 
			
		||||
    Error causing transaction rollback (deadlocks, serialisation failures,
 | 
			
		||||
    Error causing transaction rollback (deadlocks, serialization failures,
 | 
			
		||||
    etc).  It can be trapped specifically to detect a deadlock.
 | 
			
		||||
 | 
			
		||||
    .. versionadded:: 2.0.7
 | 
			
		||||
| 
						 | 
				
			
			@ -515,7 +515,7 @@ set to one of the following constants:
 | 
			
		|||
    :sql:`SERIALIZABLE` isolation level. This is the strictest transactions
 | 
			
		||||
    isolation level, equivalent to having the transactions executed serially
 | 
			
		||||
    rather than concurrently. However applications using this level must be
 | 
			
		||||
    prepared to retry reansactions due to serialization failures.
 | 
			
		||||
    prepared to retry transactions due to serialization failures.
 | 
			
		||||
 | 
			
		||||
    Starting from PostgreSQL 9.1, this mode monitors for conditions which
 | 
			
		||||
    could make execution of a concurrent set of serializable transactions
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -41,7 +41,7 @@ If you want to use a `!connection` subclass you can pass it as the
 | 
			
		|||
Dictionary-like cursor
 | 
			
		||||
^^^^^^^^^^^^^^^^^^^^^^
 | 
			
		||||
 | 
			
		||||
The dict cursors allow to access to the retrieved records using an iterface
 | 
			
		||||
The dict cursors allow to access to the retrieved records using an interface
 | 
			
		||||
similar to the Python dictionaries instead of the tuples.
 | 
			
		||||
 | 
			
		||||
    >>> dict_cur = conn.cursor(cursor_factory=psycopg2.extras.DictCursor)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -121,7 +121,7 @@ Psycopg converts :sql:`decimal`\/\ :sql:`numeric` database types into Python `!D
 | 
			
		|||
        psycopg2.extensions.register_type(DEC2FLOAT)
 | 
			
		||||
 | 
			
		||||
    See :ref:`type-casting-from-sql-to-python` to read the relevant
 | 
			
		||||
    documentation. If you find `!psycopg2.extensions.DECIMAL` not avalable, use
 | 
			
		||||
    documentation. If you find `!psycopg2.extensions.DECIMAL` not available, use
 | 
			
		||||
    `!psycopg2._psycopg.DECIMAL` instead.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -311,7 +311,7 @@ converted into `!Decimal`.
 | 
			
		|||
.. note::
 | 
			
		||||
 | 
			
		||||
    Sometimes you may prefer to receive :sql:`numeric` data as `!float`
 | 
			
		||||
    insted, for performance reason or ease of manipulation: you can configure
 | 
			
		||||
    instead, for performance reason or ease of manipulation: you can configure
 | 
			
		||||
    an adapter to :ref:`cast PostgreSQL numeric to Python float <faq-float>`.
 | 
			
		||||
    This of course may imply a loss of precision.
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -79,7 +79,7 @@ for row in curs.fetchall():
 | 
			
		|||
    print "done"
 | 
			
		||||
    print "  python type of image data is", type(row[0])
 | 
			
		||||
    
 | 
			
		||||
# this rollback is required because we can't drop a table with a binary cusor
 | 
			
		||||
# this rollback is required because we can't drop a table with a binary cursor
 | 
			
		||||
# declared and still open
 | 
			
		||||
conn.rollback()
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,4 @@
 | 
			
		|||
# encoding.py - show to change client enkoding (and test it works)
 | 
			
		||||
# encoding.py - show to change client encoding (and test it works)
 | 
			
		||||
# -*- encoding: utf8 -*-
 | 
			
		||||
#
 | 
			
		||||
# Copyright (C) 2004-2010 Federico Di Gregorio  <fog@debian.org>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -82,7 +82,7 @@ STATUS_SYNC     = 3  # currently unused
 | 
			
		|||
STATUS_ASYNC    = 4  # currently unused
 | 
			
		||||
STATUS_PREPARED = 5
 | 
			
		||||
 | 
			
		||||
# This is a usefull mnemonic to check if the connection is in a transaction
 | 
			
		||||
# This is a useful mnemonic to check if the connection is in a transaction
 | 
			
		||||
STATUS_IN_TRANSACTION = STATUS_BEGIN
 | 
			
		||||
 | 
			
		||||
"""psycopg asynchronous connection polling values"""
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
"""Miscellaneous goodies for psycopg2
 | 
			
		||||
 | 
			
		||||
This module is a generic place used to hold little helper functions
 | 
			
		||||
and classes untill a better place in the distribution is found.
 | 
			
		||||
and classes until a better place in the distribution is found.
 | 
			
		||||
"""
 | 
			
		||||
# psycopg/extras.py - miscellaneous extra goodies for psycopg
 | 
			
		||||
#
 | 
			
		||||
| 
						 | 
				
			
			@ -131,7 +131,7 @@ class DictCursor(DictCursorBase):
 | 
			
		|||
            self._query_executed = 0
 | 
			
		||||
 | 
			
		||||
class DictRow(list):
 | 
			
		||||
    """A row object that allow by-colmun-name access to data."""
 | 
			
		||||
    """A row object that allow by-column-name access to data."""
 | 
			
		||||
 | 
			
		||||
    __slots__ = ('_index',)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -406,7 +406,7 @@ class MinTimeLoggingConnection(LoggingConnection):
 | 
			
		|||
 | 
			
		||||
    This is just an example of how to sub-class `LoggingConnection` to
 | 
			
		||||
    provide some extra filtering for the logged queries. Both the
 | 
			
		||||
    `inizialize()` and `filter()` methods are overwritten to make sure
 | 
			
		||||
    `initialize()` and `filter()` methods are overwritten to make sure
 | 
			
		||||
    that only queries executing for more than ``mintime`` ms are logged.
 | 
			
		||||
 | 
			
		||||
    Note that this connection uses the specialized cursor
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -45,7 +45,7 @@ typedef struct {
 | 
			
		|||
HIDDEN PyObject *psyco_Binary(PyObject *module, PyObject *args);
 | 
			
		||||
#define psyco_Binary_doc \
 | 
			
		||||
    "Binary(buffer) -> new binary object\n\n" \
 | 
			
		||||
    "Build an object capable to hold a bynary string value."
 | 
			
		||||
    "Build an object capable to hold a binary string value."
 | 
			
		||||
 | 
			
		||||
#ifdef __cplusplus
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -226,7 +226,7 @@ conn_get_standard_conforming_strings(PGconn *pgconn)
 | 
			
		|||
     * The presence of the 'standard_conforming_strings' parameter
 | 
			
		||||
     * means that the server _accepts_ the E'' quote.
 | 
			
		||||
     *
 | 
			
		||||
     * If the paramer is off, the PQescapeByteaConn returns
 | 
			
		||||
     * If the parameter is off, the PQescapeByteaConn returns
 | 
			
		||||
     * backslash escaped strings (e.g. '\001' -> "\\001"),
 | 
			
		||||
     * so the E'' quotes are required to avoid warnings
 | 
			
		||||
     * if 'escape_string_warning' is set.
 | 
			
		||||
| 
						 | 
				
			
			@ -1177,7 +1177,7 @@ conn_set_client_encoding(connectionObject *self, const char *enc)
 | 
			
		|||
        goto endlock;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /* no error, we can proceeed and store the new encoding */
 | 
			
		||||
    /* no error, we can proceed and store the new encoding */
 | 
			
		||||
    {
 | 
			
		||||
        char *tmp = self->encoding;
 | 
			
		||||
        self->encoding = clean_enc;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -109,7 +109,7 @@ _mogrify(PyObject *var, PyObject *fmt, cursorObject *curs, PyObject **new)
 | 
			
		|||
        /* if we find '%(' then this is a dictionary, we:
 | 
			
		||||
           1/ find the matching ')' and extract the key name
 | 
			
		||||
           2/ locate the value in the dictionary (or return an error)
 | 
			
		||||
           3/ mogrify the value into something usefull (quoting)...
 | 
			
		||||
           3/ mogrify the value into something useful (quoting)...
 | 
			
		||||
           4/ ...and add it to the new dictionary to be used as argument
 | 
			
		||||
        */
 | 
			
		||||
        case '(':
 | 
			
		||||
| 
						 | 
				
			
			@ -314,7 +314,7 @@ _psyco_curs_merge_query_args(cursorObject *self,
 | 
			
		|||
           "not all arguments converted"
 | 
			
		||||
 | 
			
		||||
       and return the appropriate ProgrammingError. we do that by grabbing
 | 
			
		||||
       the curren exception (we will later restore it if the type or the
 | 
			
		||||
       the current exception (we will later restore it if the type or the
 | 
			
		||||
       strings do not match.) */
 | 
			
		||||
 | 
			
		||||
    if (!(fquery = Bytes_Format(query, args))) {
 | 
			
		||||
| 
						 | 
				
			
			@ -1822,7 +1822,7 @@ cursor_setup(cursorObject *self, connectionObject *conn, const char *name)
 | 
			
		|||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /* FIXME: why does this raise an excpetion on the _next_ line of code?
 | 
			
		||||
    /* FIXME: why does this raise an exception on the _next_ line of code?
 | 
			
		||||
    if (PyObject_IsInstance((PyObject*)conn,
 | 
			
		||||
                             (PyObject *)&connectionType) == 0) {
 | 
			
		||||
        PyErr_SetString(PyExc_TypeError,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,4 @@
 | 
			
		|||
/* microporotocols_proto.h - definiton for psycopg's protocols
 | 
			
		||||
/* microporotocols_proto.h - definition for psycopg's protocols
 | 
			
		||||
 *
 | 
			
		||||
 * Copyright (C) 2003-2010 Federico Di Gregorio <fog@debian.org>
 | 
			
		||||
 *
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,7 +25,7 @@
 | 
			
		|||
 | 
			
		||||
/* IMPORTANT NOTE: no function in this file do its own connection locking
 | 
			
		||||
   except for pg_execute and pq_fetch (that are somehow high-level). This means
 | 
			
		||||
   that all the othe functions should be called while holding a lock to the
 | 
			
		||||
   that all the other functions should be called while holding a lock to the
 | 
			
		||||
   connection.
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -153,7 +153,7 @@ exception_from_sqlstate(const char *sqlstate)
 | 
			
		|||
   This function should be called while holding the GIL.
 | 
			
		||||
 | 
			
		||||
   The function passes the ownership of the pgres to the returned exception,
 | 
			
		||||
   wherer the pgres was the explicit argument or taken from the cursor.
 | 
			
		||||
   where the pgres was the explicit argument or taken from the cursor.
 | 
			
		||||
   So, after calling it curs->pgres will be set to null */
 | 
			
		||||
 | 
			
		||||
RAISES static void
 | 
			
		||||
| 
						 | 
				
			
			@ -781,7 +781,7 @@ exit:
 | 
			
		|||
   means that there is data available to be collected. -1 means an error, the
 | 
			
		||||
   exception will be set accordingly.
 | 
			
		||||
 | 
			
		||||
   this fucntion locks the connection object
 | 
			
		||||
   this function locks the connection object
 | 
			
		||||
   this function call Py_*_ALLOW_THREADS macros */
 | 
			
		||||
 | 
			
		||||
int
 | 
			
		||||
| 
						 | 
				
			
			@ -974,7 +974,7 @@ pq_execute(cursorObject *curs, const char *query, int async, int no_result)
 | 
			
		|||
    /* if the execute was sync, we call pq_fetch() immediately,
 | 
			
		||||
       to respect the old DBAPI-2.0 compatible behaviour */
 | 
			
		||||
    if (async == 0) {
 | 
			
		||||
        Dprintf("pq_execute: entering syncronous DBAPI compatibility mode");
 | 
			
		||||
        Dprintf("pq_execute: entering synchronous DBAPI compatibility mode");
 | 
			
		||||
        if (pq_fetch(curs, no_result) < 0) return -1;
 | 
			
		||||
    }
 | 
			
		||||
    else {
 | 
			
		||||
| 
						 | 
				
			
			@ -1041,7 +1041,7 @@ pq_get_last_result(connectionObject *conn)
 | 
			
		|||
 | 
			
		||||
/* pq_fetch - fetch data after a query
 | 
			
		||||
 | 
			
		||||
   this fucntion locks the connection object
 | 
			
		||||
   this function locks the connection object
 | 
			
		||||
   this function call Py_*_ALLOW_THREADS macros
 | 
			
		||||
 | 
			
		||||
   return value:
 | 
			
		||||
| 
						 | 
				
			
			@ -1335,7 +1335,7 @@ _pq_copy_in_v3(cursorObject *curs)
 | 
			
		|||
    else if (error == 2)
 | 
			
		||||
        res = PQputCopyEnd(curs->conn->pgconn, "error in PQputCopyData() call");
 | 
			
		||||
    else
 | 
			
		||||
        /* XXX would be nice to propagate the exeption */
 | 
			
		||||
        /* XXX would be nice to propagate the exception */
 | 
			
		||||
        res = PQputCopyEnd(curs->conn->pgconn, "error in .read() call");
 | 
			
		||||
 | 
			
		||||
    CLEARPGRES(curs->pgres);
 | 
			
		||||
| 
						 | 
				
			
			@ -1343,7 +1343,7 @@ _pq_copy_in_v3(cursorObject *curs)
 | 
			
		|||
    Dprintf("_pq_copy_in_v3: copy ended; res = %d", res);
 | 
			
		||||
 | 
			
		||||
    /* if the result is -1 we should not even try to get a result from the
 | 
			
		||||
       bacause that will lock the current thread forever */
 | 
			
		||||
       because that will lock the current thread forever */
 | 
			
		||||
    if (res == -1) {
 | 
			
		||||
        pq_raise(curs->conn, curs, NULL);
 | 
			
		||||
        /* FIXME: pq_raise check the connection but for some reason even
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -59,7 +59,7 @@ extern "C" {
 | 
			
		|||
HIDDEN psyco_errors_fill_RETURN psyco_errors_fill psyco_errors_fill_PROTO;
 | 
			
		||||
HIDDEN psyco_errors_set_RETURN psyco_errors_set psyco_errors_set_PROTO;
 | 
			
		||||
 | 
			
		||||
/* global excpetions */
 | 
			
		||||
/* global exceptions */
 | 
			
		||||
extern HIDDEN PyObject *Error, *Warning, *InterfaceError, *DatabaseError,
 | 
			
		||||
    *InternalError, *OperationalError, *ProgrammingError,
 | 
			
		||||
    *IntegrityError, *DataError, *NotSupportedError;
 | 
			
		||||
| 
						 | 
				
			
			@ -169,7 +169,7 @@ STEALS(1) HIDDEN PyObject * psycopg_ensure_text(PyObject *obj);
 | 
			
		|||
"Error related to SQL query cancellation."
 | 
			
		||||
 | 
			
		||||
#define TransactionRollbackError_doc \
 | 
			
		||||
"Error causing transaction rollback (deadlocks, serialisation failures, etc)."
 | 
			
		||||
"Error causing transaction rollback (deadlocks, serialization failures, etc)."
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#ifdef __cplusplus
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -437,7 +437,7 @@ static struct {
 | 
			
		|||
static int
 | 
			
		||||
psyco_errors_init(void)
 | 
			
		||||
{
 | 
			
		||||
    /* the names of the exceptions here reflect the oranization of the
 | 
			
		||||
    /* the names of the exceptions here reflect the organization of the
 | 
			
		||||
       psycopg2 module and not the fact the the original error objects
 | 
			
		||||
       live in _psycopg */
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -61,7 +61,7 @@ chunk_getreadbuffer(chunkObject *self, Py_ssize_t segment, void **ptr)
 | 
			
		|||
    if (segment != 0)
 | 
			
		||||
    {
 | 
			
		||||
        PyErr_SetString(PyExc_SystemError,
 | 
			
		||||
                        "acessing non-existant buffer segment");
 | 
			
		||||
                        "accessing non-existant buffer segment");
 | 
			
		||||
        return -1;
 | 
			
		||||
    }
 | 
			
		||||
    *ptr = self->base;
 | 
			
		||||
| 
						 | 
				
			
			@ -160,7 +160,7 @@ typecast_BINARY_cast(const char *s, Py_ssize_t l, PyObject *curs)
 | 
			
		|||
    }
 | 
			
		||||
    else {
 | 
			
		||||
        /* This is a buffer in the classic bytea format. So we can handle it
 | 
			
		||||
         * to the PQunescapeBytea to have it parsed, rignt? ...Wrong. We
 | 
			
		||||
         * to the PQunescapeBytea to have it parsed, right? ...Wrong. We
 | 
			
		||||
         * could, but then we'd have to record whether buffer was allocated by
 | 
			
		||||
         * Python or by the libpq to dispose it properly. Furthermore the
 | 
			
		||||
         * PQunescapeBytea interface is not the most brilliant as it wants a
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -74,7 +74,7 @@ typecastObject_initlist typecast_builtins[] = {
 | 
			
		|||
FOOTER = """    {NULL, NULL, NULL, NULL}\n};\n"""
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# usefull error reporting function
 | 
			
		||||
# useful error reporting function
 | 
			
		||||
def error(msg):
 | 
			
		||||
    """Report an error on stderr."""
 | 
			
		||||
    sys.stderr.write(msg+'\n')
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -28,5 +28,5 @@ have_ssl=0
 | 
			
		|||
# Statically link against the postgresql client library.
 | 
			
		||||
#static_libpq=1
 | 
			
		||||
 | 
			
		||||
# Add here eventual extra libreries required to link the module.
 | 
			
		||||
# Add here eventual extra libraries required to link the module.
 | 
			
		||||
#libraries=
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										6
									
								
								setup.py
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								setup.py
									
									
									
									
									
								
							| 
						 | 
				
			
			@ -21,7 +21,7 @@ and stable as a rock.
 | 
			
		|||
psycopg2 is different from the other database adapter because it was
 | 
			
		||||
designed for heavily multi-threaded applications that create and destroy
 | 
			
		||||
lots of cursors and make a conspicuous number of concurrent INSERTs or
 | 
			
		||||
UPDATEs. psycopg2 also provide full asycronous operations and support
 | 
			
		||||
UPDATEs. psycopg2 also provide full asynchronous operations and support
 | 
			
		||||
for coroutine libraries.
 | 
			
		||||
"""
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -216,7 +216,7 @@ or with the pg_config option in 'setup.cfg'.
 | 
			
		|||
class psycopg_build_ext(build_ext):
 | 
			
		||||
    """Conditionally complement the setup.cfg options file.
 | 
			
		||||
 | 
			
		||||
    This class configures the include_dirs, libray_dirs, libraries
 | 
			
		||||
    This class configures the include_dirs, library_dirs, libraries
 | 
			
		||||
    options as required by the system. Most of the configuration happens
 | 
			
		||||
    in finalize_options() method.
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -368,7 +368,7 @@ class psycopg_build_ext(build_ext):
 | 
			
		|||
    finalize_linux3 = finalize_linux
 | 
			
		||||
 | 
			
		||||
    def finalize_options(self):
 | 
			
		||||
        """Complete the build system configuation."""
 | 
			
		||||
        """Complete the build system configuration."""
 | 
			
		||||
        build_ext.finalize_options(self)
 | 
			
		||||
 | 
			
		||||
        pg_config_helper = PostgresConfig(self)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -60,7 +60,7 @@ import sys
 | 
			
		|||
# - Now a subclass of TestCase, to avoid requiring the driver stub
 | 
			
		||||
#   to use multiple inheritance
 | 
			
		||||
# - Reversed the polarity of buggy test in test_description
 | 
			
		||||
# - Test exception heirarchy correctly
 | 
			
		||||
# - Test exception hierarchy correctly
 | 
			
		||||
# - self.populate is now self._populate(), so if a driver stub
 | 
			
		||||
#   overrides self.ddl1 this change propogates
 | 
			
		||||
# - VARCHAR columns now have a width, which will hopefully make the
 | 
			
		||||
| 
						 | 
				
			
			@ -188,7 +188,7 @@ class DatabaseAPI20Test(unittest.TestCase):
 | 
			
		|||
 | 
			
		||||
    def test_Exceptions(self):
 | 
			
		||||
        # Make sure required exceptions exist, and are in the
 | 
			
		||||
        # defined heirarchy.
 | 
			
		||||
        # defined hierarchy.
 | 
			
		||||
        if sys.version[0] == '3': #under Python 3 StardardError no longer exists
 | 
			
		||||
            self.failUnless(issubclass(self.driver.Warning,Exception))
 | 
			
		||||
            self.failUnless(issubclass(self.driver.Error,Exception))
 | 
			
		||||
| 
						 | 
				
			
			@ -504,7 +504,7 @@ class DatabaseAPI20Test(unittest.TestCase):
 | 
			
		|||
            self.assertRaises(self.driver.Error,cur.fetchone)
 | 
			
		||||
 | 
			
		||||
            # cursor.fetchone should raise an Error if called after
 | 
			
		||||
            # executing a query that cannnot return rows
 | 
			
		||||
            # executing a query that cannot return rows
 | 
			
		||||
            self.executeDDL1(cur)
 | 
			
		||||
            self.assertRaises(self.driver.Error,cur.fetchone)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -516,7 +516,7 @@ class DatabaseAPI20Test(unittest.TestCase):
 | 
			
		|||
            self.failUnless(cur.rowcount in (-1,0))
 | 
			
		||||
 | 
			
		||||
            # cursor.fetchone should raise an Error if called after
 | 
			
		||||
            # executing a query that cannnot return rows
 | 
			
		||||
            # executing a query that cannot return rows
 | 
			
		||||
            cur.execute("insert into %sbooze values ('Victoria Bitter')" % (
 | 
			
		||||
                self.table_prefix
 | 
			
		||||
                ))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue
	
	Block a user