Skip to content

Commit 87e33eb

Browse files
committed
update documentations
1 parent 60c406f commit 87e33eb

File tree

8 files changed

+176
-69
lines changed

8 files changed

+176
-69
lines changed

.travis.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,14 @@ python:
1515
- 3.4
1616
- 3.5
1717
before_install:
18+
- cd $HOME
19+
- "if [[ $TRAVIS_PYTHON_VERSION == 'pypy' ]]; then deactivate && wget https://bitbucket.org/squeaky/portable-pypy/downloads/pypy-5.7.1-linux_x86_64-portable.tar.bz2 -O - | tar -jxf - && echo 'Setting up aliases...' && ln -s pypy-5.7.1-linux_x86_64-portable pypy2-latest && export PATH=$HOME/pypy2-latest/bin/:$PATH && virtualenv --no-site-packages --python ~/pypy2-latest/bin/pypy pypy2-env && echo 'Creating custom env...' && source pypy2-env/bin/activate && python -V; fi"
20+
- cd -
1821
- pip install pyramid==$PYRAMID_VERSION
1922
- if [[ $TRAVIS_PYTHON_VERSION == "2.6" ]]; then pip install flake8==2.6.2; fi
2023
- if [[ -f min_requirements.txt && "$MINREQ" -eq 1 ]]; then
2124
mv min_requirements.txt requirements.txt ;
2225
fi
23-
- pip install --upgrade setuptools "pip==7.1"
2426
- test ! -f rnd_requirements.txt || pip install --no-deps -r rnd_requirements.txt
2527
- test ! -f rnd_requirements.txt || pip install -r rnd_requirements.txt ;
2628
- pip install -r tests/requirements.txt

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Copyright (c) 2015-2016 by Onni Software Ltd. and its contributors
1+
Copyright (c) 2015-2017 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

README.rst

Lines changed: 93 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,14 @@
22
pyramid-excel - Let you focus on data, instead of file formats
33
================================================================================
44

5+
.. image:: https://raw.githubusercontent.com/pyexcel/pyexcel.github.io/master/images/patreon.png
6+
:target: https://www.patreon.com/pyexcel
7+
58
.. image:: https://api.travis-ci.org/pyexcel/pyramid-excel.svg?branch=master
69
:target: http://travis-ci.org/pyexcel/pyramid-excel
710

811
.. image:: https://codecov.io/github/pyexcel/pyramid-excel/coverage.png
9-
:target: https://codecov.io/github/pyexcel/pyramid-excel
12+
:target: https://codecov.io/github/pyexcel/pyramid-excel
1013

1114
.. image:: https://readthedocs.org/projects/pyramid-excel/badge/?version=latest
1215
:target: http://pyramid-excel.readthedocs.org/en/latest/
@@ -58,30 +61,34 @@ The highlighted features are:
5861

5962
.. table:: A list of file formats supported by external plugins
6063

61-
================= ======================= ============= ==================
62-
Package name Supported file formats Dependencies Python versions
63-
================= ======================= ============= ==================
64-
`pyexcel-io`_ csv, csvz [#f1]_, tsv, 2.6, 2.7, 3.3,
65-
tsvz [#f2]_ 3.4, 3.5,
66-
pypy
67-
`pyexcel-xls`_ xls, xlsx(read only), `xlrd`_, same as above
68-
xlsm(read only) `xlwt`_
69-
`pyexcel-xlsx`_ xlsx `openpyxl`_ same as above
70-
`pyexcel-xlsxw`_ xlsx(write only) `XlsxWriter`_ same as above
71-
`pyexcel-ods3`_ ods `ezodf`_, 2.6, 2.7, 3.3, 3.4
72-
lxml 3.5
73-
`pyexcel-ods`_ ods `odfpy`_ same as above
74-
`pyexcel-text`_ (write only)json, rst, `tabulate`_ 2.6, 2.7, 3.3, 3.4
75-
mediawiki, html, 3.5, pypy, pypy3
76-
latex, grid, pipe,
77-
orgtbl, plain simple
78-
================= ======================= ============= ==================
64+
======================== ======================= =============== ==================
65+
Package name Supported file formats Dependencies Python versions
66+
======================== ======================= =============== ==================
67+
`pyexcel-io`_ csv, csvz [#f1]_, tsv, 2.6, 2.7, 3.3,
68+
tsvz [#f2]_ 3.4, 3.5, 3.6
69+
pypy
70+
`pyexcel-xls`_ xls, xlsx(read only), `xlrd`_, same as above
71+
xlsm(read only) `xlwt`_
72+
`pyexcel-xlsx`_ xlsx `openpyxl`_ same as above
73+
`pyexcel-xlsxw`_ xlsx(write only) `XlsxWriter`_ same as above
74+
`pyexcel-ods3`_ ods `ezodf`_, 2.6, 2.7, 3.3, 3.4
75+
lxml 3.5, 3.6
76+
`pyexcel-ods`_ ods `odfpy`_ same as above
77+
`pyexcel-odsr`_ ods(read only) lxml same as above
78+
`pyexcel-text`_ (write only)json, rst, `tabulate`_ 2.6, 2.7, 3.3, 3.4
79+
mediawiki, html, 3.5, pypy, pypy3
80+
latex, grid, pipe,
81+
orgtbl, plain simple
82+
`pyexcel-handsontable`_ handsontable in html `handsontable`_ same as above
83+
`pyexcel-pygal`_ svg chart `pygal`_ same as above [#f3]_
84+
======================== ======================= =============== ==================
7985

8086
.. _pyexcel-io: https://github.com/pyexcel/pyexcel-io
8187
.. _pyexcel-xls: https://github.com/pyexcel/pyexcel-xls
8288
.. _pyexcel-xlsx: https://github.com/pyexcel/pyexcel-xlsx
8389
.. _pyexcel-ods: https://github.com/pyexcel/pyexcel-ods
8490
.. _pyexcel-ods3: https://github.com/pyexcel/pyexcel-ods3
91+
.. _pyexcel-odsr: https://github.com/pyexcel/pyexcel-odsr
8592
.. _pyexcel-xlsxw: https://github.com/pyexcel/pyexcel-xlsxw
8693

8794
.. _xlrd: https://github.com/python-excel/xlrd
@@ -93,6 +100,21 @@ The highlighted features are:
93100

94101
.. _pyexcel-text: https://github.com/pyexcel/pyexcel-text
95102
.. _tabulate: https://bitbucket.org/astanin/python-tabulate
103+
.. _pyexcel-handsontable: https://github.com/pyexcel/pyexcel-handsontable
104+
.. _handsontable: https://cdnjs.com/libraries/handsontable
105+
.. _pyexcel-pygal: https://github.com/pyexcel/pyexcel-chart
106+
.. _pygal: https://github.com/Kozea/pygal
107+
.. _pyexcel-matplotlib: https://github.com/pyexcel/pyexcel-matplotlib
108+
.. _matplotlib: https://matplotlib.org
109+
110+
.. [#f3] coming soon
111+
112+
In order to manage the list of plugins installed, you need to use pip to add or remove
113+
a plugin. When you use virtualenv, you can have different plugins per virtual
114+
environment. In the situation where you have multiple plugins that does the same thing
115+
in your environment, you need to tell pyexcel which plugin to use per function call.
116+
For example, pyexcel-ods and pyexcel-odsr, and you want to get_array to use pyexcel-odsr.
117+
You need to append get_array(..., library='pyexcel-odsr').
96118

97119
.. rubric:: Footnotes
98120

@@ -125,7 +147,7 @@ or clone it and install it:
125147

126148
.. code-block:: bash
127149
128-
$ git clone http://github.com/pyexcel/pyramid-excel.git
150+
$ git clone https://github.com/pyexcel/pyramid-excel.git
129151
$ cd pyramid-excel
130152
$ python setup.py install
131153
@@ -144,6 +166,21 @@ adding it to the pyramid.includes list::
144166

145167

146168

169+
Support the project
170+
================================================================================
171+
172+
If your company has embedded pyexcel and its components into a revenue generating
173+
product, please `support me on patreon <https://www.patreon.com/bePatron?u=5537627>`_ to
174+
maintain the project and develop it further.
175+
176+
If you are an individual, you are welcome to support me too on patreon and for however long
177+
you feel like to. As a patreon, you will receive
178+
`early access to pyexcel related contents <https://www.patreon.com/pyexcel/posts>`_.
179+
180+
With your financial support, I will be able to invest
181+
a little bit more time in coding, documentation and writing interesting posts.
182+
183+
147184
Development guide
148185
================================================================================
149186

@@ -154,26 +191,46 @@ Development steps for code changes
154191

155192
Upgrade your setup tools and pip. They are needed for development and testing only:
156193

157-
#. pip install --upgrade setuptools "pip==7.1"
194+
#. pip install --upgrade setuptools pip
158195

159196
Then install relevant development requirements:
160197

161198
#. pip install -r rnd_requirements.txt # if such a file exists
162199
#. pip install -r requirements.txt
163200
#. pip install -r tests/requirements.txt
164201

202+
Once you have finished your changes, please provide test case(s), relevant documentation
203+
and update CHANGELOG.rst.
165204

166-
In order to update test environment, and documentation, additional setps are
167-
required:
205+
.. note::
168206

169-
#. pip install moban
170-
#. git clone https://github.com/pyexcel/pyexcel-commons.git
171-
#. make your changes in `.moban.d` directory, then issue command `moban`
207+
As to rnd_requirements.txt, usually, it is created when a dependent
208+
library is not released. Once the dependecy is installed
209+
(will be released), the future
210+
version of the dependency in the requirements.txt will be valid.
172211

173-
What is rnd_requirements.txt
174-
-------------------------------
175212

176-
Usually, it is created when a dependent library is not released. Once the dependecy is installed(will be released), the future version of the dependency in the requirements.txt will be valid.
213+
How to test your contribution
214+
------------------------------
215+
216+
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.
217+
218+
On Linux/Unix systems, please launch your tests like this::
219+
220+
$ make
221+
222+
On Windows systems, please issue this command::
223+
224+
> test.bat
225+
226+
How to update test environment and update documentation
227+
---------------------------------------------------------
228+
229+
Additional steps are required:
230+
231+
#. pip install moban
232+
#. git clone https://github.com/pyexcel/pyexcel-commons.git commons
233+
#. make your changes in `.moban.d` directory, then issue command `moban`
177234

178235
What is pyexcel-commons
179236
---------------------------------
@@ -185,18 +242,16 @@ What is .moban.d
185242

186243
`.moban.d` stores the specific meta data for the library.
187244

188-
How to test your contribution
189-
------------------------------
190-
191-
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.
245+
Acceptance criteria
246+
-------------------
192247

193-
On Linux/Unix systems, please launch your tests like this::
194-
195-
$ make test
248+
#. Has Test cases written
249+
#. Has all code lines tested
250+
#. Passes all Travis CI builds
251+
#. Has fair amount of documentation if your change is complex
252+
#. Agree on NEW BSD License for your contribution
196253

197-
On Windows systems, please issue this command::
198254

199-
> test.bat
200255

201256
License
202257
================================================================================

docs/source/conf.py

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
11
# -*- coding: utf-8 -*-
2+
DESCRIPTION = (
3+
'A pyramid extension that provides one application programming interfac' +
4+
'e to read and write data in different excel file formats' +
5+
''
6+
)
27
extensions = [
38
'sphinx.ext.autodoc',
49
'sphinx.ext.doctest',
@@ -7,15 +12,15 @@
712
]
813

914
intersphinx_mapping = {
10-
'pyexcel': ('http://pyexcel.readthedocs.org/en/latest/', None)
15+
'pyexcel': ('http://pyexcel.readthedocs.org/en/latest/', None),
1116
}
1217
spelling_word_list_filename = 'spelling_wordlist.txt'
1318
templates_path = ['_templates']
1419
source_suffix = '.rst'
1520
master_doc = 'index'
1621

1722
project = u'pyramid-excel'
18-
copyright = u'2015-2016 Onni Software Ltd.'
23+
copyright = u'2015-2017 Onni Software Ltd.'
1924
version = '0.0.3'
2025
release = '0.0.4'
2126
exclude_patterns = []
@@ -27,15 +32,19 @@
2732
htmlhelp_basename = 'pyramid-exceldoc'
2833
latex_elements = {}
2934
latex_documents = [
30-
('index', 'pyramid-excel.tex', u'pyramid-excel Documentation',
35+
('index', 'pyramid-excel.tex',
36+
'pyramid-excel Documentation',
3137
'Onni Software Ltd.', 'manual'),
3238
]
3339
man_pages = [
34-
('index', 'pyramid-excel', u'pyramid-excel Documentation',
40+
('index', 'pyramid-excel',
41+
'pyramid-excel Documentation',
3542
[u'Onni Software Ltd.'], 1)
3643
]
3744
texinfo_documents = [
38-
('index', 'pyramid-excel', u'pyramid-excel Documentation',
39-
'Onni Software Ltd.', 'pyramid-excel', 'One line description of project.',
45+
('index', 'pyramid-excel',
46+
'pyramid-excel Documentation',
47+
'Onni Software Ltd.', 'pyramid-excel',
48+
DESCRIPTION,
4049
'Miscellaneous'),
4150
]

docs/source/index.rst

Lines changed: 55 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -56,30 +56,34 @@ The highlighted features are:
5656

5757
.. table:: A list of file formats supported by external plugins
5858

59-
================= ======================= ============= ==================
60-
Package name Supported file formats Dependencies Python versions
61-
================= ======================= ============= ==================
62-
`pyexcel-io`_ csv, csvz [#f1]_, tsv, 2.6, 2.7, 3.3,
63-
tsvz [#f2]_ 3.4, 3.5,
64-
pypy
65-
`pyexcel-xls`_ xls, xlsx(read only), `xlrd`_, same as above
66-
xlsm(read only) `xlwt`_
67-
`pyexcel-xlsx`_ xlsx `openpyxl`_ same as above
68-
`pyexcel-xlsxw`_ xlsx(write only) `XlsxWriter`_ same as above
69-
`pyexcel-ods3`_ ods `ezodf`_, 2.6, 2.7, 3.3, 3.4
70-
lxml 3.5
71-
`pyexcel-ods`_ ods `odfpy`_ same as above
72-
`pyexcel-text`_ (write only)json, rst, `tabulate`_ 2.6, 2.7, 3.3, 3.4
73-
mediawiki, html, 3.5, pypy, pypy3
74-
latex, grid, pipe,
75-
orgtbl, plain simple
76-
================= ======================= ============= ==================
59+
======================== ======================= =============== ==================
60+
Package name Supported file formats Dependencies Python versions
61+
======================== ======================= =============== ==================
62+
`pyexcel-io`_ csv, csvz [#f1]_, tsv, 2.6, 2.7, 3.3,
63+
tsvz [#f2]_ 3.4, 3.5, 3.6
64+
pypy
65+
`pyexcel-xls`_ xls, xlsx(read only), `xlrd`_, same as above
66+
xlsm(read only) `xlwt`_
67+
`pyexcel-xlsx`_ xlsx `openpyxl`_ same as above
68+
`pyexcel-xlsxw`_ xlsx(write only) `XlsxWriter`_ same as above
69+
`pyexcel-ods3`_ ods `ezodf`_, 2.6, 2.7, 3.3, 3.4
70+
lxml 3.5, 3.6
71+
`pyexcel-ods`_ ods `odfpy`_ same as above
72+
`pyexcel-odsr`_ ods(read only) lxml same as above
73+
`pyexcel-text`_ (write only)json, rst, `tabulate`_ 2.6, 2.7, 3.3, 3.4
74+
mediawiki, html, 3.5, pypy, pypy3
75+
latex, grid, pipe,
76+
orgtbl, plain simple
77+
`pyexcel-handsontable`_ handsontable in html `handsontable`_ same as above
78+
`pyexcel-pygal`_ svg chart `pygal`_ same as above [#f3]_
79+
======================== ======================= =============== ==================
7780

7881
.. _pyexcel-io: https://github.com/pyexcel/pyexcel-io
7982
.. _pyexcel-xls: https://github.com/pyexcel/pyexcel-xls
8083
.. _pyexcel-xlsx: https://github.com/pyexcel/pyexcel-xlsx
8184
.. _pyexcel-ods: https://github.com/pyexcel/pyexcel-ods
8285
.. _pyexcel-ods3: https://github.com/pyexcel/pyexcel-ods3
86+
.. _pyexcel-odsr: https://github.com/pyexcel/pyexcel-odsr
8387
.. _pyexcel-xlsxw: https://github.com/pyexcel/pyexcel-xlsxw
8488

8589
.. _xlrd: https://github.com/python-excel/xlrd
@@ -91,6 +95,21 @@ The highlighted features are:
9195

9296
.. _pyexcel-text: https://github.com/pyexcel/pyexcel-text
9397
.. _tabulate: https://bitbucket.org/astanin/python-tabulate
98+
.. _pyexcel-handsontable: https://github.com/pyexcel/pyexcel-handsontable
99+
.. _handsontable: https://cdnjs.com/libraries/handsontable
100+
.. _pyexcel-pygal: https://github.com/pyexcel/pyexcel-chart
101+
.. _pygal: https://github.com/Kozea/pygal
102+
.. _pyexcel-matplotlib: https://github.com/pyexcel/pyexcel-matplotlib
103+
.. _matplotlib: https://matplotlib.org
104+
105+
.. [#f3] coming soon
106+
107+
In order to manage the list of plugins installed, you need to use pip to add or remove
108+
a plugin. When you use virtualenv, you can have different plugins per virtual
109+
environment. In the situation where you have multiple plugins that does the same thing
110+
in your environment, you need to tell pyexcel which plugin to use per function call.
111+
For example, pyexcel-ods and pyexcel-odsr, and you want to get_array to use pyexcel-odsr.
112+
You need to append get_array(..., library='pyexcel-odsr').
94113

95114
.. rubric:: Footnotes
96115

@@ -122,7 +141,7 @@ or clone it and install it:
122141

123142
.. code-block:: bash
124143
125-
$ git clone http://github.com/pyexcel/pyramid-excel.git
144+
$ git clone https://github.com/pyexcel/pyramid-excel.git
126145
$ cd pyramid-excel
127146
$ python setup.py install
128147
@@ -214,6 +233,23 @@ And you can start the tiny server by this command, assuming you have save it as
214233
serving on http://127.0.0.1:5000
215234

216235

236+
237+
Support the project
238+
-----------------------
239+
240+
If your company has embedded pyexcel and its components into a revenue generating
241+
product, please `support me on patreon <https://www.patreon.com/bePatron?u=5537627>`_ to
242+
maintain the project and develop it further.
243+
244+
If you are an individual, you are welcome to support me too on patreon and for however long
245+
you feel like to. As a patreon, you will receive
246+
`early access to pyexcel related contents <https://www.patreon.com/pyexcel/posts>`_.
247+
248+
With your financial support, I will be able to invest
249+
a little bit more time in coding, documentation and writing interesting posts.
250+
251+
252+
217253
More excel file formats
218254
------------------------
219255

0 commit comments

Comments
 (0)