[tryton-debian-vcs] tryton-server branch debian-wheezy-2.2 created. 76db2cae4386a414c353500fe423644dd475ce55
Mathias Behrle
tryton-debian-vcs at alioth.debian.org
Wed Nov 27 17:15:11 UTC 2013
The following commit has been merged in the debian-wheezy-2.2 branch:
https://alioth.debian.org/plugins/scmgit/cgi-bin/gitweb.cgi/?p=tryton/tryton-server.git;a=commitdiff;h=76db2cae4386a414c353500fe423644dd475ce55
commit 76db2cae4386a414c353500fe423644dd475ce55
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Thu Oct 17 12:56:59 2013 +0200
Releasing debian version 2.2.11-1.
diff --git a/debian/changelog b/debian/changelog
index 8a6ed9f..ec9b6fa 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+tryton-server (2.2.11-1) unstable; urgency=low
+
+ * Merging upstream version 2.2.11.
+
+ -- Mathias Behrle <mathiasb at m9s.biz> Thu, 17 Oct 2013 12:43:29 +0200
+
tryton-server (2.2.10-1) unstable; urgency=low
* Merging upstream version 2.2.10.
commit 04bb840c88b672ef7bfd82595f4e6b4a89613c80
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Thu Oct 17 12:43:21 2013 +0200
Merging upstream version 2.2.11.
diff --git a/CHANGELOG b/CHANGELOG
index 71f4167..db127a8 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Version 2.2.11 - 2013-10-01
+* Bug fixes (see mercurial logs for details)
+
Version 2.2.10 - 2013-07-22
* Bug fixes (see mercurial logs for details)
diff --git a/PKG-INFO b/PKG-INFO
index cd112a8..633e89f 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: trytond
-Version: 2.2.10
+Version: 2.2.11
Summary: Tryton server
Home-page: http://www.tryton.org/
Author: B2CK
diff --git a/trytond.egg-info/PKG-INFO b/trytond.egg-info/PKG-INFO
index cd112a8..633e89f 100644
--- a/trytond.egg-info/PKG-INFO
+++ b/trytond.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: trytond
-Version: 2.2.10
+Version: 2.2.11
Summary: Tryton server
Home-page: http://www.tryton.org/
Author: B2CK
diff --git a/trytond/backend/mysql/table.py b/trytond/backend/mysql/table.py
index a579ac6..7978cc0 100644
--- a/trytond/backend/mysql/table.py
+++ b/trytond/backend/mysql/table.py
@@ -272,7 +272,8 @@ class TableHandler(TableHandlerInterface):
return
if index_name in self._indexes:
- self.cursor.execute('DROP INDEX `%s` ' % (index_name,))
+ self.cursor.execute('DROP INDEX `%s` ON `%s`'
+ % (index_name, self.table_name))
self._update_definitions()
else:
raise Exception('Index action not supported!')
diff --git a/trytond/ir/trigger.py b/trytond/ir/trigger.py
index f7e00b7..b2affe6 100644
--- a/trytond/ir/trigger.py
+++ b/trytond/ir/trigger.py
@@ -204,6 +204,8 @@ class Trigger(ModelSQL, ModelView):
hours, minutes, seconds = map(int, timepart_full[0].split(":"))
if len(timepart_full) == 2:
microseconds = int(timepart_full[1])
+ else:
+ microseconds = 0
delay[record_id] = datetime.datetime(year, month, day,
hours, minutes, seconds, microseconds)
if datetime.datetime.now() - delay[record_id] \
diff --git a/trytond/ir/ui/view.py b/trytond/ir/ui/view.py
index c3a134e..1355258 100644
--- a/trytond/ir/ui/view.py
+++ b/trytond/ir/ui/view.py
@@ -104,14 +104,9 @@ class View(ModelSQL, ModelView):
# validate pyson attributes
validates = {
'states': fields.states_validate,
- 'domain': fields.domain_validate,
- 'context': fields.context_validate,
- 'digits': fields.digits_validate,
- 'add_remove': fields.add_remove_validate,
}
def encode(element):
- for attr in ('states', 'domain', 'context', 'digits',
- 'add_remove', 'spell', 'colors'):
+ for attr in ('states', 'domain', 'spell', 'colors'):
if element.get(attr):
try:
value = safe_eval(element.get(attr), CONTEXT)
diff --git a/trytond/model/modelview.py b/trytond/model/modelview.py
index 650427d..11afc0e 100644
--- a/trytond/model/modelview.py
+++ b/trytond/model/modelview.py
@@ -451,8 +451,7 @@ class ModelView(Model):
# convert attributes into pyson
encoder = PYSONEncoder()
- for attr in ('states', 'domain', 'context', 'digits', 'add_remove',
- 'spell', 'colors'):
+ for attr in ('states', 'domain', 'spell', 'colors'):
if element.get(attr):
element.set(attr, encoder.encode(safe_eval(element.get(attr),
CONTEXT)))
diff --git a/trytond/version.py b/trytond/version.py
index 1e56ee0..4a3035b 100644
--- a/trytond/version.py
+++ b/trytond/version.py
@@ -1,7 +1,7 @@
#This file is part of Tryton. The COPYRIGHT file at the top level of
#this repository contains the full copyright notices and license terms.
PACKAGE = "trytond"
-VERSION = "2.2.10"
+VERSION = "2.2.11"
LICENSE = "GPL-3"
WEBSITE = "http://www.tryton.org/"
commit 25175ec5330d2777e776f2dc0a548e5f4cc5142a
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Wed Aug 7 17:24:39 2013 +0200
Releasing debian version 2.2.10-1.
diff --git a/debian/changelog b/debian/changelog
index 9c83099..8a6ed9f 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+tryton-server (2.2.10-1) unstable; urgency=low
+
+ * Merging upstream version 2.2.10.
+
+ -- Mathias Behrle <mathiasb at m9s.biz> Wed, 07 Aug 2013 17:13:37 +0200
+
tryton-server (2.2.9-1) unstable; urgency=low
* Merging upstream version 2.2.9.
commit 848c878a3614ef8b9926e5888e6c25ec6c06a0e6
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Wed Aug 7 17:12:18 2013 +0200
Merging upstream version 2.2.10.
diff --git a/CHANGELOG b/CHANGELOG
index 4edda4a..71f4167 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Version 2.2.10 - 2013-07-22
+* Bug fixes (see mercurial logs for details)
+
Version 2.2.9 - 2013-06-09
* Bug fixes (see mercurial logs for details)
diff --git a/PKG-INFO b/PKG-INFO
index 47fa9ca..cd112a8 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: trytond
-Version: 2.2.9
+Version: 2.2.10
Summary: Tryton server
Home-page: http://www.tryton.org/
Author: B2CK
diff --git a/trytond.egg-info/PKG-INFO b/trytond.egg-info/PKG-INFO
index 47fa9ca..cd112a8 100644
--- a/trytond.egg-info/PKG-INFO
+++ b/trytond.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: trytond
-Version: 2.2.9
+Version: 2.2.10
Summary: Tryton server
Home-page: http://www.tryton.org/
Author: B2CK
diff --git a/trytond/model/modelstorage.py b/trytond/model/modelstorage.py
index bd2f396..870db92 100644
--- a/trytond/model/modelstorage.py
+++ b/trytond/model/modelstorage.py
@@ -516,7 +516,7 @@ class ModelStorage(Model):
if (rec_name not in self._columns
and rec_name not in self._inherit_fields):
return []
- return [(rec_name,) + clause[1:]]
+ return [(rec_name,) + tuple(clause[1:])]
def browse(self, ids):
'''
diff --git a/trytond/version.py b/trytond/version.py
index 61c659d..1e56ee0 100644
--- a/trytond/version.py
+++ b/trytond/version.py
@@ -1,7 +1,7 @@
#This file is part of Tryton. The COPYRIGHT file at the top level of
#this repository contains the full copyright notices and license terms.
PACKAGE = "trytond"
-VERSION = "2.2.9"
+VERSION = "2.2.10"
LICENSE = "GPL-3"
WEBSITE = "http://www.tryton.org/"
commit 20929eaac0bcf3374aa44ece54b493d7b33dbaaa
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Tue Jun 11 14:42:59 2013 +0200
Releasing debian version 2.2.9-1.
diff --git a/debian/changelog b/debian/changelog
index 7763688..9c83099 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+tryton-server (2.2.9-1) unstable; urgency=low
+
+ * Merging upstream version 2.2.9.
+
+ -- Mathias Behrle <mathiasb at m9s.biz> Tue, 11 Jun 2013 14:07:19 +0200
+
tryton-server (2.2.8-1) unstable; urgency=low
* Merging upstream version 2.2.8.
commit 1c5ea3677e810db9ecb33103f7bd71b466eb0935
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Tue Jun 11 13:52:17 2013 +0200
Merging upstream version 2.2.9.
diff --git a/CHANGELOG b/CHANGELOG
index c07d844..4edda4a 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Version 2.2.9 - 2013-06-09
+* Bug fixes (see mercurial logs for details)
+
Version 2.2.8 - 2013-05-02
* Bug fixes (see mercurial logs for details)
diff --git a/PKG-INFO b/PKG-INFO
index 5a3b5e3..47fa9ca 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: trytond
-Version: 2.2.8
+Version: 2.2.9
Summary: Tryton server
Home-page: http://www.tryton.org/
Author: B2CK
diff --git a/trytond.egg-info/PKG-INFO b/trytond.egg-info/PKG-INFO
index 5a3b5e3..47fa9ca 100644
--- a/trytond.egg-info/PKG-INFO
+++ b/trytond.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: trytond
-Version: 2.2.8
+Version: 2.2.9
Summary: Tryton server
Home-page: http://www.tryton.org/
Author: B2CK
diff --git a/trytond/model/modelsql.py b/trytond/model/modelsql.py
index 73cad33..7dfd6e2 100644
--- a/trytond/model/modelsql.py
+++ b/trytond/model/modelsql.py
@@ -1506,7 +1506,7 @@ class ModelSQL(ModelStorage):
ids2 = [x[0] for x in target_obj.search([
('rec_name', 'ilike', domain[i][2]),
], order=[])]
- elif isinstance(domain[i][2], (int, long)):
+ elif not isinstance(domain[i][2], list):
ids2 = [domain[i][2]]
else:
ids2 = domain[i][2]
@@ -1582,7 +1582,7 @@ class ModelSQL(ModelStorage):
ids2 = [x[0] for x in field_obj.search([
('rec_name', 'like', domain[i][2]),
], order=[])]
- elif isinstance(domain[i][2], (int, long)):
+ elif not isinstance(domain[i][2], list):
ids2 = [domain[i][2]]
else:
ids2 = domain[i][2]
diff --git a/trytond/model/modelstorage.py b/trytond/model/modelstorage.py
index e3aaf6f..bd2f396 100644
--- a/trytond/model/modelstorage.py
+++ b/trytond/model/modelstorage.py
@@ -1031,7 +1031,7 @@ class ModelStorage(Model):
domain = PYSONDecoder(env).decode(pyson_domain)
relation_ids = []
if record[field_name]:
- if field._type in ('many2one',):
+ if field._type in ('many2one', 'one2one'):
relation_ids.append(record[field_name].id)
else:
relation_ids.extend(
@@ -1049,7 +1049,7 @@ class ModelStorage(Model):
relation_ids = []
for record in records:
if record[field_name]:
- if field._type in ('many2one',):
+ if field._type in ('many2one', 'one2one'):
relation_ids.append(record[field_name].id)
else:
relation_ids.extend(
diff --git a/trytond/version.py b/trytond/version.py
index a5a8641..61c659d 100644
--- a/trytond/version.py
+++ b/trytond/version.py
@@ -1,7 +1,7 @@
#This file is part of Tryton. The COPYRIGHT file at the top level of
#this repository contains the full copyright notices and license terms.
PACKAGE = "trytond"
-VERSION = "2.2.8"
+VERSION = "2.2.9"
LICENSE = "GPL-3"
WEBSITE = "http://www.tryton.org/"
commit 1a6564c20d10b1f84e311fbdcdd790f8d1449a10
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Sat May 4 17:05:16 2013 +0200
Releasing debian version 2.2.8-1.
diff --git a/debian/changelog b/debian/changelog
index 431dd12..7763688 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+tryton-server (2.2.8-1) unstable; urgency=low
+
+ * Merging upstream version 2.2.8.
+
+ -- Mathias Behrle <mathiasb at m9s.biz> Sat, 04 May 2013 16:57:44 +0200
+
tryton-server (2.2.7-1) unstable; urgency=low
* Merging upstream version 2.2.5.
commit a5c8ffd12b3781aa7651d44765c4d2f7ac4c34f3
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Sat May 4 16:49:08 2013 +0200
Merging upstream version 2.2.8.
diff --git a/CHANGELOG b/CHANGELOG
index 117e8ff..c07d844 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Version 2.2.8 - 2013-05-02
+* Bug fixes (see mercurial logs for details)
+
Version 2.2.7 - 2013-02-12
* Bug fixes (see mercurial logs for details)
diff --git a/PKG-INFO b/PKG-INFO
index c9e4ac7..5a3b5e3 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: trytond
-Version: 2.2.7
+Version: 2.2.8
Summary: Tryton server
Home-page: http://www.tryton.org/
Author: B2CK
diff --git a/trytond.egg-info/PKG-INFO b/trytond.egg-info/PKG-INFO
index c9e4ac7..5a3b5e3 100644
--- a/trytond.egg-info/PKG-INFO
+++ b/trytond.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: trytond
-Version: 2.2.7
+Version: 2.2.8
Summary: Tryton server
Home-page: http://www.tryton.org/
Author: B2CK
diff --git a/trytond/backend/sqlite/database.py b/trytond/backend/sqlite/database.py
index 1a809dd..e8006fe 100644
--- a/trytond/backend/sqlite/database.py
+++ b/trytond/backend/sqlite/database.py
@@ -39,6 +39,8 @@ def extract(lookup_type, date):
hours, minutes, seconds = map(int, timepart_full[0].split(":"))
if len(timepart_full) == 2:
microseconds = int(timepart_full[1])
+ else:
+ microseconds = 0
date = datetime.datetime(year, month, day, hours, minutes, seconds,
microseconds)
except Exception:
diff --git a/trytond/ir/model.py b/trytond/ir/model.py
index c20259f..4b1fd85 100644
--- a/trytond/ir/model.py
+++ b/trytond/ir/model.py
@@ -376,7 +376,6 @@ class ModelFieldAccess(ModelSQL, ModelView):
pool = Pool()
ir_model_obj = pool.get('ir.model')
ir_model_field_obj = pool.get('ir.model.field')
- user_group_obj = pool.get('res.user-res.group')
cursor = Transaction().cursor
@@ -387,12 +386,12 @@ class ModelFieldAccess(ModelSQL, ModelView):
'ON (a.field = f.id) '
'JOIN "%s" AS m '
'ON (f.model = m.id) '
- 'LEFT JOIN "%s" AS gu '
+ 'LEFT JOIN "res_user-res_group" AS gu '
'ON (gu."group" = a."group") '
'WHERE m.model = %%s AND (gu."user" = %%s OR a."group" IS NULL) '
'GROUP BY f.name'
% (mode, self._table, ir_model_field_obj._table,
- ir_model_obj._table, user_group_obj._table),
+ ir_model_obj._table),
(model_name, Transaction().user))
accesses = dict(cursor.fetchall())
if access:
diff --git a/trytond/model/modelsql.py b/trytond/model/modelsql.py
index 3c1fdaf..73cad33 100644
--- a/trytond/model/modelsql.py
+++ b/trytond/model/modelsql.py
@@ -388,7 +388,7 @@ class ModelSQL(ModelStorage):
for name, _, error in self._sql_constraints:
if name in exception[0]:
self.raise_user_error(error)
- for name, error in self._sql_error_messages:
+ for name, error in self._sql_error_messages.iteritems():
if name in exception[0]:
self.raise_user_error(error)
raise
@@ -906,7 +906,7 @@ class ModelSQL(ModelStorage):
for name, _, error in self._sql_constraints:
if name in exception[0]:
self.raise_user_error(error)
- for name, error in self._sql_error_messages:
+ for name, error in self._sql_error_messages.iteritems():
if name in exception[0]:
self.raise_user_error(error)
raise
@@ -1122,7 +1122,7 @@ class ModelSQL(ModelStorage):
for name, _, error in self._sql_constraints:
if name in exception[0]:
self.raise_user_error(error)
- for name, error in self._sql_error_messages:
+ for name, error in self._sql_error_messages.iteritems():
if name in exception[0]:
self.raise_user_error(error)
raise
diff --git a/trytond/model/modelstorage.py b/trytond/model/modelstorage.py
index 48598a0..e3aaf6f 100644
--- a/trytond/model/modelstorage.py
+++ b/trytond/model/modelstorage.py
@@ -157,7 +157,7 @@ class ModelStorage(Model):
# Clean cursor cache
for cache in Transaction().cursor.cache.values():
- for cache in (cache, cache.get('_language_cache', {}).values()):
+ for cache in [cache] + cache.get('_language_cache', {}).values():
if self._name in cache:
if isinstance(ids, (int, long)):
ids = [ids]
@@ -227,7 +227,7 @@ class ModelStorage(Model):
# Clean cursor cache
for cache in Transaction().cursor.cache.values():
- for cache in (cache, cache.get('_language_cache', {}).values()):
+ for cache in [cache] + cache.get('_language_cache', {}).values():
if self._name in cache:
if isinstance(ids, (int, long)):
ids = [ids]
diff --git a/trytond/model/modelview.py b/trytond/model/modelview.py
index e280dab..650427d 100644
--- a/trytond/model/modelview.py
+++ b/trytond/model/modelview.py
@@ -188,7 +188,7 @@ class ModelView(Model):
else:
if view_type == 'form':
res = self.fields_get()
- xml = '''<?xml version="1.0" encoding="utf-8"?>''' \
+ xml = '''<?xml version="1.0"?>''' \
'''<form string="%s">''' % (self._description,)
for i in res:
if i in ('create_uid', 'create_date',
@@ -204,7 +204,7 @@ class ModelView(Model):
field = 'id'
if self._rec_name in self._columns:
field = self._rec_name
- xml = '''<?xml version="1.0" encoding="utf-8"?>''' \
+ xml = '''<?xml version="1.0"?>''' \
'''<tree string="%s"><field name="%s"/></tree>''' \
% (self._description, field)
else:
diff --git a/trytond/version.py b/trytond/version.py
index ba76b6f..a5a8641 100644
--- a/trytond/version.py
+++ b/trytond/version.py
@@ -1,7 +1,7 @@
#This file is part of Tryton. The COPYRIGHT file at the top level of
#this repository contains the full copyright notices and license terms.
PACKAGE = "trytond"
-VERSION = "2.2.7"
+VERSION = "2.2.8"
LICENSE = "GPL-3"
WEBSITE = "http://www.tryton.org/"
diff --git a/trytond/webdav/webdav.py b/trytond/webdav/webdav.py
index ae7fbb3..60686ae 100644
--- a/trytond/webdav/webdav.py
+++ b/trytond/webdav/webdav.py
@@ -463,7 +463,7 @@ class Collection(ModelSQL, ModelView):
data = DAV_NotFound
try:
if attachment.data is not False:
- data = attachment.data
+ data = str(attachment.data)
except Exception:
pass
if attachment.id == object_id:
commit f00eda1abd1624e628c776f64ba2b4e52a8a611e
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Tue Mar 19 19:25:29 2013 +0100
Releasing debian version 2.2.7-1.
diff --git a/debian/changelog b/debian/changelog
index 5db976e..431dd12 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,15 @@
+tryton-server (2.2.7-1) unstable; urgency=low
+
+ * Merging upstream version 2.2.5.
+ * Merging upstream version 2.2.6.
+ * Merging upstream version 2.2.7.
+ * Refreshing 02-support-pywebdav-0.9.8 patch.
+ * Updating to Standards-Version: 3.9.4, no changes needed.
+ * Removing obsolete Dm-Upload-Allowed
+ * Updating copyright.
+
+ -- Mathias Behrle <mathiasb at m9s.biz> Sun, 24 Feb 2013 22:14:23 +0100
+
tryton-server (2.2.4-1) unstable; urgency=low
* Merging upstream version 2.2.4.
commit f030662e193908754fb59c6c160436761a796fd3
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Sun Feb 24 22:09:31 2013 +0100
Updating copyright.
diff --git a/debian/copyright b/debian/copyright
index f5e10ab..2b2ac89 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -2,10 +2,10 @@ Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Files: *
Copyright: 2004-2008 Tiny SPRL
- 2007-2012 Cedric Krier
+ 2007-2013 Cédric Krier
2007-2011 Bertrand Chenal
- 2008-2012 B2CK SPRL
- 2011 Openlabs Technologies & Consulting (P) Ltd.
+ 2008-2013 B2CK SPRL
+ 2011 Openlabs Technologies & Consulting (P) Ltd
License: GPL-3+
Files: doc/*
commit ccdc62357fa701bd9ffb5ea5cf5a34abeb0fe897
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Sun Feb 24 22:01:47 2013 +0100
Removing obsolete Dm-Upload-Allowed
diff --git a/debian/control b/debian/control
index 3d291fb..c06b87b 100644
--- a/debian/control
+++ b/debian/control
@@ -3,7 +3,6 @@ Section: python
Priority: optional
Maintainer: Debian Tryton Maintainers <maintainers at debian.tryton.org>
Uploaders: Daniel Baumann <daniel at debian.org>, Mathias Behrle <mathiasb at m9s.biz>
-Dm-Upload-Allowed: yes
Build-Depends: debhelper (>= 9), python (>= 2.6.6-3~), python-setuptools
Standards-Version: 3.9.4
Homepage: http://www.tryton.org/
commit 81e1ad9d968334e19dd82916d34cdfb60ac2e445
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Sun Feb 24 22:01:09 2013 +0100
Updating to Standards-Version: 3.9.4, no changes needed.
diff --git a/debian/control b/debian/control
index 51f48da..3d291fb 100644
--- a/debian/control
+++ b/debian/control
@@ -5,7 +5,7 @@ Maintainer: Debian Tryton Maintainers <maintainers at debian.tryton.org>
Uploaders: Daniel Baumann <daniel at debian.org>, Mathias Behrle <mathiasb at m9s.biz>
Dm-Upload-Allowed: yes
Build-Depends: debhelper (>= 9), python (>= 2.6.6-3~), python-setuptools
-Standards-Version: 3.9.3
+Standards-Version: 3.9.4
Homepage: http://www.tryton.org/
Vcs-Browser: http://debian.tryton.org/gitweb/?p=packages/tryton-server.git
Vcs-Git: git://debian.tryton.org/git/packages/tryton-server.git
commit a56a020b90858f65e19386290d1230a7e63f6d94
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Sun Feb 24 21:52:23 2013 +0100
Refreshing 02-support-pywebdav-0.9.8 patch.
diff --git a/debian/patches/02-support-pywebdav-0.9.8 b/debian/patches/02-support-pywebdav-0.9.8
index 8e4e852..0e324ea 100644
--- a/debian/patches/02-support-pywebdav-0.9.8
+++ b/debian/patches/02-support-pywebdav-0.9.8
@@ -1,7 +1,7 @@
Author: Mathias Behrle <mathiasb at m9s.biz>
Description: Support new structure of pywebdav > 0.9.4.1.
---- tryton-server.orig/trytond/protocols/webdav.py 2012-09-11 19:41:40.000000000 +0200
-+++ tryton-server/trytond/protocols/webdav.py 2012-09-12 16:44:26.630387413 +0200
+--- tryton-server.orig/trytond/protocols/webdav.py 2012-08-07 12:31:14.000000000 +0200
++++ tryton-server/trytond/protocols/webdav.py 2013-02-24 21:49:35.992089190 +0100
@@ -12,11 +12,15 @@
import logging
from threading import local
@@ -201,7 +201,7 @@ Description: Support new structure of pywebdav > 0.9.4.1.
class SecureWebDAVAuthRequestHandler(WebDAVAuthRequestHandler):
--- tryton-server.orig/trytond/webdav/webdav.py 2011-10-24 15:57:46.000000000 +0200
-+++ tryton-server/trytond/webdav/webdav.py 2012-09-12 16:07:24.620219292 +0200
++++ tryton-server/trytond/webdav/webdav.py 2013-02-24 21:49:35.992089190 +0100
@@ -2,11 +2,33 @@
#this repository contains the full copyright notices and license terms.
import os
@@ -501,9 +501,9 @@ Description: Support new structure of pywebdav > 0.9.4.1.
+ raise Exception('Bad arguments')
+
Attachment()
---- tryton-server.orig/CHANGELOG 2012-09-11 19:41:40.000000000 +0200
-+++ tryton-server/CHANGELOG 2012-09-12 16:07:24.620219292 +0200
-@@ -7,6 +7,7 @@
+--- tryton-server.orig/CHANGELOG 2013-02-24 21:47:16.316806170 +0100
++++ tryton-server/CHANGELOG 2013-02-24 21:49:35.992089190 +0100
+@@ -16,6 +16,7 @@
Version 2.2.2 - 2012-03-28
* Bug fixes (see mercurial logs for details)
* Don't allow rpc call on ModelStorage without ModelView (CVE-2012-0215)
@@ -512,7 +512,7 @@ Description: Support new structure of pywebdav > 0.9.4.1.
Version 2.2.1 - 2011-12-26
* Bug fixes (see mercurial logs for details)
--- tryton-server.orig/doc/topics/install.rst 2011-10-24 15:57:45.000000000 +0200
-+++ tryton-server/doc/topics/install.rst 2012-09-12 16:07:24.620219292 +0200
++++ tryton-server/doc/topics/install.rst 2013-02-24 21:49:35.992089190 +0100
@@ -15,7 +15,7 @@
* polib (https://bitbucket.org/izi/polib/wiki/Home)
* Optional: psycopg 2 or later (http://www.initd.org/)
@@ -522,8 +522,8 @@ Description: Support new structure of pywebdav > 0.9.4.1.
* Optional: pydot (http://code.google.com/p/pydot/)
* Optional: pytz (http://pytz.sourceforge.net/)
* Optional: unoconv http://dag.wieers.com/home-made/unoconv/)
---- tryton-server.orig/etc/trytond.conf 2012-09-12 16:04:53.000000000 +0200
-+++ tryton-server/etc/trytond.conf 2012-09-12 16:07:24.620219292 +0200
+--- tryton-server.orig/etc/trytond.conf 2013-02-24 21:49:35.956090408 +0100
++++ tryton-server/etc/trytond.conf 2013-02-24 21:49:35.992089190 +0100
@@ -2,13 +2,13 @@
#this repository contains the full copyright notices and license terms.
[options]
@@ -552,7 +552,7 @@ Description: Support new structure of pywebdav > 0.9.4.1.
# allowed values are postgresql, sqlite, mysql
#db_type = postgresql
--- tryton-server.orig/setup.py 2011-10-24 15:57:45.000000000 +0200
-+++ tryton-server/setup.py 2012-09-12 16:07:24.620219292 +0200
++++ tryton-server/setup.py 2013-02-24 21:49:35.992089190 +0100
@@ -65,7 +65,7 @@
extras_require={
'PostgreSQL': ['psycopg2 >= 2.0'],
@@ -563,7 +563,7 @@ Description: Support new structure of pywebdav > 0.9.4.1.
'SSL': ['pyOpenSSL'],
'graphviz': ['pydot'],
--- tryton-server.orig/trytond/config.py 2012-03-17 11:25:18.000000000 +0100
-+++ tryton-server/trytond/config.py 2012-09-12 16:07:24.620219292 +0200
++++ tryton-server/trytond/config.py 2013-02-24 21:49:35.992089190 +0100
@@ -24,14 +24,15 @@
class ConfigManager(object):
def __init__(self, fname=None):
@@ -582,7 +582,7 @@ Description: Support new structure of pywebdav > 0.9.4.1.
'db_host': False,
'db_port': False,
--- tryton-server.orig/trytond/tests/test_mixins.py 2011-12-06 11:28:56.000000000 +0100
-+++ tryton-server/trytond/tests/test_mixins.py 2012-09-12 16:07:24.624219161 +0200
++++ tryton-server/trytond/tests/test_mixins.py 2013-02-24 21:49:35.992089190 +0100
@@ -30,7 +30,7 @@
urllib.quote(DB_NAME)))
@@ -609,7 +609,7 @@ Description: Support new structure of pywebdav > 0.9.4.1.
'tryton://%s/%s/wizard/test.test_wizard' % (server_name,
urllib.quote(DB_NAME)))
--- tryton-server.orig/trytond/url.py 2011-10-24 15:57:46.000000000 +0200
-+++ tryton-server/trytond/url.py 2012-09-12 16:07:24.624219161 +0200
++++ tryton-server/trytond/url.py 2013-02-24 21:49:35.992089190 +0100
@@ -16,7 +16,8 @@
from trytond.wizard import Wizard
from trytond.report import Report
@@ -621,7 +621,7 @@ Description: Support new structure of pywebdav > 0.9.4.1.
hostname.split('.'))
--- tryton-server.orig/trytond/webdav/webdav.xml 2011-10-24 15:57:46.000000000 +0200
-+++ tryton-server/trytond/webdav/webdav.xml 2012-09-12 16:07:24.624219161 +0200
++++ tryton-server/trytond/webdav/webdav.xml 2013-02-24 21:49:35.992089190 +0100
@@ -105,5 +105,122 @@
<field name="menu" ref="menu_collection_list"/>
<field name="group" ref="res.group_admin"/>
commit 00bf8beb589b2daaf33f0bcbb6e9c8d2d22e3e15
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Sun Feb 24 21:47:16 2013 +0100
Merging upstream version 2.2.7.
diff --git a/CHANGELOG b/CHANGELOG
index 6794b02..117e8ff 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Version 2.2.7 - 2013-02-12
+* Bug fixes (see mercurial logs for details)
+
Version 2.2.6 - 2012-12-23
* Bug fixes (see mercurial logs for details)
diff --git a/COPYRIGHT b/COPYRIGHT
index baf02b6..b4f2380 100644
--- a/COPYRIGHT
+++ b/COPYRIGHT
@@ -1,7 +1,7 @@
Copyright (C) 2004-2008 Tiny SPRL.
-Copyright (C) 2007-2012 Cédric Krier.
+Copyright (C) 2007-2013 Cédric Krier.
Copyright (C) 2007-2011 Bertrand Chenal.
-Copyright (C) 2008-2012 B2CK SPRL.
+Copyright (C) 2008-2013 B2CK SPRL.
Copyright (C) 2011 Openlabs Technologies & Consulting (P) Ltd.
This program is free software: you can redistribute it and/or modify
diff --git a/PKG-INFO b/PKG-INFO
index 7b5f520..c9e4ac7 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: trytond
-Version: 2.2.6
+Version: 2.2.7
Summary: Tryton server
Home-page: http://www.tryton.org/
Author: B2CK
diff --git a/trytond.egg-info/PKG-INFO b/trytond.egg-info/PKG-INFO
index 7b5f520..c9e4ac7 100644
--- a/trytond.egg-info/PKG-INFO
+++ b/trytond.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: trytond
-Version: 2.2.6
+Version: 2.2.7
Summary: Tryton server
Home-page: http://www.tryton.org/
Author: B2CK
diff --git a/trytond/model/browse.py b/trytond/model/browse.py
index d50d063..013a286 100644
--- a/trytond/model/browse.py
+++ b/trytond/model/browse.py
@@ -190,9 +190,11 @@ class BrowseRecord(object):
_datetime = data[j.datetime_field]
with Transaction().set_context(
_datetime=_datetime):
- ids = model2ids.setdefault(model, [])
+ ids = model2ids.setdefault((model, _datetime),
+ [])
ids.append(data[i])
- local_cache = model2cache.setdefault(model,
+ local_cache = model2cache.setdefault(
+ (model, _datetime),
LRUDict(RECORD_CACHE_SIZE))
data[i] = BrowseRecord(data[i], model,
ids, local_cache)
@@ -204,9 +206,10 @@ class BrowseRecord(object):
_datetime = data[j.datetime_field]
with Transaction().set_context(
_datetime=_datetime):
- ids = model2ids.setdefault(model, [])
+ ids = model2ids.setdefault((model, _datetime), [])
ids.extend(data[i])
- local_cache = model2cache.setdefault(model,
+ local_cache = model2cache.setdefault(
+ (model, _datetime),
LRUDict(RECORD_CACHE_SIZE))
data[i] = BrowseRecordList(
BrowseRecord(x, model, ids, local_cache)
diff --git a/trytond/version.py b/trytond/version.py
index b7c1217..ba76b6f 100644
--- a/trytond/version.py
+++ b/trytond/version.py
@@ -1,7 +1,7 @@
#This file is part of Tryton. The COPYRIGHT file at the top level of
#this repository contains the full copyright notices and license terms.
PACKAGE = "trytond"
-VERSION = "2.2.6"
+VERSION = "2.2.7"
LICENSE = "GPL-3"
WEBSITE = "http://www.tryton.org/"
commit 4f7075caae7e38a1eba8fca2622c1e09b29a9ada
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Sun Feb 24 21:46:03 2013 +0100
Merging upstream version 2.2.6.
diff --git a/CHANGELOG b/CHANGELOG
index bed2c66..6794b02 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Version 2.2.6 - 2012-12-23
+* Bug fixes (see mercurial logs for details)
+
Version 2.2.5 - 2012-11-05
* Bug fixes (see mercurial logs for details)
diff --git a/PKG-INFO b/PKG-INFO
index b6132a3..7b5f520 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: trytond
-Version: 2.2.5
+Version: 2.2.6
Summary: Tryton server
Home-page: http://www.tryton.org/
Author: B2CK
diff --git a/trytond.egg-info/PKG-INFO b/trytond.egg-info/PKG-INFO
index b6132a3..7b5f520 100644
--- a/trytond.egg-info/PKG-INFO
+++ b/trytond.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: trytond
-Version: 2.2.5
+Version: 2.2.6
Summary: Tryton server
Home-page: http://www.tryton.org/
Author: B2CK
diff --git a/trytond/model/modelsql.py b/trytond/model/modelsql.py
index f7a4210..3c1fdaf 100644
--- a/trytond/model/modelsql.py
+++ b/trytond/model/modelsql.py
@@ -1218,7 +1218,7 @@ class ModelSQL(ModelStorage):
cursor.execute(query_str, tables_args + qu2)
datas = cursor.dictfetchmany(cursor.IN_MAX)
- cache = cursor.get_cache()
+ cache = cursor.get_cache(Transaction().context)
cache.setdefault(self._name, LRUDict(RECORD_CACHE_SIZE))
delete_records = Transaction().delete_records.setdefault(self._name,
set())
diff --git a/trytond/protocols/dispatcher.py b/trytond/protocols/dispatcher.py
index 7ac34a0..b3680c5 100644
--- a/trytond/protocols/dispatcher.py
+++ b/trytond/protocols/dispatcher.py
@@ -222,9 +222,11 @@ def create(database_name, password, lang, admin_password):
'WHERE code = %s', 1) + ')' \
'WHERE login <> \'root\'', (lang,))
if hashlib:
- admin_password = hashlib.sha1(admin_password).hexdigest()
+ admin_password = hashlib.sha1(admin_password.encode('utf-8'))\
+ .hexdigest()
else:
- admin_password = sha.new(admin_password).hexdigest()
+ admin_password = sha.new(admin_password.encode('utf-8'))\
+ .hexdigest()
cursor.execute('UPDATE res_user ' \
'SET password = %s ' \
'WHERE login = \'admin\'', (admin_password,))
diff --git a/trytond/security.py b/trytond/security.py
index de0edca..576a0fd 100644
--- a/trytond/security.py
+++ b/trytond/security.py
@@ -21,7 +21,6 @@ def login(dbname, loginname, password, cache=True):
if not dbname in database_list:
pool.init()
user_obj = pool.get('res.user')
- password = password.decode('utf-8')
user_id = user_obj.get_login(loginname, password)
transaction.cursor.commit()
if user_id:
diff --git a/trytond/version.py b/trytond/version.py
index d61819c..b7c1217 100644
--- a/trytond/version.py
+++ b/trytond/version.py
@@ -1,7 +1,7 @@
#This file is part of Tryton. The COPYRIGHT file at the top level of
#this repository contains the full copyright notices and license terms.
PACKAGE = "trytond"
-VERSION = "2.2.5"
+VERSION = "2.2.6"
LICENSE = "GPL-3"
WEBSITE = "http://www.tryton.org/"
commit 251ce94ffa67177aa3fee767ba05d3c72bdd6899
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Sun Feb 24 21:44:10 2013 +0100
Merging upstream version 2.2.5.
diff --git a/CHANGELOG b/CHANGELOG
index c00b801..bed2c66 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Version 2.2.5 - 2012-11-05
+* Bug fixes (see mercurial logs for details)
+
Version 2.2.4 - 2012-09-10
* Bug fixes (see mercurial logs for details)
diff --git a/PKG-INFO b/PKG-INFO
index 2faa0f5..b6132a3 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
-Metadata-Version: 1.0
+Metadata-Version: 1.1
Name: trytond
-Version: 2.2.4
+Version: 2.2.5
Summary: Tryton server
Home-page: http://www.tryton.org/
Author: B2CK
diff --git a/doc/topics/views/index.rst b/doc/topics/views/index.rst
index 876f911..a0c47ce 100644
--- a/doc/topics/views/index.rst
+++ b/doc/topics/views/index.rst
@@ -358,10 +358,10 @@ hpaned, vpaned
* ``colspan``: see in common-attributes-colspan_. The default
for panes is 4 columns.
-child1, child2
-^^^^^^^^^^^^^^
+child
+^^^^^
-Contains the two childs of a hpaned or vpaned.
+Contains the childs of a hpaned or vpaned.
.. _example_form_view:
diff --git a/trytond.egg-info/PKG-INFO b/trytond.egg-info/PKG-INFO
index 2faa0f5..b6132a3 100644
--- a/trytond.egg-info/PKG-INFO
+++ b/trytond.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
-Metadata-Version: 1.0
+Metadata-Version: 1.1
Name: trytond
-Version: 2.2.4
+Version: 2.2.5
Summary: Tryton server
Home-page: http://www.tryton.org/
Author: B2CK
diff --git a/trytond/ir/lang.py b/trytond/ir/lang.py
index 70901bd..9112f07 100644
--- a/trytond/ir/lang.py
+++ b/trytond/ir/lang.py
@@ -59,7 +59,7 @@ class Lang(ModelSQL, ModelView, Cacheable):
if ids:
ids += self.search([('name',) + clause[1:]], order=[])
return [('id', 'in', ids)]
- return [('name',) + clause[1:]]
+ return [('name',) + tuple(clause[1:])]
def read(self, ids, fields_names=None):
pool = Pool()
diff --git a/trytond/ir/rule.py b/trytond/ir/rule.py
index e4fafdb..ea63cc9 100644
--- a/trytond/ir/rule.py
+++ b/trytond/ir/rule.py
@@ -156,7 +156,7 @@ class Rule(ModelSQL, ModelView):
if not Transaction().context.get('user'):
return '', []
with Transaction().set_user(Transaction().context['user']):
- return self.domain_get(model_name)
+ return self.domain_get(model_name, mode=mode)
pool = Pool()
rule_group_obj = pool.get('ir.rule.group')
diff --git a/trytond/model/modelsql.py b/trytond/model/modelsql.py
index 73f3f0b..f7a4210 100644
--- a/trytond/model/modelsql.py
+++ b/trytond/model/modelsql.py
@@ -691,7 +691,7 @@ class ModelSQL(ModelStorage):
obj = pool.get(model_name)
record2 = obj.read(record_id, fields_related[field])
del record2['id']
- fields_related2values[field][record_id] = record2
+ fields_related2values[field][record[field]] = record2
if to_del or fields_related.keys() or datetime_fields:
for record in res:
@@ -717,7 +717,7 @@ class ModelSQL(ModelStorage):
continue
record[field + '.' + related] = \
fields_related2values[field][
- record_id][related]
+ record[field]][related]
for field in to_del:
del record[field]
diff --git a/trytond/res/user.py b/trytond/res/user.py
index d0371e2..26d0c60 100644
--- a/trytond/res/user.py
+++ b/trytond/res/user.py
@@ -223,7 +223,7 @@ class User(ModelSQL, ModelView):
], order=[])
if len(ids) == 1:
return [('id', '=', ids[0])]
- return [(self._rec_name,) + clause[1:]]
+ return [(self._rec_name,) + tuple(clause[1:])]
def copy(self, ids, default=None):
if default is None:
diff --git a/trytond/version.py b/trytond/version.py
index 93ae01b..d61819c 100644
--- a/trytond/version.py
+++ b/trytond/version.py
@@ -1,7 +1,7 @@
#This file is part of Tryton. The COPYRIGHT file at the top level of
#this repository contains the full copyright notices and license terms.
PACKAGE = "trytond"
-VERSION = "2.2.4"
+VERSION = "2.2.5"
LICENSE = "GPL-3"
WEBSITE = "http://www.tryton.org/"
commit a95e1304dc9243f2988abdfb6a4d09c851196b79
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Wed Oct 3 23:00:00 2012 +0200
Releasing debian version 2.2.4-1.
diff --git a/debian/changelog b/debian/changelog
index 58354ba..5db976e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+tryton-server (2.2.4-1) unstable; urgency=low
+
+ * Merging upstream version 2.2.4.
+ * Refreshing patch 02-support-pywebdav-0.9.8.
+
+ -- Mathias Behrle <mathiasb at m9s.biz> Wed, 03 Oct 2012 21:52:54 +0200
+
tryton-server (2.2.3-2) unstable; urgency=low
* Updating maintainers field.
commit 1689e5430028386f835514346574d9c72f1766ca
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Wed Sep 12 16:50:55 2012 +0200
Refreshing patch 02-support-pywebdav-0.9.8.
diff --git a/debian/patches/02-support-pywebdav-0.9.8 b/debian/patches/02-support-pywebdav-0.9.8
index 79ab594..8e4e852 100644
--- a/debian/patches/02-support-pywebdav-0.9.8
+++ b/debian/patches/02-support-pywebdav-0.9.8
@@ -1,7 +1,7 @@
Author: Mathias Behrle <mathiasb at m9s.biz>
Description: Support new structure of pywebdav > 0.9.4.1.
---- tryton-server.orig/trytond/protocols/webdav.py 2012-05-09 11:42:39.277620212 +0200
-+++ tryton-server/trytond/protocols/webdav.py 2012-05-09 11:42:59.112947846 +0200
+--- tryton-server.orig/trytond/protocols/webdav.py 2012-09-11 19:41:40.000000000 +0200
++++ tryton-server/trytond/protocols/webdav.py 2012-09-12 16:44:26.630387413 +0200
@@ -12,11 +12,15 @@
import logging
from threading import local
@@ -127,7 +127,7 @@ Description: Support new structure of pywebdav > 0.9.4.1.
global CACHE
CACHE = LocalDict()
if not Transaction().cursor:
-@@ -527,22 +538,57 @@
+@@ -527,25 +538,57 @@
if dbname:
Cache.resets(dbname)
@@ -154,12 +154,16 @@ Description: Support new structure of pywebdav > 0.9.4.1.
+
def get_userinfo(self, user, password, command=''):
- dbname = urllib.unquote_plus(self.path.split('/', 2)[1])
-+ path = urlparse.urlparse(self.path).path
-+ dbname = urllib.unquote_plus(path.split('/', 2)[1])
- if not dbname:
-- database = Database().connect()
+- database = Database().connect()
+- cursor = database.cursor()
+- databases = database.list(cursor)
+- cursor.close()
+- if not dbname or dbname not in databases:
- return 1
- user = int(login(dbname, user, password, cache=False))
++ path = urlparse.urlparse(self.path).path
++ dbname = urllib.unquote_plus(path.split('/', 2)[1])
++ if not dbname:
+ Database().connect()
+ return True
+ if user:
@@ -196,8 +200,8 @@ Description: Support new structure of pywebdav > 0.9.4.1.
class SecureWebDAVAuthRequestHandler(WebDAVAuthRequestHandler):
---- tryton-server.orig/trytond/webdav/webdav.py 2012-05-09 11:42:39.277620212 +0200
-+++ tryton-server/trytond/webdav/webdav.py 2012-05-09 11:42:59.112947846 +0200
+--- tryton-server.orig/trytond/webdav/webdav.py 2011-10-24 15:57:46.000000000 +0200
++++ tryton-server/trytond/webdav/webdav.py 2012-09-12 16:07:24.620219292 +0200
@@ -2,11 +2,33 @@
#this repository contains the full copyright notices and license terms.
import os
@@ -497,9 +501,9 @@ Description: Support new structure of pywebdav > 0.9.4.1.
+ raise Exception('Bad arguments')
+
Attachment()
---- tryton-server.orig/CHANGELOG 2012-05-09 11:42:39.277620212 +0200
-+++ tryton-server/CHANGELOG 2012-05-09 11:42:59.112947846 +0200
-@@ -4,6 +4,7 @@
+--- tryton-server.orig/CHANGELOG 2012-09-11 19:41:40.000000000 +0200
++++ tryton-server/CHANGELOG 2012-09-12 16:07:24.620219292 +0200
+@@ -7,6 +7,7 @@
Version 2.2.2 - 2012-03-28
* Bug fixes (see mercurial logs for details)
* Don't allow rpc call on ModelStorage without ModelView (CVE-2012-0215)
@@ -507,8 +511,8 @@ Description: Support new structure of pywebdav > 0.9.4.1.
Version 2.2.1 - 2011-12-26
* Bug fixes (see mercurial logs for details)
---- tryton-server.orig/doc/topics/install.rst 2012-05-09 11:42:39.277620212 +0200
-+++ tryton-server/doc/topics/install.rst 2012-05-09 11:42:59.112947846 +0200
+--- tryton-server.orig/doc/topics/install.rst 2011-10-24 15:57:45.000000000 +0200
++++ tryton-server/doc/topics/install.rst 2012-09-12 16:07:24.620219292 +0200
@@ -15,7 +15,7 @@
* polib (https://bitbucket.org/izi/polib/wiki/Home)
* Optional: psycopg 2 or later (http://www.initd.org/)
@@ -518,8 +522,8 @@ Description: Support new structure of pywebdav > 0.9.4.1.
* Optional: pydot (http://code.google.com/p/pydot/)
* Optional: pytz (http://pytz.sourceforge.net/)
* Optional: unoconv http://dag.wieers.com/home-made/unoconv/)
---- tryton-server.orig/etc/trytond.conf 2012-05-09 11:42:56.205046418 +0200
-+++ tryton-server/etc/trytond.conf 2012-05-09 11:42:59.112947846 +0200
+--- tryton-server.orig/etc/trytond.conf 2012-09-12 16:04:53.000000000 +0200
++++ tryton-server/etc/trytond.conf 2012-09-12 16:07:24.620219292 +0200
@@ -2,13 +2,13 @@
#this repository contains the full copyright notices and license terms.
[options]
@@ -547,8 +551,8 @@ Description: Support new structure of pywebdav > 0.9.4.1.
# Configure the database type
# allowed values are postgresql, sqlite, mysql
#db_type = postgresql
---- tryton-server.orig/setup.py 2012-05-09 11:42:39.277620212 +0200
-+++ tryton-server/setup.py 2012-05-09 11:42:59.112947846 +0200
+--- tryton-server.orig/setup.py 2011-10-24 15:57:45.000000000 +0200
++++ tryton-server/setup.py 2012-09-12 16:07:24.620219292 +0200
@@ -65,7 +65,7 @@
extras_require={
'PostgreSQL': ['psycopg2 >= 2.0'],
@@ -558,8 +562,8 @@ Description: Support new structure of pywebdav > 0.9.4.1.
'unoconv': ['unoconv'],
'SSL': ['pyOpenSSL'],
'graphviz': ['pydot'],
---- tryton-server.orig/trytond/config.py 2012-05-09 11:42:39.277620212 +0200
-+++ tryton-server/trytond/config.py 2012-05-09 11:42:59.112947846 +0200
+--- tryton-server.orig/trytond/config.py 2012-03-17 11:25:18.000000000 +0100
++++ tryton-server/trytond/config.py 2012-09-12 16:07:24.620219292 +0200
@@ -24,14 +24,15 @@
class ConfigManager(object):
def __init__(self, fname=None):
@@ -577,8 +581,8 @@ Description: Support new structure of pywebdav > 0.9.4.1.
'db_type': 'postgresql',
'db_host': False,
'db_port': False,
---- tryton-server.orig/trytond/tests/test_mixins.py 2012-05-09 11:42:39.277620212 +0200
-+++ tryton-server/trytond/tests/test_mixins.py 2012-05-09 11:42:59.116947710 +0200
+--- tryton-server.orig/trytond/tests/test_mixins.py 2011-12-06 11:28:56.000000000 +0100
++++ tryton-server/trytond/tests/test_mixins.py 2012-09-12 16:07:24.624219161 +0200
@@ -30,7 +30,7 @@
urllib.quote(DB_NAME)))
@@ -604,8 +608,8 @@ Description: Support new structure of pywebdav > 0.9.4.1.
self.assertEqual(self.urlwizard.get_url(),
'tryton://%s/%s/wizard/test.test_wizard' % (server_name,
urllib.quote(DB_NAME)))
---- tryton-server.orig/trytond/url.py 2012-05-09 11:42:39.277620212 +0200
-+++ tryton-server/trytond/url.py 2012-05-09 11:42:59.116947710 +0200
+--- tryton-server.orig/trytond/url.py 2011-10-24 15:57:46.000000000 +0200
++++ tryton-server/trytond/url.py 2012-09-12 16:07:24.624219161 +0200
@@ -16,7 +16,8 @@
from trytond.wizard import Wizard
from trytond.report import Report
@@ -616,8 +620,8 @@ Description: Support new structure of pywebdav > 0.9.4.1.
hostname = '.'.join(encodings.idna.ToASCII(part) for part in
hostname.split('.'))
---- tryton-server.orig/trytond/webdav/webdav.xml 2012-05-09 11:42:39.277620212 +0200
-+++ tryton-server/trytond/webdav/webdav.xml 2012-05-09 11:42:59.116947710 +0200
+--- tryton-server.orig/trytond/webdav/webdav.xml 2011-10-24 15:57:46.000000000 +0200
++++ tryton-server/trytond/webdav/webdav.xml 2012-09-12 16:07:24.624219161 +0200
@@ -105,5 +105,122 @@
<field name="menu" ref="menu_collection_list"/>
<field name="group" ref="res.group_admin"/>
commit 89b56cc3212917f1421d715d7cf0560f66aa34f9
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Tue Sep 11 19:41:40 2012 +0200
Merging upstream version 2.2.4.
diff --git a/CHANGELOG b/CHANGELOG
index 78bb31c..c00b801 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Version 2.2.4 - 2012-09-10
+* Bug fixes (see mercurial logs for details)
+
Version 2.2.3 - 2012-05-07
* Bug fixes (see mercurial logs for details)
diff --git a/PKG-INFO b/PKG-INFO
index 1feace8..2faa0f5 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
-Metadata-Version: 1.1
+Metadata-Version: 1.0
Name: trytond
-Version: 2.2.3
+Version: 2.2.4
Summary: Tryton server
Home-page: http://www.tryton.org/
Author: B2CK
diff --git a/trytond.egg-info/PKG-INFO b/trytond.egg-info/PKG-INFO
index 1feace8..2faa0f5 100644
--- a/trytond.egg-info/PKG-INFO
+++ b/trytond.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
-Metadata-Version: 1.1
+Metadata-Version: 1.0
Name: trytond
-Version: 2.2.3
+Version: 2.2.4
Summary: Tryton server
Home-page: http://www.tryton.org/
Author: B2CK
diff --git a/trytond/backend/mysql/database.py b/trytond/backend/mysql/database.py
index b702521..8b76b60 100644
--- a/trytond/backend/mysql/database.py
+++ b/trytond/backend/mysql/database.py
@@ -40,6 +40,7 @@ class Database(DatabaseInterface):
def cursor(self, autocommit=False, readonly=False):
conv = MySQLdb.converters.conversions.copy()
conv[float] = lambda value, _: repr(value)
+ conv[MySQLdb.constants.FIELD_TYPE.TIME] = MySQLdb.times.Time_or_None
args = {
'db': self.database_name,
'sql_mode': 'traditional,postgresql',
diff --git a/trytond/ir/ui/menu.py b/trytond/ir/ui/menu.py
index ec98fd1..fa6e977 100644
--- a/trytond/ir/ui/menu.py
+++ b/trytond/ir/ui/menu.py
@@ -76,12 +76,13 @@ class UIMenu(ModelSQL, ModelView):
order_field='name'), 'get_rec_name', searcher='search_rec_name')
icon = fields.Selection('list_icons', 'Icon', translate=False)
action = fields.Function(fields.Reference('Action',
- selection=[
- ('ir.action.report', 'ir.action.report'),
- ('ir.action.act_window', 'ir.action.act_window'),
- ('ir.action.wizard', 'ir.action.wizard'),
- ('ir.action.url', 'ir.action.url'),
- ]), 'get_action', setter='set_action')
+ selection=[
+ ('', ''),
+ ('ir.action.report', 'ir.action.report'),
+ ('ir.action.act_window', 'ir.action.act_window'),
+ ('ir.action.wizard', 'ir.action.wizard'),
+ ('ir.action.url', 'ir.action.url'),
+ ]), 'get_action', setter='set_action')
active = fields.Boolean('Active')
def __init__(self):
diff --git a/trytond/ir/ui/view.py b/trytond/ir/ui/view.py
index 72a7422..c3a134e 100644
--- a/trytond/ir/ui/view.py
+++ b/trytond/ir/ui/view.py
@@ -138,7 +138,10 @@ class View(ModelSQL, ModelView):
('module', '=', view.module),
])
for view2 in self.browse(view_ids):
- tree2 = etree.fromstring(view2.arch)
+ xml2 = view2.arch.strip()
+ if not xml2:
+ continue
+ tree2 = etree.fromstring(xml2)
root2_element = tree2.getroottree().getroot()
strings += self._translate_view(root2_element)
if not strings:
diff --git a/trytond/model/browse.py b/trytond/model/browse.py
index 2f8c1af..d50d063 100644
--- a/trytond/model/browse.py
+++ b/trytond/model/browse.py
@@ -242,9 +242,13 @@ class BrowseRecord(object):
return "BrowseRecord(%s, %d)" % (self._model_name, self.id)
def __eq__(self, other):
+ if not isinstance(other, BrowseRecord):
+ return False
return (self._model_name, self.id) == (other._model_name, other.id)
def __ne__(self, other):
+ if not isinstance(other, BrowseRecord):
+ return True
return (self._model_name, self.id) != (other._model_name, other.id)
# we need to define __unicode__ even though we've already defined __str__
diff --git a/trytond/model/fields/one2many.py b/trytond/model/fields/one2many.py
index 5ae64c6..0c0c766 100644
--- a/trytond/model/fields/one2many.py
+++ b/trytond/model/fields/one2many.py
@@ -88,7 +88,7 @@ class One2Many(Field):
for i in chain(*ids2):
if i in cache[self.model_name] \
and self.field in cache[self.model_name][i]:
- res[cache[self.model_name][i][self.field].id].append(i)
+ res[cache[self.model_name][i][self.field]].append(i)
else:
ids3.append(i)
diff --git a/trytond/model/modelsql.py b/trytond/model/modelsql.py
index c75eefb..73f3f0b 100644
--- a/trytond/model/modelsql.py
+++ b/trytond/model/modelsql.py
@@ -1800,15 +1800,21 @@ class ModelSQL(ModelStorage):
else:
if (arg[2] is False) and (arg[1] == '='):
if table._columns[arg[0]]._type == 'boolean':
- qu1.append('("%s"."%s" = %%s)' % \
- (table._table, arg[0]))
+ qu1.append('(("%s"."%s" = %%s) OR ("%s"."%s" IS NULL))'
+ % (table._table, arg[0], table._table, arg[0]))
qu2.append(False)
else:
qu1.append('("%s"."%s" IS NULL)' % \
(table._table, arg[0]))
elif (arg[2] is False) and (arg[1] == '!='):
- qu1.append('("%s"."%s" IS NOT NULL)' % \
- (table._table, arg[0]))
+ if table._columns[arg[0]]._type == 'boolean':
+ qu1.append('(("%s"."%s" != %%s) '
+ 'AND ("%s"."%s" IS NOT NULL))'
+ % (table._table, arg[0], table._table, arg[0]))
+ qu2.append(False)
+ else:
+ qu1.append('("%s"."%s" IS NOT NULL)' % \
+ (table._table, arg[0]))
else:
if arg[0] == 'id':
qu1.append('("%s"."%s" %s %%s)' % \
@@ -1890,8 +1896,7 @@ class ModelSQL(ModelStorage):
table_name + '.' + link_field)
for i in range(len(tables)):
if table_name in tables[i]:
- args = tables_args[tables[i]]
- del tables_args[tables[i]]
+ args = tables_args.pop(tables[i], [])
tables[i] = tables[i].replace(table_name,
table_name + '.' + link_field)
tables_args[tables[i]] = args
@@ -1926,8 +1931,7 @@ class ModelSQL(ModelStorage):
table_name + '.' + link_field)
for i in range(len(tables)):
if table_name in tables[i]:
- args = tables_args[tables[i]]
- del tables_args[tables[i]]
+ args = tables_args.pop(tables[i], [])
tables[i] = tables[i].replace(table_name,
table_name + '.' + link_field)
tables_args[tables[i]] = args
@@ -1946,8 +1950,7 @@ class ModelSQL(ModelStorage):
table_name2 + '.' + link_field2)
for i in range(1, len(tables)):
if table_name2 in tables[i]:
- args = tables_args[tables[i]]
- del tables_args[tables[i]]
+ args = tables_args.pop(tables[i], [])
tables[i] = tables[i].replace(table_name2,
table_name2 + '.' + link_field2)
tables_args[tables[i]] = args
@@ -2035,8 +2038,8 @@ class ModelSQL(ModelStorage):
'order': otype,
})
else:
- order_by.append('"' + table_name + '".' + field_name + \
- ' ' + otype)
+ order_by.append('"%s"."%s" %s'
+ % (table_name, field_name, otype))
return order_by, tables, tables_args
if field in self._inherit_fields.keys():
diff --git a/trytond/protocols/webdav.py b/trytond/protocols/webdav.py
index 735de79..273fd36 100644
--- a/trytond/protocols/webdav.py
+++ b/trytond/protocols/webdav.py
@@ -529,8 +529,11 @@ class WebDAVAuthRequestHandler(AuthServer.BufferedAuthRequestHandler,
def get_userinfo(self, user, password, command=''):
dbname = urllib.unquote_plus(self.path.split('/', 2)[1])
- if not dbname:
- database = Database().connect()
+ database = Database().connect()
+ cursor = database.cursor()
+ databases = database.list(cursor)
+ cursor.close()
+ if not dbname or dbname not in databases:
return 1
user = int(login(dbname, user, password, cache=False))
diff --git a/trytond/tests/test_fields.py b/trytond/tests/test_fields.py
index 69861ed..51d0e27 100644
--- a/trytond/tests/test_fields.py
+++ b/trytond/tests/test_fields.py
@@ -135,6 +135,23 @@ class FieldsTestCase(unittest.TestCase):
boolean3_id = self.boolean.create({})
self.assert_(boolean3_id)
+ # Test search with NULL value
+ boolean4_id = self.boolean.create({
+ 'boolean': None,
+ })
+ self.assert_(boolean4_id)
+
+ boolean_ids = self.boolean.search([
+ ('boolean', '=', False),
+ ])
+ self.assertEqual(boolean_ids,
+ [boolean2_id, boolean3_id, boolean4_id])
+
+ boolean_ids = self.boolean.search([
+ ('boolean', '!=', False),
+ ])
+ self.assertEqual(boolean_ids, [boolean1_id])
+
boolean3 = self.boolean.read(boolean3_id, ['boolean'])
self.assert_(boolean3['boolean'] == False)
diff --git a/trytond/version.py b/trytond/version.py
index 9ffcf38..93ae01b 100644
--- a/trytond/version.py
+++ b/trytond/version.py
@@ -1,7 +1,7 @@
#This file is part of Tryton. The COPYRIGHT file at the top level of
#this repository contains the full copyright notices and license terms.
PACKAGE = "trytond"
-VERSION = "2.2.3"
+VERSION = "2.2.4"
LICENSE = "GPL-3"
WEBSITE = "http://www.tryton.org/"
commit d24d57b6a9fc51f40ecaea84d8d72c6bab29b20d
Author: Daniel Baumann <daniel at debian.org>
Date: Sat Jun 30 17:37:46 2012 +0200
Releasing debian version 2.2.3-2.
diff --git a/debian/changelog b/debian/changelog
index c9619aa..58354ba 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,14 @@
+tryton-server (2.2.3-2) unstable; urgency=low
+
+ * Updating maintainers field.
+ * Updating vcs fields.
+ * Switching to xz compression.
+ * Updating to debhelper version 9.
+ * Correcting copyright file to match format version 1.0.
+ * Sorting overrides alphabetically in rules.
+
+ -- Daniel Baumann <daniel at debian.org> Sat, 30 Jun 2012 17:37:41 +0200
+
tryton-server (2.2.3-1) unstable; urgency=low
* Merging upstream version 2.2.3.
commit da5cd86e580f767a08a26af62a33523e4808c097
Author: Daniel Baumann <daniel at 127011.net>
Date: Sat Jun 30 17:11:32 2012 +0200
Sorting overrides alphabetically in rules.
diff --git a/debian/rules b/debian/rules
index 1b0b646..d956c32 100755
--- a/debian/rules
+++ b/debian/rules
@@ -3,9 +3,6 @@
%:
dh ${@} --with python2
-override_dh_installinit:
- dh_installinit --update-rcd-params='defaults 21'
-
override_dh_auto_clean:
dh_auto_clean
@@ -13,3 +10,6 @@ override_dh_auto_clean:
override_dh_builddeb:
dh_builddeb -- -Zxz -z9
+
+override_dh_installinit:
+ dh_installinit --update-rcd-params='defaults 21'
commit ee71ba586bb9304165455a4ec11fb0cd4ab216e2
Author: Daniel Baumann <daniel at 127011.net>
Date: Sat Jun 30 17:11:13 2012 +0200
Correcting copyright file to match format version 1.0.
diff --git a/debian/copyright b/debian/copyright
index 42de24d..f5e10ab 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -1,20 +1,18 @@
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Files: *
-Copyright:
- (C) 2004-2008 Tiny SPRL
- (C) 2007-2012 Cedric Krier
- (C) 2007-2011 Bertrand Chenal
- (C) 2008-2012 B2CK SPRL
- (C) 2011 Openlabs Technologies & Consulting (P) Ltd.
+Copyright: 2004-2008 Tiny SPRL
+ 2007-2012 Cedric Krier
+ 2007-2011 Bertrand Chenal
+ 2008-2012 B2CK SPRL
+ 2011 Openlabs Technologies & Consulting (P) Ltd.
License: GPL-3+
Files: doc/*
-Copyright:
- (C) 2008-2011 Bertrand Chenal
- (C) 2008-2011 Cedric Krier
- (C) 2008-2011 Ian Wilson
- (C) 2008-2011 Udo Spallek
+Copyright: 2008-2011 Bertrand Chenal
+ 2008-2011 Cedric Krier
+ 2008-2011 Ian Wilson
+ 2008-2011 Udo Spallek
License: GPL-3+
Files: */icons/*
@@ -22,9 +20,8 @@ Copyright: not applicable
License: public-domain
Files: debian/*
-Copyright:
- (C) 2009-2012 Daniel Baumann <daniel at debian.org>
- (C) 2010-2012 Mathias Behrle <mathiasb at m9s.biz>
+Copyright: 2009-2012 Daniel Baumann <daniel at debian.org>
+ 2010-2012 Mathias Behrle <mathiasb at m9s.biz>
License: GPL-3+
License: GPL-3+
commit e32ba2da4c55d63fff4a5522d3e40dd3bd65ff71
Author: Daniel Baumann <daniel at 127011.net>
Date: Sat Jun 30 17:11:13 2012 +0200
Updating to debhelper version 9.
diff --git a/debian/compat b/debian/compat
index 45a4fb7..ec63514 100644
--- a/debian/compat
+++ b/debian/compat
@@ -1 +1 @@
-8
+9
diff --git a/debian/control b/debian/control
index 83f842a..51f48da 100644
--- a/debian/control
+++ b/debian/control
@@ -4,7 +4,7 @@ Priority: optional
Maintainer: Debian Tryton Maintainers <maintainers at debian.tryton.org>
Uploaders: Daniel Baumann <daniel at debian.org>, Mathias Behrle <mathiasb at m9s.biz>
Dm-Upload-Allowed: yes
-Build-Depends: debhelper (>= 8), python (>= 2.6.6-3~), python-setuptools
+Build-Depends: debhelper (>= 9), python (>= 2.6.6-3~), python-setuptools
Standards-Version: 3.9.3
Homepage: http://www.tryton.org/
Vcs-Browser: http://debian.tryton.org/gitweb/?p=packages/tryton-server.git
commit 4fd62f143e1f930978aa64ff29b0208bea905253
Author: Daniel Baumann <daniel at 127011.net>
Date: Sat Jun 30 17:11:13 2012 +0200
Switching to xz compression.
diff --git a/debian/rules b/debian/rules
index 4afa7bb..1b0b646 100755
--- a/debian/rules
+++ b/debian/rules
@@ -10,3 +10,6 @@ override_dh_auto_clean:
dh_auto_clean
rm -rf *.egg-info
+
+override_dh_builddeb:
+ dh_builddeb -- -Zxz -z9
diff --git a/debian/source/options b/debian/source/options
index d053b65..22a4de9 100644
--- a/debian/source/options
+++ b/debian/source/options
@@ -1,2 +1,2 @@
-compression = gzip
+compression = xz
compression-level = 9
commit b720e8ea4e9f91929cd31e7c39146667ee3a9c19
Author: Daniel Baumann <daniel at 127011.net>
Date: Sat Jun 30 16:55:07 2012 +0200
Updating vcs fields.
diff --git a/debian/control b/debian/control
index c4adb4e..83f842a 100644
--- a/debian/control
+++ b/debian/control
@@ -7,8 +7,8 @@ Dm-Upload-Allowed: yes
Build-Depends: debhelper (>= 8), python (>= 2.6.6-3~), python-setuptools
Standards-Version: 3.9.3
Homepage: http://www.tryton.org/
-Vcs-Browser: http://git.debian-maintainers.org/?p=tryton/tryton-server.git
-Vcs-Git: git://git.debian-maintainers.org/git/tryton/tryton-server.git
+Vcs-Browser: http://debian.tryton.org/gitweb/?p=packages/tryton-server.git
+Vcs-Git: git://debian.tryton.org/git/packages/tryton-server.git
X-Python-Version: >= 2.6
Package: tryton-server
commit 9125ca7fae836c768652f06376e3d854da303e9b
Author: Daniel Baumann <daniel at 127011.net>
Date: Sat Jun 30 16:47:48 2012 +0200
Updating maintainers field.
diff --git a/debian/control b/debian/control
index 59afa73..c4adb4e 100644
--- a/debian/control
+++ b/debian/control
@@ -1,7 +1,7 @@
Source: tryton-server
Section: python
Priority: optional
-Maintainer: Debian Tryton Maintainers <tryton at lists.debian-maintainers.org>
+Maintainer: Debian Tryton Maintainers <maintainers at debian.tryton.org>
Uploaders: Daniel Baumann <daniel at debian.org>, Mathias Behrle <mathiasb at m9s.biz>
Dm-Upload-Allowed: yes
Build-Depends: debhelper (>= 8), python (>= 2.6.6-3~), python-setuptools
commit 9c839fe952f562137d0edd783786bfefffdf6213
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Wed May 9 13:14:36 2012 +0200
Releasing debian version 2.2.3-1.
diff --git a/debian/changelog b/debian/changelog
index 18ae927..c9619aa 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+tryton-server (2.2.3-1) unstable; urgency=low
+
+ * Merging upstream version 2.2.3.
+ * Refreshing patch 02-support-pywebdav-0.9.8.
+ * Updating years in copyright.
+
+ -- Mathias Behrle <mathiasb at m9s.biz> Wed, 09 May 2012 11:59:55 +0200
+
tryton-server (2.2.2-1) unstable; urgency=high
* Merging upstream version 2.2.2.
commit b2fa1799b3a988b68245b13ab03b93d6a7cfb490
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Wed May 9 11:59:50 2012 +0200
Updating years in copyright.
diff --git a/debian/copyright b/debian/copyright
index 3bf80a0..42de24d 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -3,9 +3,9 @@ Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Files: *
Copyright:
(C) 2004-2008 Tiny SPRL
- (C) 2007-2011 Cedric Krier
+ (C) 2007-2012 Cedric Krier
(C) 2007-2011 Bertrand Chenal
- (C) 2008-2011 B2CK SPRL
+ (C) 2008-2012 B2CK SPRL
(C) 2011 Openlabs Technologies & Consulting (P) Ltd.
License: GPL-3+
commit f31d66d5d9f323d70c337799be34f502d34fed8a
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Wed May 9 11:44:37 2012 +0200
Refreshing patch 02-support-pywebdav-0.9.8.
diff --git a/debian/patches/02-support-pywebdav-0.9.8 b/debian/patches/02-support-pywebdav-0.9.8
index db55045..79ab594 100644
--- a/debian/patches/02-support-pywebdav-0.9.8
+++ b/debian/patches/02-support-pywebdav-0.9.8
@@ -1,7 +1,7 @@
Author: Mathias Behrle <mathiasb at m9s.biz>
Description: Support new structure of pywebdav > 0.9.4.1.
---- tryton-server.orig/trytond/protocols/webdav.py 2012-03-28 23:01:53.000000000 +0200
-+++ tryton-server/trytond/protocols/webdav.py 2012-03-28 23:11:24.303392800 +0200
+--- tryton-server.orig/trytond/protocols/webdav.py 2012-05-09 11:42:39.277620212 +0200
++++ tryton-server/trytond/protocols/webdav.py 2012-05-09 11:42:59.112947846 +0200
@@ -12,11 +12,15 @@
import logging
from threading import local
@@ -196,8 +196,8 @@ Description: Support new structure of pywebdav > 0.9.4.1.
class SecureWebDAVAuthRequestHandler(WebDAVAuthRequestHandler):
---- tryton-server.orig/trytond/webdav/webdav.py 2011-10-24 15:57:46.000000000 +0200
-+++ tryton-server/trytond/webdav/webdav.py 2012-03-28 23:04:37.829024886 +0200
+--- tryton-server.orig/trytond/webdav/webdav.py 2012-05-09 11:42:39.277620212 +0200
++++ tryton-server/trytond/webdav/webdav.py 2012-05-09 11:42:59.112947846 +0200
@@ -2,11 +2,33 @@
#this repository contains the full copyright notices and license terms.
import os
@@ -497,9 +497,9 @@ Description: Support new structure of pywebdav > 0.9.4.1.
+ raise Exception('Bad arguments')
+
Attachment()
---- tryton-server.orig/CHANGELOG 2012-03-28 23:01:53.000000000 +0200
-+++ tryton-server/CHANGELOG 2012-03-28 23:06:23.945466018 +0200
-@@ -1,6 +1,7 @@
+--- tryton-server.orig/CHANGELOG 2012-05-09 11:42:39.277620212 +0200
++++ tryton-server/CHANGELOG 2012-05-09 11:42:59.112947846 +0200
+@@ -4,6 +4,7 @@
Version 2.2.2 - 2012-03-28
* Bug fixes (see mercurial logs for details)
* Don't allow rpc call on ModelStorage without ModelView (CVE-2012-0215)
@@ -507,8 +507,8 @@ Description: Support new structure of pywebdav > 0.9.4.1.
Version 2.2.1 - 2011-12-26
* Bug fixes (see mercurial logs for details)
---- tryton-server.orig/doc/topics/install.rst 2011-10-24 15:57:45.000000000 +0200
-+++ tryton-server/doc/topics/install.rst 2012-03-28 23:04:37.829024886 +0200
+--- tryton-server.orig/doc/topics/install.rst 2012-05-09 11:42:39.277620212 +0200
++++ tryton-server/doc/topics/install.rst 2012-05-09 11:42:59.112947846 +0200
@@ -15,7 +15,7 @@
* polib (https://bitbucket.org/izi/polib/wiki/Home)
* Optional: psycopg 2 or later (http://www.initd.org/)
@@ -518,8 +518,8 @@ Description: Support new structure of pywebdav > 0.9.4.1.
* Optional: pydot (http://code.google.com/p/pydot/)
* Optional: pytz (http://pytz.sourceforge.net/)
* Optional: unoconv http://dag.wieers.com/home-made/unoconv/)
---- tryton-server.orig/etc/trytond.conf 2012-03-28 23:03:51.000000000 +0200
-+++ tryton-server/etc/trytond.conf 2012-03-28 23:04:37.829024886 +0200
+--- tryton-server.orig/etc/trytond.conf 2012-05-09 11:42:56.205046418 +0200
++++ tryton-server/etc/trytond.conf 2012-05-09 11:42:59.112947846 +0200
@@ -2,13 +2,13 @@
#this repository contains the full copyright notices and license terms.
[options]
@@ -547,8 +547,8 @@ Description: Support new structure of pywebdav > 0.9.4.1.
# Configure the database type
# allowed values are postgresql, sqlite, mysql
#db_type = postgresql
---- tryton-server.orig/setup.py 2011-10-24 15:57:45.000000000 +0200
-+++ tryton-server/setup.py 2012-03-28 23:04:37.829024886 +0200
+--- tryton-server.orig/setup.py 2012-05-09 11:42:39.277620212 +0200
++++ tryton-server/setup.py 2012-05-09 11:42:59.112947846 +0200
@@ -65,7 +65,7 @@
extras_require={
'PostgreSQL': ['psycopg2 >= 2.0'],
@@ -558,8 +558,8 @@ Description: Support new structure of pywebdav > 0.9.4.1.
'unoconv': ['unoconv'],
'SSL': ['pyOpenSSL'],
'graphviz': ['pydot'],
---- tryton-server.orig/trytond/config.py 2012-03-28 23:01:53.000000000 +0200
-+++ tryton-server/trytond/config.py 2012-03-28 23:04:37.829024886 +0200
+--- tryton-server.orig/trytond/config.py 2012-05-09 11:42:39.277620212 +0200
++++ tryton-server/trytond/config.py 2012-05-09 11:42:59.112947846 +0200
@@ -24,14 +24,15 @@
class ConfigManager(object):
def __init__(self, fname=None):
@@ -577,8 +577,8 @@ Description: Support new structure of pywebdav > 0.9.4.1.
'db_type': 'postgresql',
'db_host': False,
'db_port': False,
---- tryton-server.orig/trytond/tests/test_mixins.py 2011-12-06 11:28:56.000000000 +0100
-+++ tryton-server/trytond/tests/test_mixins.py 2012-03-28 23:04:37.829024886 +0200
+--- tryton-server.orig/trytond/tests/test_mixins.py 2012-05-09 11:42:39.277620212 +0200
++++ tryton-server/trytond/tests/test_mixins.py 2012-05-09 11:42:59.116947710 +0200
@@ -30,7 +30,7 @@
urllib.quote(DB_NAME)))
@@ -604,8 +604,8 @@ Description: Support new structure of pywebdav > 0.9.4.1.
self.assertEqual(self.urlwizard.get_url(),
'tryton://%s/%s/wizard/test.test_wizard' % (server_name,
urllib.quote(DB_NAME)))
---- tryton-server.orig/trytond/url.py 2011-10-24 15:57:46.000000000 +0200
-+++ tryton-server/trytond/url.py 2012-03-28 23:04:37.833024752 +0200
+--- tryton-server.orig/trytond/url.py 2012-05-09 11:42:39.277620212 +0200
++++ tryton-server/trytond/url.py 2012-05-09 11:42:59.116947710 +0200
@@ -16,7 +16,8 @@
from trytond.wizard import Wizard
from trytond.report import Report
@@ -616,8 +616,8 @@ Description: Support new structure of pywebdav > 0.9.4.1.
hostname = '.'.join(encodings.idna.ToASCII(part) for part in
hostname.split('.'))
---- tryton-server.orig/trytond/webdav/webdav.xml 2011-10-24 15:57:46.000000000 +0200
-+++ tryton-server/trytond/webdav/webdav.xml 2012-03-28 23:04:37.833024752 +0200
+--- tryton-server.orig/trytond/webdav/webdav.xml 2012-05-09 11:42:39.277620212 +0200
++++ tryton-server/trytond/webdav/webdav.xml 2012-05-09 11:42:59.116947710 +0200
@@ -105,5 +105,122 @@
<field name="menu" ref="menu_collection_list"/>
<field name="group" ref="res.group_admin"/>
commit edb8de0fa0968aa41ac1874182f0b1a014b7c73a
Author: Mathias Behrle <mathiasb at m9s.biz>
Date: Wed May 9 11:28:38 2012 +0200
Merging upstream version 2.2.3.
diff --git a/CHANGELOG b/CHANGELOG
index f074bf1..78bb31c 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,6 @@
+Version 2.2.3 - 2012-05-07
+* Bug fixes (see mercurial logs for details)
+
Version 2.2.2 - 2012-03-28
* Bug fixes (see mercurial logs for details)
* Don't allow rpc call on ModelStorage without ModelView (CVE-2012-0215)
diff --git a/COPYRIGHT b/COPYRIGHT
index 231a7a9..baf02b6 100644
--- a/COPYRIGHT
+++ b/COPYRIGHT
@@ -1,7 +1,7 @@
Copyright (C) 2004-2008 Tiny SPRL.
-Copyright (C) 2007-2011 Cédric Krier.
+Copyright (C) 2007-2012 Cédric Krier.
Copyright (C) 2007-2011 Bertrand Chenal.
-Copyright (C) 2008-2011 B2CK SPRL.
+Copyright (C) 2008-2012 B2CK SPRL.
Copyright (C) 2011 Openlabs Technologies & Consulting (P) Ltd.
This program is free software: you can redistribute it and/or modify
diff --git a/PKG-INFO b/PKG-INFO
index 30e8fe4..1feace8 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
-Metadata-Version: 1.0
+Metadata-Version: 1.1
Name: trytond
-Version: 2.2.2
+Version: 2.2.3
Summary: Tryton server
Home-page: http://www.tryton.org/
Author: B2CK
diff --git a/trytond.egg-info/PKG-INFO b/trytond.egg-info/PKG-INFO
index 30e8fe4..1feace8 100644
--- a/trytond.egg-info/PKG-INFO
+++ b/trytond.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
-Metadata-Version: 1.0
+Metadata-Version: 1.1
Name: trytond
-Version: 2.2.2
+Version: 2.2.3
Summary: Tryton server
Home-page: http://www.tryton.org/
Author: B2CK
diff --git a/trytond/backend/database.py b/trytond/backend/database.py
index 808c0d1..3ca6b18 100644
--- a/trytond/backend/database.py
+++ b/trytond/backend/database.py
@@ -104,8 +104,7 @@ class CursorInterface(object):
IN_MAX = 1000
def __init__(self):
- from trytond.cache import LRUDict
- self.cache = LRUDict(CONTEXT_CACHE_SIZE)
+ self.cache = {}
def get_cache(self, context=None):
'''
diff --git a/trytond/backend/mysql/database.py b/trytond/backend/mysql/database.py
index 1d2b778..b702521 100644
--- a/trytond/backend/mysql/database.py
+++ b/trytond/backend/mysql/database.py
@@ -27,8 +27,6 @@ def _replace_split_part_right(mobj):
if pos == 2:
return ', -1'
return ', 1'
-DatabaseIntegrityError = None
-DatabaseOperationalError = None
class Database(DatabaseInterface):
diff --git a/trytond/convert.py b/trytond/convert.py
index 62452ca..7c0bdf5 100644
--- a/trytond/convert.py
+++ b/trytond/convert.py
@@ -354,8 +354,12 @@ class Fs2bdAccessor:
record_ids.setdefault(rec.model, [])
record_ids[rec.model].append(rec.db_id)
+ object_name_list = set(self.pool.object_name_list())
+
self.browserecord[module] = {}
for model_name in record_ids.keys():
+ if model_name not in object_name_list:
+ continue
model_obj = self.pool.get(model_name)
self.browserecord[module][model_name] = {}
for i in range(0, len(record_ids[model_name]), cursor.IN_MAX):
@@ -928,6 +932,7 @@ def post_import(pool, module, to_delete):
('module', '=', module),
], order=[('id', 'DESC')])
+ object_name_list = set(pool.object_name_list())
for mrec in modeldata_obj.browse(mdata_ids):
mdata_id, model, db_id = mrec.id, mrec.model, mrec.db_id
@@ -977,9 +982,14 @@ def post_import(pool, module, to_delete):
'Deleting %s@%s' % (db_id, model))
try:
# Deletion of the record
- model_obj = pool.get(model)
- model_obj.delete(db_id)
- mdata_delete.append(mdata_id)
+ if model in object_name_list:
+ model_obj = pool.get(model)
+ model_obj.delete(db_id)
+ mdata_delete.append(mdata_id)
+ else:
+ logging.getLogger("convert").warning(
+ 'Could not delete id %d of model %s because model no '
+ 'longer exists.' % (db_id, model))
cursor.commit()
except Exception:
cursor.rollback()
diff --git a/trytond/ir/cron.py b/trytond/ir/cron.py
index 99ed8d3..0d8de4f 100644
--- a/trytond/ir/cron.py
+++ b/trytond/ir/cron.py
@@ -68,6 +68,7 @@ class Cron(ModelSQL, ModelView):
table.column_rename('numbercall', 'number_calls')
table.column_rename('doall', 'repeat_missed')
table.column_rename('nextcall', 'next_call')
+ table.drop_column('running')
super(Cron, self).init(module_name)
diff --git a/trytond/ir/ui/form.rnc b/trytond/ir/ui/form.rnc
index b20dd5c..015f36e 100644
--- a/trytond/ir/ui/form.rnc
+++ b/trytond/ir/ui/form.rnc
@@ -20,7 +20,7 @@ attlist.form &= attribute on_write { text }?
attlist.form &= [ a:defaultValue = "4" ] attribute col { text }?
attlist.form &= attribute cursor { text }?
-tree = element tree { attlist.tree, field+ }
+tree = element tree { attlist.tree, field* }
attlist.tree &=
[ a:defaultValue = "Unknown" ] attribute string { text }?
attlist.tree &= attribute on_write { text }?
diff --git a/trytond/ir/ui/form.rng b/trytond/ir/ui/form.rng
index 1bb7c62..2832183 100644
--- a/trytond/ir/ui/form.rng
+++ b/trytond/ir/ui/form.rng
@@ -42,9 +42,9 @@
<define name="tree">
<element name="tree">
<ref name="attlist.tree"/>
- <oneOrMore>
+ <zeroOrMore>
<ref name="field"/>
- </oneOrMore>
+ </zeroOrMore>
</element>
</define>
<define name="attlist.tree" combine="interleave">
@@ -502,11 +502,6 @@
</define>
<define name="attlist.image" combine="interleave">
<optional>
- <attribute name="help"/>
- </optional>
- </define>
- <define name="attlist.image" combine="interleave">
- <optional>
<attribute name="xexpand" a:defaultValue="0">
<choice>
<value>0</value>
@@ -527,6 +522,11 @@
</define>
<define name="attlist.image" combine="interleave">
<optional>
+ <attribute name="help"/>
+ </optional>
+ </define>
+ <define name="attlist.image" combine="interleave">
+ <optional>
<attribute name="states"/>
</optional>
</define>
diff --git a/trytond/model/model.py b/trytond/model/model.py
index b180768..8240bad 100644
--- a/trytond/model/model.py
+++ b/trytond/model/model.py
@@ -27,6 +27,7 @@ class Model(WarningErrorMixin, URLMixin):
def _reset_columns(self):
self.__columns = None
+ self.__defaults = None
self._reset_xxx2many_targets()
def _getcolumns(self):
diff --git a/trytond/model/modelsql.py b/trytond/model/modelsql.py
index a578a8e..c75eefb 100644
--- a/trytond/model/modelsql.py
+++ b/trytond/model/modelsql.py
@@ -2031,7 +2031,7 @@ class ModelSQL(ModelStorage):
if field_name:
if '%(table)s' in field_name or '%(order)s' in field_name:
order_by.append(field_name % {
- 'table': table_name,
+ 'table': '"%s"' % table_name,
'order': otype,
})
else:
diff --git a/trytond/res/request.py b/trytond/res/request.py
index 5be47f0..d93bc23 100644
--- a/trytond/res/request.py
+++ b/trytond/res/request.py
@@ -123,7 +123,7 @@ class Request(ModelSQL, ModelView):
request_history_obj.create(values)
self.write(ids, {
'state': 'waiting',
- 'date_send': datetime.datetime.now(),
+ 'date_sent': datetime.datetime.now(),
})
return True
diff --git a/trytond/version.py b/trytond/version.py
index 7650cc7..9ffcf38 100644
--- a/trytond/version.py
+++ b/trytond/version.py
@@ -1,7 +1,7 @@
#This file is part of Tryton. The COPYRIGHT file at the top level of
#this repository contains the full copyright notices and license terms.
PACKAGE = "trytond"
-VERSION = "2.2.2"
+VERSION = "2.2.3"
LICENSE = "GPL-3"
WEBSITE = "http://www.tryton.org/"
--
tryton-server
More information about the tryton-debian-vcs
mailing list