diff --git a/.travis.yml b/.travis.yml index 26a7508..4d3e4c1 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,5 +6,14 @@ python: - 3.5 - pypy script: - - pip install -U pytest - - python setup.py test +- pip install -U pytest +- python setup.py test +deploy: + provider: pypi + on: + tags: true + all_branches: true + python: 3.5 + user: jaraco + # supply password with `travis encrypt --add deploy.password` + distributions: release diff --git a/docs/conf.py b/docs/conf.py index c743109..39f3b33 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -5,6 +5,7 @@ import setuptools_scm extensions = [ 'sphinx.ext.autodoc', + 'rst.linker', ] # General information about the project. @@ -17,3 +18,22 @@ version = setuptools_scm.get_version(root='..', relative_to=__file__) release = version master_doc = 'index' + +link_files = { + 'CHANGES.rst': dict( + using=dict( + GH='https://github.com', + project=project, + ), + replace=[ + dict( + pattern=r"(Issue )?#(?P\d+)", + url='{GH}/jaraco/{project}/issues/{issue}', + ), + dict( + pattern=r"^(?m)((?Pv?\d+(\.\d+){1,2}))\n[-=]+\n", + with_scm="{text}\n{rev[timestamp]:%d %b %Y}\n", + ), + ], + ), +} diff --git a/docs/history.rst b/docs/history.rst index 907000b..8e21750 100644 --- a/docs/history.rst +++ b/docs/history.rst @@ -5,4 +5,4 @@ History ******* -.. include:: ../CHANGES.rst +.. include:: ../CHANGES (links).rst diff --git a/setup.cfg b/setup.cfg index 445263a..8004dcb 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,5 +1,5 @@ [aliases] -release = sdist bdist_wheel build_sphinx upload upload_docs +release = clean --all sdist bdist_wheel build_sphinx upload upload_docs test = pytest [wheel] diff --git a/setup.py b/setup.py index 953fa7f..1569a4a 100644 --- a/setup.py +++ b/setup.py @@ -1,6 +1,6 @@ #!/usr/bin/env python -# Generated by jaraco.develop 2.27.1 -# https://pypi.python.org/pypi/jaraco.develop + +# Project skeleton maintained at https://github.com/jaraco/skeleton import io import sys @@ -13,20 +13,24 @@ with io.open('README.rst', encoding='utf-8') as readme: needs_pytest = {'pytest', 'test'}.intersection(sys.argv) pytest_runner = ['pytest_runner'] if needs_pytest else [] needs_sphinx = {'release', 'build_sphinx', 'upload_docs'}.intersection(sys.argv) -sphinx = ['sphinx'] if needs_sphinx else [] +sphinx = ['sphinx', 'rst.linker'] if needs_sphinx else [] needs_wheel = {'release', 'bdist_wheel'}.intersection(sys.argv) wheel = ['wheel'] if needs_wheel else [] +name = 'skeleton' +description = '' + setup_params = dict( - name='wolframalpha', + name=name, use_scm_version=True, author="Jason R. Coombs", author_email="jaraco@jaraco.com", - description="Wolfram|Alpha 2.0 API client", + description=description or name, long_description=long_description, - url="https://github.com/jaraco/wolframalpha", + url="https://github.com/jaraco/" + name, packages=setuptools.find_packages(), include_package_data=True, + namespace_packages=name.split('.')[:-1], install_requires=[ 'six', ],