sqlobject-cvs Mailing List for SQLObject (Page 130)
SQLObject is a Python ORM.
Brought to you by:
ianbicking,
phd
You can subscribe to this list here.
| 2003 |
Jan
|
Feb
|
Mar
(9) |
Apr
(74) |
May
(29) |
Jun
(16) |
Jul
(28) |
Aug
(10) |
Sep
(57) |
Oct
(9) |
Nov
(29) |
Dec
(12) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2004 |
Jan
(7) |
Feb
(14) |
Mar
(6) |
Apr
(3) |
May
(12) |
Jun
(34) |
Jul
(9) |
Aug
(29) |
Sep
(22) |
Oct
(2) |
Nov
(15) |
Dec
(52) |
| 2005 |
Jan
(47) |
Feb
(78) |
Mar
(14) |
Apr
(35) |
May
(33) |
Jun
(16) |
Jul
(26) |
Aug
(63) |
Sep
(40) |
Oct
(96) |
Nov
(96) |
Dec
(123) |
| 2006 |
Jan
(159) |
Feb
(144) |
Mar
(64) |
Apr
(31) |
May
(88) |
Jun
(48) |
Jul
(16) |
Aug
(64) |
Sep
(87) |
Oct
(92) |
Nov
(56) |
Dec
(76) |
| 2007 |
Jan
(94) |
Feb
(103) |
Mar
(126) |
Apr
(123) |
May
(85) |
Jun
(11) |
Jul
(130) |
Aug
(47) |
Sep
(65) |
Oct
(70) |
Nov
(12) |
Dec
(11) |
| 2008 |
Jan
(30) |
Feb
(55) |
Mar
(88) |
Apr
(20) |
May
(50) |
Jun
|
Jul
(38) |
Aug
(1) |
Sep
(9) |
Oct
(5) |
Nov
(6) |
Dec
(39) |
| 2009 |
Jan
(8) |
Feb
(16) |
Mar
(3) |
Apr
(33) |
May
(44) |
Jun
(1) |
Jul
(10) |
Aug
(33) |
Sep
(74) |
Oct
(22) |
Nov
|
Dec
(15) |
| 2010 |
Jan
(28) |
Feb
(22) |
Mar
(46) |
Apr
(29) |
May
(1) |
Jun
(1) |
Jul
(27) |
Aug
(8) |
Sep
(5) |
Oct
(33) |
Nov
(24) |
Dec
(41) |
| 2011 |
Jan
(4) |
Feb
(12) |
Mar
(35) |
Apr
(29) |
May
(19) |
Jun
(16) |
Jul
(32) |
Aug
(25) |
Sep
(5) |
Oct
(11) |
Nov
(21) |
Dec
(12) |
| 2012 |
Jan
(3) |
Feb
(4) |
Mar
(20) |
Apr
(4) |
May
(25) |
Jun
(13) |
Jul
|
Aug
|
Sep
(2) |
Oct
(25) |
Nov
(9) |
Dec
(1) |
| 2013 |
Jan
(6) |
Feb
(8) |
Mar
|
Apr
(10) |
May
(31) |
Jun
(7) |
Jul
(18) |
Aug
(33) |
Sep
(4) |
Oct
(16) |
Nov
|
Dec
(27) |
| 2014 |
Jan
(2) |
Feb
|
Mar
|
Apr
(11) |
May
(39) |
Jun
(8) |
Jul
(11) |
Aug
(4) |
Sep
|
Oct
(27) |
Nov
|
Dec
(71) |
| 2015 |
Jan
(17) |
Feb
(47) |
Mar
(33) |
Apr
|
May
|
Jun
(9) |
Jul
(7) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(8) |
| 2016 |
Jan
(4) |
Feb
(4) |
Mar
|
Apr
|
May
(12) |
Jun
(7) |
Jul
(9) |
Aug
(31) |
Sep
(8) |
Oct
(3) |
Nov
(15) |
Dec
(1) |
| 2017 |
Jan
(13) |
Feb
(7) |
Mar
(14) |
Apr
(8) |
May
(10) |
Jun
(4) |
Jul
(2) |
Aug
(1) |
Sep
|
Oct
(8) |
Nov
(4) |
Dec
(5) |
| 2018 |
Jan
(2) |
Feb
(8) |
Mar
|
Apr
(4) |
May
|
Jun
(6) |
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2019 |
Jan
(1) |
Feb
(16) |
Mar
(1) |
Apr
(3) |
May
(5) |
Jun
(1) |
Jul
|
Aug
|
Sep
(2) |
Oct
|
Nov
(1) |
Dec
(3) |
| 2020 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(1) |
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
(2) |
Nov
|
Dec
(2) |
| 2021 |
Jan
|
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(1) |
Dec
|
| 2022 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(6) |
Oct
(1) |
Nov
(1) |
Dec
(4) |
| 2023 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(3) |
Sep
(2) |
Oct
(2) |
Nov
(4) |
Dec
|
| 2024 |
Jan
|
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
(9) |
| 2025 |
Jan
|
Feb
(4) |
Mar
(2) |
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
(2) |
Dec
(2) |
|
From: <sub...@co...> - 2006-05-09 17:07:59
|
Author: ianb
Date: 2006-05-09 11:07:53 -0600 (Tue, 09 May 2006)
New Revision: 1762
Modified:
SQLObject/trunk/sqlobject/manager/command.py
Log:
merged 1760:1761 from 0.7-bugfix branch
Modified: SQLObject/trunk/sqlobject/manager/command.py
===================================================================
--- SQLObject/trunk/sqlobject/manager/command.py 2006-05-09 17:06:33 UTC (rev 1761)
+++ SQLObject/trunk/sqlobject/manager/command.py 2006-05-09 17:07:53 UTC (rev 1762)
@@ -553,7 +553,13 @@
if (self.options.create_db
and soClass._connection not in dbs_created):
if not self.options.simulate:
- soClass._connection.createEmptyDatabase()
+ try:
+ soClass._connection.createEmptyDatabase()
+ except soClass._connection.module.ProgrammingError, e:
+ if str(e).find('already exists') != -1:
+ print 'Database already exists'
+ else:
+ raise
else:
print '(simulating; cannot create database)'
dbs_created.append(soClass._connection)
|
|
From: <sub...@co...> - 2006-05-09 17:06:43
|
Author: ianb
Date: 2006-05-09 11:06:33 -0600 (Tue, 09 May 2006)
New Revision: 1761
Modified:
SQLObject/branches/0.7-bugfix/sqlobject/manager/command.py
Log:
Ignore error in sqlobject --create-db when database already exists
Modified: SQLObject/branches/0.7-bugfix/sqlobject/manager/command.py
===================================================================
--- SQLObject/branches/0.7-bugfix/sqlobject/manager/command.py 2006-05-09 16:37:31 UTC (rev 1760)
+++ SQLObject/branches/0.7-bugfix/sqlobject/manager/command.py 2006-05-09 17:06:33 UTC (rev 1761)
@@ -543,7 +543,13 @@
if (self.options.create_db
and soClass._connection not in dbs_created):
if not self.options.simulate:
- soClass._connection.createEmptyDatabase()
+ try:
+ soClass._connection.createEmptyDatabase()
+ except soClass._connection.module.ProgrammingError, e:
+ if str(e).find('already exists') != -1:
+ print 'Database already exists'
+ else:
+ raise
else:
print '(simulating; cannot create database)'
dbs_created.append(soClass._connection)
|
|
From: <sub...@co...> - 2006-05-09 16:37:35
|
Author: phd
Date: 2006-05-09 10:37:31 -0600 (Tue, 09 May 2006)
New Revision: 1760
Modified:
home/phd/SQLObject/paramstyles/sqlobject/declarative.py
Log:
Merged patches from the revisions 1757:1759 from the trunk: a patch by David Creemer <da...@za...>: release the lock even after an exception to prevent deadlocks.
Modified: home/phd/SQLObject/paramstyles/sqlobject/declarative.py
===================================================================
--- home/phd/SQLObject/paramstyles/sqlobject/declarative.py 2006-05-09 16:35:34 UTC (rev 1759)
+++ home/phd/SQLObject/paramstyles/sqlobject/declarative.py 2006-05-09 16:37:31 UTC (rev 1760)
@@ -90,9 +90,10 @@
def decorator(fn):
def _wrapper(self, *args, **kwargs):
lock.acquire()
- return_value = fn(self, *args, **kwargs)
- lock.release()
- return return_value
+ try:
+ return fn(self, *args, **kwargs)
+ finally:
+ lock.release()
try:
_wrapper.func_name = fn.func_name
except TypeError:
|
|
From: <sub...@co...> - 2006-05-09 16:35:41
|
Author: phd
Date: 2006-05-09 10:35:34 -0600 (Tue, 09 May 2006)
New Revision: 1759
Modified:
SQLObject/branches/0.7-bugfix/sqlobject/declarative.py
Log:
A patch by David Creemer <da...@za...>: release the lock
even after an exception to prevent deadlocks.
Modified: SQLObject/branches/0.7-bugfix/sqlobject/declarative.py
===================================================================
--- SQLObject/branches/0.7-bugfix/sqlobject/declarative.py 2006-05-09 16:35:14 UTC (rev 1758)
+++ SQLObject/branches/0.7-bugfix/sqlobject/declarative.py 2006-05-09 16:35:34 UTC (rev 1759)
@@ -89,9 +89,10 @@
def decorator(fn):
def _wrapper(self, *args, **kwargs):
lock.acquire()
- return_value = fn(self, *args, **kwargs)
- lock.release()
- return return_value
+ try:
+ return fn(self, *args, **kwargs)
+ finally:
+ lock.release()
try:
_wrapper.func_name = fn.func_name
except TypeError:
|
|
From: <sub...@co...> - 2006-05-09 16:35:26
|
Author: phd
Date: 2006-05-09 10:35:14 -0600 (Tue, 09 May 2006)
New Revision: 1758
Modified:
SQLObject/trunk/sqlobject/declarative.py
Log:
A patch by David Creemer <da...@za...>: release the lock
even after an exception to prevent deadlocks.
Modified: SQLObject/trunk/sqlobject/declarative.py
===================================================================
--- SQLObject/trunk/sqlobject/declarative.py 2006-05-09 14:12:45 UTC (rev 1757)
+++ SQLObject/trunk/sqlobject/declarative.py 2006-05-09 16:35:14 UTC (rev 1758)
@@ -90,9 +90,10 @@
def decorator(fn):
def _wrapper(self, *args, **kwargs):
lock.acquire()
- return_value = fn(self, *args, **kwargs)
- lock.release()
- return return_value
+ try:
+ return fn(self, *args, **kwargs)
+ finally:
+ lock.release()
try:
_wrapper.func_name = fn.func_name
except TypeError:
|
|
From: <sub...@co...> - 2006-05-09 14:12:51
|
Author: phd
Date: 2006-05-09 08:12:45 -0600 (Tue, 09 May 2006)
New Revision: 1757
Modified:
home/phd/SQLObject/paramstyles/sqlobject/joins.py
Log:
Merged patches from the revisions 1754:1756 from the trunk: a patch by michelts <mic...@gm...>: Select over RelatedJoin.
Modified: home/phd/SQLObject/paramstyles/sqlobject/joins.py
===================================================================
--- home/phd/SQLObject/paramstyles/sqlobject/joins.py 2006-05-09 14:10:54 UTC (rev 1756)
+++ home/phd/SQLObject/paramstyles/sqlobject/joins.py 2006-05-09 14:12:45 UTC (rev 1757)
@@ -227,36 +227,52 @@
class RelatedJoin(MultipleJoin):
baseClass = SORelatedJoin
+# helper classes to SQLRelatedJoin
+class OtherTableToJoin(sqlbuilder.SQLExpression):
+ def __init__(self, otherTable, otherIdName, interTable, joinColumn):
+ self.otherTable = otherTable
+ self.otherIdName = otherIdName
+ self.interTable = interTable
+ self.joinColumn = joinColumn
+
+ def __sqlrepr__(self, db):
+ return '%s.%s = %s.%s' % (self.otherTable, self.otherIdName, self.interTable, self.joinColumn)
+
+class JoinToTable(sqlbuilder.SQLExpression):
+ def __init__(self, table, idName, interTable, joinColumn):
+ self.table = table
+ self.idName = idName
+ self.interTable = interTable
+ self.joinColumn = joinColumn
+
+ def __sqlrepr__(self, db):
+ return '%s.%s = %s.%s' % (self.interTable, self.joinColumn, self.table, self.idName)
+
+class TableToId(sqlbuilder.SQLExpression):
+ def __init__(self, table, idName, idValue):
+ self.table = table
+ self.idName = idName
+ self.idValue = idValue
+
+ def __sqlrepr__(self, db):
+ return '%s.%s = %s' % (self.table, self.idName, self.idValue)
+
class SOSQLRelatedJoin(SORelatedJoin):
def performJoin(self, inst):
- options={
- 'otherTable' : self.otherClass.sqlmeta.table,
- 'otherID' : self.otherClass.sqlmeta.idName,
- 'interTable' : self.intermediateTable,
- 'table' : self.soClass.sqlmeta.table,
- 'ID' : self.soClass.sqlmeta.idName,
- 'joinCol' : self.joinColumn,
- 'otherCol' : self.otherColumn,
- 'idValue' : inst.id,
- }
- clause = '''\
-%(otherTable)s.%(otherID)s = %(interTable)s.%(otherCol)s and
-%(interTable)s.%(joinCol)s = %(table)s.%(ID)s and
-%(table)s.%(ID)s = %(idValue)s''' % options
- if inst.sqlmeta._perConnection:
- conn = inst._connection
- else:
- conn = None
- results = self.otherClass.select(sqlbuilder.SQLConstant(clause),
- clauseTables=(
- options['table'],
- options['otherTable'],
- options['interTable'],
+ results = self.otherClass.select(sqlbuilder.AND(
+ OtherTableToJoin(
+ self.otherClass.sqlmeta.table, self.otherClass.sqlmeta.idName,
+ self.intermediateTable, self.otherColumn
),
- connection=conn
- )
- # TODO (michelts): apply orderBy on the selection
- return results
+ JoinToTable(
+ self.soClass.sqlmeta.table, self.soClass.sqlmeta.idName,
+ self.intermediateTable, self.joinColumn
+ ),
+ TableToId(self.soClass.sqlmeta.table, self.soClass.sqlmeta.idName, inst.id),
+ ), clauseTables=(self.soClass.sqlmeta.table, self.otherClass.sqlmeta.table, self.intermediateTable))
+ if self.orderBy is NoDefault:
+ self.orderBy = self.otherClass.sqlmeta.defaultOrder
+ return results.orderBy(self.orderBy)
class SQLRelatedJoin(RelatedJoin):
baseClass = SOSQLRelatedJoin
@@ -392,7 +408,7 @@
def __getattr__(self, attr):
# @@: This passes through private variable access too... should it?
# Also magic methods, like __str__
- return getattr(self, select, attr)
+ return getattr(self.select, attr)
def __repr__(self):
return '<%s for: %s>' % (self.__class__.__name__, repr(self.select))
|
|
From: <sub...@co...> - 2006-05-09 14:11:02
|
Author: phd
Date: 2006-05-09 08:10:54 -0600 (Tue, 09 May 2006)
New Revision: 1756
Modified:
SQLObject/branches/0.7-bugfix/sqlobject/joins.py
Log:
A patch by michelts <mic...@gm...>: Select over RelatedJoin.
Modified: SQLObject/branches/0.7-bugfix/sqlobject/joins.py
===================================================================
--- SQLObject/branches/0.7-bugfix/sqlobject/joins.py 2006-05-09 14:10:36 UTC (rev 1755)
+++ SQLObject/branches/0.7-bugfix/sqlobject/joins.py 2006-05-09 14:10:54 UTC (rev 1756)
@@ -225,36 +225,52 @@
class RelatedJoin(MultipleJoin):
baseClass = SORelatedJoin
+# helper classes to SQLRelatedJoin
+class OtherTableToJoin(sqlbuilder.SQLExpression):
+ def __init__(self, otherTable, otherIdName, interTable, joinColumn):
+ self.otherTable = otherTable
+ self.otherIdName = otherIdName
+ self.interTable = interTable
+ self.joinColumn = joinColumn
+
+ def __sqlrepr__(self, db):
+ return '%s.%s = %s.%s' % (self.otherTable, self.otherIdName, self.interTable, self.joinColumn)
+
+class JoinToTable(sqlbuilder.SQLExpression):
+ def __init__(self, table, idName, interTable, joinColumn):
+ self.table = table
+ self.idName = idName
+ self.interTable = interTable
+ self.joinColumn = joinColumn
+
+ def __sqlrepr__(self, db):
+ return '%s.%s = %s.%s' % (self.interTable, self.joinColumn, self.table, self.idName)
+
+class TableToId(sqlbuilder.SQLExpression):
+ def __init__(self, table, idName, idValue):
+ self.table = table
+ self.idName = idName
+ self.idValue = idValue
+
+ def __sqlrepr__(self, db):
+ return '%s.%s = %s' % (self.table, self.idName, self.idValue)
+
class SOSQLRelatedJoin(SORelatedJoin):
def performJoin(self, inst):
- options={
- 'otherTable' : self.otherClass.sqlmeta.table,
- 'otherID' : self.otherClass.sqlmeta.idName,
- 'interTable' : self.intermediateTable,
- 'table' : self.soClass.sqlmeta.table,
- 'ID' : self.soClass.sqlmeta.idName,
- 'joinCol' : self.joinColumn,
- 'otherCol' : self.otherColumn,
- 'idValue' : inst.id,
- }
- clause = '''\
-%(otherTable)s.%(otherID)s = %(interTable)s.%(otherCol)s and
-%(interTable)s.%(joinCol)s = %(table)s.%(ID)s and
-%(table)s.%(ID)s = %(idValue)s''' % options
- if inst.sqlmeta._perConnection:
- conn = inst._connection
- else:
- conn = None
- results = self.otherClass.select(sqlbuilder.SQLConstant(clause),
- clauseTables=(
- options['table'],
- options['otherTable'],
- options['interTable'],
+ results = self.otherClass.select(sqlbuilder.AND(
+ OtherTableToJoin(
+ self.otherClass.sqlmeta.table, self.otherClass.sqlmeta.idName,
+ self.intermediateTable, self.otherColumn
),
- connection=conn
- )
- # TODO (michelts): apply orderBy on the selection
- return results
+ JoinToTable(
+ self.soClass.sqlmeta.table, self.soClass.sqlmeta.idName,
+ self.intermediateTable, self.joinColumn
+ ),
+ TableToId(self.soClass.sqlmeta.table, self.soClass.sqlmeta.idName, inst.id),
+ ), clauseTables=(self.soClass.sqlmeta.table, self.otherClass.sqlmeta.table, self.intermediateTable))
+ if self.orderBy is NoDefault:
+ self.orderBy = self.otherClass.sqlmeta.defaultOrder
+ return results.orderBy(self.orderBy)
class SQLRelatedJoin(RelatedJoin):
baseClass = SOSQLRelatedJoin
|
|
From: <sub...@co...> - 2006-05-09 14:10:41
|
Author: phd
Date: 2006-05-09 08:10:36 -0600 (Tue, 09 May 2006)
New Revision: 1755
Modified:
SQLObject/trunk/sqlobject/joins.py
Log:
A patch by michelts <mic...@gm...>: Select over RelatedJoin.
Modified: SQLObject/trunk/sqlobject/joins.py
===================================================================
--- SQLObject/trunk/sqlobject/joins.py 2006-05-09 13:52:10 UTC (rev 1754)
+++ SQLObject/trunk/sqlobject/joins.py 2006-05-09 14:10:36 UTC (rev 1755)
@@ -227,36 +227,52 @@
class RelatedJoin(MultipleJoin):
baseClass = SORelatedJoin
+# helper classes to SQLRelatedJoin
+class OtherTableToJoin(sqlbuilder.SQLExpression):
+ def __init__(self, otherTable, otherIdName, interTable, joinColumn):
+ self.otherTable = otherTable
+ self.otherIdName = otherIdName
+ self.interTable = interTable
+ self.joinColumn = joinColumn
+
+ def __sqlrepr__(self, db):
+ return '%s.%s = %s.%s' % (self.otherTable, self.otherIdName, self.interTable, self.joinColumn)
+
+class JoinToTable(sqlbuilder.SQLExpression):
+ def __init__(self, table, idName, interTable, joinColumn):
+ self.table = table
+ self.idName = idName
+ self.interTable = interTable
+ self.joinColumn = joinColumn
+
+ def __sqlrepr__(self, db):
+ return '%s.%s = %s.%s' % (self.interTable, self.joinColumn, self.table, self.idName)
+
+class TableToId(sqlbuilder.SQLExpression):
+ def __init__(self, table, idName, idValue):
+ self.table = table
+ self.idName = idName
+ self.idValue = idValue
+
+ def __sqlrepr__(self, db):
+ return '%s.%s = %s' % (self.table, self.idName, self.idValue)
+
class SOSQLRelatedJoin(SORelatedJoin):
def performJoin(self, inst):
- options={
- 'otherTable' : self.otherClass.sqlmeta.table,
- 'otherID' : self.otherClass.sqlmeta.idName,
- 'interTable' : self.intermediateTable,
- 'table' : self.soClass.sqlmeta.table,
- 'ID' : self.soClass.sqlmeta.idName,
- 'joinCol' : self.joinColumn,
- 'otherCol' : self.otherColumn,
- 'idValue' : inst.id,
- }
- clause = '''\
-%(otherTable)s.%(otherID)s = %(interTable)s.%(otherCol)s and
-%(interTable)s.%(joinCol)s = %(table)s.%(ID)s and
-%(table)s.%(ID)s = %(idValue)s''' % options
- if inst.sqlmeta._perConnection:
- conn = inst._connection
- else:
- conn = None
- results = self.otherClass.select(sqlbuilder.SQLConstant(clause),
- clauseTables=(
- options['table'],
- options['otherTable'],
- options['interTable'],
+ results = self.otherClass.select(sqlbuilder.AND(
+ OtherTableToJoin(
+ self.otherClass.sqlmeta.table, self.otherClass.sqlmeta.idName,
+ self.intermediateTable, self.otherColumn
),
- connection=conn
- )
- # TODO (michelts): apply orderBy on the selection
- return results
+ JoinToTable(
+ self.soClass.sqlmeta.table, self.soClass.sqlmeta.idName,
+ self.intermediateTable, self.joinColumn
+ ),
+ TableToId(self.soClass.sqlmeta.table, self.soClass.sqlmeta.idName, inst.id),
+ ), clauseTables=(self.soClass.sqlmeta.table, self.otherClass.sqlmeta.table, self.intermediateTable))
+ if self.orderBy is NoDefault:
+ self.orderBy = self.otherClass.sqlmeta.defaultOrder
+ return results.orderBy(self.orderBy)
class SQLRelatedJoin(RelatedJoin):
baseClass = SOSQLRelatedJoin
@@ -392,7 +408,7 @@
def __getattr__(self, attr):
# @@: This passes through private variable access too... should it?
# Also magic methods, like __str__
- return getattr(self, select, attr)
+ return getattr(self.select, attr)
def __repr__(self):
return '<%s for: %s>' % (self.__class__.__name__, repr(self.select))
|
|
From: <sub...@co...> - 2006-05-09 13:52:20
|
Author: phd Date: 2006-05-09 07:52:10 -0600 (Tue, 09 May 2006) New Revision: 1754 Removed: SQLObject/docs/http:/ Log: Removed spam. |
|
From: SourceForge.net <no...@so...> - 2006-05-08 21:16:23
|
Bugs item #1484148, was opened at 2006-05-08 14:16 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540672&aid=1484148&group_id=74338 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: General Group: None Status: Open Resolution: None Priority: 5 Submitted By: Nobody/Anonymous (nobody) Assigned to: Nobody/Anonymous (nobody) Summary: threadSafeMethod does not release lock on error Initial Comment: _wrapper() returned by declarative.threadSafeMethod() does not release lock when function it wraps raises an exception. This results in deadlock when running multithreaded application. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540672&aid=1484148&group_id=74338 |
|
From: <sub...@co...> - 2006-05-06 15:35:11
|
Author: ianb Date: 2006-05-06 09:35:03 -0600 (Sat, 06 May 2006) New Revision: 1753 Added: SQLObject/docs/http:/ SQLObject/docs/http:/webfirm.5u.comments.txt Log: in page: http://pythonpaste.orghttp://webfirm.5u.com by: Linder <kg...@ma...> Add comment Added: SQLObject/docs/http:/webfirm.5u.comments.txt =================================================================== --- SQLObject/docs/http:/webfirm.5u.comments.txt 2006-05-05 21:54:24 UTC (rev 1752) +++ SQLObject/docs/http:/webfirm.5u.comments.txt 2006-05-06 15:35:03 UTC (rev 1753) @@ -0,0 +1,10 @@ +==== __page__ +---------------------------------------- +date: 2006-05-06T09:35:00 +email: kg...@ma... +id: 1 +ip: 200.69.177.214 +username: Linder + +<a href=http://webfirm.5u.com>background check</a> +<a href=http://webfirm9.50megs.com>Loan</a> |
|
From: SourceForge.net <no...@so...> - 2006-05-06 15:19:37
|
Patches item #1483018, was opened at 2006-05-06 08:19 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540674&aid=1483018&group_id=74338 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Submitted By: Russ Ferriday (russf) Assigned to: Nobody/Anonymous (nobody) Summary: Play nicely with mxDateTime Initial Comment: Related to version: =========== URL: http://svn.colorstudy.com/SQLObject/trunk Repository UUID: 95a46c32-92d2-0310-94a5-8d71aeb3d4b3 Revision: 1748 Fixes problem: ========= File "/usr/local/zope/python/lib/python2.4/site-packages/ SQLObject-0.8dev_r1746-py2.4.egg/sqlobject/col.py", line 63, in ? TimeType = type(DateTime.Time()) AttributeError: 'module' object has no attribute 'Time' Description: ======== I'm using SQLObject with Zope and Python 2.4. Path to Time is longer than the original code was expecting. And it needs a param - DateTime. Patch: ==== --- col.py.orig 2006-05-05 19:30:39.000000000 +0100 +++ col.py 2006-05-06 16:02:33.000000000 +0100 @@ -60,7 +60,7 @@ if mxdatetime_available: DateTimeType = type(DateTime.now()) - TimeType = type(DateTime.Time()) + TimeType = type(DateTime.DateTime.Time(DateTime.DateTime())) if datetime_available: default_datetime_implementation = DATETIME_IMPLEMENTATION ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540674&aid=1483018&group_id=74338 |
|
From: SourceForge.net <no...@so...> - 2006-05-06 09:53:18
|
Patches item #1482945, was opened at 2006-05-06 02:53 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540674&aid=1482945&group_id=74338 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: None Group: None Status: Open Resolution: None Priority: 5 Submitted By: Nobody/Anonymous (nobody) Assigned to: Nobody/Anonymous (nobody) Summary: SQLObject 0.7.1 deadlocks on __init__ Initial Comment: If an exception is raised by the underlying DB driver when initializing a new object, the thread lock acquired by threadSafeMethod will never be released. The following patch fixes it. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540674&aid=1482945&group_id=74338 |
|
From: SourceForge.net <no...@so...> - 2006-05-04 15:34:54
|
Bugs item #1481927, was opened at 2006-05-05 00:34 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540672&aid=1481927&group_id=74338 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Postgres Group: SQLObject release (specify) Status: Open Resolution: None Priority: 5 Submitted By: yoshuki (yoshuki) Assigned to: Nobody/Anonymous (nobody) Summary: "CASCADE" is never enabled. Initial Comment: I'm using 0.7.1dev_r1675 with PostgreSQL 8.1.3 in TurboGears 0.9a5. When I drop tables it has some foreign key. "HINT: Use DROP ... CASCADE to drop the dependent objects too." I checked source and found the reason. sqlobject/postgres/pgconnection.py:154 def dropTable(self, tableName, cascade=False): is must be def dropTable(self, tableName, cascade=True): right? Please check it out. Thank you. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540672&aid=1481927&group_id=74338 |
|
From: SourceForge.net <no...@so...> - 2006-05-04 15:20:30
|
Bugs item #1481912, was opened at 2006-05-05 00:20 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540672&aid=1481912&group_id=74338 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: Postgres Group: SQLObject release (specify) Status: Open Resolution: None Priority: 5 Submitted By: yoshuki (yoshuki) Assigned to: Nobody/Anonymous (nobody) Summary: "CASCADE" is never enabled. Initial Comment: I'm using 0.7.1dev_r1675 with PostgreSQL 8.1.3 in TurboGears 0.9a5. When I drop tables it has some foreign key. "HINT: Use DROP ... CASCADE to drop the dependent objects too." I checked source and found the reason. sqlobject/postgres/pgconnection.py:154 def dropTable(self, tableName, cascade=False): is must be def dropTable(self, tableName, cascade=True): right? Please check it out. Thank you. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540672&aid=1481912&group_id=74338 |
|
From: SourceForge.net <no...@so...> - 2006-05-02 23:11:35
|
Bugs item #1480745, was opened at 2006-05-02 16:11 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540672&aid=1480745&group_id=74338 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: General Group: SQLObject release (specify) Status: Open Resolution: None Priority: 5 Submitted By: Nobody/Anonymous (nobody) Assigned to: Nobody/Anonymous (nobody) Summary: InheritableSQLObjects use DB during init. Initial Comment: In the release of SQLObject packaged with TurboGears 0.9a5 I have encountered quite a problem - descendants of InheritableSQLObjects attempt to connect to the database, while the parent object or normal SQLObjects do not until used. Specifically, when you have a python package registered as a TurboGears extension it gets queried upon load (by TG's own __init__.py script) before anything else can possibly happen. While this ordinarily doesn't matter, there is something strange going on inside InheritableSQLObject descendants that is causing this error. There is the following ticket against TG right now: http://trac.turbogears.org/turbogears/ticket/817 This ticket, along with the forum discussion linked to in that ticket, describes the problem in detail. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540672&aid=1480745&group_id=74338 |
|
From: <sub...@co...> - 2006-05-02 14:50:13
|
Author: phd
Date: 2006-05-02 08:50:05 -0600 (Tue, 02 May 2006)
New Revision: 1748
Modified:
home/phd/SQLObject/paramstyles/sqlobject/inheritance/__init__.py
home/phd/SQLObject/paramstyles/sqlobject/inheritance/tests/test_deep_inheritance.py
home/phd/SQLObject/paramstyles/sqlobject/inheritance/tests/test_inheritance.py
Log:
Merged patches from the revisions 1745:1747 from the trunk: a patch by Konrad Zielinski <kzi...@gm...> - test all required keywords before creating parent object(s).
Modified: home/phd/SQLObject/paramstyles/sqlobject/inheritance/__init__.py
===================================================================
--- home/phd/SQLObject/paramstyles/sqlobject/inheritance/__init__.py 2006-05-02 14:49:00 UTC (rev 1747)
+++ home/phd/SQLObject/paramstyles/sqlobject/inheritance/__init__.py 2006-05-02 14:50:05 UTC (rev 1748)
@@ -293,6 +293,14 @@
else:
new_kw[name] = value
kw = new_kw
+
+ # Need to check that we have enough data to sucesfully
+ # create the current subclass otherwise we will leave
+ # the database in an inconsistent state.
+ for col in self.sqlmeta.columnList:
+ if col._default == sqlbuilder.NoDefault and col.name not in kw:
+ raise TypeError, "%s() did not get expected keyword argument %s" % (self.__class__.__name__, col.name)
+
parent_kw['childName'] = self.sqlmeta.childName
self._parent = parentClass(kw=parent_kw,
connection=self._connection)
Modified: home/phd/SQLObject/paramstyles/sqlobject/inheritance/tests/test_deep_inheritance.py
===================================================================
--- home/phd/SQLObject/paramstyles/sqlobject/inheritance/tests/test_deep_inheritance.py 2006-05-02 14:49:00 UTC (rev 1747)
+++ home/phd/SQLObject/paramstyles/sqlobject/inheritance/tests/test_deep_inheritance.py 2006-05-02 14:50:05 UTC (rev 1748)
@@ -1,3 +1,4 @@
+from py.test import raises
from sqlobject import *
from sqlobject.tests.dbtest import *
from sqlobject.inheritance import InheritableSQLObject
@@ -6,7 +7,6 @@
## Deep Inheritance
########################################
-
class DIPerson(InheritableSQLObject):
firstName = StringCol()
lastName = StringCol(alternateID=True, length=255)
@@ -18,6 +18,24 @@
class DIManager(DIEmployee):
subdudes = MultipleJoin("DIPerson", joinColumn="manager_id")
+def test_creation_fail():
+ """
+ Try to creae an Manager without specifying a position.
+ this should fail without leaving any partial records in
+ the database.
+ """
+
+ setupClass(DIManager)
+ setupClass(DIEmployee)
+ setupClass(DIPerson)
+
+ kwargs ={'firstName':'John', 'lastname':'Doe'}
+ raises(TypeError, DIManager, **kwargs)
+ #what we really need to check for is partial records in the database.
+ #the following is not really adaquate.
+ persons = DIEmployee.select(DIPerson.q.firstName == 'John')
+ assert persons.count() == 0
+
def test_deep_inheritance():
cache = getConnection().cache
Modified: home/phd/SQLObject/paramstyles/sqlobject/inheritance/tests/test_inheritance.py
===================================================================
--- home/phd/SQLObject/paramstyles/sqlobject/inheritance/tests/test_inheritance.py 2006-05-02 14:49:00 UTC (rev 1747)
+++ home/phd/SQLObject/paramstyles/sqlobject/inheritance/tests/test_inheritance.py 2006-05-02 14:50:05 UTC (rev 1748)
@@ -1,3 +1,4 @@
+from py.test import raises
from sqlobject import *
from sqlobject.tests.dbtest import *
from sqlobject.inheritance import InheritableSQLObject
@@ -6,7 +7,6 @@
## Inheritance
########################################
-
class InheritablePerson(InheritableSQLObject):
firstName = StringCol()
lastName = StringCol(alternateID=True, length=255)
@@ -22,6 +22,12 @@
Employee(firstName='Project', lastName='Leader', position='Project leader')
InheritablePerson(firstName='Oneof', lastName='Authors')
+def test_creation_fail():
+ setup()
+ kwargs ={'firstName':'John', 'lastname':'Doe'}
+ raises(TypeError, Employee, **kwargs)
+ persons = InheritablePerson.select(InheritablePerson.q.firstName == 'John')
+ assert persons.count() == 0
def test_inheritance():
setup()
@@ -35,7 +41,6 @@
assert hasattr(person, "childName")
assert not person.childName
-
def test_inheritance_select():
setup()
|
|
From: <sub...@co...> - 2006-05-02 14:49:15
|
Author: phd
Date: 2006-05-02 08:49:00 -0600 (Tue, 02 May 2006)
New Revision: 1747
Modified:
SQLObject/branches/0.7-bugfix/sqlobject/inheritance/__init__.py
SQLObject/branches/0.7-bugfix/sqlobject/inheritance/tests/test_deep_inheritance.py
SQLObject/branches/0.7-bugfix/sqlobject/inheritance/tests/test_inheritance.py
Log:
A patch by Konrad Zielinski <kzi...@gm...> - test all required keywords
before creating parent object(s).
Modified: SQLObject/branches/0.7-bugfix/sqlobject/inheritance/__init__.py
===================================================================
--- SQLObject/branches/0.7-bugfix/sqlobject/inheritance/__init__.py 2006-05-02 14:46:23 UTC (rev 1746)
+++ SQLObject/branches/0.7-bugfix/sqlobject/inheritance/__init__.py 2006-05-02 14:49:00 UTC (rev 1747)
@@ -210,6 +210,14 @@
else:
new_kw[name] = value
kw = new_kw
+
+ # Need to check that we have enough data to sucesfully
+ # create the current subclass otherwise we will leave
+ # the database in an inconsistent state.
+ for col in self.sqlmeta.columnList:
+ if col._default == sqlbuilder.NoDefault and col.name not in kw:
+ raise TypeError, "%s() did not get expected keyword argument %s" % (self.__class__.__name__, col.name)
+
self._parent = parentClass(kw=parent_kw, connection=self._connection)
self._parent.childName = self.__class__.__name__
Modified: SQLObject/branches/0.7-bugfix/sqlobject/inheritance/tests/test_deep_inheritance.py
===================================================================
--- SQLObject/branches/0.7-bugfix/sqlobject/inheritance/tests/test_deep_inheritance.py 2006-05-02 14:46:23 UTC (rev 1746)
+++ SQLObject/branches/0.7-bugfix/sqlobject/inheritance/tests/test_deep_inheritance.py 2006-05-02 14:49:00 UTC (rev 1747)
@@ -1,3 +1,4 @@
+from py.test import raises
from sqlobject import *
from sqlobject.tests.dbtest import *
from sqlobject.inheritance import InheritableSQLObject
@@ -6,7 +7,6 @@
## Deep Inheritance
########################################
-
class DIPerson(InheritableSQLObject):
firstName = StringCol()
lastName = StringCol(alternateID=True, length=255)
@@ -18,6 +18,24 @@
class DIManager(DIEmployee):
subdudes = MultipleJoin("DIPerson", joinColumn="manager_id")
+def test_creation_fail():
+ """
+ Try to creae an Manager without specifying a position.
+ this should fail without leaving any partial records in
+ the database.
+ """
+
+ setupClass(DIManager)
+ setupClass(DIEmployee)
+ setupClass(DIPerson)
+
+ kwargs ={'firstName':'John', 'lastname':'Doe'}
+ raises(TypeError, DIManager, **kwargs)
+ #what we really need to check for is partial records in the database.
+ #the following is not really adaquate.
+ persons = DIEmployee.select(DIPerson.q.firstName == 'John')
+ assert persons.count() == 0
+
def test_deep_inheritance():
setupClass(DIManager)
setupClass(DIEmployee)
Modified: SQLObject/branches/0.7-bugfix/sqlobject/inheritance/tests/test_inheritance.py
===================================================================
--- SQLObject/branches/0.7-bugfix/sqlobject/inheritance/tests/test_inheritance.py 2006-05-02 14:46:23 UTC (rev 1746)
+++ SQLObject/branches/0.7-bugfix/sqlobject/inheritance/tests/test_inheritance.py 2006-05-02 14:49:00 UTC (rev 1747)
@@ -1,3 +1,4 @@
+from py.test import raises
from sqlobject import *
from sqlobject.tests.dbtest import *
from sqlobject.inheritance import InheritableSQLObject
@@ -6,7 +7,6 @@
## Inheritance
########################################
-
class InheritablePerson(InheritableSQLObject):
firstName = StringCol()
lastName = StringCol(alternateID=True, length=255)
@@ -22,6 +22,12 @@
Employee(firstName='Project', lastName='Leader', position='Project leader')
InheritablePerson(firstName='Oneof', lastName='Authors')
+def test_creation_fail():
+ setup()
+ kwargs ={'firstName':'John', 'lastname':'Doe'}
+ raises(TypeError, Employee, **kwargs)
+ persons = InheritablePerson.select(InheritablePerson.q.firstName == 'John')
+ assert persons.count() == 0
def test_inheritance():
setup()
@@ -35,7 +41,6 @@
assert hasattr(person, "childName")
assert not person.childName
-
def test_inheritance_select():
setup()
|
|
From: <sub...@co...> - 2006-05-02 14:46:30
|
Author: phd
Date: 2006-05-02 08:46:23 -0600 (Tue, 02 May 2006)
New Revision: 1746
Modified:
SQLObject/trunk/sqlobject/inheritance/__init__.py
SQLObject/trunk/sqlobject/inheritance/tests/test_deep_inheritance.py
SQLObject/trunk/sqlobject/inheritance/tests/test_inheritance.py
Log:
A patch by Konrad Zielinski <kzi...@gm...> - test all required keywords
before creating parent object(s).
Modified: SQLObject/trunk/sqlobject/inheritance/__init__.py
===================================================================
--- SQLObject/trunk/sqlobject/inheritance/__init__.py 2006-05-01 21:35:45 UTC (rev 1745)
+++ SQLObject/trunk/sqlobject/inheritance/__init__.py 2006-05-02 14:46:23 UTC (rev 1746)
@@ -293,6 +293,14 @@
else:
new_kw[name] = value
kw = new_kw
+
+ # Need to check that we have enough data to sucesfully
+ # create the current subclass otherwise we will leave
+ # the database in an inconsistent state.
+ for col in self.sqlmeta.columnList:
+ if col._default == sqlbuilder.NoDefault and col.name not in kw:
+ raise TypeError, "%s() did not get expected keyword argument %s" % (self.__class__.__name__, col.name)
+
parent_kw['childName'] = self.sqlmeta.childName
self._parent = parentClass(kw=parent_kw,
connection=self._connection)
Modified: SQLObject/trunk/sqlobject/inheritance/tests/test_deep_inheritance.py
===================================================================
--- SQLObject/trunk/sqlobject/inheritance/tests/test_deep_inheritance.py 2006-05-01 21:35:45 UTC (rev 1745)
+++ SQLObject/trunk/sqlobject/inheritance/tests/test_deep_inheritance.py 2006-05-02 14:46:23 UTC (rev 1746)
@@ -1,3 +1,4 @@
+from py.test import raises
from sqlobject import *
from sqlobject.tests.dbtest import *
from sqlobject.inheritance import InheritableSQLObject
@@ -6,7 +7,6 @@
## Deep Inheritance
########################################
-
class DIPerson(InheritableSQLObject):
firstName = StringCol()
lastName = StringCol(alternateID=True, length=255)
@@ -18,6 +18,24 @@
class DIManager(DIEmployee):
subdudes = MultipleJoin("DIPerson", joinColumn="manager_id")
+def test_creation_fail():
+ """
+ Try to creae an Manager without specifying a position.
+ this should fail without leaving any partial records in
+ the database.
+ """
+
+ setupClass(DIManager)
+ setupClass(DIEmployee)
+ setupClass(DIPerson)
+
+ kwargs ={'firstName':'John', 'lastname':'Doe'}
+ raises(TypeError, DIManager, **kwargs)
+ #what we really need to check for is partial records in the database.
+ #the following is not really adaquate.
+ persons = DIEmployee.select(DIPerson.q.firstName == 'John')
+ assert persons.count() == 0
+
def test_deep_inheritance():
cache = getConnection().cache
Modified: SQLObject/trunk/sqlobject/inheritance/tests/test_inheritance.py
===================================================================
--- SQLObject/trunk/sqlobject/inheritance/tests/test_inheritance.py 2006-05-01 21:35:45 UTC (rev 1745)
+++ SQLObject/trunk/sqlobject/inheritance/tests/test_inheritance.py 2006-05-02 14:46:23 UTC (rev 1746)
@@ -1,3 +1,4 @@
+from py.test import raises
from sqlobject import *
from sqlobject.tests.dbtest import *
from sqlobject.inheritance import InheritableSQLObject
@@ -6,7 +7,6 @@
## Inheritance
########################################
-
class InheritablePerson(InheritableSQLObject):
firstName = StringCol()
lastName = StringCol(alternateID=True, length=255)
@@ -22,6 +22,12 @@
Employee(firstName='Project', lastName='Leader', position='Project leader')
InheritablePerson(firstName='Oneof', lastName='Authors')
+def test_creation_fail():
+ setup()
+ kwargs ={'firstName':'John', 'lastname':'Doe'}
+ raises(TypeError, Employee, **kwargs)
+ persons = InheritablePerson.select(InheritablePerson.q.firstName == 'John')
+ assert persons.count() == 0
def test_inheritance():
setup()
@@ -35,7 +41,6 @@
assert hasattr(person, "childName")
assert not person.childName
-
def test_inheritance_select():
setup()
|
|
From: SourceForge.net <no...@so...> - 2006-05-02 14:18:50
|
Bugs item #1421647, was opened at 2006-02-01 08:59 Message generated for change (Comment added) made by nobody You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540672&aid=1421647&group_id=74338 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: General Group: SQLObject from repository Status: Open Resolution: None Priority: 5 Submitted By: Daniel Holth (joeforker) Assigned to: Nobody/Anonymous (nobody) Summary: sqlobject-manager sql (show create-table commands) semicolon Initial Comment: Hi, I'm playing with turboblog (http://svn.turboblog.python-hosting.com/turboblog) with postgresql as the database. sqlobject-manager will print my database CREATE TABLE () but it's severely lacking in ; . This would be okay except for some reason it does not create the tables correctly in the normal way. So I must print the CREATE TABLE commands, add the necessary semicolons, and run it through psql. Notice the linkage tables are created with the same function call as the main table. Then the 'sql' command of sqlobject-admin (sqlobject/manager/command.py line 495) adds one semicolon for the group. CREATE TABLE tg_group ( id SERIAL PRIMARY KEY, child_name VARCHAR(255), group_id VARCHAR(16) NOT NULL UNIQUE, display_name VARCHAR(255), created TIMESTAMP ) CREATE TABLE tg_user_group ( group_id INT NOT NULL, user_id INT NOT NULL ) CREATE TABLE tg_group_permission ( group_id INT NOT NULL, permission_id INT NOT NULL ); ---------------------------------------------------------------------- Comment By: Nobody/Anonymous (nobody) Date: 2006-05-02 07:18 Message: Logged In: NO Please also see: http://trac.turbogears.org/turbogears/ticket/738 Cheers Roger ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540672&aid=1421647&group_id=74338 |
|
From: <sub...@co...> - 2006-04-25 13:55:01
|
Author: phd
Date: 2006-04-25 07:54:55 -0600 (Tue, 25 Apr 2006)
New Revision: 1729
Modified:
home/phd/SQLObject/paramstyles/sqlobject/sqlbuilder.py
Log:
Merged patches from the revisions 1708:1728 from the trunk
Modified: home/phd/SQLObject/paramstyles/sqlobject/sqlbuilder.py
===================================================================
--- home/phd/SQLObject/paramstyles/sqlobject/sqlbuilder.py 2006-04-25 13:53:58 UTC (rev 1728)
+++ home/phd/SQLObject/paramstyles/sqlobject/sqlbuilder.py 2006-04-25 13:54:55 UTC (rev 1729)
@@ -484,7 +484,7 @@
select = "SELECT %s" % ", ".join([sqlrepr(v, db) for v in self.items])
tables = {}
- things = self.items[:]
+ things = list(self.items)
if self.whereClause is not NoDefault:
things.append(self.whereClause)
for thing in things:
|
|
From: <sub...@co...> - 2006-04-25 13:54:06
|
Author: phd
Date: 2006-04-25 07:53:58 -0600 (Tue, 25 Apr 2006)
New Revision: 1728
Modified:
SQLObject/branches/0.7-bugfix/sqlobject/sqlbuilder.py
Log:
Copy items and make the copy a list in the case it was a tuple.
Modified: SQLObject/branches/0.7-bugfix/sqlobject/sqlbuilder.py
===================================================================
--- SQLObject/branches/0.7-bugfix/sqlobject/sqlbuilder.py 2006-04-25 13:53:39 UTC (rev 1727)
+++ SQLObject/branches/0.7-bugfix/sqlobject/sqlbuilder.py 2006-04-25 13:53:58 UTC (rev 1728)
@@ -444,7 +444,7 @@
select = "SELECT %s" % ", ".join([sqlrepr(v, db) for v in self.items])
tables = {}
- things = self.items[:]
+ things = list(self.items)
if self.whereClause is not NoDefault:
things.append(self.whereClause)
for thing in things:
|
|
From: <sub...@co...> - 2006-04-25 13:53:45
|
Author: phd
Date: 2006-04-25 07:53:39 -0600 (Tue, 25 Apr 2006)
New Revision: 1727
Modified:
SQLObject/trunk/sqlobject/sqlbuilder.py
Log:
Copy items and make the copy a list in the case it was a tuple.
Modified: SQLObject/trunk/sqlobject/sqlbuilder.py
===================================================================
--- SQLObject/trunk/sqlobject/sqlbuilder.py 2006-04-21 15:23:00 UTC (rev 1726)
+++ SQLObject/trunk/sqlobject/sqlbuilder.py 2006-04-25 13:53:39 UTC (rev 1727)
@@ -447,7 +447,7 @@
select = "SELECT %s" % ", ".join([sqlrepr(v, db) for v in self.items])
tables = {}
- things = self.items[:]
+ things = list(self.items)
if self.whereClause is not NoDefault:
things.append(self.whereClause)
for thing in things:
|
|
From: SourceForge.net <no...@so...> - 2006-04-20 20:44:21
|
Bugs item #1473819, was opened at 2006-04-20 13:44 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540672&aid=1473819&group_id=74338 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: General Group: None Status: Open Resolution: None Priority: 5 Submitted By: Nobody/Anonymous (nobody) Assigned to: Nobody/Anonymous (nobody) Summary: SQLObject does not quote table/column names Initial Comment: SQLObject should properly escape table and column names to allow people to use reserved keywords as tables and columns. An example: Bad: select order from group; Good: select `order` from `group`; Good: select `anything` from `whatever` where `something`="foo" My E-mail: ro...@di... ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540672&aid=1473819&group_id=74338 |
|
From: SourceForge.net <no...@so...> - 2006-04-18 10:38:55
|
Bugs item #1472210, was opened at 2006-04-18 12:38 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540672&aid=1472210&group_id=74338 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: General Group: SQLObject from repository Status: Open Resolution: None Priority: 5 Submitted By: Davide Alberani (alberanid) Assigned to: Nobody/Anonymous (nobody) Summary: SQLJoinConditional bug Initial Comment: The following line, in the __sqlrepr__() method of the SQLJoinConditional class, seems to be wrong: using_columns = ", ".join() The code is called when the using_columns argument is used. I suppose it should be: using_columns = ", ".join(using_columns) But I'm not sure, because I'm not an expert of SQLObject internals. Note: I'm not sure this is not already fixed, because svn access is down at the time. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=540672&aid=1472210&group_id=74338 |