@@ -16,6 +16,8 @@ pyexcel-xlsxr - Let you focus on data, instead of xlsx format
1616
1717
1818
19+ .. image :: https://pepy.tech/badge/pyexcel-xlsxr/month
20+ :target: https://pepy.tech/project/pyexcel-xlsxr
1921
2022
2123.. image :: https://img.shields.io/gitter/room/gitterHQ/gitter.svg
@@ -47,19 +49,11 @@ Otherwise, this library works OK with lxml 3.4.4 or above.
4749Support the project
4850================================================================================
4951
50- If your company has embedded pyexcel and its components into a revenue generating
51- product, please support me on github, `patreon <https://www.patreon.com/bePatron?u=5537627 >`_
52- or `bounty source <https://salt.bountysource.com/teams/chfw-pyexcel >`_ to maintain
53- the project and develop it further.
54-
55- If you are an individual, you are welcome to support me too and for however long
56- you feel like. As my backer, you will receive
57- `early access to pyexcel related contents <https://www.patreon.com/pyexcel/posts >`_.
58-
59- And your issues will get prioritized if you would like to become my patreon as `pyexcel pro user `.
60-
61- With your financial support, I will be able to invest
62- a little bit more time in coding, documentation and writing interesting posts.
52+ If your company uses pyexcel and its components in a revenue-generating product,
53+ please consider supporting the project on GitHub or
54+ `Patreon <https://www.patreon.com/bePatron?u=5537627 >`_. Your financial
55+ support will enable me to dedicate more time to coding, improving documentation,
56+ and creating engaging content.
6357
6458
6559Known constraints
@@ -99,15 +93,8 @@ As a standalone library
9993
10094 >>> import os
10195 >>> import sys
102- >>> if sys.version_info[0 ] < 3 :
103- ... from StringIO import StringIO
104- ... else :
105- ... from io import BytesIO as StringIO
106- >>> PY2 = sys.version_info[0 ] == 2
107- >>> if PY2 and sys.version_info[1 ] < 7 :
108- ... from ordereddict import OrderedDict
109- ... else :
110- ... from collections import OrderedDict
96+ >>> from io import BytesIO
97+ >>> from collections import OrderedDict
11198
11299
113100.. testcode ::
@@ -141,7 +128,7 @@ Here's the sample code:
141128 >>> data = OrderedDict()
142129 >>> data.update({" Sheet 1" : [[1 , 2 , 3 ], [4 , 5 , 6 ]]})
143130 >>> data.update({" Sheet 2" : [[7 , 8 , 9 ], [10 , 11 , 12 ]]})
144- >>> io = StringIO ()
131+ >>> io = BytesIO ()
145132 >>> save_data(io, data)
146133 >>> unused = io.seek(0 )
147134 >>> # do something with the io
@@ -317,15 +304,18 @@ and update changelog.yml
317304.. note ::
318305
319306 As to rnd_requirements.txt, usually, it is created when a dependent
320- library is not released. Once the dependecy is installed
307+ library is not released. Once the dependency is installed
321308 (will be released), the future
322309 version of the dependency in the requirements.txt will be valid.
323310
324311
325312How to test your contribution
326- ------------------------------
313+ --------------------------------------------------------------------------------
327314
328- 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.
315+ Although `nose ` and `doctest ` are both used in code testing, it is advisable
316+ that unit tests are put in tests. `doctest ` is incorporated only to make sure
317+ the code examples in documentation remain valid across different development
318+ releases.
329319
330320On Linux/Unix systems, please launch your tests like this::
331321
0 commit comments