<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/python-packages/sqlalchemy.git/lib/sqlalchemy/dialects/postgresql, branch pr/132</title>
<subtitle>github.com: zzzeek/sqlalchemy.git
</subtitle>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/sqlalchemy.git/'/>
<entry>
<title>Changed pg8000 dialect to cope with native JSON</title>
<updated>2015-01-03T16:59:17+00:00</updated>
<author>
<name>Tony Locke</name>
<email>tlocke@tlocke.org.uk</email>
</author>
<published>2015-01-03T16:59:17+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/sqlalchemy.git/commit/?id=17e03a0ea86cd92816b4002a203b2b0b2c1a538a'/>
<id>17e03a0ea86cd92816b4002a203b2b0b2c1a538a</id>
<content type='text'>
For versions &gt; 1.10.1 pg8000 returns de-serialized JSON objects rather
than a string. SQL parameters are still strings though.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For versions &gt; 1.10.1 pg8000 returns de-serialized JSON objects rather
than a string. SQL parameters are still strings though.
</pre>
</div>
</content>
</entry>
<entry>
<title>Make pg8000 version detection more robust</title>
<updated>2014-12-16T21:03:04+00:00</updated>
<author>
<name>Tony Locke</name>
<email>tlocke@tlocke.org.uk</email>
</author>
<published>2014-08-24T14:15:17+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/sqlalchemy.git/commit/?id=c93706fa3319663234e3ab886b65f055bf9ed5da'/>
<id>c93706fa3319663234e3ab886b65f055bf9ed5da</id>
<content type='text'>
pg8000 uses Versioneer, which means that development versions have
version strings that don't fit into the dotted triple number format.
Released versions will always fit the triple format though.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
pg8000 uses Versioneer, which means that development versions have
version strings that don't fit into the dotted triple number format.
Released versions will always fit the triple format though.
</pre>
</div>
</content>
</entry>
<entry>
<title>pg8000 client_encoding in create_engine()</title>
<updated>2014-12-16T20:55:55+00:00</updated>
<author>
<name>Tony Locke</name>
<email>tlocke@tlocke.org.uk</email>
</author>
<published>2014-08-24T15:33:29+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/sqlalchemy.git/commit/?id=8038cfa0771ff860f48967a6800477ce8a508d65'/>
<id>8038cfa0771ff860f48967a6800477ce8a508d65</id>
<content type='text'>
The pg8000 dialect now supports the setting of the PostgreSQL parameter
client_encoding from create_engine().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The pg8000 dialect now supports the setting of the PostgreSQL parameter
client_encoding from create_engine().
</pre>
</div>
</content>
</entry>
<entry>
<title>- The :meth:`.PGDialect.has_table` method will now query against</title>
<updated>2014-12-04T17:01:19+00:00</updated>
<author>
<name>Mike Bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2014-12-04T17:01:19+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/sqlalchemy.git/commit/?id=87bfcf91e9659893f17adf307090bc0a4a8a8f23'/>
<id>87bfcf91e9659893f17adf307090bc0a4a8a8f23</id>
<content type='text'>
``pg_catalog.pg_table_is_visible(c.oid)``, rather than testing
for an exact schema match, when the schema name is None; this
so that the method will also illustrate that temporary tables
are present.  Note that this is a behavioral change, as Postgresql
allows a non-temporary table to silently overwrite an existing
temporary table of the same name, so this changes the behavior
of ``checkfirst`` in that unusual scenario.
fixes #3264
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
``pg_catalog.pg_table_is_visible(c.oid)``, rather than testing
for an exact schema match, when the schema name is None; this
so that the method will also illustrate that temporary tables
are present.  Note that this is a behavioral change, as Postgresql
allows a non-temporary table to silently overwrite an existing
temporary table of the same name, so this changes the behavior
of ``checkfirst`` in that unusual scenario.
fixes #3264
</pre>
</div>
</content>
</entry>
<entry>
<title>- in lieu of adding a new system of translating bound parameter names</title>
<updated>2014-11-10T22:58:09+00:00</updated>
<author>
<name>Mike Bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2014-11-10T22:58:09+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/sqlalchemy.git/commit/?id=21022f9760e32cf54d59eaccc12cc9e2fea1d37a'/>
<id>21022f9760e32cf54d59eaccc12cc9e2fea1d37a</id>
<content type='text'>
for psycopg2 and others, encourage users to take advantage of positional
styles by documenting "paramstyle".   A section is added to psycopg2
specifically as this is a pretty common spot for named parameters
that may be unusually named.  fixes #3246.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
for psycopg2 and others, encourage users to take advantage of positional
styles by documenting "paramstyle".   A section is added to psycopg2
specifically as this is a pretty common spot for named parameters
that may be unusually named.  fixes #3246.
</pre>
</div>
</content>
</entry>
<entry>
<title>- clean up unicode docs and clarify that client_encoding</title>
<updated>2014-10-07T18:06:46+00:00</updated>
<author>
<name>Mike Bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2014-10-07T18:06:46+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/sqlalchemy.git/commit/?id=c55d10940b1953fce2129e7bcfe1728bea33cd1d'/>
<id>c55d10940b1953fce2129e7bcfe1728bea33cd1d</id>
<content type='text'>
at the engine level is not the same thing as at the connect args
level.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
at the engine level is not the same thing as at the connect args
level.
</pre>
</div>
</content>
</entry>
<entry>
<title>- use provide_metadata for new unique constraint / index tests</title>
<updated>2014-10-04T23:06:35+00:00</updated>
<author>
<name>Mike Bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2014-10-04T22:57:01+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/sqlalchemy.git/commit/?id=b510b990947cb8e461df8877ca0f011542b7a319'/>
<id>b510b990947cb8e461df8877ca0f011542b7a319</id>
<content type='text'>
- add a test for PG reflection of unique index without any unique
constraint
- for PG, don't include 'duplicates_constraint' in the entry
if the index does not actually mirror a constraint
- use a distinct method for unique constraint reflection within table
- catch unique constraint not implemented condition; this may
be within some dialects and also is expected to be supported by
Alembic tests
- migration + changelogs for #3184
- add individual doc notes as well to MySQL, Postgreql
fixes #3184
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- add a test for PG reflection of unique index without any unique
constraint
- for PG, don't include 'duplicates_constraint' in the entry
if the index does not actually mirror a constraint
- use a distinct method for unique constraint reflection within table
- catch unique constraint not implemented condition; this may
be within some dialects and also is expected to be supported by
Alembic tests
- migration + changelogs for #3184
- add individual doc notes as well to MySQL, Postgreql
fixes #3184
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'reflect-unique-constraints' of https://bitbucket.org/jerdfelt/sqlalchemy into pr30</title>
<updated>2014-10-04T21:47:53+00:00</updated>
<author>
<name>Mike Bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2014-10-04T21:47:53+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/sqlalchemy.git/commit/?id=f7dee1380c40f3e73868a136aae5d18e976aa757'/>
<id>f7dee1380c40f3e73868a136aae5d18e976aa757</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>- A revisit to this issue first patched in 0.9.5, apparently</title>
<updated>2014-09-29T21:33:53+00:00</updated>
<author>
<name>Mike Bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2014-09-29T21:33:53+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/sqlalchemy.git/commit/?id=b6496ba3d28d685547eac2891bfea5f4ae60e834'/>
<id>b6496ba3d28d685547eac2891bfea5f4ae60e834</id>
<content type='text'>
psycopg2's ``.closed`` accessor is not as reliable as we assumed,
so we have added an explicit check for the exception messages
"SSL SYSCALL error: Bad file descriptor" and
"SSL SYSCALL error: EOF detected" when detecting an
is-disconnect scenario.   We will continue to consult psycopg2's
connection.closed as a first check.
fixes #3021
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
psycopg2's ``.closed`` accessor is not as reliable as we assumed,
so we have added an explicit check for the exception messages
"SSL SYSCALL error: Bad file descriptor" and
"SSL SYSCALL error: EOF detected" when detecting an
is-disconnect scenario.   We will continue to consult psycopg2's
connection.closed as a first check.
fixes #3021
</pre>
</div>
</content>
</entry>
<entry>
<title>Reflect unique constraints when reflecting a Table object</title>
<updated>2014-09-17T20:19:50+00:00</updated>
<author>
<name>Johannes Erdfelt</name>
<email>johannes@erdfelt.com</email>
</author>
<published>2014-09-10T14:37:59+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/python-packages/sqlalchemy.git/commit/?id=7fa21b22989f6d53ff70a8df71fc6d210c556e07'/>
<id>7fa21b22989f6d53ff70a8df71fc6d210c556e07</id>
<content type='text'>
Calls to reflect a table did not create any UniqueConstraint objects.
The reflection core made no calls to get_unique_constraints and as
a result, the sqlite dialect would never reflect any unique constraints.

MySQL transparently converts unique constraints into unique indexes, but
SQLAlchemy would reflect those as an Index object and as a
UniqueConstraint. The reflection core will now deduplicate the unique
constraints.

PostgreSQL would reflect unique constraints as an Index object and as
a UniqueConstraint object. The reflection core will now deduplicate
the unique indexes.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Calls to reflect a table did not create any UniqueConstraint objects.
The reflection core made no calls to get_unique_constraints and as
a result, the sqlite dialect would never reflect any unique constraints.

MySQL transparently converts unique constraints into unique indexes, but
SQLAlchemy would reflect those as an Index object and as a
UniqueConstraint. The reflection core will now deduplicate the unique
constraints.

PostgreSQL would reflect unique constraints as an Index object and as
a UniqueConstraint object. The reflection core will now deduplicate
the unique indexes.
</pre>
</div>
</content>
</entry>
</feed>
