Hello community,

here is the log from the commit of package trytond for openSUSE:Factory checked 
in at 2019-12-10 22:43:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/trytond (Old)
 and      /work/SRC/openSUSE:Factory/.trytond.new.4691 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "trytond"

Tue Dec 10 22:43:14 2019 rev:39 rq:755505 version:5.0.16

Changes:
--------
--- /work/SRC/openSUSE:Factory/trytond/trytond.changes  2019-12-04 
14:19:44.318405692 +0100
+++ /work/SRC/openSUSE:Factory/.trytond.new.4691/trytond.changes        
2019-12-10 22:43:27.225786178 +0100
@@ -1,0 +2,5 @@
+Tue Dec  3 09:27:32 UTC 2019 - Axel Braun <axel.br...@gmx.de>
+
+- Version 5.0.16 - Bugfix Release
+
+-------------------------------------------------------------------

Old:
----
  trytond-5.0.15.tar.gz

New:
----
  trytond-5.0.16.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ trytond.spec ++++++
--- /var/tmp/diff_new_pack.yqn2lY/_old  2019-12-10 22:43:27.877785935 +0100
+++ /var/tmp/diff_new_pack.yqn2lY/_new  2019-12-10 22:43:27.889785931 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package trytond
 #
-# Copyright (c) 2019 SUSE LLC.
+# Copyright (c) 2019 SUSE LLC
 # Copyright (c) 2015 2017 Dr. Axel Braun
 #
 # All modifications and additions to the file contributed by third parties
@@ -20,7 +20,7 @@
 %define majorver 5.0
 %define base_name tryton
 Name:           trytond
-Version:        %{majorver}.15
+Version:        %{majorver}.16
 Release:        0
 
 Summary:        An Enterprise Resource Planning (ERP) system

++++++ trytond-5.0.15.tar.gz -> trytond-5.0.16.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/trytond-5.0.15/.hgtags new/trytond-5.0.16/.hgtags
--- old/trytond-5.0.15/.hgtags  2019-11-08 19:16:13.000000000 +0100
+++ new/trytond-5.0.16/.hgtags  2019-12-02 20:37:38.000000000 +0100
@@ -34,3 +34,4 @@
 75df31f1eec7a37a472bdf58fafe8bcbc2d0f7bc 5.0.13
 5d70325ac29f14ba49509e91c4d89f0cde4fb353 5.0.14
 5e88387812d259b30e048f783fb22f75241246ca 5.0.15
+10157c2bfc0f14deb596cef77a90f5aff76a3e5a 5.0.16
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/trytond-5.0.15/CHANGELOG new/trytond-5.0.16/CHANGELOG
--- old/trytond-5.0.15/CHANGELOG        2019-11-08 19:16:12.000000000 +0100
+++ new/trytond-5.0.16/CHANGELOG        2019-12-02 20:37:37.000000000 +0100
@@ -1,3 +1,6 @@
+Version 5.0.16 - 2019-12-02
+* Bug fixes (see mercurial logs for details)
+
 Version 5.0.15 - 2019-11-08
 * Bug fixes (see mercurial logs for details)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/trytond-5.0.15/PKG-INFO new/trytond-5.0.16/PKG-INFO
--- old/trytond-5.0.15/PKG-INFO 2019-11-08 19:16:14.000000000 +0100
+++ new/trytond-5.0.16/PKG-INFO 2019-12-02 20:37:39.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: trytond
-Version: 5.0.15
+Version: 5.0.16
 Summary: Tryton server
 Home-page: http://www.tryton.org/
 Author: Tryton
@@ -109,8 +109,8 @@
 Classifier: Programming Language :: Python :: Implementation :: PyPy
 Classifier: Topic :: Software Development :: Libraries :: Application 
Frameworks
 Requires-Python: >=3.4
-Provides-Extra: BCrypt
 Provides-Extra: PostgreSQL
-Provides-Extra: Levenshtein
 Provides-Extra: graphviz
+Provides-Extra: Levenshtein
+Provides-Extra: BCrypt
 Provides-Extra: html2text
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/trytond-5.0.15/trytond/__init__.py 
new/trytond-5.0.16/trytond/__init__.py
--- old/trytond-5.0.15/trytond/__init__.py      2019-10-06 13:46:31.000000000 
+0200
+++ new/trytond-5.0.16/trytond/__init__.py      2019-11-15 22:44:58.000000000 
+0100
@@ -5,7 +5,7 @@
 import warnings
 from email import charset
 
-__version__ = "5.0.15"
+__version__ = "5.0.16"
 
 os.environ['TZ'] = 'UTC'
 if hasattr(time, 'tzset'):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/trytond-5.0.15/trytond/backend/postgresql/database.py 
new/trytond-5.0.16/trytond/backend/postgresql/database.py
--- old/trytond-5.0.15/trytond/backend/postgresql/database.py   2019-08-11 
19:34:43.000000000 +0200
+++ new/trytond-5.0.16/trytond/backend/postgresql/database.py   2019-11-15 
23:08:37.000000000 +0100
@@ -1,5 +1,6 @@
 # This file is part of Tryton.  The COPYRIGHT file at the top level of
 # this repository contains the full copyright notices and license terms.
+from collections import defaultdict
 import time
 import logging
 import os
@@ -81,7 +82,7 @@
 class Database(DatabaseInterface):
 
     _lock = RLock()
-    _databases = {}
+    _databases = defaultdict(dict)
     _connpool = None
     _list_cache = {}
     _list_cache_timestamp = {}
@@ -103,13 +104,14 @@
     def __new__(cls, name='template1'):
         with cls._lock:
             now = datetime.now()
-            for database in list(cls._databases.values()):
+            databases = cls._databases[os.getpid()]
+            for database in list(databases.values()):
                 if ((now - database._last_use).total_seconds() > _timeout
                         and database.name != name
                         and not database._connpool._used):
                     database.close()
-            if name in cls._databases:
-                inst = cls._databases[name]
+            if name in databases:
+                inst = databases[name]
             else:
                 if name == 'template1':
                     minconn = 0
@@ -121,7 +123,7 @@
                     minconn, _maxconn,
                     cursor_factory=LoggingCursor,
                     **cls._connection_params(name))
-                cls._databases[name] = inst
+                databases[name] = inst
             inst._last_use = datetime.now()
             return inst
 
@@ -174,7 +176,7 @@
         with self._lock:
             logger.info('disconnect from "%s"', self.name)
             self._connpool.closeall()
-            self._databases.pop(self.name)
+            self._databases[os.getpid()].pop(self.name)
 
     @classmethod
     def create(cls, connection, database_name, template='template0'):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/trytond-5.0.15/trytond/exceptions.py 
new/trytond-5.0.16/trytond/exceptions.py
--- old/trytond-5.0.15/trytond/exceptions.py    2019-08-11 19:34:43.000000000 
+0200
+++ new/trytond-5.0.16/trytond/exceptions.py    2019-11-15 22:44:58.000000000 
+0100
@@ -14,7 +14,7 @@
         self.description = description
         self.code = 1
 
-    def __unicode__(self):
+    def __str__(self):
         return '%s - %s' % (self.message, self.description)
 
 
@@ -28,7 +28,7 @@
         self.description = description
         self.code = 2
 
-    def __unicode__(self):
+    def __str__(self):
         return '%s - %s' % (self.message, self.description)
 
 
@@ -54,7 +54,7 @@
         self.message = message
         self.code = 4
 
-    def __unicode__(self):
+    def __str__(self):
         return self.message
 
 
@@ -67,5 +67,5 @@
     def __init__(self, missings):
         self.missings = missings
 
-    def __unicode__(self):
+    def __str__(self):
         return 'Missing dependencies: %s' % ' '.join(self.missings)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/trytond-5.0.15/trytond/model/model.py 
new/trytond-5.0.16/trytond/model/model.py
--- old/trytond-5.0.15/trytond/model/model.py   2019-08-11 19:34:43.000000000 
+0200
+++ new/trytond-5.0.16/trytond/model/model.py   2019-11-15 22:44:58.000000000 
+0100
@@ -407,9 +407,6 @@
     def __str__(self):
         return '%s,%s' % (self.__name__, self.id)
 
-    def __unicode__(self):
-        return '%s,%s' % (self.__name__, self.id)
-
     def __repr__(self):
         if self.id is None or self.id < 0:
             return "Pool().get('%s')(**%s)" % (self.__name__,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/trytond-5.0.15/trytond/model/modelsql.py 
new/trytond-5.0.16/trytond/model/modelsql.py
--- old/trytond-5.0.15/trytond/model/modelsql.py        2019-08-11 
19:34:43.000000000 +0200
+++ new/trytond-5.0.16/trytond/model/modelsql.py        2019-11-15 
22:44:58.000000000 +0100
@@ -524,11 +524,13 @@
                         '%s,%s' % (cls.__name__, id_))
                 except KeyError:
                     continue
-                sql_type = fields.Numeric('timestamp').sql_type().base
+                if timestamp is None:
+                    continue
+                sql_type = fields.Char('timestamp').sql_type().base
                 where.append((table.id == id_)
                     & (Extract('EPOCH',
                             Coalesce(table.write_date, table.create_date)
-                            ).cast(sql_type) > timestamp))
+                            ).cast(sql_type) != timestamp))
             if where:
                 cursor.execute(*table.select(table.id, where=where, limit=1))
                 if cursor.fetchone():
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/trytond-5.0.15/trytond/report/report.py 
new/trytond-5.0.16/trytond/report/report.py
--- old/trytond-5.0.15/trytond/report/report.py 2019-08-11 19:34:43.000000000 
+0200
+++ new/trytond-5.0.16/trytond/report/report.py 2019-11-15 22:44:58.000000000 
+0100
@@ -229,8 +229,6 @@
             def __str__(self):
                 return '%s,%s' % (Model.__name__, self.id)
 
-            def __unicode__(self):
-                return '%s,%s' % (Model.__name__, self.id)
         return [TranslateModel(id) for id in ids]
 
     @classmethod
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/trytond-5.0.15/trytond/tests/test_modelsql.py 
new/trytond-5.0.16/trytond/tests/test_modelsql.py
--- old/trytond-5.0.15/trytond/tests/test_modelsql.py   2019-08-11 
19:34:43.000000000 +0200
+++ new/trytond-5.0.16/trytond/tests/test_modelsql.py   2019-11-15 
22:44:58.000000000 +0100
@@ -65,6 +65,7 @@
             # timestamp precision of sqlite is the second
             time.sleep(1)
 
+        transaction.timestamp[str(record)] = timestamp
         ModelsqlTimestamp.write([record], {})
         transaction.commit()
 
@@ -76,6 +77,10 @@
         self.assertRaises(ConcurrencyException,
             ModelsqlTimestamp.delete, [record])
 
+        transaction.timestamp[str(record)] = None
+        ModelsqlTimestamp.write([record], {})
+        transaction.commit()
+
         transaction.timestamp.pop(str(record), None)
         ModelsqlTimestamp.write([record], {})
         transaction.commit()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/trytond-5.0.15/trytond.egg-info/PKG-INFO 
new/trytond-5.0.16/trytond.egg-info/PKG-INFO
--- old/trytond-5.0.15/trytond.egg-info/PKG-INFO        2019-11-08 
19:16:14.000000000 +0100
+++ new/trytond-5.0.16/trytond.egg-info/PKG-INFO        2019-12-02 
20:37:39.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: trytond
-Version: 5.0.15
+Version: 5.0.16
 Summary: Tryton server
 Home-page: http://www.tryton.org/
 Author: Tryton
@@ -109,8 +109,8 @@
 Classifier: Programming Language :: Python :: Implementation :: PyPy
 Classifier: Topic :: Software Development :: Libraries :: Application 
Frameworks
 Requires-Python: >=3.4
-Provides-Extra: BCrypt
 Provides-Extra: PostgreSQL
-Provides-Extra: Levenshtein
 Provides-Extra: graphviz
+Provides-Extra: Levenshtein
+Provides-Extra: BCrypt
 Provides-Extra: html2text


Reply via email to