Remove support for Python 2.7

issue7497
review53261002
This commit is contained in:
Cédric Krier committed 2018-06-26 19:11:50 +02:00
1 parent fb00ae86f2
commit 5445e78f1f
8 files changed
+35 -48

No files matched your search

-6
View File
@@ -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
+3 -1
View File
@@ -1,3 +1,5 @@
* Remove support for Python 2.7
Version 4.8.0 - 2018-04-23
* Bug fixes (see mercurial logs for details)
@@ -11,4 +13,4 @@ Version 4.2.0 - 2016-11-28
* Bug fixes (see mercurial logs for details)
Version 4.0.0 - 2016-05-02
* Initial release
* Initial release
+1 -1
View File
@@ -4,7 +4,7 @@ Installing trytond_production_routing
Prerequisites
-------------
* Python 2.7 or later (http://www.python.org/)
* Python 3.4 or later (http://www.python.org/)
* trytond (http://www.tryton.org/)
* trytond_production (http://www.tryton.org/)
+1 -2
View File
@@ -12,8 +12,7 @@ from trytond.transaction import Transaction
__all__ = ['Production']
class Production:
__metaclass__ = PoolMeta
class Production(metaclass=PoolMeta):
__name__ = 'production'
work_center = fields.Many2One('production.work.center', 'Work Center',
states={
+2 -4
View File
@@ -6,15 +6,13 @@ from trytond.model import fields
__all__ = ['Operation', 'RoutingStep']
class Operation:
__metaclass__ = PoolMeta
class Operation(metaclass=PoolMeta):
__name__ = 'production.routing.operation'
work_center_category = fields.Many2One('production.work.center.category',
'Work Center Category')
class RoutingStep:
__metaclass__ = PoolMeta
class RoutingStep(metaclass=PoolMeta):
__name__ = 'production.routing.step'
def get_work(self, production, work_center_picker):
+7 -13
View File
@@ -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'))
@@ -102,7 +100,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',
@@ -111,6 +108,7 @@ setup(name=name,
'Topic :: Office/Business',
],
license='GPL-3',
python_requires='>=3.4',
install_requires=requires,
dependency_links=dependency_links,
zip_safe=False,
@@ -121,8 +119,4 @@ setup(name=name,
test_suite='tests',
test_loader='trytond.test_loader:Loader',
tests_require=tests_require,
use_2to3=True,
convert_2to3_doctests=[
'tests/scenario_production_work.rst',
],
)
+18 -18
View File
@@ -143,7 +143,7 @@ Create an Inventory::
>>> inventory_line2.quantity = 10
>>> inventory.click('confirm')
>>> inventory.state
u'done'
'done'
Make a production::
@@ -156,7 +156,7 @@ Make a production::
>>> production.quantity = 1
>>> production.click('wait')
>>> production.state
u'waiting'
'waiting'
>>> production.cost
Decimal('2.0000')
@@ -168,13 +168,13 @@ Test works::
>>> work1.work_center == center1
True
>>> work1.state
u'request'
'request'
>>> work2.operation == operation2
True
>>> work2.work_center == center2
True
>>> work2.state
u'request'
'request'
Run the production::
@@ -182,49 +182,49 @@ Run the production::
True
>>> production.click('run')
>>> production.state
u'running'
'running'
Test works::
>>> work1, work2 = production.works
>>> work1.state
u'draft'
'draft'
>>> work2.state
u'draft'
'draft'
Run works::
>>> cycle1 = work1.cycles.new()
>>> cycle1.click('run')
>>> cycle1.state
u'running'
'running'
>>> work1.reload()
>>> work1.state
u'running'
'running'
>>> cycle1.click('do')
>>> cycle1.state
u'done'
'done'
>>> work1.reload()
>>> work1.state
u'finished'
'finished'
>>> cycle2 = work2.cycles.new()
>>> cycle2.click('cancel')
>>> cycle2.state
u'cancelled'
'cancelled'
>>> work2.reload()
>>> work2.state
u'draft'
'draft'
>>> cycle2 = work2.cycles.new()
>>> cycle2.click('run')
>>> cycle2.state
u'running'
'running'
>>> cycle2.duration = datetime.timedelta(hours=1)
>>> cycle2.click('do')
>>> cycle2.state
u'done'
'done'
>>> work2.reload()
>>> work2.state
u'finished'
'finished'
Add an extra work::
@@ -235,7 +235,7 @@ Add an extra work::
>>> work2b = production.works[-1]
>>> work2b.state
u'draft'
'draft'
And delete the extra work::
@@ -251,5 +251,5 @@ Do the production::
>>> production.click('done')
>>> production.state
u'done'
'done'
+3 -3
View File
@@ -1,11 +1,11 @@
[tox]
envlist = {py27,py34,py35,py36}-{sqlite,postgresql},pypy-{sqlite,postgresql}
envlist = {py34,py35,py36}-{sqlite,postgresql},pypy3-{sqlite,postgresql}
[testenv]
commands = {envpython} setup.py test
deps =
{py27,py34,py35,py36}-postgresql: psycopg2 >= 2.5
pypy-postgresql: psycopg2cffi >= 2.5
{py34,py35,py36}-postgresql: psycopg2 >= 2.5
pypy3-postgresql: psycopg2cffi >= 2.5
sqlite: sqlitebck
setenv =
sqlite: TRYTOND_DATABASE_URI={env:SQLITE_URI:sqlite://}