mirror of https://github.com/tqdm/tqdm.git
Prepare pypi packaging
Signed-off-by: Stephen L. <lrq3000@gmail.com>
This commit is contained in:
parent
67f4fbe23a
commit
e572e9baa1
|
@ -0,0 +1,69 @@
|
|||
CONTRIBUTING TO TQDM
|
||||
=====================
|
||||
|
||||
This file describes how to contribute changes to the project, and how to upload to the pypi repository.
|
||||
|
||||
HOW TO COMMIT YOUR CONTRIBUTIONS
|
||||
-----------------------------------------------------------
|
||||
|
||||
Contributions to the project is made using the `Fork & Pull` model. Here's a quickstart on how to do that (your mileage may vary depending on your git config):
|
||||
|
||||
- first create an account on github.
|
||||
- then go on the tqdm page `https://github.com/tqdm/tqdm` and fork it (click on the fork button).
|
||||
- now make a local clone of the project: `git clone https://github.com/your_account/tqdm.git`
|
||||
- do your changes on your local copy.
|
||||
- commit your changes `git commit -m "my message"`
|
||||
- TEST YOUR CHANGES (see below).
|
||||
- push to your github account `git push origin`
|
||||
- and now you can make a `Pull Request` from your github fork by going to the webpage and clicking on `Pull Request`. You can then add a message to describe your proposal.
|
||||
- Your changes will then be reviewed and integrated into the project if OK.
|
||||
|
||||
TESTING
|
||||
-------------
|
||||
|
||||
Before submitting a Pull Request, you need to make sure that all the unit tests pass. This will ensure that your changes did not introduce any regression in the features that already working.
|
||||
|
||||
To run the test, cd to the root of the tqdm folder (in the same folder as this file), and then type the following (you need to install the `nosetest` python module before):
|
||||
|
||||
```
|
||||
nosetests --with-coverage --cover-package=tqdm -v tqdm/
|
||||
python -m flake8 tqdm/_tqdm.py
|
||||
```
|
||||
|
||||
If all the tests pass, then everything is good, you can submit a Pull Request.
|
||||
|
||||
SEMANTIC VERSIONING
|
||||
----------------------------------
|
||||
|
||||
The tqdm repository managers should regularly bump the version number in the VERSION file to follow the [Semantic Versioning](http://semver.org/) convention.
|
||||
|
||||
Tools can be used to automate this process, such as [bumpversion](https://github.com/peritus/bumpversion) or [python-semanticversion](https://github.com/rbarrois/python-semanticversion/) to automate this task.
|
||||
|
||||
The managers should take care of this instead of users to avoid PR conflicts solely due to the VERSION file bumping.
|
||||
|
||||
UPLOADING TO PYPI
|
||||
------------------------------
|
||||
|
||||
First, we need to check the setup.py and MANIFEST.in files, which define the packaging process and the infos that will be uploaded to pypi.
|
||||
|
||||
You can check the result easily by using the following commands:
|
||||
|
||||
```
|
||||
python setup.py develop --uninstall
|
||||
python setup.py develop
|
||||
```
|
||||
|
||||
Secondly, we need to build tqdm into a distributable python package:
|
||||
|
||||
```
|
||||
python setup.py sdist --formats=gztar,zip bdist_wininst --plat-name=win32
|
||||
python setup.py sdist bdist_egg bdist_wheel --plat-name=win32
|
||||
```
|
||||
|
||||
This will generate several builds in the dist/ folder.
|
||||
|
||||
Finally, we can upload everything to pypi. Uploading to pypi can be done easily using the [twine](https://github.com/pypa/twine) module:
|
||||
|
||||
```
|
||||
twine upload dist/*
|
||||
```
|
|
@ -0,0 +1,15 @@
|
|||
# Misc
|
||||
include .coveragerc
|
||||
include CONTRIBUTE
|
||||
include LICENSE
|
||||
include logo.png
|
||||
include Makefile
|
||||
include README.md
|
||||
include tox.ini
|
||||
include tqdm.gif
|
||||
|
||||
# Test suite
|
||||
recursive-include tqdm/tests *.py
|
||||
|
||||
# Examples/Documentation
|
||||
#recursive-include examples/ *
|
13
setup.py
13
setup.py
|
@ -1,14 +1,15 @@
|
|||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
from tqdm._version import __version__
|
||||
from setuptools import setup
|
||||
|
||||
setup(
|
||||
name='tqdm',
|
||||
version='1.0',
|
||||
description='A Simple Python Progress Meter',
|
||||
version=__version__,
|
||||
description='A Simple And Fast Python Progress Meter',
|
||||
license='MIT License',
|
||||
author='Noam Yorav-Raphael',
|
||||
author_email='noamraph@gmail.com',
|
||||
author_email='python.tqdm@gmail.com',
|
||||
url='https://github.com/tqdm/tqdm',
|
||||
packages=['tqdm'],
|
||||
classifiers=[
|
||||
|
@ -21,7 +22,13 @@ setup(
|
|||
'Programming Language :: Python :: 3.2',
|
||||
'Programming Language :: Python :: 3.3',
|
||||
'Programming Language :: Python :: 3.4',
|
||||
'Programming Language :: Python :: Implementation :: PyPy',
|
||||
'Topic :: Software Development :: Libraries',
|
||||
'Topic :: Software Development :: Libraries :: Python Modules',
|
||||
'Topic :: Software Development :: User Interfaces',
|
||||
'Topic :: System :: Monitoring',
|
||||
'Topic :: Terminals',
|
||||
'Topic :: Utilities',
|
||||
'Intended Audience :: Developers',
|
||||
],
|
||||
)
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
__version__ = '2.0-dev'
|
Loading…
Reference in New Issue