From 8f09fd09991c959ba9f7418ecdbaff072b944906 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Tue, 26 Jun 2018 19:11:50 +0200 Subject: [PATCH] Remove support for Python 2.7 issue7497 review53261002 --- .drone.yml | 6 ------ CHANGELOG | 4 +++- INSTALL | 2 +- routing.py | 3 +-- setup.py | 17 +++++++---------- timesheet.py | 3 +-- tox.ini | 4 ++-- work.py | 5 ++--- 8 files changed, 17 insertions(+), 27 deletions(-) diff --git a/.drone.yml b/.drone.yml index e0bc2f7026..5da6083eb7 100644 --- a/.drone.yml +++ b/.drone.yml @@ -25,12 +25,6 @@ services: matrix: include: - - IMAGE: python:2.7 - TOXENV: py27 - DATABASE: sqlite - - IMAGE: python:2.7 - TOXENV: py27 - DATABASE: postgresql - IMAGE: python:3.4 TOXENV: py34 DATABASE: sqlite diff --git a/CHANGELOG b/CHANGELOG index add0311d45..819e951374 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,5 @@ +* Remove support for Python 2.7 + Version 4.8.0 - 2018-04-23 * Bug fixes (see mercurial logs for details) @@ -8,4 +10,4 @@ Version 4.4.0 - 2017-05-01 * Bug fixes (see mercurial logs for details) Version 4.2.0 - 2016-11-28 -* Initial release \ No newline at end of file +* Initial release diff --git a/INSTALL b/INSTALL index e6ae9bbbc5..b1233a765e 100644 --- a/INSTALL +++ b/INSTALL @@ -4,7 +4,7 @@ Installing trytond_production_work_timesheet Prerequisites ------------- - * Python 2.7 or later (http://www.python.org/) + * Python 3.4 or later (http://www.python.org/) * trytond (http://www.tryton.org/) Installation diff --git a/routing.py b/routing.py index 14dc776e27..172a4ef792 100644 --- a/routing.py +++ b/routing.py @@ -6,8 +6,7 @@ from trytond.model import fields __all__ = ['Operation'] -class Operation: - __metaclass__ = PoolMeta +class Operation(metaclass=PoolMeta): __name__ = 'production.routing.operation' timesheet_available = fields.Boolean('Available on timesheets') diff --git a/setup.py b/setup.py index 162c51c2ed..074cf16689 100644 --- a/setup.py +++ b/setup.py @@ -1,15 +1,12 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # 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 setuptools import setup -import re -import os import io -try: - from configparser import ConfigParser -except ImportError: - from ConfigParser import ConfigParser +import os +import re +from configparser import ConfigParser +from setuptools import setup def read(fname): @@ -27,6 +24,7 @@ def get_require_version(name): major_version, minor_version + 1) return require + config = ConfigParser() config.readfp(open('tryton.cfg')) info = dict(config.items('tryton')) @@ -101,7 +99,6 @@ setup(name=name, 'Natural Language :: Slovenian', 'Natural Language :: Spanish', 'Operating System :: OS Independent', - 'Programming Language :: Python :: 2.7', 'Programming Language :: Python :: 3.4', 'Programming Language :: Python :: 3.5', 'Programming Language :: Python :: 3.6', @@ -110,6 +107,7 @@ setup(name=name, 'Topic :: Office/Business', ], license='GPL-3', + python_requires='>=3.4', install_requires=requires, dependency_links=dependency_links, zip_safe=False, @@ -120,5 +118,4 @@ setup(name=name, test_suite='tests', test_loader='trytond.test_loader:Loader', tests_require=tests_require, - use_2to3=True, ) diff --git a/timesheet.py b/timesheet.py index 7f619996f0..a4ebbc6d37 100644 --- a/timesheet.py +++ b/timesheet.py @@ -5,8 +5,7 @@ from trytond.pool import PoolMeta, Pool __all__ = ['TimesheetWork'] -class TimesheetWork: - __metaclass__ = PoolMeta +class TimesheetWork(metaclass=PoolMeta): __name__ = 'timesheet.work' @classmethod diff --git a/tox.ini b/tox.ini index 2082ab4f4d..ae2ad390c5 100644 --- a/tox.ini +++ b/tox.ini @@ -1,10 +1,10 @@ [tox] -envlist = {py27,py34,py35,py36}-{sqlite,postgresql},pypy-{sqlite,postgresql} +envlist = {py34,py35,py36}-{sqlite,postgresql},pypy-{sqlite,postgresql} [testenv] commands = {envpython} setup.py test deps = - {py27,py34,py35,py36}-postgresql: psycopg2 >= 2.5 + {py34,py35,py36}-postgresql: psycopg2 >= 2.5 pypy-postgresql: psycopg2cffi >= 2.5 sqlite: sqlitebck setenv = diff --git a/work.py b/work.py index 982bb9a7ae..c60385380a 100644 --- a/work.py +++ b/work.py @@ -9,8 +9,7 @@ from trytond.pyson import Eval __all__ = ['Work'] -class Work: - __metaclass__ = PoolMeta +class Work(metaclass=PoolMeta): __name__ = 'production.work' timesheet_works = fields.One2Many( @@ -108,7 +107,7 @@ class Work: Timesheet.create(to_create) if to_delete: Timesheet.delete(to_delete) - for date, timesheets in to_write.iteritems(): + for date, timesheets in list(to_write.items()): Timesheet.write(timesheets, { 'timesheet_end_date': date, })