Add Python3 support

issue3211
review23801002
This commit is contained in:
Cédric Krier committed 2016-02-14 14:34:34 +01:00
1 parent 9873334e32
commit bcd9f9629f
5 files changed
+24 -8

No files matched your search

+2 -2
View File
@@ -1,9 +1,9 @@
image: python2.7
image: python:all
env:
- POSTGRESQL_URI=postgresql://postgres@127.0.0.1:5432/
- MYSQL_URI=mysql://root@127.0.0.1:3306/
script:
- pip install tox
- tox -e "py27-{sqlite,postgresql}"
- tox -e "{py27,py33,py34,py35}-{sqlite,postgresql}" --skip-missing-interpreters
services:
- postgres
+2
View File
@@ -1,3 +1,5 @@
* Add Python3 support
Version 3.8.0 - 2015-11-02
* Bug fixes (see mercurial logs for details)
+5 -1
View File
@@ -4,13 +4,13 @@ from trytond.model import ModelSQL, ModelView, DictSchemaMixin, fields
from trytond.pool import PoolMeta
from trytond.pyson import Eval
__metaclass__ = PoolMeta
__all__ = ['ProductAttributeSet', 'ProductAttribute',
'ProductAttributeAttributeSet', 'Template', 'Product']
class ProductAttributeSet(ModelSQL, ModelView):
"Product Attribute Set"
__metaclass__ = PoolMeta
__name__ = 'product.attribute.set'
name = fields.Char('Name', required=True, translate=True)
attributes = fields.Many2Many('product.attribute-product.attribute-set',
@@ -19,6 +19,7 @@ class ProductAttributeSet(ModelSQL, ModelView):
class ProductAttribute(DictSchemaMixin, ModelSQL, ModelView):
"Product Attribute"
__metaclass__ = PoolMeta
__name__ = 'product.attribute'
sets = fields.Many2Many('product.attribute-product.attribute-set',
'attribute', 'attribute_set', 'Sets')
@@ -26,6 +27,7 @@ class ProductAttribute(DictSchemaMixin, ModelSQL, ModelView):
class ProductAttributeAttributeSet(ModelSQL):
"Product Attribute - Set"
__metaclass__ = PoolMeta
__name__ = 'product.attribute-product.attribute-set'
attribute = fields.Many2One('product.attribute', 'Attribute',
ondelete='CASCADE', select=True, required=True)
@@ -34,11 +36,13 @@ class ProductAttributeAttributeSet(ModelSQL):
class Template:
__metaclass__ = PoolMeta
__name__ = 'product.template'
attribute_set = fields.Many2One('product.attribute.set', 'Set')
class Product:
__metaclass__ = PoolMeta
__name__ = 'product.product'
attributes = fields.Dict('product.attribute', 'Attributes',
domain=[
+13 -3
View File
@@ -5,11 +5,17 @@
from setuptools import setup
import re
import os
import ConfigParser
import io
try:
from configparser import ConfigParser
except ImportError:
from ConfigParser import ConfigParser
def read(fname):
return open(os.path.join(os.path.dirname(__file__), fname)).read()
return io.open(
os.path.join(os.path.dirname(__file__), fname),
'r', encoding='utf-8').read()
def get_require_version(name):
@@ -21,7 +27,7 @@ def get_require_version(name):
major_version, minor_version + 1)
return require
config = ConfigParser.ConfigParser()
config = ConfigParser()
config.readfp(open('tryton.cfg'))
info = dict(config.items('tryton'))
for key in ('depends', 'extras_depend', 'xml'):
@@ -89,6 +95,9 @@ setup(name=name,
'Natural Language :: Spanish',
'Operating System :: OS Independent',
'Programming Language :: Python :: 2.7',
'Programming Language :: Python :: 3.3',
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: Implementation :: CPython',
'Programming Language :: Python :: Implementation :: PyPy',
'Topic :: Office/Business',
@@ -102,4 +111,5 @@ setup(name=name,
""",
test_suite='tests',
test_loader='trytond.test_loader:Loader',
use_2to3=True,
)
+2 -2
View File
@@ -1,10 +1,10 @@
[tox]
envlist = py27-{sqlite,postgresql,mysql},pypy-{sqlite,postgresql}
envlist = {py27,py33,py34,py35}-{sqlite,postgresql,mysql},pypy-{sqlite,postgresql}
[testenv]
commands = {envpython} setup.py test
deps =
py27-postgresql: psycopg2 >= 2.0
{py27,py33,py34,py35}-postgresql: psycopg2 >= 2.0
pypy-postgresql: psycopg2cffi >= 2.5
mysql: MySQL-python
setenv =