Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package tryton for openSUSE:Factory checked 
in at 2023-01-24 19:43:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/tryton (Old)
 and      /work/SRC/openSUSE:Factory/.tryton.new.32243 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "tryton"

Tue Jan 24 19:43:08 2023 rev:11 rq:1060527 version:6.0.23

Changes:
--------
--- /work/SRC/openSUSE:Factory/tryton/tryton.changes    2023-01-03 
15:06:39.318961593 +0100
+++ /work/SRC/openSUSE:Factory/.tryton.new.32243/tryton.changes 2023-01-24 
20:36:09.437570426 +0100
@@ -1,0 +2,5 @@
+Mon Jan 16 21:18:40 UTC 2023 - Axel Braun <axel.br...@gmx.de>
+
+- Version 6.0.23 - Bugfix Release
+
+-------------------------------------------------------------------

Old:
----
  tryton-6.0.22.tar.gz

New:
----
  tryton-6.0.23.tar.gz

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

Other differences:
------------------
++++++ tryton.spec ++++++
--- /var/tmp/diff_new_pack.5puuVN/_old  2023-01-24 20:36:09.965573161 +0100
+++ /var/tmp/diff_new_pack.5puuVN/_new  2023-01-24 20:36:09.985573264 +0100
@@ -19,7 +19,7 @@
 
 %define majorver 6.0
 Name:           tryton
-Version:        %{majorver}.22
+Version:        %{majorver}.23
 Release:        0
 Summary:        The client of the Tryton application platform
 License:        GPL-3.0-or-later

++++++ tryton-6.0.22.tar.gz -> tryton-6.0.23.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tryton-6.0.22/CHANGELOG new/tryton-6.0.23/CHANGELOG
--- old/tryton-6.0.22/CHANGELOG 2023-01-02 23:11:07.000000000 +0100
+++ new/tryton-6.0.23/CHANGELOG 2023-01-15 18:36:17.000000000 +0100
@@ -1,3 +1,7 @@
+Version 6.0.23 - 2023-01-15
+---------------------------
+* Bug fixes (see mercurial logs for details)
+
 Version 6.0.22 - 2023-01-02
 ---------------------------
 * Bug fixes (see mercurial logs for details)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tryton-6.0.22/COPYRIGHT new/tryton-6.0.23/COPYRIGHT
--- old/tryton-6.0.22/COPYRIGHT 2023-01-02 23:11:06.000000000 +0100
+++ new/tryton-6.0.23/COPYRIGHT 2023-01-15 18:36:16.000000000 +0100
@@ -1,11 +1,11 @@
 Copyright (C) 2004-2008 Tiny SPRL.
 Copyright (C) 2007-2009 Lorenzo Gil Sanchez.
 Copyright (C) 2007-2013 Bertrand Chenal.
-Copyright (C) 2007-2022 Cédric Krier.
+Copyright (C) 2007-2023 Cédric Krier.
 Copyright (C) 2008-2011 Udo Spallek.
 Copyright (C) 2008-2011 virtual things - Preisler & Spallek GbR.
-Copyright (C) 2008-2022 B2CK SPRL.
-Copyright (C) 2010-2022 Nicolas Évrard.
+Copyright (C) 2008-2023 B2CK SPRL.
+Copyright (C) 2010-2023 Nicolas Évrard.
 Copyright (C) 2011-2012 Rodrigo Hübner.
 Copyright (C) 2012-2013 Antoine Smolders.
 Copyright (C) 2020-2021 Maxime Richez
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tryton-6.0.22/PKG-INFO new/tryton-6.0.23/PKG-INFO
--- old/tryton-6.0.22/PKG-INFO  2023-01-02 23:11:10.402441500 +0100
+++ new/tryton-6.0.23/PKG-INFO  2023-01-15 18:36:20.919022000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: tryton
-Version: 6.0.22
+Version: 6.0.23
 Summary: Tryton desktop client
 Home-page: http://www.tryton.org/
 Download-URL: http://downloads.tryton.org/6.0/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tryton-6.0.22/tryton/__init__.py 
new/tryton-6.0.23/tryton/__init__.py
--- old/tryton-6.0.22/tryton/__init__.py        2022-12-19 13:03:46.000000000 
+0100
+++ new/tryton-6.0.23/tryton/__init__.py        2023-01-02 23:11:21.000000000 
+0100
@@ -1,6 +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.
-__version__ = "6.0.22"
+__version__ = "6.0.23"
 import gi
 import locale
 
Binary files old/tryton-6.0.22/tryton/data/locale/bg/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/bg/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/ca/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/ca/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/cs/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/cs/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/de/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/de/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/es/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/es/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/es_419/LC_MESSAGES/tryton.mo 
and new/tryton-6.0.23/tryton/data/locale/es_419/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/et/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/et/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/fa/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/fa/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/fi/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/fi/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/fr/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/fr/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/hu/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/hu/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/id/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/id/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/it/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/it/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/ja_JP/LC_MESSAGES/tryton.mo 
and new/tryton-6.0.23/tryton/data/locale/ja_JP/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/lo/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/lo/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/lt/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/lt/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/nl/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/nl/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/pl/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/pl/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/pt/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/pt/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/ro/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/ro/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/ru/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/ru/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/sl/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/sl/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/tr/LC_MESSAGES/tryton.mo and 
new/tryton-6.0.23/tryton/data/locale/tr/LC_MESSAGES/tryton.mo differ
Binary files old/tryton-6.0.22/tryton/data/locale/zh_CN/LC_MESSAGES/tryton.mo 
and new/tryton-6.0.23/tryton/data/locale/zh_CN/LC_MESSAGES/tryton.mo differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tryton-6.0.22/tryton/gui/window/nomodal.py 
new/tryton-6.0.23/tryton/gui/window/nomodal.py
--- old/tryton-6.0.22/tryton/gui/window/nomodal.py      2022-12-19 
13:03:39.000000000 +0100
+++ new/tryton-6.0.23/tryton/gui/window/nomodal.py      2023-01-15 
18:33:41.000000000 +0100
@@ -32,7 +32,11 @@
         self.sensible_widget.props.sensitive = True
         for focus in self.parent_focus:
             if focus and focus.is_ancestor(self.parent):
-                focus.grab_focus()
+                try:
+                    focus.grab_focus()
+                except TypeError:
+                    # GooCanvas needs a GooCanvasItem
+                    continue
                 break
 
     def default_size(self):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/tryton-6.0.22/tryton/gui/window/view_form/screen/screen.py 
new/tryton-6.0.23/tryton/gui/window/view_form/screen/screen.py
--- old/tryton-6.0.22/tryton/gui/window/view_form/screen/screen.py      
2022-12-19 13:03:46.000000000 +0100
+++ new/tryton-6.0.23/tryton/gui/window/view_form/screen/screen.py      
2023-01-15 18:33:41.000000000 +0100
@@ -186,7 +186,8 @@
 
         fields = copy.deepcopy(view_tree['fields'])
         for name, props in fields.items():
-            if props['type'] not in ('selection', 'reference'):
+            if props['type'] not in {
+                    'selection', 'multiselection', 'reference'}:
                 continue
             if isinstance(props['selection'], (tuple, list)):
                 continue
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/tryton-6.0.22/tryton/gui/window/view_form/view/form_gtk/dictionary.py 
new/tryton-6.0.23/tryton/gui/window/view_form/view/form_gtk/dictionary.py
--- old/tryton-6.0.22/tryton/gui/window/view_form/view/form_gtk/dictionary.py   
2022-12-19 13:03:46.000000000 +0100
+++ new/tryton-6.0.23/tryton/gui/window/view_form/view/form_gtk/dictionary.py   
2023-01-15 18:33:41.000000000 +0100
@@ -5,6 +5,7 @@
 import locale
 import decimal
 import gettext
+from collections import defaultdict
 from decimal import Decimal
 
 from gi.repository import GLib, GObject, Gtk
@@ -37,6 +38,7 @@
         self.name = name
         self.definition = parent_widget.field.keys[name]
         self.parent_widget = parent_widget
+        self._signal_handlers = defaultdict(list)
         self.widget = self.create_widget()
         if self.definition.get('help'):
             parent_widget.tooltips.set_tip(
@@ -44,11 +46,16 @@
 
     def create_widget(self):
         widget = Gtk.Entry()
-        widget.connect('key-press-event', self.parent_widget.send_modified)
-        widget.connect('focus-out-event',
-            lambda w, e: self.parent_widget._focus_out())
+        self._signal_handlers[widget].append(
+            widget.connect('key-press-event',
+                self.parent_widget.send_modified))
+        self._signal_handlers[widget].append(
+            widget.connect('focus-out-event',
+                lambda w, e: self.parent_widget._focus_out()))
         widget.props.activates_default = True
-        widget.connect('activate', self.parent_widget.sig_activate)
+        self._signal_handlers[widget].append(
+            widget.connect('activate',
+                self.parent_widget.sig_activate))
         return widget
 
     def modified(self, value):
@@ -64,14 +71,21 @@
     def set_readonly(self, readonly):
         self.widget.set_editable(not readonly)
 
+    def disconnect_signals(self):
+        for widget, signal_ids in self._signal_handlers.items():
+            for handler_id in signal_ids:
+                widget.disconnect(handler_id)
+
 
 class DictBooleanEntry(DictEntry):
 
     def create_widget(self):
         widget = Gtk.CheckButton()
-        widget.connect('toggled', self.parent_widget.sig_activate)
-        widget.connect('focus-out-event', lambda w, e:
-            self.parent_widget._focus_out())
+        self._signal_handlers[widget].append(
+            widget.connect('toggled', self.parent_widget.sig_activate))
+        self._signal_handlers[widget].append(
+            widget.connect('focus-out-event',
+                lambda w, e: self.parent_widget._focus_out()))
         return widget
 
     def get_value(self):
@@ -99,11 +113,14 @@
         # customizing entry
         child = widget.get_child()
         child.props.activates_default = True
-        child.connect('changed', self._changed)
-        child.connect('focus-out-event',
-            lambda w, e: self.parent_widget._focus_out())
-        child.connect('activate',
-            lambda w: self.parent_widget._focus_out())
+        self._signal_handlers[child].append(
+            child.connect('changed', self._changed))
+        self._signal_handlers[child].append(
+            child.connect('focus-out-event',
+                lambda w, e: self.parent_widget._focus_out()))
+        self._signal_handlers[child].append(
+            child.connect('activate',
+                lambda w: self.parent_widget._focus_out()))
         widget.connect(
             'scroll-event',
             lambda c, e: c.stop_emission_by_name('scroll-event'))
@@ -184,12 +201,14 @@
         self.tree = TreeViewControl()
         self.tree.set_model(model)
         self.tree.set_search_column(1)
-        self.tree.connect(
-            'focus-out-event', lambda w, e: self.parent_widget._focus_out())
+        self._signal_handlers[self.tree].append(
+            self.tree.connect('focus-out-event',
+                lambda w, e: self.parent_widget._focus_out()))
         self.tree.set_headers_visible(False)
         selection = self.tree.get_selection()
         selection.set_mode(Gtk.SelectionMode.MULTIPLE)
-        selection.connect('changed', self._changed)
+        self._signal_handlers[selection].append(
+            selection.connect('changed', self._changed))
         widget.add(self.tree)
 
         self.selection = self.definition['selection']
@@ -237,11 +256,15 @@
 
     def create_widget(self):
         widget = NumberEntry()
-        widget.connect('key-press-event', self.parent_widget.send_modified)
-        widget.connect('focus-out-event',
-            lambda w, e: self.parent_widget._focus_out())
+        self._signal_handlers[widget].append(
+            widget.connect('key-press-event',
+                self.parent_widget.send_modified))
+        self._signal_handlers[widget].append(
+            widget.connect('focus-out-event',
+                lambda w, e: self.parent_widget._focus_out()))
         widget.props.activates_default = True
-        widget.connect('activate', self.parent_widget.sig_activate)
+        self._signal_handlers[widget].append(
+            widget.connect('activate', self.parent_widget.sig_activate))
         return widget
 
     def get_value(self):
@@ -321,9 +344,12 @@
             time_format = field.time_format(record)
             widget.props.date_format = date_format
             widget.props.time_format = time_format
-        widget.connect('key_press_event', self.parent_widget.send_modified)
-        widget.connect('focus-out-event', lambda w, e:
-            self.parent_widget._focus_out())
+        self._signal_handlers[widget].append(
+            widget.connect('key_press_event',
+                self.parent_widget.send_modified))
+        self._signal_handlers[widget].append(
+            widget.connect('focus-out-event',
+                lambda w, e: self.parent_widget._focus_out()))
         return widget
 
     def get_value(self):
@@ -353,9 +379,12 @@
         if record and field:
             format_ = field.date_format(record)
             widget.props.format = format_
-        widget.connect('key_press_event', self.parent_widget.send_modified)
-        widget.connect('focus-out-event', lambda w, e:
-            self.parent_widget._focus_out())
+        self._signal_handlers[widget].append(
+            widget.connect('key_press_event',
+                self.parent_widget.send_modified))
+        self._signal_handlers[widget].append(
+            widget.connect('focus-out-event',
+                lambda w, e: self.parent_widget._focus_out()))
         return widget
 
     def get_value(self):
@@ -481,6 +510,7 @@
                     focus = True
 
     def _sig_remove(self, button, key, modified=True):
+        self.fields[key].disconnect_signals()
         del self.fields[key]
         del self.buttons[key]
         for widget in self.rows[key]:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/tryton-6.0.22/tryton/gui/window/view_form/view/list.py 
new/tryton-6.0.23/tryton/gui/window/view_form/view/list.py
--- old/tryton-6.0.22/tryton/gui/window/view_form/view/list.py  2022-12-19 
13:03:46.000000000 +0100
+++ new/tryton-6.0.23/tryton/gui/window/view_form/view/list.py  2023-01-15 
18:33:41.000000000 +0100
@@ -1165,7 +1165,8 @@
             records.append(model.get_value(iter_, 0))
         records = []
         sel = self.treeview.get_selection()
-        sel.selected_foreach(_func_sel_get, records)
+        if sel is not None:
+            sel.selected_foreach(_func_sel_get, records)
         return records
 
     def get_selected_paths(self):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tryton-6.0.22/tryton.egg-info/PKG-INFO 
new/tryton-6.0.23/tryton.egg-info/PKG-INFO
--- old/tryton-6.0.22/tryton.egg-info/PKG-INFO  2023-01-02 23:11:09.000000000 
+0100
+++ new/tryton-6.0.23/tryton.egg-info/PKG-INFO  2023-01-15 18:36:20.000000000 
+0100
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: tryton
-Version: 6.0.22
+Version: 6.0.23
 Summary: Tryton desktop client
 Home-page: http://www.tryton.org/
 Download-URL: http://downloads.tryton.org/6.0/

Reply via email to