Remove support for Python 2.7
issue7497 review53261002
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
* Remove support for Python 2.7
|
||||
|
||||
Version 4.8.0 - 2018-04-23
|
||||
* Bug fixes (see mercurial logs for details)
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ Installing trytond_stock_forecast
|
||||
Prerequisites
|
||||
-------------
|
||||
|
||||
* Python 2.7 or later (http://www.python.org/)
|
||||
* Python 3.4 or later (http://www.python.org/)
|
||||
* python-dateutil (http://labix.org/python-dateutil)
|
||||
* python-sql (http://code.google.com/p/python-sql/)
|
||||
* trytond (http://www.tryton.org/)
|
||||
|
||||
+5
-5
@@ -1,6 +1,6 @@
|
||||
# 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 __future__ import division
|
||||
|
||||
import datetime
|
||||
from dateutil.relativedelta import relativedelta
|
||||
import itertools
|
||||
@@ -496,7 +496,7 @@ class ForecastLine(ModelSQL, ModelView):
|
||||
unit_price, self.uom)
|
||||
|
||||
moves = []
|
||||
for day, qty in distribution.iteritems():
|
||||
for day, qty in distribution.items():
|
||||
if qty == 0.0:
|
||||
continue
|
||||
move = Move()
|
||||
@@ -521,7 +521,7 @@ class ForecastLine(ModelSQL, ModelView):
|
||||
|
||||
def distribute(self, delta, qty):
|
||||
'Distribute qty over delta'
|
||||
range_delta = range(delta)
|
||||
range_delta = list(range(delta))
|
||||
a = {}.fromkeys(range_delta, 0)
|
||||
while qty > 0:
|
||||
if qty > delta:
|
||||
@@ -632,7 +632,7 @@ class ForecastComplete(Wizard):
|
||||
return {'products': [x.id for x in self.choose.products]}
|
||||
pbl = self._get_product_quantity()
|
||||
products = []
|
||||
for (_, product), qty in pbl.iteritems():
|
||||
for (_, product), qty in pbl.items():
|
||||
if qty < 0:
|
||||
products.append(product)
|
||||
return {'products': products}
|
||||
@@ -663,7 +663,7 @@ class ForecastComplete(Wizard):
|
||||
products = None
|
||||
|
||||
to_save = []
|
||||
for key, qty in pbl.iteritems():
|
||||
for key, qty in pbl.items():
|
||||
_, product = key
|
||||
if products and product not in products:
|
||||
continue
|
||||
|
||||
@@ -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,
|
||||
@@ -119,5 +117,4 @@ setup(name=name,
|
||||
""",
|
||||
test_suite='tests',
|
||||
test_loader='trytond.test_loader:Loader',
|
||||
use_2to3=True,
|
||||
)
|
||||
|
||||
@@ -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://}
|
||||
|
||||
Reference in New Issue
Block a user