Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package trytond_purchase for 
openSUSE:Factory checked in at 2026-10-07 19:32:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/trytond_purchase (Old)
 and      /work/SRC/openSUSE:Factory/.trytond_purchase.new.3698736 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "trytond_purchase"

Wed Oct  7 19:32:19 2026 rev:42 rq:1382859 version:7.0.19

Changes:
--------
--- /work/SRC/openSUSE:Factory/trytond_purchase/trytond_purchase.changes        
2026-02-05 18:06:46.479651635 +0100
+++ 
/work/SRC/openSUSE:Factory/.trytond_purchase.new.3698736/trytond_purchase.changes
   2026-10-07 19:32:54.761410951 +0200
@@ -1,0 +2,5 @@
+Tue Oct  6 19:12:09 UTC 2026 - Axel Braun <[email protected]>
+
+- Version 7.0.19 - Bugfix Release
+
+-------------------------------------------------------------------

Old:
----
  trytond_purchase-7.0.17.tar.gz

New:
----
  trytond_purchase-7.0.19.tar.gz

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

Other differences:
------------------
++++++ trytond_purchase.spec ++++++
--- /var/tmp/diff_new_pack.vMHugo/_old  2026-10-07 19:32:56.270473973 +0200
+++ /var/tmp/diff_new_pack.vMHugo/_new  2026-10-07 19:32:56.274474140 +0200
@@ -28,7 +28,7 @@
 
 %define majorver 7.0
 Name:           trytond_purchase
-Version:        %{majorver}.17
+Version:        %{majorver}.19
 Release:        0
 Summary:        The "purchase" module for the Tryton ERP system
 License:        GPL-3.0-only

++++++ trytond_purchase-7.0.17.tar.gz -> trytond_purchase-7.0.19.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/trytond_purchase-7.0.17/CHANGELOG 
new/trytond_purchase-7.0.19/CHANGELOG
--- old/trytond_purchase-7.0.17/CHANGELOG       2026-02-01 11:16:42.000000000 
+0100
+++ new/trytond_purchase-7.0.19/CHANGELOG       2026-10-02 00:51:59.195073600 
+0200
@@ -1,4 +1,14 @@
 
+Version 7.0.19 - 2026-10-01
+---------------------------
+* Bug fixes (see mercurial logs for details)
+
+
+Version 7.0.18 - 2026-09-16
+---------------------------
+* Bug fixes (see mercurial logs for details)
+
+
 Version 7.0.17 - 2026-02-01
 ---------------------------
 * Bug fixes (see mercurial logs for details)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/trytond_purchase-7.0.17/PKG-INFO 
new/trytond_purchase-7.0.19/PKG-INFO
--- old/trytond_purchase-7.0.17/PKG-INFO        2026-02-01 11:16:45.843038000 
+0100
+++ new/trytond_purchase-7.0.19/PKG-INFO        2026-10-02 00:52:07.591489800 
+0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: trytond_purchase
-Version: 7.0.17
+Version: 7.0.19
 Summary: Tryton module for purchase
 Home-page: http://www.tryton.org/
 Download-URL: http://downloads.tryton.org/7.0/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/trytond_purchase-7.0.17/purchase.py 
new/trytond_purchase-7.0.19/purchase.py
--- old/trytond_purchase-7.0.17/purchase.py     2025-12-14 18:02:18.000000000 
+0100
+++ new/trytond_purchase-7.0.19/purchase.py     2026-09-14 20:11:28.191825000 
+0200
@@ -15,7 +15,7 @@
 from trytond.ir.note import NoteCopyMixin
 from trytond.model import (
     Index, Model, ModelSQL, ModelView, Unique, Workflow, fields,
-    sequence_ordered)
+    sequence_ordered, sort)
 from trytond.model.exceptions import AccessError
 from trytond.modules.account.tax import TaxableMixin
 from trytond.modules.account_product.exceptions import AccountError
@@ -42,13 +42,16 @@
 def get_shipments_returns(model_name):
     "Computes the returns or shipments"
     def method(self, name):
-        Model = Pool().get(model_name)
+        pool = Pool()
+        Model = pool.get(model_name)
+        field = getattr(self.__class__, name)
+        order = field.order if field.order is not None else Model._order
         shipments = set()
         for line in self.lines:
             for move in line.moves:
                 if isinstance(move.shipment, Model):
-                    shipments.add(move.shipment.id)
-        return list(shipments)
+                    shipments.add(move.shipment)
+        return sort(shipments, order)
     return method
 
 
@@ -188,14 +191,17 @@
             ('exception', 'Exception'),
             ], 'Invoice State', readonly=True, required=True, sort=False)
     invoices = fields.Function(fields.Many2Many(
-            'account.invoice', None, None, "Invoices"),
+            'account.invoice', None, None, "Invoices",
+            order=[('id', 'ASC')]),
         'get_invoices', searcher='search_invoices')
     invoices_ignored = fields.Many2Many(
-            'purchase.purchase-ignored-account.invoice',
-            'purchase', 'invoice', 'Ignored Invoices', readonly=True)
+        'purchase.purchase-ignored-account.invoice',
+        'purchase', 'invoice', 'Ignored Invoices', readonly=True,
+        order=[('id', 'ASC')])
     invoices_recreated = fields.Many2Many(
-            'purchase.purchase-recreated-account.invoice',
-            'purchase', 'invoice', 'Recreated Invoices', readonly=True)
+        'purchase.purchase-recreated-account.invoice',
+        'purchase', 'invoice', 'Recreated Invoices', readonly=True,
+        order=[('id', 'ASC')])
     origin = fields.Reference(
         "Origin", selection='get_origin',
         states={
@@ -216,10 +222,12 @@
             ('exception', 'Exception'),
             ], 'Shipment State', readonly=True, required=True, sort=False)
     shipments = fields.Function(fields.Many2Many(
-            'stock.shipment.in', None, None, "Shipments"),
+            'stock.shipment.in', None, None, "Shipments",
+            order=[('id', 'ASC')]),
         'get_shipments', searcher='search_shipments')
     shipment_returns = fields.Function(fields.Many2Many(
-            'stock.shipment.in.return', None, None, "Shipment Returns"),
+            'stock.shipment.in.return', None, None, "Shipment Returns",
+            order=[('id', 'ASC')]),
         'get_shipment_returns', searcher='search_shipment_returns')
     moves = fields.Function(
         fields.Many2Many('stock.move', None, None, "Moves"),
@@ -558,12 +566,16 @@
         return result
 
     def get_invoices(self, name):
+        pool = Pool()
+        Invoice = pool.get('account.invoice')
+        field = getattr(self.__class__, name)
+        order = field.order if field.order is not None else Invoice._order
         invoices = set()
         for line in self.lines:
             for invoice_line in line.invoice_lines:
                 if invoice_line.invoice:
-                    invoices.add(invoice_line.invoice.id)
-        return list(invoices)
+                    invoices.add(invoice_line.invoice)
+        return sort(invoices, order)
 
     @classmethod
     def search_invoices(cls, name, clause):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/trytond_purchase-7.0.17/stock.py 
new/trytond_purchase-7.0.19/stock.py
--- old/trytond_purchase-7.0.17/stock.py        2025-09-22 21:34:39.000000000 
+0200
+++ new/trytond_purchase-7.0.19/stock.py        2026-09-30 08:40:32.808092600 
+0200
@@ -52,11 +52,9 @@
     @ModelView.button
     @Workflow.transition('draft')
     def draft(cls, shipments):
-        PurchaseLine = Pool().get('purchase.line')
         for shipment in shipments:
             for move in shipment.incoming_moves:
-                if (move.state == 'cancelled'
-                        and isinstance(move.origin, PurchaseLine)):
+                if move.state == 'cancelled' and move.purchase:
                     raise AccessError(
                         gettext('purchase.msg_purchase_move_reset_draft',
                             move=move.rec_name))
@@ -91,11 +89,9 @@
     @ModelView.button
     @Workflow.transition('draft')
     def draft(cls, shipments):
-        PurchaseLine = Pool().get('purchase.line')
         for shipment in shipments:
             for move in shipment.moves:
-                if (move.state == 'cancelled'
-                        and isinstance(move.origin, PurchaseLine)):
+                if move.state == 'cancelled' and move.purchase:
                     raise AccessError(
                         gettext('purchase.msg_purchase_move_reset_draft',
                             move=move.rec_name))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/trytond_purchase-7.0.17/tox.ini 
new/trytond_purchase-7.0.19/tox.ini
--- old/trytond_purchase-7.0.17/tox.ini 2025-09-22 21:34:39.000000000 +0200
+++ new/trytond_purchase-7.0.19/tox.ini 2026-07-30 08:12:45.880650800 +0200
@@ -12,7 +12,7 @@
 deps =
     coverage
     unittest-xml-reporting
-    postgresql: psycopg2 >= 2.7.0
+    postgresql: psycopg2-binary >= 2.7.0
 passenv = *
 setenv =
     sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/trytond_purchase-7.0.17/tryton.cfg 
new/trytond_purchase-7.0.19/tryton.cfg
--- old/trytond_purchase-7.0.17/tryton.cfg      2025-12-17 19:38:37.000000000 
+0100
+++ new/trytond_purchase-7.0.19/tryton.cfg      2026-09-16 23:33:44.200669500 
+0200
@@ -1,5 +1,5 @@
 [tryton]
-version=7.0.17
+version=7.0.19
 depends:
     account
     account_invoice
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/trytond_purchase-7.0.17/trytond_purchase.egg-info/PKG-INFO 
new/trytond_purchase-7.0.19/trytond_purchase.egg-info/PKG-INFO
--- old/trytond_purchase-7.0.17/trytond_purchase.egg-info/PKG-INFO      
2026-02-01 11:16:45.000000000 +0100
+++ new/trytond_purchase-7.0.19/trytond_purchase.egg-info/PKG-INFO      
2026-10-02 00:52:06.247625000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: trytond_purchase
-Version: 7.0.17
+Version: 7.0.19
 Summary: Tryton module for purchase
 Home-page: http://www.tryton.org/
 Download-URL: http://downloads.tryton.org/7.0/

Reply via email to