summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHugo van Kemenade <hugovk@users.noreply.github.com>2019-10-03 12:13:13 +0300
committerClaude Paroz <claude@2xlibre.net>2019-10-03 11:13:13 +0200
commite8838b5ce626cbf33b864fb13a74958b964393ea (patch)
tree64c4351b7d2227e767a4d8ef70405b0efa388ba2
parent923711d99a231ca64857dd0dc24a374c596a6c7b (diff)
downloadtablib-e8838b5ce626cbf33b864fb13a74958b964393ea.tar.gz
Converted README/HISTORY to Markdown format
-rw-r--r--HISTORY.md (renamed from HISTORY.rst)147
-rw-r--r--README.md180
-rw-r--r--README.rst182
-rwxr-xr-xsetup.py5
4 files changed, 241 insertions, 273 deletions
diff --git a/HISTORY.rst b/HISTORY.md
index 5e9401f..f23994f 100644
--- a/HISTORY.rst
+++ b/HISTORY.md
@@ -1,120 +1,105 @@
-History
--------
+# History
-0.11.5 (2017-06-13)
-+++++++++++++++++++
+## 0.11.5 (2017-06-13)
-- Use ``yaml.safe_load`` for importing yaml.
+- Use `yaml.safe_load` for importing yaml.
-0.11.4 (2017-01-23)
-+++++++++++++++++++
+## 0.11.4 (2017-01-23)
- Use built-in `json` package if available
- Support Python 3.5+ in classifiers
-** Bugfixes **
+### Bugfixes
- Fixed textual representation for Dataset with no headers
- Handle decimal types
-0.11.3 (2016-02-16)
-+++++++++++++++++++
+## 0.11.3 (2016-02-16)
- Release fix.
-0.11.2 (2016-02-16)
-+++++++++++++++++++
+## 0.11.2 (2016-02-16)
-**Bugfixes**
+### Bugfixes
- Fix export only formats.
- Fix for xlsx output.
-0.11.1 (2016-02-07)
-+++++++++++++++++++
+## 0.11.1 (2016-02-07)
-**Bugfixes**
+### Bugfixes
- Fixed packaging error on Python 3.
-0.11.0 (2016-02-07)
-+++++++++++++++++++
+## 0.11.0 (2016-02-07)
-**New Formats!**
+### New Formats!
-- Added LaTeX table export format (``Dataset.latex``).
-- Support for dBase (DBF) files (``Dataset.dbf``).
+- Added LaTeX table export format (`Dataset.latex`).
+- Support for dBase (DBF) files (`Dataset.dbf`).
-**Improvements**
+### Improvements
-- New import/export interface (``Dataset.export()``, ``Dataset.load()``).
-- CSV custom delimiter support (``Dataset.export('csv', delimiter='$')``).
-- Adding ability to remove duplicates to all rows in a dataset (``Dataset.remove_duplicates()``).
-- Added a mechanism to avoid ``datetime.datetime`` issues when serializing data.
-- New ``detect_format()`` function (mostly for internal use).
-- Update the vendored unicodecsv to fix ``None`` handling.
+- New import/export interface (`Dataset.export()`, `Dataset.load()`).
+- CSV custom delimiter support (`Dataset.export('csv', delimiter='$')`).
+- Adding ability to remove duplicates to all rows in a dataset (`Dataset.remove_duplicates()`).
+- Added a mechanism to avoid `datetime.datetime` issues when serializing data.
+- New `detect_format()` function (mostly for internal use).
+- Update the vendored unicodecsv to fix `None` handling.
- Only freeze the headers row, not the headers columns (xls).
-**Breaking Changes**
+### Breaking Changes
-- ``detect()`` function removed.
+- `detect()` function removed.
-**Bugfixes**
+### Bugfixes
- Fix XLSX import.
-- Bugfix for ``Dataset.transpose().transpose()``.
+- Bugfix for `Dataset.transpose().transpose()`.
-0.10.0 (2014-05-27)
-+++++++++++++++++++
+## 0.10.0 (2014-05-27)
* Unicode Column Headers
* ALL the bugfixes!
-0.9.11 (2011-06-30)
-+++++++++++++++++++
+## 0.9.11 (2011-06-30)
* Bugfixes
-0.9.10 (2011-06-22)
-+++++++++++++++++++
+## 0.9.10 (2011-06-22)
* Bugfixes
-0.9.9 (2011-06-21)
-++++++++++++++++++
+## 0.9.9 (2011-06-21)
* Dataset API Changes
-* ``stack_rows`` => ``stack``, ``stack_columns`` => ``stack_cols``
-* column operations have their own methods now (``append_col``, ``insert_col``)
-* List-style ``pop()``
-* Redis-style ``rpush``, ``lpush``, ``rpop``, ``lpop``, ``rpush_col``, and ``lpush_col``
+* `stack_rows` => `stack`, `stack_columns` => `stack_cols`
+* column operations have their own methods now (`append_col`, `insert_col`)
+* List-style `pop()`
+* Redis-style `rpush`, `lpush`, `rpop`, `lpop`, `rpush_col`, and `lpush_col`
-0.9.8 (2011-05-22)
-++++++++++++++++++
+## 0.9.8 (2011-05-22)
* OpenDocument Spreadsheet support (.ods)
* Full Unicode TSV support
-0.9.7 (2011-05-12)
-++++++++++++++++++
+## 0.9.7 (2011-05-12)
* Full XLSX Support!
* Pickling Bugfix
* Compat Module
-0.9.6 (2011-05-12)
-++++++++++++++++++
+## 0.9.6 (2011-05-12)
-* ``seperators`` renamed to ``separators``
+* `seperators` renamed to `separators`
* Full unicode CSV support
-0.9.5 (2011-03-24)
-++++++++++++++++++
+## 0.9.5 (2011-03-24)
* Python 3.1, Python 3.2 Support (same code base!)
* Formatter callback support
@@ -122,8 +107,7 @@ History
-0.9.4 (2011-02-18)
-++++++++++++++++++
+## 0.9.4 (2011-02-18)
* Python 2.5 Support!
* Tox Testing for 2.5, 2.6, 2.7
@@ -132,16 +116,14 @@ History
* Caved to community pressure (spaces)
-0.9.3 (2011-01-31)
-++++++++++++++++++
+## 0.9.3 (2011-01-31)
* Databook duplication leak fix.
* HTML Table output.
* Added column sorting.
-0.9.2 (2010-11-17)
-++++++++++++++++++
+## 0.9.2 (2010-11-17)
* Transpose method added to Datasets.
* New frozen top row in Excel output.
@@ -149,14 +131,12 @@ History
* Support for row/column stacking.
-0.9.1 (2010-11-04)
-++++++++++++++++++
+## 0.9.1 (2010-11-04)
* Minor reference shadowing bugfix.
-0.9.0 (2010-11-04)
-++++++++++++++++++
+## 0.9.0 (2010-11-04)
* Massive documentation update!
* Tablib.org!
@@ -166,56 +146,48 @@ History
* Internal Changes (Row object and use thereof)
-0.8.5 (2010-10-06)
-++++++++++++++++++
+## 0.8.5 (2010-10-06)
* New import system. All dependencies attempt to load from site-packages,
then fallback on tenderized modules.
-0.8.4 (2010-10-04)
-++++++++++++++++++
+## 0.8.4 (2010-10-04)
* Updated XLS output: Only wrap if '\\n' in cell.
-0.8.3 (2010-10-04)
-++++++++++++++++++
+## 0.8.3 (2010-10-04)
* Ability to append new column passing a callable
as the value that will be applied to every row.
-0.8.2 (2010-10-04)
-++++++++++++++++++
+## 0.8.2 (2010-10-04)
* Added alignment wrapping to written cells.
* Added separator support to XLS.
-0.8.1 (2010-09-28)
-++++++++++++++++++
+## 0.8.1 (2010-09-28)
* Packaging Fix
-0.8.0 (2010-09-25)
-++++++++++++++++++
+## 0.8.0 (2010-09-25)
* New format plugin system!
* Imports! ELEGANT Imports!
* Tests. Lots of tests.
-0.7.1 (2010-09-20)
-++++++++++++++++++
+## 0.7.1 (2010-09-20)
* Reverting methods back to properties.
* Windows bug compensated in documentation.
-0.7.0 (2010-09-20)
-++++++++++++++++++
+## 0.7.0 (2010-09-20)
* Renamed DataBook Databook for consistency.
* Export properties changed to methods (XLS filename / StringIO bug).
@@ -223,32 +195,29 @@ History
* Added utf-8 on the worksheet level.
-0.6.4 (2010-09-19)
-++++++++++++++++++
+## 0.6.4 (2010-09-19)
* Updated unicode export for XLS.
* More exhaustive unit tests.
-0.6.3 (2010-09-14)
-++++++++++++++++++
+## 0.6.3 (2010-09-14)
+
* Added Dataset.append() support for columns.
-0.6.2 (2010-09-13)
-++++++++++++++++++
+## 0.6.2 (2010-09-13)
+
* Fixed Dataset.append() error on empty dataset.
* Updated Dataset.headers property w/ validation.
* Added Testing Fixtures.
-0.6.1 (2010-09-12)
-++++++++++++++++++
+## 0.6.1 (2010-09-12)
* Packaging hotfixes.
-0.6.0 (2010-09-11)
-++++++++++++++++++
+## 0.6.0 (2010-09-11)
* Public Release.
* Export Support for XLS, JSON, YAML, and CSV.
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..09518b3
--- /dev/null
+++ b/README.md
@@ -0,0 +1,180 @@
+# Tablib: format-agnostic tabular dataset library
+
+[![Jazzband](https://jazzband.co/static/img/badge.svg)](https://jazzband.co/)
+[![Build Status](https://travis-ci.org/jazzband/tablib.svg?branch=master)](https://travis-ci.org/jazzband/tablib)
+
+ _____ ______ ___________ ______
+ __ /_______ ____ /_ ___ /___(_)___ /_
+ _ __/_ __ `/__ __ \__ / __ / __ __ \
+ / /_ / /_/ / _ /_/ /_ / _ / _ /_/ /
+ \__/ \__,_/ /_.___/ /_/ /_/ /_.___/
+
+
+Tablib is a format-agnostic tabular dataset library, written in Python.
+
+Output formats supported:
+
+- Excel (Sets + Books)
+- JSON (Sets + Books)
+- YAML (Sets + Books)
+- Pandas DataFrames (Sets)
+- HTML (Sets)
+- Jira (Sets)
+- TSV (Sets)
+- ODS (Sets)
+- CSV (Sets)
+- DBF (Sets)
+
+Note that tablib *purposefully* excludes XML support. It always will. (Note: This is a
+joke. Pull requests are welcome.)
+
+If you're interested in financially supporting Kenneth Reitz open source, consider
+[visiting this link](https://cash.me/$KennethReitz>). Your support helps tremendously
+with sustainability of motivation, as Open Source is no longer part of my day job.
+
+
+## Overview
+
+`tablib.Dataset()`
+
+A Dataset is a table of tabular data.
+It may or may not have a header row.
+They can be build and manipulated as raw Python datatypes (Lists of tuples|dictionaries).
+Datasets can be imported from JSON, YAML, DBF, and CSV;
+they can be exported to XLSX, XLS, ODS, JSON, YAML, DBF, CSV, TSV, and HTML.
+
+`tablib.Databook()`
+
+A Databook is a set of Datasets.
+The most common form of a Databook is an Excel file with multiple spreadsheets.
+Databooks can be imported from JSON and YAML;
+they can be exported to XLSX, XLS, ODS, JSON, and YAML.
+
+
+## Usage
+
+Populate fresh data files:
+
+```python
+headers = ('first_name', 'last_name')
+
+data = [
+ ('John', 'Adams'),
+ ('George', 'Washington')
+]
+
+data = tablib.Dataset(*data, headers=headers)
+```
+
+Intelligently add new rows:
+
+```python
+>>> data.append(('Henry', 'Ford'))
+```
+
+Intelligently add new columns:
+
+```python
+>>> data.append_col((90, 67, 83), header='age')
+```
+
+Slice rows:
+
+```python
+>>> print(data[:2])
+[('John', 'Adams', 90), ('George', 'Washington', 67)]
+```
+
+Slice columns by header:
+
+```python
+>>> print(data['first_name'])
+['John', 'George', 'Henry']
+```
+
+Easily delete rows:
+
+```python
+>>> del data[1]
+```
+
+
+## Exports
+
+Drumroll please...........
+
+### JSON!
+
+```python
+>>> print(data.export('json'))
+[
+ {
+ "last_name": "Adams",
+ "age": 90,
+ "first_name": "John"
+ },
+ {
+ "last_name": "Ford",
+ "age": 83,
+ "first_name": "Henry"
+ }
+]
+```
+
+### YAML!
+
+```python
+>>> print(data.export('yaml'))
+- {age: 90, first_name: John, last_name: Adams}
+- {age: 83, first_name: Henry, last_name: Ford}
+```
+
+### CSV...
+
+```python
+>>> print(data.export('csv'))
+first_name,last_name,age
+John,Adams,90
+Henry,Ford,83
+```
+
+### EXCEL!
+
+```python
+>>> with open('people.xls', 'wb') as f:
+... f.write(data.export('xls'))
+```
+
+### DBF!
+
+```python
+>>> with open('people.dbf', 'wb') as f:
+... f.write(data.export('dbf'))
+```
+
+### Pandas DataFrame!
+
+```python
+>>> print(data.export('df')):
+ first_name last_name age
+0 John Adams 90
+1 Henry Ford 83
+```
+
+It's that easy.
+
+
+## Installation
+
+To install tablib, simply:
+
+```console
+$ pip install tablib[pandas]
+```
+
+Make sure to check out [Tablib on PyPI](https://pypi.python.org/pypi/tablib/)!
+
+
+## Contribute
+
+Please see the [contributing guide](https://github.com/jazzband/tablib/blob/master/.github/CONTRIBUTING.md).
diff --git a/README.rst b/README.rst
deleted file mode 100644
index 96344dc..0000000
--- a/README.rst
+++ /dev/null
@@ -1,182 +0,0 @@
-Tablib: format-agnostic tabular dataset library
-===============================================
-
-.. image:: https://jazzband.co/static/img/badge.svg
- :target: https://jazzband.co/
- :alt: Jazzband
-
-.. image:: https://travis-ci.org/jazzband/tablib.svg?branch=master
- :target: https://travis-ci.org/jazzband/tablib
-
-::
-
- _____ ______ ___________ ______
- __ /_______ ____ /_ ___ /___(_)___ /_
- _ __/_ __ `/__ __ \__ / __ / __ __ \
- / /_ / /_/ / _ /_/ /_ / _ / _ /_/ /
- \__/ \__,_/ /_.___/ /_/ /_/ /_.___/
-
-
-
-Tablib is a format-agnostic tabular dataset library, written in Python.
-
-Output formats supported:
-
-- Excel (Sets + Books)
-- JSON (Sets + Books)
-- YAML (Sets + Books)
-- Pandas DataFrames (Sets)
-- HTML (Sets)
-- Jira (Sets)
-- TSV (Sets)
-- ODS (Sets)
-- CSV (Sets)
-- DBF (Sets)
-
-Note that tablib *purposefully* excludes XML support. It always will. (Note: This is a joke. Pull requests are welcome.)
-
-If you're interested in financially supporting Kenneth Reitz open source, consider `visiting this link <https://cash.me/$KennethReitz>`_. Your support helps tremendously with sustainability of motivation, as Open Source is no longer part of my day job.
-
-Overview
---------
-
-`tablib.Dataset()`
- A Dataset is a table of tabular data.
- It may or may not have a header row.
- They can be build and manipulated as raw Python datatypes (Lists of tuples|dictionaries).
- Datasets can be imported from JSON, YAML, DBF, and CSV;
- they can be exported to XLSX, XLS, ODS, JSON, YAML, DBF, CSV, TSV, and HTML.
-
-`tablib.Databook()`
- A Databook is a set of Datasets.
- The most common form of a Databook is an Excel file with multiple spreadsheets.
- Databooks can be imported from JSON and YAML;
- they can be exported to XLSX, XLS, ODS, JSON, and YAML.
-
-Usage
------
-
-
-Populate fresh data files: ::
-
- headers = ('first_name', 'last_name')
-
- data = [
- ('John', 'Adams'),
- ('George', 'Washington')
- ]
-
- data = tablib.Dataset(*data, headers=headers)
-
-
-Intelligently add new rows: ::
-
- >>> data.append(('Henry', 'Ford'))
-
-Intelligently add new columns: ::
-
- >>> data.append_col((90, 67, 83), header='age')
-
-Slice rows: ::
-
- >>> print(data[:2])
- [('John', 'Adams', 90), ('George', 'Washington', 67)]
-
-
-Slice columns by header: ::
-
- >>> print(data['first_name'])
- ['John', 'George', 'Henry']
-
-Easily delete rows: ::
-
- >>> del data[1]
-
-Exports
--------
-
-Drumroll please...........
-
-JSON!
-+++++
-::
-
- >>> print(data.export('json'))
- [
- {
- "last_name": "Adams",
- "age": 90,
- "first_name": "John"
- },
- {
- "last_name": "Ford",
- "age": 83,
- "first_name": "Henry"
- }
- ]
-
-
-YAML!
-+++++
-::
-
- >>> print(data.export('yaml'))
- - {age: 90, first_name: John, last_name: Adams}
- - {age: 83, first_name: Henry, last_name: Ford}
-
-CSV...
-++++++
-::
-
- >>> print(data.export('csv'))
- first_name,last_name,age
- John,Adams,90
- Henry,Ford,83
-
-EXCEL!
-++++++
-::
-
- >>> with open('people.xls', 'wb') as f:
- ... f.write(data.export('xls'))
-
-DBF!
-++++
-::
-
- >>> with open('people.dbf', 'wb') as f:
- ... f.write(data.export('dbf'))
-
-Pandas DataFrame!
-+++++++++++++++++
-::
-
- >>> print(data.export('df')):
- first_name last_name age
- 0 John Adams 90
- 1 Henry Ford 83
-
-It's that easy.
-
-
-Installation
-------------
-
-To install tablib, simply: ::
-
- $ pip install tablib[pandas]
-
-Make sure to check out `Tablib on PyPi <https://pypi.python.org/pypi/tablib/>`_!
-
-
-Contribute
-----------
-
-If you'd like to contribute, simply fork `the repository`_, commit your
-changes to the **develop** branch (or branch off of it), and send a pull
-request. Make sure you add yourself to AUTHORS_.
-
-
-
-.. _`the repository`: http://github.com/jazzband/tablib
-.. _AUTHORS: http://github.com/jazzband/tablib/blob/master/AUTHORS
diff --git a/setup.py b/setup.py
index 5f2ff9a..ccde09a 100755
--- a/setup.py
+++ b/setup.py
@@ -48,8 +48,9 @@ setup(
name='tablib',
version=version,
description='Format agnostic tabular data library (XLS, JSON, YAML, CSV)',
- long_description=(open('README.rst').read() + '\n\n' +
- open('HISTORY.rst').read()),
+ long_description=(open('README.md').read() + '\n\n' +
+ open('HISTORY.md').read()),
+ long_description_content_type="text/markdown",
author='Kenneth Reitz',
author_email='me@kennethreitz.org',
url='http://python-tablib.org',