From 29f02a37f0429a9b690a209af664368298501d8c Mon Sep 17 00:00:00 2001 From: Christophe Monniez Date: Fri, 15 Nov 2019 15:23:50 +0000 Subject: [PATCH] [FIX] requirements: update library versions to match Debian Buster Some library versions are outdated since the release of Debian Buster. With this commit the required libraries versions will match as close as possible the versions available in the current Debian stable release (Buster). Also, the requirements were tested against a Windows Python 3.7 to ensure that a "pip install -r" can be used without the need of a CPP compiler. As Babel format_time now returns 'HNE' (Heure Normale de l'EST) for Fr locale instead of the zone offset, the test is adapted. Finally the babel.dates is explicitely imported, otherwise the proper import of this submodule is relying on a side effect. closes odoo/odoo#43106 X-original-commit: 32e455bf72980e6330871aa9cd99c26c6e1225d7 Signed-off-by: Christophe Monniez (moc) --- .../sale_timesheet/models/project_overview.py | 2 +- .../website_event_track/controllers/main.py | 1 + addons/website_sale/controllers/backend.py | 2 +- odoo/addons/base/models/ir_qweb_fields.py | 1 + odoo/addons/base/tests/test_misc.py | 2 +- odoo/tools/misc.py | 1 + requirements.txt | 57 +++++++++---------- 7 files changed, 34 insertions(+), 32 deletions(-) diff --git a/addons/sale_timesheet/models/project_overview.py b/addons/sale_timesheet/models/project_overview.py index c5953a556f4..946990be91e 100644 --- a/addons/sale_timesheet/models/project_overview.py +++ b/addons/sale_timesheet/models/project_overview.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -import babel +import babel.dates from dateutil.relativedelta import relativedelta import itertools import json diff --git a/addons/website_event_track/controllers/main.py b/addons/website_event_track/controllers/main.py index 4f475ac7085..747ec271c86 100644 --- a/addons/website_event_track/controllers/main.py +++ b/addons/website_event_track/controllers/main.py @@ -2,6 +2,7 @@ # Part of Odoo. See LICENSE file for full copyright and licensing details. import babel +import babel.dates import collections import datetime import pytz diff --git a/addons/website_sale/controllers/backend.py b/addons/website_sale/controllers/backend.py index f4f7f8c1210..64abbba8151 100644 --- a/addons/website_sale/controllers/backend.py +++ b/addons/website_sale/controllers/backend.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- -import babel +import babel.dates from datetime import datetime, timedelta, time diff --git a/odoo/addons/base/models/ir_qweb_fields.py b/odoo/addons/base/models/ir_qweb_fields.py index dc02b1ea5e3..b51a7f3903a 100644 --- a/odoo/addons/base/models/ir_qweb_fields.py +++ b/odoo/addons/base/models/ir_qweb_fields.py @@ -6,6 +6,7 @@ from io import BytesIO from odoo import api, fields, models, _ from PIL import Image import babel +import babel.dates from lxml import etree import math diff --git a/odoo/addons/base/tests/test_misc.py b/odoo/addons/base/tests/test_misc.py index 5276b2ed6f0..2f504756deb 100644 --- a/odoo/addons/base/tests/test_misc.py +++ b/odoo/addons/base/tests/test_misc.py @@ -264,7 +264,7 @@ class TestFormatLangDate(TransactionCase): self.assertEqual(misc.format_time(lang.with_context(lang='zh_CN').env, time_part, time_format='short'), '\u4e0b\u53484:30') # Check timezoned time part - self.assertEqual(misc.format_time(lang.with_context(lang='fr_FR').env, time_part_tz, time_format='long'), '16:30:22 -0504') + self.assertIn(misc.format_time(lang.with_context(lang='fr_FR').env, time_part_tz, time_format='long'), ['16:30:22 -0504', '16:30:22 HNE']) self.assertEqual(misc.format_time(lang.with_context(lang='zh_CN').env, time_part_tz, time_format='full'), '\u5317\u7f8e\u4e1c\u90e8\u6807\u51c6\u65f6\u95f4\u0020\u4e0b\u53484:30:22') # Check given `lang_code` overwites context lang diff --git a/odoo/tools/misc.py b/odoo/tools/misc.py index d8a0c9d150e..d2fe3e5c79f 100644 --- a/odoo/tools/misc.py +++ b/odoo/tools/misc.py @@ -7,6 +7,7 @@ Miscellaneous tools used by OpenERP. """ from functools import wraps import babel +import babel.dates from contextlib import contextmanager import datetime import math diff --git a/requirements.txt b/requirements.txt index f21b9a0a261..278039dfa55 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,49 +1,48 @@ -Babel==2.3.4 +Babel==2.6.0 chardet==3.0.4 -decorator==4.0.10 -docutils==0.12 +decorator==4.3.0 +docutils==0.14 ebaysdk==2.1.5 feedparser==5.2.1 gevent==1.1.2 ; sys_platform != 'win32' and python_version < '3.7' -gevent==1.3.4 ; sys_platform != 'win32' and python_version >= '3.7' -gevent==1.4.0 ; sys_platform == 'win32' and python_version >= '3.7' +gevent==1.3.7 ; sys_platform != 'win32' and python_version >= '3.7' +gevent==1.4.0 ; sys_platform == 'win32' greenlet==0.4.10 ; python_version < '3.7' -greenlet==0.4.13 ; python_version >= '3.7' -html2text==2016.9.19 +greenlet==0.4.15 ; python_version >= '3.7' +html2text==2018.1.9 Jinja2==2.10.1 -libsass==0.12.3 +libsass==0.17.0 lxml==3.7.1 ; sys_platform != 'win32' and python_version < '3.7' -lxml==4.2.3 ; sys_platform != 'win32' and python_version >= '3.7' +lxml==4.3.2 ; sys_platform != 'win32' and python_version >= '3.7' lxml ; sys_platform == 'win32' -Mako==1.0.4 -MarkupSafe==0.23 +Mako==1.0.7 +MarkupSafe==1.1.0 mock==2.0.0 num2words==0.5.6 -ofxparse==0.16 -passlib==1.6.5 +ofxparse==0.19 +passlib==1.7.1 Pillow==5.4.1 ; python_version < '3.7' or sys_platform != 'win32' Pillow==6.1.0 ; sys_platform == 'win32' and python_version >= '3.7' polib==1.1.0 -psutil==4.3.1; sys_platform != 'win32' -psutil==5.6.3; sys_platform == 'win32' -psycopg2==2.7.3.1; sys_platform != 'win32' +psutil==5.5.1 +psycopg2==2.7.7; sys_platform != 'win32' psycopg2==2.8.3; sys_platform == 'win32' -pydot==1.2.3 +pydot==1.4.1 pyldap==2.4.28; sys_platform != 'win32' -pyparsing==2.1.10 +pyparsing==2.2.0 PyPDF2==1.26.0 -pyserial==3.1.1 -python-dateutil==2.5.3 -pytz==2016.7 -pyusb==1.0.0 -qrcode==5.3 -reportlab==3.3.0 -requests==2.20.0 -zeep==3.1.0 +pyserial==3.4 +python-dateutil==2.7.3 +pytz==2019.1 +pyusb==1.0.2 +qrcode==6.1 +reportlab==3.5.13 +requests==2.21.0 +zeep==3.2.0 vatnumber==1.2 -vobject==0.9.3 +vobject==0.9.6.1 Werkzeug==0.14.1 -XlsxWriter==0.9.3 +XlsxWriter==1.1.2 xlwt==1.3.* -xlrd==1.0.0 +xlrd==1.1.0 pypiwin32 ; sys_platform == 'win32'