Skip to content

Commit d8c4b5e

Browse files
authored
Merge pull request #55 from pyexcel/dev
0.7.1 release
2 parents 550a3fa + 11f05fa commit d8c4b5e

31 files changed

+162
-142
lines changed

.github/workflows/lint.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
- name: Set up Python
1212
uses: actions/setup-python@v1
1313
with:
14-
python-version: 3.8
14+
python-version: 3.11
1515
- name: lint
1616
run: |
1717
pip --use-deprecated=legacy-resolver install flake8

.github/workflows/moban-update.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,11 @@ jobs:
1212
- name: Set up Python
1313
uses: actions/setup-python@v1
1414
with:
15-
python-version: '3.7'
15+
python-version: '3.11'
1616
- name: check changes
1717
run: |
18-
pip install moban gitfs2 pypifs moban-jinja2-github moban-ansible
18+
pip install markupsafe==2.0.1
19+
pip install ruamel.yaml moban gitfs2 pypifs moban-jinja2-github moban-ansible
1920
moban
2021
git status
2122
git diff --exit-code

.github/workflows/pythonpublish.yml

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,16 @@ on:
55
types: [created]
66

77
jobs:
8-
deploy:
8+
pypi-publish:
9+
name: upload release to PyPI
910
runs-on: ubuntu-latest
11+
# Specifying a GitHub environment is optional, but strongly encouraged
12+
environment: pypi
13+
permissions:
14+
# IMPORTANT: this permission is mandatory for trusted publishing
15+
id-token: write
1016
steps:
17+
# retrieve your distributions here
1118
- uses: actions/checkout@v1
1219
- name: Set up Python
1320
uses: actions/setup-python@v1
@@ -16,11 +23,9 @@ jobs:
1623
- name: Install dependencies
1724
run: |
1825
python -m pip install --upgrade pip
19-
pip install setuptools wheel twine
20-
- name: Build and publish
21-
env:
22-
TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
23-
TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
26+
pip install setuptools wheel
27+
- name: Build
2428
run: |
2529
python setup.py sdist bdist_wheel
26-
twine upload dist/*
30+
- name: Publish package distributions to PyPI
31+
uses: pypa/gh-action-pypi-publish@release/v1

.github/workflows/tests.yml

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,35 @@
1-
name: run_tests
1+
name: Run unit tests on Windows, Ubuntu and Mac
22

33
on: [push, pull_request]
44

55
jobs:
6+
67
test:
8+
name: ${{ matrix.os }} / ${{ matrix.python_version }}
9+
runs-on: ${{ matrix.os }}-latest
710
strategy:
8-
fail-fast: false
9-
matrix:
10-
python-version: [3.6, 3.7, 3.8, 3.9]
11-
os: [macOs-latest, ubuntu-latest, windows-latest]
12-
exclude:
13-
- os: macOs-latest
14-
python-version: 3.6
11+
fail-fast: false
12+
matrix:
13+
os: [Ubuntu]
14+
python_version: ["3.9.16"]
1515

16-
runs-on: ${{ matrix.os }}
17-
name: run tests
1816
steps:
1917
- uses: actions/checkout@v2
2018
- name: Set up Python
21-
uses: actions/setup-python@v1
19+
uses: actions/setup-python@v5
2220
with:
23-
python-version: ${{ matrix.python-version }}
21+
python-version: ${{ matrix.python_version }}
22+
architecture: x64
23+
2424
- name: install
2525
run: |
2626
pip --use-deprecated=legacy-resolver install -r requirements.txt
2727
pip --use-deprecated=legacy-resolver install -r tests/requirements.txt
2828
- name: test
2929
run: |
3030
pip freeze
31-
nosetests --verbosity=3 --with-coverage --cover-package pyexcel_xls --cover-package tests tests --with-doctest --doctest-extension=.rst README.rst docs/source pyexcel_xls
31+
make test
32+
3233
- name: Upload coverage
3334
uses: codecov/codecov-action@v1
3435
with:

.moban.d/custom_README.rst.jj2

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@ You are likely to use it with `pyexcel <https://github.com/pyexcel/pyexcel>`_.
1111
Oct 2021 - Update:
1212
===================
1313

14-
1. v0.6.3 removed the pin on xlrd < 2. If you have xlrd >= 2, this
14+
1. v0.7.0 removed the pin on xlrd < 2. If you have xlrd >= 2, this
1515
library will NOT read 'xlsx' format and you need to install pyexcel-xlsx. Othwise,
1616
this library can use xlrd < 2 to read xlsx format for you. So 'xlsx' support
1717
in this library will vary depending on the installed version of xlrd.
1818

19-
2. v0.6.3 can write datetime.timedelta. but when the value is read out,
19+
2. v0.7.0 can write datetime.timedelta. but when the value is read out,
2020
you will get datetime.datetime. so you as the developer decides what to do with it.
2121

2222
Past news

.readthedocs.yml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@
55
# Required
66
version: 2
77

8+
build:
9+
os: ubuntu-22.04
10+
tools:
11+
python: "3.12"
12+
813
# Build documentation in the docs/ directory with Sphinx
914
sphinx:
1015
configuration: docs/source/conf.py
@@ -13,6 +18,4 @@ sphinx:
1318
formats:
1419
- pdf
1520

16-
# Optionally set the version of Python and requirements required to build your docs
1721
python:
18-
version: 3.7

CHANGELOG.rst

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,19 @@
11
Change log
22
================================================================================
33

4+
0.7.1 - 07.03.2024
5+
--------------------------------------------------------------------------------
6+
7+
**Removed**
8+
9+
#. `#52 <https://github.com/pyexcel/pyexcel-xls/issues/52>`_: remove xlsm
10+
support for xlrd > 2.0.0
11+
12+
**Updated**
13+
14+
#. `#54 <https://github.com/pyexcel/pyexcel-xls/issues/54>`_: first project in
15+
pyexcel to migrate to pytest
16+
417
0.7.0 - 07.10.2021
518
--------------------------------------------------------------------------------
619

CONTRIBUTORS.rst

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11

22

3-
3 contributors
3+
5 contributors
44
================================================================================
55

66
In alphabetical order:
77

8+
* `Ivan Cvitic <https://github.com/zazuum>`_
89
* `John Vandenberg <https://github.com/jayvdb>`_
910
* `Peter Carnesciali <https://github.com/pcarn>`_
10-
* `vinraspa <https://github.com/vinraspa>`_
11+
* `Pyrox <https://github.com/pyrox0>`_
12+
* `Vincent Raspal <https://github.com/vinraspa>`_

LICENSE

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Copyright (c) 2015-2021 by Onni Software Ltd. and its contributors
1+
Copyright (c) 2015-2025 by Onni Software Ltd. and its contributors
22
All rights reserved.
33

44
Redistribution and use in source and binary forms of the software as well
@@ -13,7 +13,7 @@ that the following conditions are met:
1313
and/or other materials provided with the distribution.
1414

1515
* Neither the name of 'pyexcel-xls' nor the names of the contributors
16-
may not be used to endorse or promote products derived from this software
16+
may be used to endorse or promote products derived from this software
1717
without specific prior written permission.
1818

1919
THIS SOFTWARE AND DOCUMENTATION IS PROVIDED BY THE COPYRIGHT HOLDERS AND

README.rst

Lines changed: 13 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,6 @@ pyexcel-xls - Let you focus on data, instead of xls format
88
.. image:: https://raw.githubusercontent.com/pyexcel/pyexcel-mobans/master/images/awesome-badge.svg
99
:target: https://awesome-python.com/#specific-formats-processing
1010

11-
.. image:: https://github.com/pyexcel/pyexcel-xls/workflows/run_tests/badge.svg
12-
:target: http://github.com/pyexcel/pyexcel-xls/actions
13-
1411
.. image:: https://codecov.io/gh/pyexcel/pyexcel-xls/branch/master/graph/badge.svg
1512
:target: https://codecov.io/gh/pyexcel/pyexcel-xls
1613

@@ -20,6 +17,7 @@ pyexcel-xls - Let you focus on data, instead of xls format
2017
.. image:: https://anaconda.org/conda-forge/pyexcel-xls/badges/version.svg
2118
:target: https://anaconda.org/conda-forge/pyexcel-xls
2219

20+
2321
.. image:: https://pepy.tech/badge/pyexcel-xls/month
2422
:target: https://pepy.tech/project/pyexcel-xls
2523

@@ -42,12 +40,12 @@ You are likely to use it with `pyexcel <https://github.com/pyexcel/pyexcel>`_.
4240
Oct 2021 - Update:
4341
===================
4442

45-
1. v0.6.3 removed the pin on xlrd < 2. If you have xlrd >= 2, this
43+
1. v0.7.0 removed the pin on xlrd < 2. If you have xlrd >= 2, this
4644
library will NOT read 'xlsx' format and you need to install pyexcel-xlsx. Othwise,
4745
this library can use xlrd < 2 to read xlsx format for you. So 'xlsx' support
4846
in this library will vary depending on the installed version of xlrd.
4947

50-
2. v0.6.3 can write datetime.timedelta. but when the value is read out,
48+
2. v0.7.0 can write datetime.timedelta. but when the value is read out,
5149
you will get datetime.datetime. so you as the developer decides what to do with it.
5250

5351
Past news
@@ -75,18 +73,11 @@ Support the project
7573
================================================================================
7674

7775
If your company has embedded pyexcel and its components into a revenue generating
78-
product, please support me on github, `patreon <https://www.patreon.com/bePatron?u=5537627>`_
79-
or `bounty source <https://salt.bountysource.com/teams/chfw-pyexcel>`_ to maintain
80-
the project and develop it further.
81-
82-
If you are an individual, you are welcome to support me too and for however long
83-
you feel like. As my backer, you will receive
84-
`early access to pyexcel related contents <https://www.patreon.com/pyexcel/posts>`_.
76+
product, please support me on github, or `patreon <https://www.patreon.com/bePatron?u=5537627>`_
77+
maintain the project and develop it further.
8578

86-
And your issues will get prioritized if you would like to become my patreon as `pyexcel pro user`.
87-
88-
With your financial support, I will be able to invest
89-
a little bit more time in coding, documentation and writing interesting posts.
79+
With your financial support, I will be able to invest a little bit more time in coding,
80+
documentation and writing interesting posts.
9081

9182

9283
Known constraints
@@ -372,15 +363,18 @@ and update changelog.yml
372363
.. note::
373364

374365
As to rnd_requirements.txt, usually, it is created when a dependent
375-
library is not released. Once the dependecy is installed
366+
library is not released. Once the dependency is installed
376367
(will be released), the future
377368
version of the dependency in the requirements.txt will be valid.
378369

379370

380371
How to test your contribution
381-
------------------------------
372+
--------------------------------------------------------------------------------
382373

383-
Although `nose` and `doctest` are both used in code testing, it is adviable that unit tests are put in tests. `doctest` is incorporated only to make sure the code examples in documentation remain valid across different development releases.
374+
Although `nose` and `doctest` are both used in code testing, it is advisable
375+
that unit tests are put in tests. `doctest` is incorporated only to make sure
376+
the code examples in documentation remain valid across different development
377+
releases.
384378

385379
On Linux/Unix systems, please launch your tests like this::
386380

changelog.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,15 @@
11
name: pyexcel-xls
22
organisation: pyexcel
33
releases:
4+
- changes:
5+
- action: Removed
6+
details:
7+
- "`#52`: remove xlsm support for xlrd > 2.0.0"
8+
- action: Updated
9+
details:
10+
- "`#54`: first project in pyexcel to migrate to pytest"
11+
date: 07.03.2024
12+
version: 0.7.1
413
- changes:
514
- action: Removed
615
details:

docs/source/conf.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,12 @@
2323
# -- Project information -----------------------------------------------------
2424

2525
project = 'pyexcel-xls'
26-
copyright = '2015-2021 Onni Software Ltd.'
26+
copyright = '2015-2025 Onni Software Ltd.'
2727
author = 'C.W.'
2828
# The short X.Y version
29-
version = '0.7.0'
29+
version = '0.7.1'
3030
# The full version, including alpha/beta/rc tags
31-
release = '0.7.0'
31+
release = '0.7.1'
3232

3333
# -- General configuration ---------------------------------------------------
3434

@@ -58,7 +58,7 @@
5858
# The theme to use for HTML and HTML Help pages. See the documentation for
5959
# a list of builtin themes.
6060
#
61-
html_theme = 'alabaster'
61+
html_theme = 'sphinx_rtd_theme'
6262

6363
# Add any paths that contain custom static files (such as style sheets) here,
6464
# relative to this directory. They are copied after the builtin static files,
@@ -69,7 +69,8 @@
6969
# -- Options for intersphinx extension ---------------------------------------
7070

7171
# Example configuration for intersphinx: refer to the Python standard library.
72-
intersphinx_mapping = {'https://docs.python.org/3/': None}
72+
intersphinx_mapping = {'python': ('https://docs.python.org/3',
73+
'python-inv.txt')}
7374
# TODO: html_theme not configurable upstream
7475
html_theme = 'default'
7576

pyexcel-xls.yml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
overrides: "pyexcel.yaml"
22
name: "pyexcel-xls"
33
nick_name: xls
4-
version: 0.7.0
5-
current_version: 0.7.0
6-
release: 0.7.0
4+
version: 0.7.1
5+
current_version: 0.7.1
6+
release: 0.7.1
77
file_type: xls
88
is_on_conda: true
99
dependencies:
@@ -12,7 +12,9 @@ dependencies:
1212
- xlwt
1313
test_dependencies:
1414
- pyexcel
15+
- pytest
1516
description: A wrapper library to read, manipulate and write data in xls format. It reads xlsx and xlsm format
1617
moban_command: false
1718
python_requires: ">=3.6"
1819
min_python_version: "3.6"
20+
use_pytest: true

pyexcel_xls/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
:copyright: (c) 2016-2021 by Onni Software Ltd
88
:license: New BSD License
99
"""
10+
1011
import xlrd
1112

1213
# flake8: noqa
@@ -35,6 +36,7 @@ def xlrd_version_2_or_greater():
3536
supported_file_formats = [__FILE_TYPE__, "xlsx", "xlsm"]
3637
if XLRD_VERSION_2_OR_ABOVE:
3738
supported_file_formats.remove("xlsx")
39+
supported_file_formats.remove("xlsm")
3840

3941

4042
IOPluginInfoChainV2(__name__).add_a_reader(

pyexcel_xls/xlsr.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
:copyright: (c) 2016-2021 by Onni Software Ltd
88
:license: New BSD License
99
"""
10+
1011
import datetime
1112

1213
import xlrd

pyexcel_xls/xlsw.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
:copyright: (c) 2016-2021 by Onni Software Ltd
88
:license: New BSD License
99
"""
10+
1011
import datetime
1112

1213
import xlrd

pytest.ini

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
[pytest]
2+
addopts = --doctest-glob="*.rst" tests/ README.rst docs/source pyexcel_xls

0 commit comments

Comments
 (0)