Re: [sqlalchemy] Re: Python 3.1 + SQLAlchemy 0.6 or 0.7

2011-03-30 Thread Michael Bayer

On Mar 30, 2011, at 1:39 PM, Hans-Martin wrote:

> On Mar 30, 7:13 pm, Michael Bayer  wrote:
>> well its not going to work there either most likely since we don't support 
>> connecting without a hostname, probably.  You can't put "localhost" in there 
>> ?
> 
> Doesn't work either, same error. Adding my system username (and
> password) then throws errors from the Postgres backend.
> 
> I also installed pg8000 for the 0.6.6 + Py 2.7 setup and this gives
> the same error. With psycopg2, it works. Is there a reason that it
> would stop doing so in 3.2?

OK so its some artifact of the pg8000 dialect.  its nothing Python 3 related.



> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "sqlalchemy" group.
> To post to this group, send email to sqlalchemy@googlegroups.com.
> To unsubscribe from this group, send email to 
> sqlalchemy+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/sqlalchemy?hl=en.
> 

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com.
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en.



[sqlalchemy] Re: Python 3.1 + SQLAlchemy 0.6 or 0.7

2011-03-30 Thread Hans-Martin
On Mar 30, 7:13 pm, Michael Bayer  wrote:
> well its not going to work there either most likely since we don't support 
> connecting without a hostname, probably.  You can't put "localhost" in there ?

Doesn't work either, same error. Adding my system username (and
password) then throws errors from the Postgres backend.

I also installed pg8000 for the 0.6.6 + Py 2.7 setup and this gives
the same error. With psycopg2, it works. Is there a reason that it
would stop doing so in 3.2?

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com.
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en.



Re: [sqlalchemy] Re: Python 3.1 + SQLAlchemy 0.6 or 0.7

2011-03-30 Thread Michael Bayer
well its not going to work there either most likely since we don't support 
connecting without a hostname, probably.  You can't put "localhost" in there ?


On Mar 30, 2011, at 1:07 PM, Hans-Martin wrote:

>> you'd need an @ sign in there perhaps:
>> 
>> db://@/test
> 
> Same error. But no big deal, I can wait for psycopg2 support in Python
> 3.2.
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "sqlalchemy" group.
> To post to this group, send email to sqlalchemy@googlegroups.com.
> To unsubscribe from this group, send email to 
> sqlalchemy+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/sqlalchemy?hl=en.
> 

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com.
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en.



[sqlalchemy] Re: Python 3.1 + SQLAlchemy 0.6 or 0.7

2011-03-30 Thread Hans-Martin
> you'd need an @ sign in there perhaps:
>
> db://@/test

Same error. But no big deal, I can wait for psycopg2 support in Python
3.2.

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com.
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en.



Re: [sqlalchemy] Re: Python 3.1 + SQLAlchemy 0.6 or 0.7

2011-03-30 Thread Michael Bayer

On Mar 30, 2011, at 12:42 PM, Hans-Martin wrote:

> On Mar 30, 5:43 pm, Michael Bayer  wrote:
>> That's not an error I'm familiar with how to reproduce; it suggests an 
>> incorrect string passed to create_engine().   Working code with Python 3.2 
>> plus pg8000 looks like:
>> 
>> from sqlalchemy import create_engine
>> 
>> e = create_engine("postgresql+pg8000://scott:tiger@localhost/test")
>> print(e.execute("select 1").scalar())
> 
> That might be it -- I have the Postgres installation set up to work
> with 'ident sameuser' authentication, so after
> 
> e = create_engine("postgresql+pg8000:///test")
> 
> I get the same error as before.

you'd need an @ sign in there perhaps:

db://@/test


> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "sqlalchemy" group.
> To post to this group, send email to sqlalchemy@googlegroups.com.
> To unsubscribe from this group, send email to 
> sqlalchemy+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/sqlalchemy?hl=en.
> 

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com.
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en.



[sqlalchemy] Re: Python 3.1 + SQLAlchemy 0.6 or 0.7

2011-03-30 Thread Hans-Martin
On Mar 30, 5:43 pm, Michael Bayer  wrote:
> That's not an error I'm familiar with how to reproduce; it suggests an 
> incorrect string passed to create_engine().   Working code with Python 3.2 
> plus pg8000 looks like:
>
> from sqlalchemy import create_engine
>
> e = create_engine("postgresql+pg8000://scott:tiger@localhost/test")
> print(e.execute("select 1").scalar())

That might be it -- I have the Postgres installation set up to work
with 'ident sameuser' authentication, so after

e = create_engine("postgresql+pg8000:///test")

I get the same error as before.

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com.
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en.



Re: [sqlalchemy] Re: Python 3.1 + SQLAlchemy 0.6 or 0.7

2011-03-30 Thread Michael Bayer
That's not an error I'm familiar with how to reproduce; it suggests an 
incorrect string passed to create_engine().   Working code with Python 3.2 plus 
pg8000 looks like:

from sqlalchemy import create_engine

e = create_engine("postgresql+pg8000://scott:tiger@localhost/test")
print(e.execute("select 1").scalar())


Note that we're at 99.7% test success for Python 3.2 + pg8000, there's only 8 
failures which are basically platform-dependent issues with the tests 
themselves:

http://paste.pocoo.org/show/362703/





On Mar 30, 2011, at 11:13 AM, Hans-Martin wrote:

> Sorry, I was not expecting it to work, just trying to follow your
> suggestion.
> 
> SQLAlchemy Dev snapshot + pg8000 from 
> http://pybrary.net/pg8000/dist/pg8000-py3-1.08.tar.gz
> throws this error:
> 
> Traceback (most recent call last):
>  File "set_meta_info_levels_0_1.py", line 60, in 
>set_up_schemata()
>  File " src/library/db_connect.py", line 64, in set_up_schemata
>if s not in existing_schemata():
>  File " src/library/db_connect.py", line 60, in existing_schemata
>tmp = session.execute("""SELECT schema_name FROM
> information_schema.schemata;""")
>  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/orm/session.py", line 758, in execute
>return self._connection_for_bind(bind,
> close_with_result=True).execute(
>  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/orm/session.py", line 694, in _connection_for_bind
>return self.transaction._connection_for_bind(engine)
>  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/orm/session.py", line 246, in _connection_for_bind
>conn = bind.contextual_connect()
>  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/engine/base.py", line 2062, in contextual_connect
>self.pool.connect(),
>  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/pool.py", line 208, in connect
>return _ConnectionFairy(self).checkout()
>  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/pool.py", line 369, in __init__
>rec = self._connection_record = pool._do_get()
>  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/pool.py", line 695, in _do_get
>con = self._create_connection()
>  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/pool.py", line 173, in _create_connection
>return _ConnectionRecord(self)
>  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/pool.py", line 254, in __init__
>self.connection = self.__connect()
>  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/pool.py", line 314, in __connect
>connection = self.__pool._creator()
>  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/engine/strategies.py", line 84, in connect
>e, dialect.dbapi.Error) from e
> sqlalchemy.exc.DBAPIError: (TypeError) connect() takes at least 1
> argument (1 given) None None
> 
> 
> I have a working setup with 2.7 + 0.6.6, but would like to port it to
> 3.2 relatively soon -- if I can help trying out things, just let me
> know.
> 
> Best wishes,
> Hans-Martin
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "sqlalchemy" group.
> To post to this group, send email to sqlalchemy@googlegroups.com.
> To unsubscribe from this group, send email to 
> sqlalchemy+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/sqlalchemy?hl=en.
> 

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com.
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en.



[sqlalchemy] Re: Python 3.1 + SQLAlchemy 0.6 or 0.7

2011-03-30 Thread Hans-Martin
Sorry, I was not expecting it to work, just trying to follow your
suggestion.

SQLAlchemy Dev snapshot + pg8000 from 
http://pybrary.net/pg8000/dist/pg8000-py3-1.08.tar.gz
throws this error:

Traceback (most recent call last):
  File "set_meta_info_levels_0_1.py", line 60, in 
set_up_schemata()
  File " src/library/db_connect.py", line 64, in set_up_schemata
if s not in existing_schemata():
  File " src/library/db_connect.py", line 60, in existing_schemata
tmp = session.execute("""SELECT schema_name FROM
information_schema.schemata;""")
  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/orm/session.py", line 758, in execute
return self._connection_for_bind(bind,
close_with_result=True).execute(
  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/orm/session.py", line 694, in _connection_for_bind
return self.transaction._connection_for_bind(engine)
  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/orm/session.py", line 246, in _connection_for_bind
conn = bind.contextual_connect()
  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/engine/base.py", line 2062, in contextual_connect
self.pool.connect(),
  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/pool.py", line 208, in connect
return _ConnectionFairy(self).checkout()
  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/pool.py", line 369, in __init__
rec = self._connection_record = pool._do_get()
  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/pool.py", line 695, in _do_get
con = self._create_connection()
  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/pool.py", line 173, in _create_connection
return _ConnectionRecord(self)
  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/pool.py", line 254, in __init__
self.connection = self.__connect()
  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/pool.py", line 314, in __connect
connection = self.__pool._creator()
  File " lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/engine/strategies.py", line 84, in connect
e, dialect.dbapi.Error) from e
sqlalchemy.exc.DBAPIError: (TypeError) connect() takes at least 1
argument (1 given) None None


I have a working setup with 2.7 + 0.6.6, but would like to port it to
3.2 relatively soon -- if I can help trying out things, just let me
know.

Best wishes,
Hans-Martin

-- 
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com.
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en.



Re: [sqlalchemy] Re: Python 3.1 + SQLAlchemy 0.6 or 0.7

2011-03-30 Thread Michael Bayer

On Mar 30, 2011, at 8:31 AM, Hans-Martin wrote:

>> On Mar 21, 3:31 pm, Michael Bayer  wrote:
>> 
>>> Yeah psycopg2 with python 3 / sqlalchemy is not supported yet.  The python 
>>> 3 supported version of psycopg2 came out like, in the past two weeks.It 
>>> will be 0.7 where its supported at all, hopefully soon as its a matter of 
>>> setting up some flags in the dialects. In the meantime if you want to 
>>> start working with pg + SQLA + py3k you can try the python 3 version of 
>>> pg8000 - its not as nice or anywhere near as fast as psycopg2 but it works 
>>> in at least a rudimentary fashion.
>> 
>>> Also Python 3.2 is the latest version of py3k and actually has some fairly 
>>> dramatic behavioral differences vs. 3.1.   If you want to work with 3.2 and 
>>> let us know what quirks you find...
> 
> Below is one (Python 3.2, sqlalchemy 0.7b4 (downloaded snapshot 10min
> ago), Debian). Best wishes, Hans-Martin

As I said, psycopg2 does not work *at all* yet, with SQLAlchemy plus any Python 
3 version - the dialect has not been ported, so the issue below is just a 
rudimentary Python 3 issue.   You'd need to use pg8000 for the time being, 
which was ported at least a year ago.




> 
> Traceback (most recent call last):
>  File "src/library/db_connect.py", line 60, in existing_schemata
>tmp = session.execute("""SELECT schema_name from
> information_schema.schemata;""")
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/orm/session.py", line 758, in execute
>return self._connection_for_bind(bind,
> close_with_result=True).execute(
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/orm/session.py", line 694, in _connection_for_bind
>return self.transaction._connection_for_bind(engine)
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/orm/session.py", line 246, in _connection_for_bind
>conn = bind.contextual_connect()
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/engine/base.py", line 2062, in contextual_connect
>self.pool.connect(),
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/pool.py", line 208, in connect
>return _ConnectionFairy(self).checkout()
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/pool.py", line 369, in __init__
>rec = self._connection_record = pool._do_get()
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/pool.py", line 695, in _do_get
>con = self._create_connection()
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/pool.py", line 173, in _create_connection
>return _ConnectionRecord(self)
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/pool.py", line 257, in __init__
>pool.dispatch.first_connect.exec_once(self.connection, self)
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/event.py", line 227, in exec_once
>self(*args, **kw)
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/event.py", line 236, in __call__
>fn(*args, **kw)
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/engine/strategies.py", line 162, in first_connect
>dialect.initialize(c)
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/dialects/postgresql/base.py", line 793, in initialize
>super(PGDialect, self).initialize(connection)
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/engine/default.py", line 171, in initialize
>self._get_server_version_info(connection)
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/dialects/postgresql/base.py", line 964, in
> _get_server_version_info
>v = connection.execute("select version()").scalar()
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/engine/base.py", line 1259, in execute
>params)
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/engine/base.py", line 1436, in _execute_text
>statement, parameters
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/engine/base.py", line 1519, in _execute_context
>result = context.get_result_proxy()
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/dialects/postgresql/psycopg2.py", line 198, in
> get_result_proxy
>return base.ResultProxy(self)
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/engine/base.py", line 2420, in __init__
>self._init_metadata()
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/engine/base.py", line 2427, in _init_metadata
>self._metadata = ResultMetaData(self, metadata)
>  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
> sqlalchemy/engine/base.py", line 2

[sqlalchemy] Re: Python 3.1 + SQLAlchemy 0.6 or 0.7

2011-03-30 Thread Hans-Martin
> On Mar 21, 3:31 pm, Michael Bayer  wrote:
>
> > Yeah psycopg2 with python 3 / sqlalchemy is not supported yet.  The python 
> > 3 supported version of psycopg2 came out like, in the past two weeks.    It 
> > will be 0.7 where its supported at all, hopefully soon as its a matter of 
> > setting up some flags in the dialects.     In the meantime if you want to 
> > start working with pg + SQLA + py3k you can try the python 3 version of 
> > pg8000 - its not as nice or anywhere near as fast as psycopg2 but it works 
> > in at least a rudimentary fashion.
>
> > Also Python 3.2 is the latest version of py3k and actually has some fairly 
> > dramatic behavioral differences vs. 3.1.   If you want to work with 3.2 and 
> > let us know what quirks you find...

Below is one (Python 3.2, sqlalchemy 0.7b4 (downloaded snapshot 10min
ago), Debian). Best wishes, Hans-Martin

Traceback (most recent call last):
  File "src/library/db_connect.py", line 60, in existing_schemata
tmp = session.execute("""SELECT schema_name from
information_schema.schemata;""")
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/orm/session.py", line 758, in execute
return self._connection_for_bind(bind,
close_with_result=True).execute(
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/orm/session.py", line 694, in _connection_for_bind
return self.transaction._connection_for_bind(engine)
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/orm/session.py", line 246, in _connection_for_bind
conn = bind.contextual_connect()
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/engine/base.py", line 2062, in contextual_connect
self.pool.connect(),
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/pool.py", line 208, in connect
return _ConnectionFairy(self).checkout()
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/pool.py", line 369, in __init__
rec = self._connection_record = pool._do_get()
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/pool.py", line 695, in _do_get
con = self._create_connection()
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/pool.py", line 173, in _create_connection
return _ConnectionRecord(self)
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/pool.py", line 257, in __init__
pool.dispatch.first_connect.exec_once(self.connection, self)
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/event.py", line 227, in exec_once
self(*args, **kw)
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/event.py", line 236, in __call__
fn(*args, **kw)
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/engine/strategies.py", line 162, in first_connect
dialect.initialize(c)
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/dialects/postgresql/base.py", line 793, in initialize
super(PGDialect, self).initialize(connection)
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/engine/default.py", line 171, in initialize
self._get_server_version_info(connection)
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/dialects/postgresql/base.py", line 964, in
_get_server_version_info
v = connection.execute("select version()").scalar()
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/engine/base.py", line 1259, in execute
params)
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/engine/base.py", line 1436, in _execute_text
statement, parameters
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/engine/base.py", line 1519, in _execute_context
result = context.get_result_proxy()
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/dialects/postgresql/psycopg2.py", line 198, in
get_result_proxy
return base.ResultProxy(self)
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/engine/base.py", line 2420, in __init__
self._init_metadata()
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/engine/base.py", line 2427, in _init_metadata
self._metadata = ResultMetaData(self, metadata)
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/engine/base.py", line 2283, in __init__
colname = dialect._description_decoder(colname)
  File "lib/python3.2/site-packages/SQLAlchemy-0.7b4dev-py3.2.egg/
sqlalchemy/processors.py", line 69, in process
return decoder(value, errors)[0]
  File "lib/python3.2/encodings/utf_8.py", line 16, in decode
return codecs.utf_8_decode(input, errors, True)
TypeError: 'str' does not support the buffer interface

-- 
You received this message because you are s

[sqlalchemy] Re: Python 3.1 + SQLAlchemy 0.6 or 0.7

2011-03-21 Thread ddarko
Everything is clear - so wait for 0.7 finall.
Meanwhile, would use pg8000. Pity that does not support pgarray :/
thx

On Mar 21, 3:31 pm, Michael Bayer  wrote:
> Yeah psycopg2 with python 3 / sqlalchemy is not supported yet.  The python 3 
> supported version of psycopg2 came out like, in the past two weeks.    It 
> will be 0.7 where its supported at all, hopefully soon as its a matter of 
> setting up some flags in the dialects.     In the meantime if you want to 
> start working with pg + SQLA + py3k you can try the python 3 version of 
> pg8000 - its not as nice or anywhere near as fast as psycopg2 but it works in 
> at least a rudimentary fashion.
>
> Also Python 3.2 is the latest version of py3k and actually has some fairly 
> dramatic behavioral differences vs. 3.1.   If you want to work with 3.2 and 
> let us know what quirks you find...
>
> On Mar 21, 2011, at 10:02 AM, ddarko wrote:
>
>
>
>
>
>
>
> > Python 3.1
> > SQLAlchemy 0.6.6  (and tested with 0.7b3)
> > psycopg2 2.4
> > postgresql 8.4
>
> > Has anyone tested this configuration?
>
> > psycopg2 alone work for me great, but in spite of installing the
> > current version of SQLAlchemy accordance with the instructions
> > README.py3k connection is not working properly:
>
> > print(db.execute("select count(*) from news;").fetchall())
>
> > $ python _test_sqlalchemy.py
> > Traceback (most recent call last):
> >  File "/usr/local/lib/python3.1/dist-packages/SQLAlchemy-0.7b3dev-
> > py3.1.egg/sqlalchemy/pool.py", line 671, in _do_get
> >    return self._pool.get(wait, self._timeout)
> >  File "/usr/local/lib/python3.1/dist-packages/SQLAlchemy-0.7b3dev-
> > py3.1.egg/sqlalchemy/util/queue.py", line 137, in get
> >    raise Empty
> > sqlalchemy.util.queue.Empty
>
> > During handling of the above exception, another exception occurred:
>
> > Traceback (most recent call last):
> >  File "_test_sqlalchemy.py", line 12, in 
> >    print(db.execute("select count(*) from news;").fetchall())
> >  File "/home//lib/db_model.py", line 28, in execute
> >    return dbs.execute(a)
> >  File "/usr/local/lib/python3.1/dist-packages/SQLAlchemy-0.7b3dev-
> > py3.1.egg/sqlalchemy/orm/scoping.py", line 113, in do
> >    return getattr(self.registry(), name)(*args, **kwargs)
> >  File "/usr/local/lib/python3.1/dist-packages/SQLAlchemy-0.7b3dev-
> > py3.1.egg/sqlalchemy/orm/session.py", line 758, in execute
> >    return self._connection_for_bind(bind,
> > close_with_result=True).execute(
> >  File "/usr/local/lib/python3.1/dist-packages/SQLAlchemy-0.7b3dev-
> > py3.1.egg/sqlalchemy/orm/session.py", line 694, in
> > _connection_for_bind
> >    return self.transaction._connection_for_bind(engine)
> >  File "/usr/local/lib/python3.1/dist-packages/SQLAlchemy-0.7b3dev-
> > py3.1.egg/sqlalchemy/orm/session.py", line 246, in
> > _connection_for_bind
> >    conn = bind.contextual_connect()
> >  File "/usr/local/lib/python3.1/dist-packages/SQLAlchemy-0.7b3dev-
> > py3.1.egg/sqlalchemy/engine/base.py", line 2062, in contextual_connect
> >    self.pool.connect(),
> >  File "/usr/local/lib/python3.1/dist-packages/SQLAlchemy-0.7b3dev-
> > py3.1.egg/sqlalchemy/pool.py", line 208, in connect
> >    return _ConnectionFairy(self).checkout()
> >  File "/usr/local/lib/python3.1/dist-packages/SQLAlchemy-0.7b3dev-
> > py3.1.egg/sqlalchemy/pool.py", line 369, in __init__
> >    rec = self._connection_record = pool._do_get()
> >  File "/usr/local/lib/python3.1/dist-packages/SQLAlchemy-0.7b3dev-
> > py3.1.egg/sqlalchemy/pool.py", line 693, in _do_get
> >    con = self._create_connection()
> >  File "/usr/local/lib/python3.1/dist-packages/SQLAlchemy-0.7b3dev-
> > py3.1.egg/sqlalchemy/pool.py", line 173, in _create_connection
> >    return _ConnectionRecord(self)
> >  File "/usr/local/lib/python3.1/dist-packages/SQLAlchemy-0.7b3dev-
> > py3.1.egg/sqlalchemy/pool.py", line 257, in __init__
> >    pool.dispatch.first_connect.exec_once(self.connection, self)
> >  File "/usr/local/lib/python3.1/dist-packages/SQLAlchemy-0.7b3dev-
> > py3.1.egg/sqlalchemy/event.py", line 227, in exec_once
> >    self(*args, **kw)
> >  File "/usr/local/lib/python3.1/dist-packages/SQLAlchemy-0.7b3dev-
> > py3.1.egg/sqlalchemy/event.py", line 236, in __call__
> >    fn(*args, **kw)
> >  File "/usr/local/lib/python3.1/dist-packages/SQLAlchemy-0.7b3dev-
> > py3.1.egg/sqlalchemy/engine/strategies.py", line 162, in first_connect
> >    dialect.initialize(c)
> >  File "/usr/local/lib/python3.1/dist-packages/SQLAlchemy-0.7b3dev-
> > py3.1.egg/sqlalchemy/dialects/postgresql/base.py", line 793, in
> > initialize
> >    super(PGDialect, self).initialize(connection)
> >  File "/usr/local/lib/python3.1/dist-packages/SQLAlchemy-0.7b3dev-
> > py3.1.egg/sqlalchemy/engine/default.py", line 171, in initialize
> >    self._get_server_version_info(connection)
> >  File "/usr/local/lib/python3.1/dist-packages/SQLAlchemy-0.7b3dev-
> > py3.1.egg/sqlalchemy/dialects/postgresql/base.py", line 964, in
> > _get_server_version_info
> >    v =