🤝 merge with master

This commit is contained in:
chfw 2019-03-19 19:14:03 +00:00
commit e6444b8256
18 changed files with 137 additions and 21 deletions

View File

@ -57,7 +57,8 @@ get_data(.., library='pyexcel-ods')
============= ======= ======== ======= ======== ======== ========
`pyexcel-io`_ `xls`_ `xlsx`_ `ods`_ `ods3`_ `odsr`_ `xlsxw`_
============= ======= ======== ======= ======== ======== ========
0.5.1 0.5.0 0.5.0 0.5.0 0.5.0 0.5.0 0.5.0
0.5.10+ 0.5.0+ 0.5.0+ 0.5.4 0.5.3 0.5.0+ 0.5.0+
0.5.1+ 0.5.0+ 0.5.0+ 0.5.0+ 0.5.0+ 0.5.0+ 0.5.0+
0.4.x 0.4.x 0.4.x 0.4.x 0.4.x 0.4.x 0.4.x
0.3.0+ 0.3.0+ 0.3.0 0.3.0+ 0.3.0+ 0.3.0 0.3.0
0.2.2+ 0.2.2+ 0.2.2+ 0.2.1+ 0.2.1+ 0.0.1

View File

@ -24,3 +24,4 @@ targets:
- output: CHANGELOG.rst
configuration: changelog.yml
template: CHANGELOG.rst.jj2
- lint.sh: lint.script.jj2

View File

@ -1,3 +1,4 @@
sudo: false
dist: xenial
language: python
@ -11,8 +12,34 @@ python:
- 3.6
- 3.5
- 2.7
stages:
- test
- lint
.disable_global: &disable_global
before_install: false
install: true
before_script: false
after_success: false
after_failure: false
.lint: &lint
<<: *disable_global
python: 3.6
stage: lint
install: pip install flake8
script: make lint
jobs:
include:
- *lint
stage: test
script: make test
before_install:
- if [[ $TRAVIS_PYTHON_VERSION == "2.6" ]]; then pip install flake8==2.6.2; fi
- if [[ -f min_requirements.txt && "$MINREQ" -eq 1 ]]; then
mv min_requirements.txt requirements.txt ;
fi

View File

@ -1,7 +1,25 @@
Change log
================================================================================
0.5.13 - 21.02.2019
0.5.16 - 19.03.2019
--------------------------------------------------------------------------------
updated
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#. `#67 <https://github.com/pyexcel/pyexcel-io/issues/67>`_: fix conversion
issue for long type on python 2.7 for ods
0.5.15 - 16.03.2019
--------------------------------------------------------------------------------
updated
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#. `pyexcel-ods#33 <https://github.com/pyexcel/pyexcel-ods/issues/33>`_: fix
integer comparision error on i586
0.5.14 - 21.02.2019
--------------------------------------------------------------------------------
updated
@ -10,6 +28,15 @@ updated
#. `#65 <https://github.com/pyexcel/pyexcel-io/issues/65>`_: add
tests/__init__.py because python2.7 setup.py test needs it
0.5.13 - 12.02.2019
--------------------------------------------------------------------------------
updated
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#. `#63 <https://github.com/pyexcel/pyexcel-io/issues/63>`_: Version 0.5.12
prevents xslx and ods plugin from being loaded
0.5.12 - 9.02.2019
--------------------------------------------------------------------------------

View File

@ -1,4 +1,4 @@
Copyright (c) by Onni Software Ltd. and its contributors
Copyright (c) 2015-2019 by Onni Software Ltd. and its contributors
All rights reserved.
Redistribution and use in source and binary forms of the software as well

View File

@ -2,6 +2,10 @@ include README.rst
include LICENSE
include CHANGELOG.rst
recursive-include tests *
<<<<<<< HEAD
=======
recursive-include docs *
>>>>>>> master
include docs/source/*
include Makefile
include test.sh

View File

@ -7,7 +7,13 @@ document:
sphinx-autogen -o docs/source/generated/ docs/source/*.rst
sphinx-build -b html docs/source/ docs/build/
<<<<<<< HEAD
format:
isort -y $(find pyexcel_io -name "*.py"|xargs echo) $(find tests -name "*.py"|xargs echo)
black -l 79 pyexcel_io
black -l 79 tests
=======
lint:
bash lint.sh
>>>>>>> master

View File

@ -78,8 +78,11 @@ sqlalchemy supported databases. Its supported file formats are extended to cover
======================== ======================= ================= ==================
`pyexcel-xlsxw`_ xlsx(write only) `XlsxWriter`_ Python 2 and 3
`pyexcel-xlsxr`_ xlsx(read only) lxml same as above
`pyexcel-xlsbr`_ xlsx(read only) pyxlsb same as above
`pyexcel-odsr`_ read only for ods, fods lxml same as above
`pyexcel-odsw`_ write only for ods loxun same as above
`pyexcel-htmlr`_ html(read only) lxml,html5lib same as above
`pyexcel-pdfr`_ pdf(read only) pdftables Python 2 only.
======================== ======================= ================= ==================
@ -89,8 +92,12 @@ sqlalchemy supported databases. Its supported file formats are extended to cover
.. _pyexcel-ods: https://github.com/pyexcel/pyexcel-ods
.. _pyexcel-ods3: https://github.com/pyexcel/pyexcel-ods3
.. _pyexcel-odsr: https://github.com/pyexcel/pyexcel-odsr
.. _pyexcel-odsw: https://github.com/pyexcel/pyexcel-odsw
.. _pyexcel-pdfr: https://github.com/pyexcel/pyexcel-pdfr
.. _pyexcel-xlsxw: https://github.com/pyexcel/pyexcel-xlsxw
.. _pyexcel-xlsxr: https://github.com/pyexcel/pyexcel-xlsxr
.. _pyexcel-xlsbr: https://github.com/pyexcel/pyexcel-xlsbr
.. _pyexcel-htmlr: https://github.com/pyexcel/pyexcel-htmlr
.. _xlrd: https://github.com/python-excel/xlrd

View File

@ -1,12 +1,30 @@
name: pyexcel-io
organisation: pyexcel
releases:
- changes:
- action: updated
details:
- '`#67`: fix conversion issue for long type on python 2.7 for ods'
version: 0.5.16
date: 19.03.2019
- changes:
- action: updated
details:
- '`pyexcel-ods#33`: fix integer comparision error on i586'
version: 0.5.15
date: 16.03.2019
- changes:
- action: updated
details:
- '`#65`: add tests/__init__.py because python2.7 setup.py test needs it'
version: 0.5.13
version: 0.5.14
date: 21.02.2019
- changes:
- action: updated
details:
- '`#63`: Version 0.5.12 prevents xslx and ods plugin from being loaded'
version: 0.5.13
date: 12.02.2019
- changes:
- action: updated
details:

View File

@ -20,9 +20,9 @@ project = 'pyexcel-io'
copyright = 'copyright 2015-2019 Onni Software Ltd.'
author = 'C.W.'
# The short X.Y version
version = '0.5.13'
version = '0.5.16'
# The full version, including alpha/beta/rc tags
release = '0.5.13'
release = '0.5.16'
# -- General configuration ---------------------------------------------------
@ -45,7 +45,7 @@ source_suffix = ''
#
# This is also used if you do content translation via gettext catalogs.
# Usually you set "language" from the command line for these cases.
language = 'en'
language = 'Python'
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.

View File

@ -85,8 +85,11 @@ For individual excel file formats, please install them as you wish:
======================== ======================= ================= ==================
`pyexcel-xlsxw`_ xlsx(write only) `XlsxWriter`_ Python 2 and 3
`pyexcel-xlsxr`_ xlsx(read only) lxml same as above
`pyexcel-xlsbr`_ xlsx(read only) pyxlsb same as above
`pyexcel-odsr`_ read only for ods, fods lxml same as above
`pyexcel-odsw`_ write only for ods loxun same as above
`pyexcel-htmlr`_ html(read only) lxml,html5lib same as above
`pyexcel-pdfr`_ pdf(read only) pdftables Python 2 only.
======================== ======================= ================= ==================
@ -96,8 +99,12 @@ For individual excel file formats, please install them as you wish:
.. _pyexcel-ods: https://github.com/pyexcel/pyexcel-ods
.. _pyexcel-ods3: https://github.com/pyexcel/pyexcel-ods3
.. _pyexcel-odsr: https://github.com/pyexcel/pyexcel-odsr
.. _pyexcel-odsw: https://github.com/pyexcel/pyexcel-odsw
.. _pyexcel-pdfr: https://github.com/pyexcel/pyexcel-pdfr
.. _pyexcel-xlsxw: https://github.com/pyexcel/pyexcel-xlsxw
.. _pyexcel-xlsxr: https://github.com/pyexcel/pyexcel-xlsxr
.. _pyexcel-xlsbr: https://github.com/pyexcel/pyexcel-xlsbr
.. _pyexcel-htmlr: https://github.com/pyexcel/pyexcel-htmlr
.. _xlrd: https://github.com/python-excel/xlrd
@ -138,7 +145,8 @@ get_data(.., library='pyexcel-ods')
============= ======= ======== ======= ======== ======== ========
`pyexcel-io`_ `xls`_ `xlsx`_ `ods`_ `ods3`_ `odsr`_ `xlsxw`_
============= ======= ======== ======= ======== ======== ========
0.5.1 0.5.0 0.5.0 0.5.0 0.5.0 0.5.0 0.5.0
0.5.10+ 0.5.0+ 0.5.0+ 0.5.4 0.5.3 0.5.0+ 0.5.0+
0.5.1+ 0.5.0+ 0.5.0+ 0.5.0+ 0.5.0+ 0.5.0+ 0.5.0+
0.4.x 0.4.x 0.4.x 0.4.x 0.4.x 0.4.x 0.4.x
0.3.0+ 0.3.0+ 0.3.0 0.3.0+ 0.3.0+ 0.3.0 0.3.0
0.2.2+ 0.2.2+ 0.2.2+ 0.2.1+ 0.2.1+ 0.0.1

1
lint.sh Normal file
View File

@ -0,0 +1 @@
flake8 . --exclude=.moban.d,docs --builtins=unicode,xrange,long

View File

@ -2,9 +2,10 @@ overrides: "pyexcel.yaml"
project: "pyexcel-io"
name: pyexcel-io
nick_name: io
version: 0.5.13
current_version: 0.5.13
release: 0.5.13
version: 0.5.16
current_version: 0.5.16
release: 0.5.16
copyright_year: 2015-2019
dependencies:
- ordereddict;python_version<"2.7"
- lml>=0.0.4

View File

@ -180,7 +180,7 @@ ODS_WRITE_FORMAT_COVERSION = {
if PY2:
ODS_WRITE_FORMAT_COVERSION[unicode] = "string" # noqa: F821
ODS_WRITE_FORMAT_COVERSION[long] = "throw_exception" # noqa: F821
ODS_WRITE_FORMAT_COVERSION[long] = "long" # noqa: F821
VALUE_CONVERTERS = {
@ -234,7 +234,7 @@ ODS_VALUE_CONVERTERS = {
"boolean": ods_bool_value,
"timedelta": ods_timedelta_value,
"float": ods_float_value,
"throw_exception": throw_exception
"long": ods_float_value
}

View File

@ -29,7 +29,7 @@ except (ValueError, UnicodeError, locale.Error):
NAME = 'pyexcel-io'
AUTHOR = 'C.W.'
VERSION = '0.5.13'
VERSION = '0.5.16'
EMAIL = 'wangc_2011@hotmail.com'
LICENSE = 'New BSD'
DESCRIPTION = (
@ -37,7 +37,7 @@ DESCRIPTION = (
'format and to/from databases'
)
URL = 'https://github.com/pyexcel/pyexcel-io'
DOWNLOAD_URL = '%s/archive/0.5.13.tar.gz' % URL
DOWNLOAD_URL = '%s/archive/0.5.16.tar.gz' % URL
FILES = ['README.rst', 'CHANGELOG.rst']
KEYWORDS = [
'python',
@ -81,8 +81,8 @@ EXTRAS_REQUIRE = {
# You do not need to read beyond this line
PUBLISH_COMMAND = '{0} setup.py sdist bdist_wheel upload -r pypi'.format(
sys.executable)
GS_COMMAND = ('gs pyexcel-io v0.5.13 ' +
"Find 0.5.13 in changelog for more details")
GS_COMMAND = ('gs pyexcel-io v0.5.16 ' +
"Find 0.5.16 in changelog for more details")
NO_GS_MESSAGE = ('Automatic github release is disabled. ' +
'Please install gease to enable it.')
UPLOAD_FAILED_MSG = (

View File

@ -1,2 +1,2 @@
pip freeze
nosetests --with-coverage --cover-package pyexcel_io --cover-package tests tests --with-doctest --doctest-extension=.rst README.rst docs/source pyexcel_io && flake8 . --exclude=.moban.d,docs --builtins=unicode,xrange,long
nosetests --with-coverage --cover-package pyexcel_io --cover-package tests tests --with-doctest --doctest-extension=.rst README.rst docs/source pyexcel_io

View File

@ -1,2 +1,2 @@
pip freeze
nosetests --with-coverage --cover-package pyexcel_io --cover-package tests tests --with-doctest --doctest-extension=.rst README.rst docs/source pyexcel_io && flake8 . --exclude=.moban.d,docs --builtins=unicode,xrange,long
nosetests --with-coverage --cover-package pyexcel_io --cover-package tests tests --with-doctest --doctest-extension=.rst README.rst docs/source pyexcel_io

View File

@ -100,7 +100,7 @@ def test_detect_float_value_on_custom_nan_text2():
def test_ods_write_format_conversion():
if PY2:
expected = ODS_WRITE_FORMAT_COVERSION[long] # noqa: F821
eq_('throw_exception', expected)
eq_('long', expected)
else:
raise SkipTest()
@ -110,6 +110,21 @@ def test_big_int_value():
ods_float_value(1000000000000000)
def test_max_value_on_python_2():
if PY2:
ods_float_value(long(999999999999999))
else:
raise SkipTest("No long in python 3")
@raises(IntegerAccuracyLossError)
def test_really_long_value_on_python2():
if PY2:
ods_float_value(long(999999999999999+1))
else:
raise SkipTest("No long in python 3")
@raises(IntegerAccuracyLossError)
def test_throw_exception():
throw_exception(1000000000000000)