From 43be0c1ab2357045b3f4872b4db80ac66d14606c Mon Sep 17 00:00:00 2001 From: Jerome Boisvert-Chouinard Date: Tue, 16 May 2017 12:10:03 -0400 Subject: [PATCH 1/9] [CLA] Update Savoir-faire Linux CLA Add new collaborators, remove old ones Done at #16939 --- doc/cla/corporate/savoirfairelinux.md | 29 +++++++++++++++------------ 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/doc/cla/corporate/savoirfairelinux.md b/doc/cla/corporate/savoirfairelinux.md index 31be8b5f9b8..784518b093e 100644 --- a/doc/cla/corporate/savoirfairelinux.md +++ b/doc/cla/corporate/savoirfairelinux.md @@ -1,4 +1,4 @@ -Canada, France, 8-2-2015 +Canada, France, 2017-05-12 Savoir-faire Linux agrees to the terms of the Odoo Corporate Contributor License Agreement v1.0. @@ -8,22 +8,25 @@ declaration. Signed, -Maxime Chambreuil partners@savoirfairelinux.com https://github.com/savoirfairelinux +Jérome Boisvert-Chouinard jerome.boisvertchouinard@savoirfairelinux.com https://github.com/jbchouinard List of contributors: +Agathe Mollé agathe.molle@savoirfairelinux.com https://github.com/Ehtaga Bruno Joliveau bruno.joliveau@savoirfairelinux.com https://github.com/bjoliveau -David Cormier david.cormier@savoirfairelinux.com https://github.com/cormier David Dufresne david.dufresne@savoirfairelinux.com https://github.com/dufresnedavid -Davin Baragiotta davin.baragiotta@savoirfairelinux.com https://github.com/giotta -El Hadji Dem elhadji.dem@savoirfairelinux.com https://github.com/ehdem -Guillaume Auger guillaume.auger@savoirfairelinux.com https://github.com/jehog +Jérome Boisvert-Chouinard jerome.boisvertchouinard@savoirfairelinux.com https://github.com/jbchouinard Joao Alfredo Gama Batista joao.gama@savoirfairelinux.com https://github.com/joaoalf -Jordi Riera jordi.riera@savoirfairelinux.com https://github.com/foutoucour -Julien Roux julien.roux@savoirfairelinux.com https://github.com/jrouxsfl -Loïc Faure-Lacroix loic.lacroix@savoirfairelinux.com https://github.com/llacroix -Maxime Chambreuil maxime.chambreuil@savoirfairelinux.com https://github.com/max3903 -Pierre Gault pierre.gault@savoirfairelinux.com https://github.com/gaultp +Julie Moussu julie.mousse@savoirfairelinux.com https://github.com/JulieSFL Pierre Lamarche pierre.lamarche@savoirfairelinux.com https://github.com/plamarche -Sandy Carter sandy.carter@savoirfairelinux.com https://github.com/bwrsandman -Vincent Vinet vincent.vinet@savoirfairelinux.com https://github.com/veloutin +David Cormier david.cormier@savoirfairelinux.com https://github.com/cormier (up to 2017-05-12) +Davin Baragiotta davin.baragiotta@savoirfairelinux.com https://github.com/giotta (up to 2017-05-12) +El Hadji Dem elhadji.dem@savoirfairelinux.com https://github.com/ehdem (up to 2017-05-12) +Guillaume Auger guillaume.auger@savoirfairelinux.com https://github.com/jehog (up to 2017-05-12) +Jordi Riera jordi.riera@savoirfairelinux.com https://github.com/foutoucour (up to 2017-05-12) +Julien Roux julien.roux@savoirfairelinux.com https://github.com/jrouxsfl (up to 2017-05-12) +Loïc Faure-Lacroix loic.lacroix@savoirfairelinux.com https://github.com/llacroix (up to 2017-05-12) +Maxime Chambreuil maxime.chambreuil@savoirfairelinux.com https://github.com/max3903 (up to 2017-05-12) +Pierre Gault pierre.gault@savoirfairelinux.com https://github.com/gaultp (up to 2017-05-12) +Sandy Carter sandy.carter@savoirfairelinux.com https://github.com/bwrsandman (up to 2017-05-12) +Vincent Vinet vincent.vinet@savoirfairelinux.com https://github.com/veloutin (up to 2017-05-12) From 722017ca834d5bf22a47d084d378618ee94fa906 Mon Sep 17 00:00:00 2001 From: Martin Trigaux Date: Tue, 16 May 2017 16:30:26 +0200 Subject: [PATCH 2/9] [FIX] hw_posbox_homepage: do not display not working links The '/point_of_sale/display' controller is added in the hw_screen module. This module is not loaded if the init scripts are not modified. This means that updating a posbox with the internal update feature will not work. This adds the link only in hw_screen and display an information message for old versions. --- addons/hw_posbox_homepage/controllers/main.py | 17 +++++++++++++---- addons/hw_screen/controllers/main.py | 9 +++++++++ 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/addons/hw_posbox_homepage/controllers/main.py b/addons/hw_posbox_homepage/controllers/main.py index 8a448e386f5..fa504907d95 100644 --- a/addons/hw_posbox_homepage/controllers/main.py +++ b/addons/hw_posbox_homepage/controllers/main.py @@ -57,9 +57,7 @@ index_template = """

If you need to grant remote debugging access to a developer, you can do it here.

-

- If you need to display the current customer basket on another device, you can do it here. -

+ %s

The PosBox software installed on this posbox is version 16, the posbox version number is independent from Odoo. You can upgrade @@ -74,10 +72,21 @@ index_template = """ class PosboxHomepage(openerp.addons.web.controllers.main.Home): + + def get_hw_screen_message(self): + return """ +

+ The activate the customer display feature, you will need to reinstall the PosBox software. + You can find the latest images on the Odoo Nightly builds website. + Make sure to download at least the version 16.
+ Odoo version 11, or above, is required to use the customer display feature. +

+""" + @http.route('/', type='http', auth='none', website=True) def index(self): #return request.render('hw_posbox_homepage.index',mimetype='text/html') - return index_template + return index_template % self.get_hw_screen_message() @http.route('/wifi', type='http', auth='none', website=True) def wifi(self): diff --git a/addons/hw_screen/controllers/main.py b/addons/hw_screen/controllers/main.py index aa4b8a1a729..e35c1474799 100644 --- a/addons/hw_screen/controllers/main.py +++ b/addons/hw_screen/controllers/main.py @@ -23,6 +23,7 @@ from openerp import http from openerp.tools import config from openerp.addons.web.controllers import main as web +from openerp.addons.hw_posbox_homepage.controllers import main as homepage import logging import netifaces as ni @@ -35,6 +36,14 @@ self_port = str(config['xmlrpc_port'] or 8069) _logger = logging.getLogger(__name__) +class Homepage(homepage.PosboxHomepage): + + def get_hw_screen_message(self): + return """ +

+If you need to display the current customer basket on another device, you can do it here. +

+""" class HardwareScreen(web.Home): From 7b0440d3f8a9480595daee77e010f38d0487bfa2 Mon Sep 17 00:00:00 2001 From: Martin Trigaux Date: Wed, 24 May 2017 17:02:28 +0200 Subject: [PATCH 3/9] [FIX] hw_scanner: avoid flooding logs When no devices are connected, avoid errors No such file or directory: '/dev/input/by-id/' --- addons/hw_scanner/controllers/main.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/addons/hw_scanner/controllers/main.py b/addons/hw_scanner/controllers/main.py index ad0f47a2cda..4c3150a269e 100644 --- a/addons/hw_scanner/controllers/main.py +++ b/addons/hw_scanner/controllers/main.py @@ -122,6 +122,9 @@ class Scanner(Thread): if not evdev: return None + if not os.path.isdir(self.input_dir): + return None + new_devices = [device for device in listdir(self.input_dir) if join(self.input_dir, device) not in [dev.evdev.fn for dev in self.open_devices]] scanners = [device for device in new_devices From e40cad35605267927a335c8a3e0f49b9e37138ba Mon Sep 17 00:00:00 2001 From: Martin Trigaux Date: Wed, 24 May 2017 17:27:52 +0200 Subject: [PATCH 4/9] [FIX] hw_scanner: iterate on empty list Avoid error None is not iterable when no device is connected --- addons/hw_scanner/controllers/main.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/hw_scanner/controllers/main.py b/addons/hw_scanner/controllers/main.py index 4c3150a269e..2319a0c7c2e 100644 --- a/addons/hw_scanner/controllers/main.py +++ b/addons/hw_scanner/controllers/main.py @@ -120,10 +120,10 @@ class Scanner(Thread): def get_devices(self): try: if not evdev: - return None + return [] if not os.path.isdir(self.input_dir): - return None + return [] new_devices = [device for device in listdir(self.input_dir) if join(self.input_dir, device) not in [dev.evdev.fn for dev in self.open_devices]] From d6cf41b67b471c3511c2f025f3ec9e15bda50828 Mon Sep 17 00:00:00 2001 From: eLBati Date: Tue, 11 Apr 2017 10:27:25 +0200 Subject: [PATCH 5/9] [FIX] account_payment: The payment line name must be unique per company Closes #16366 Steps to reproduce the problem: - create 2 company - create 2 different sequences 'payment line', one for company - create a payment order for company A and insert a line - create a payment order for company B and insert a line Get SQL error saying The payment line name must be unique --- addons/account_payment/account_payment.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/account_payment/account_payment.py b/addons/account_payment/account_payment.py index 3f9e41cd48c..30bec3e917f 100644 --- a/addons/account_payment/account_payment.py +++ b/addons/account_payment/account_payment.py @@ -329,7 +329,7 @@ class payment_line(osv.osv): 'date': _get_date, } _sql_constraints = [ - ('name_uniq', 'UNIQUE(name)', 'The payment line name must be unique!'), + ('name_uniq', 'UNIQUE(name, company_id)', 'The payment line name must be unique per company!'), ] def onchange_move_line(self, cr, uid, ids, move_line_id, payment_type, date_prefered, date_scheduled, currency=False, company_currency=False, context=None): From 140113346dc2ecd265a0415d25fad290935545b2 Mon Sep 17 00:00:00 2001 From: "Yenthe V.G" Date: Tue, 30 May 2017 11:22:22 +0200 Subject: [PATCH 6/9] [FIX] CRM: do not copy meetings attendees When duplicating a res.partner, the new partner was added in the list of attendees of previous meeting. Fixes #17285 Closes #17286 --- addons/crm/res_partner.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/crm/res_partner.py b/addons/crm/res_partner.py index c920379a3f7..2af0aaf83d0 100644 --- a/addons/crm/res_partner.py +++ b/addons/crm/res_partner.py @@ -54,7 +54,7 @@ class res_partner(osv.osv): 'opportunity_ids': fields.one2many('crm.lead', 'partner_id',\ 'Leads and Opportunities', domain=[('probability', 'not in', ['0', '100'])]), 'meeting_ids': fields.many2many('calendar.event', 'calendar_event_res_partner_rel','res_partner_id', 'calendar_event_id', - 'Meetings'), + 'Meetings', copy=False), 'phonecall_ids': fields.one2many('crm.phonecall', 'partner_id',\ 'Phonecalls'), 'opportunity_count': fields.function(_opportunity_meeting_phonecall_count, string="Opportunity", type='integer', multi='opp_meet'), From ebda8caa97a1ed154030e9a257eebfed087e9a18 Mon Sep 17 00:00:00 2001 From: jesusVMayor Date: Thu, 9 Mar 2017 18:50:51 +0100 Subject: [PATCH 7/9] [FIX] mrp: Use the route on the production if set to create the previous moves Description of the issue/feature this PR addresses: The production routing is ignored when creating previous movements Current behavior before PR: When you create a production that does not have a routing established in the BOM, and you set a route manually, it is ignored when creating the previous movements --- addons/mrp/mrp.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/addons/mrp/mrp.py b/addons/mrp/mrp.py index 7915a69fbc8..621f46b528f 100644 --- a/addons/mrp/mrp.py +++ b/addons/mrp/mrp.py @@ -1197,8 +1197,13 @@ class mrp_production(osv.osv): source_location_id = production.location_src_id.id prod_location_id = source_location_id prev_move= False - if production.bom_id.routing_id and production.bom_id.routing_id.location_id and production.bom_id.routing_id.location_id.id != source_location_id: - source_location_id = production.bom_id.routing_id.location_id.id + if production.routing_id: + routing = production.routing_id + else: + routing = production.bom_id.routing_id + + if routing and routing.location_id and routing.location_id.id != source_location_id: + source_location_id = routing.location_id.id prev_move = True destination_location_id = production.product_id.property_stock_production.id From f38d96113bbcd0408f14219751ee217a85c8c2e1 Mon Sep 17 00:00:00 2001 From: jesusVMayor Date: Thu, 9 Mar 2017 19:06:24 +0100 Subject: [PATCH 8/9] [CLA] JesusVMayor: add new email address in individual cla --- doc/cla/individual/JesusVMayor.md | 2 +- odoo/addons/base/maintenance | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) create mode 120000 odoo/addons/base/maintenance diff --git a/doc/cla/individual/JesusVMayor.md b/doc/cla/individual/JesusVMayor.md index c009f323be9..456778e94f5 100644 --- a/doc/cla/individual/JesusVMayor.md +++ b/doc/cla/individual/JesusVMayor.md @@ -9,4 +9,4 @@ declaration. Signed, Jesús Ventosinos Mayor jesus@pexego.es https://github.com/jesusVMayor - +Jesús Ventosinos Mayor jesus@comunitea.com https://github.com/jesusVMayor diff --git a/odoo/addons/base/maintenance b/odoo/addons/base/maintenance new file mode 120000 index 00000000000..aaa1ccf83ad --- /dev/null +++ b/odoo/addons/base/maintenance @@ -0,0 +1 @@ +../../../../saas-migration/ \ No newline at end of file From 2fc7eed0d80b0cb9aafada0fcfad6209f89c5c5a Mon Sep 17 00:00:00 2001 From: Olivier Dony Date: Tue, 30 May 2017 13:45:48 +0200 Subject: [PATCH 9/9] [REM] maintenance symlink added by previous commit Symlink introduced by mistake at f38d96113bbcd0408f14219751ee217a85c8c2e1 --- odoo/addons/base/maintenance | 1 - 1 file changed, 1 deletion(-) delete mode 120000 odoo/addons/base/maintenance diff --git a/odoo/addons/base/maintenance b/odoo/addons/base/maintenance deleted file mode 120000 index aaa1ccf83ad..00000000000 --- a/odoo/addons/base/maintenance +++ /dev/null @@ -1 +0,0 @@ -../../../../saas-migration/ \ No newline at end of file