<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/python-packages/sqlalchemy.git/test/dialect, branch pr/65</title>
<subtitle>github.com: zzzeek/sqlalchemy.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/'/>
<entry>
<title>SQLite dialect - support relection from affinity</title>
<updated>2014-02-04T00:55:00+00:00</updated>
<author>
<name>Erich Blume</name>
<email>blume.erich@gmail.com</email>
</author>
<published>2014-02-04T00:55:00+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=e47f99450378a7b1ea29a8493c0692bcf8669da3'/>
<id>e47f99450378a7b1ea29a8493c0692bcf8669da3</id>
<content type='text'>
SQLite allows column types that aren't technically understood in sqlite
by using 'data affinity', which is an algorithm for converting column
types in to some sort of useful type that can be stored and retrieved
from the db. Unfortunatly, this breaks reflection since we (previously)
expected a sqlite db to reflect column types that we permit in the
`ischema_names` for that dialect.

This patch changes the logic for 'unknown' column types during
reflection to instead run through SQLite's data affinity algorithm, and
assigns appropriate types from that.

It also expands the matching for column type to include column types
with spaces (strongly discouraged but allowed by sqlite) and also
completely empty column types (in which case the NullType is assigned,
which sqlite will treat as a Blob - or rather, Blob is treated as
NullType). These changes mean that SQLite will never raise an error for
an unknown type during reflection - there will always be some 'useful'
type returned, which follows the spirit of SQLite (accomodation before
sanity!).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
SQLite allows column types that aren't technically understood in sqlite
by using 'data affinity', which is an algorithm for converting column
types in to some sort of useful type that can be stored and retrieved
from the db. Unfortunatly, this breaks reflection since we (previously)
expected a sqlite db to reflect column types that we permit in the
`ischema_names` for that dialect.

This patch changes the logic for 'unknown' column types during
reflection to instead run through SQLite's data affinity algorithm, and
assigns appropriate types from that.

It also expands the matching for column type to include column types
with spaces (strongly discouraged but allowed by sqlite) and also
completely empty column types (in which case the NullType is assigned,
which sqlite will treat as a Blob - or rather, Blob is treated as
NullType). These changes mean that SQLite will never raise an error for
an unknown type during reflection - there will always be some 'useful'
type returned, which follows the spirit of SQLite (accomodation before
sanity!).
</pre>
</div>
</content>
</entry>
<entry>
<title>Support mssql_clustered option on UniqueConstraint (plus docs and test)</title>
<updated>2014-01-16T21:46:16+00:00</updated>
<author>
<name>donkopotamus</name>
<email>derek.harland@finq.co.nz</email>
</author>
<published>2014-01-16T21:46:16+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=35935489608c6a896790ed0c51c3ea4b4eb6186f'/>
<id>35935489608c6a896790ed0c51c3ea4b4eb6186f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove support for mssql_clustered on Table</title>
<updated>2014-01-16T21:38:31+00:00</updated>
<author>
<name>donkopotamus</name>
<email>derek.harland@finq.co.nz</email>
</author>
<published>2014-01-16T21:38:31+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=1de7259093b1a49438ab26ca9661fd6023244afe'/>
<id>1de7259093b1a49438ab26ca9661fd6023244afe</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Support mssql_clustered option in mssql dialect for both Table and PrimaryKeyConstraint</title>
<updated>2014-01-13T23:44:05+00:00</updated>
<author>
<name>donkopotamus</name>
<email>derek.harland@finq.co.nz</email>
</author>
<published>2014-01-13T23:44:05+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=40563e9355f4dd2e677d65b37a2e40dfb0f8ff31'/>
<id>40563e9355f4dd2e677d65b37a2e40dfb0f8ff31</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>- The MySQL CAST compilation now takes into account aspects of a string</title>
<updated>2014-01-13T19:05:05+00:00</updated>
<author>
<name>Mike Bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2014-01-13T19:05:05+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=1536bc4664a248faf81c62326fe1be3dbe18b8cd'/>
<id>1536bc4664a248faf81c62326fe1be3dbe18b8cd</id>
<content type='text'>
type such as "charset" and "collation".  While MySQL wants all character-
based CAST calls to use the CHAR type, we now create a real CHAR
object at CAST time and copy over all the parameters it has, so that
an expression like ``cast(x, mysql.TEXT(charset='utf8'))`` will
render ``CAST(t.col AS CHAR CHARACTER SET utf8)``.

- Added new "unicode returns" detection to the MySQL dialect and
to the default dialect system overall, such that any dialect
can add extra "tests" to the on-first-connect "does this DBAPI
return unicode directly?" detection. In this case, we are
adding a check specifically against the "utf8" encoding with
an explicit "utf8_bin" collation type (after checking that
this collation is available) to test for some buggy unicode
behavior observed with MySQLdb version 1.2.3.  While MySQLdb
has resolved this issue as of 1.2.4, the check here should
guard against regressions.  The change also allows the "unicode"
checks to log in the engine logs, which was not previously
the case. [ticket:2906]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
type such as "charset" and "collation".  While MySQL wants all character-
based CAST calls to use the CHAR type, we now create a real CHAR
object at CAST time and copy over all the parameters it has, so that
an expression like ``cast(x, mysql.TEXT(charset='utf8'))`` will
render ``CAST(t.col AS CHAR CHARACTER SET utf8)``.

- Added new "unicode returns" detection to the MySQL dialect and
to the default dialect system overall, such that any dialect
can add extra "tests" to the on-first-connect "does this DBAPI
return unicode directly?" detection. In this case, we are
adding a check specifically against the "utf8" encoding with
an explicit "utf8_bin" collation type (after checking that
this collation is available) to test for some buggy unicode
behavior observed with MySQLdb version 1.2.3.  While MySQLdb
has resolved this issue as of 1.2.4, the check here should
guard against regressions.  The change also allows the "unicode"
checks to log in the engine logs, which was not previously
the case. [ticket:2906]
</pre>
</div>
</content>
</entry>
<entry>
<title>- support addition of fails_if()/only_on(), just wraps the decorators</title>
<updated>2014-01-02T19:23:14+00:00</updated>
<author>
<name>Mike Bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2014-01-02T19:23:14+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=4b923d37bdfdb44d9a3e74aed08e2726e14c3b19'/>
<id>4b923d37bdfdb44d9a3e74aed08e2726e14c3b19</id>
<content type='text'>
- update a few exclusions to support current pymssql.  passes all of test_suite and dialect/mssql
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- update a few exclusions to support current pymssql.  passes all of test_suite and dialect/mssql
</pre>
</div>
</content>
</entry>
<entry>
<title>- rework the JSON expression system so that "astext" is called *after*</title>
<updated>2013-12-27T23:25:57+00:00</updated>
<author>
<name>Mike Bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2013-12-27T23:25:57+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=2104d0ba2d612a26d363a3049d5e49efe4284e15'/>
<id>2104d0ba2d612a26d363a3049d5e49efe4284e15</id>
<content type='text'>
the indexing.  this is for more natural operation.
- also add cast() to the JSON expression to complement astext. This integrates
the CAST call which will be needed frequently.  Part of [ticket:2687].
- it's a little unclear how more advanced unicode attribute-access is going to go,
some quick attempts at testing yielded strange error messages from psycopg2.
- do other cross linking as mentioned in [ticket:2687].
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
the indexing.  this is for more natural operation.
- also add cast() to the JSON expression to complement astext. This integrates
the CAST call which will be needed frequently.  Part of [ticket:2687].
- it's a little unclear how more advanced unicode attribute-access is going to go,
some quick attempts at testing yielded strange error messages from psycopg2.
- do other cross linking as mentioned in [ticket:2687].
</pre>
</div>
</content>
</entry>
<entry>
<title>- The firebird dialect will quote identifiers which begin with an</title>
<updated>2013-12-27T18:40:27+00:00</updated>
<author>
<name>Mike Bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2013-12-27T18:40:27+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=92a1426c06c49f5b3db8cc41afe0ed92e8631972'/>
<id>92a1426c06c49f5b3db8cc41afe0ed92e8631972</id>
<content type='text'>
underscore.  Courtesy Treeve Jelbert. [ticket:2897]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
underscore.  Courtesy Treeve Jelbert. [ticket:2897]
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #51 from sontek/pymssql_handle_terminated_connection</title>
<updated>2013-12-27T16:12:05+00:00</updated>
<author>
<name>mike bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2013-12-27T16:12:05+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=69876ada92c8c6629b9f96d77ab5c515e21fb050'/>
<id>69876ada92c8c6629b9f96d77ab5c515e21fb050</id>
<content type='text'>
Remove terminated connections from the pool.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Remove terminated connections from the pool.</pre>
</div>
</content>
</entry>
<entry>
<title>remove print</title>
<updated>2013-12-19T21:07:35+00:00</updated>
<author>
<name>Mike Bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2013-12-19T21:07:35+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=5402e2f5dde680ea5715f81a2e6c3ccf7274afeb'/>
<id>5402e2f5dde680ea5715f81a2e6c3ccf7274afeb</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
