Browse Source

Upgrade project skel.

Ionel Cristian Mărieș 5 years ago
parent
commit
d90aeb2210
8 changed files with 218 additions and 101 deletions
  1. 7 6
      .gitignore
  2. 1 1
      AUTHORS.rst
  3. 32 42
      CONTRIBUTING.rst
  4. 2 2
      LICENSE
  5. 4 6
      MANIFEST.in
  6. 45 6
      README.rst
  7. 86 2
      setup.cfg
  8. 41 36
      setup.py

+ 7 - 6
.gitignore

@@ -24,6 +24,8 @@ pip-log.txt
 # Unit test / coverage reports
 .coverage
 .tox
+.coverage
+.coverage.*
 nosetests.xml
 htmlcov
 
@@ -34,6 +36,7 @@ htmlcov
 .mr.developer.cfg
 .project
 .pydevproject
+.idea
 
 # Complexity
 output/*.html
@@ -45,9 +48,7 @@ docs/_build
 .DS_Store
 *~
 .*.sw[po]
-.build/
-.tox/
-.coverage
-.coverage.*
-.ve/
-.bootstrap/
+.build
+.ve
+.bootstrap
+*.bak

+ 1 - 1
AUTHORS.rst

@@ -2,4 +2,4 @@
 Authors
 =======
 
-* Ionel Cristian Mărieș - http://blog.ionelmc.ro
+* Ionel Cristian Mărieș - http://blog.ionelmc.ro

+ 32 - 42
CONTRIBUTING.rst

@@ -5,43 +5,24 @@ Contributing
 Contributions are welcome, and they are greatly appreciated! Every
 little bit helps, and credit will always be given.
 
-You can contribute in many ways:
+Bug reports
+===========
 
-Types of Contributions
-----------------------
+When `reporting a bug <https://github.com/ionelmc/sphinx-py3doc-enhanced-theme/issues>`_ please include:
 
-Report Bugs
-~~~~~~~~~~~
+    * Your operating system name and version.
+    * Any details about your local setup that might be helpful in troubleshooting.
+    * Detailed steps to reproduce the bug.
 
-Report bugs at https://github.com/ionelmc/sphinx-py3doc-enhanced-theme/issues.
-
-If you are reporting a bug, please include:
-
-* Your operating system name and version.
-* Any details about your local setup that might be helpful in troubleshooting.
-* Detailed steps to reproduce the bug.
-
-Fix Bugs
-~~~~~~~~
-
-Look through the GitHub issues for bugs. Anything tagged with "bug"
-is open to whoever wants to implement it.
-
-Implement Features
-~~~~~~~~~~~~~~~~~~
-
-Look through the GitHub issues for features. Anything tagged with "feature"
-is open to whoever wants to implement it.
-
-Write Documentation
-~~~~~~~~~~~~~~~~~~~
+Documentation improvements
+==========================
 
 Enhanced theme based on py3 documentation's theme could always use more documentation, whether as part of the
 official Enhanced theme based on py3 documentation's theme docs, in docstrings, or even on the web in blog posts,
 articles, and such.
 
-Submit Feedback
-~~~~~~~~~~~~~~~
+Feature requests and feedback
+=============================
 
 The best way to send feedback is to file an issue at https://github.com/ionelmc/sphinx-py3doc-enhanced-theme/issues.
 
@@ -51,12 +32,12 @@ If you are proposing a feature:
 * Keep the scope as narrow as possible, to make it easier to implement.
 * Remember that this is a volunteer-driven project, and that contributions are welcome :)
 
-Get Started!
-------------
+Development
+===========
 
-Ready to contribute? Here's how to set up `sphinx-py3doc-enhanced-theme` for local development.
+To set up `sphinx-py3doc-enhanced-theme` for local development:
 
-1. Fork the `sphinx-py3doc-enhanced-theme` repo on GitHub.
+1. `Fork sphinx-py3doc-enhanced-theme on GitHub <https://github.com/ionelmc/sphinx-py3doc-enhanced-theme/fork>`_.
 2. Clone your fork locally::
 
     git clone git@github.com:your_name_here/sphinx-py3doc-enhanced-theme.git
@@ -67,7 +48,7 @@ Ready to contribute? Here's how to set up `sphinx-py3doc-enhanced-theme` for loc
 
    Now you can make your changes locally.
 
-4. When you're done making changes, run all the checks, doc builder and spell checker with `tox <http://tox.readthedocs.org/en/latest/install.html>`_::
+4. When you're done making changes, run all the checks, doc builder and spell checker with `tox <http://tox.readthedocs.org/en/latest/install.html>`_ one command::
 
     tox
 
@@ -82,18 +63,27 @@ Ready to contribute? Here's how to set up `sphinx-py3doc-enhanced-theme` for loc
 Pull Request Guidelines
 -----------------------
 
-Before you submit a pull request, check that it meets these guidelines:
+If you need some code review or feedback while you're developing the code just make the pull request.
+
+For merging, you should:
 
-1. The pull request should include passing tests.
-2. If the pull request adds functionality, the docs should be updated. Make sure that the new code has docstrings and
-   it's included in the reference. Add a note to `CHANGELOG.rst` about the changes.
-3. Run the tests with ``tox``. If you don't have all the necessary python versions available locally you can take a look
-   at https://travis-ci.org/ionelmc/sphinx-py3doc-enhanced-theme/pull_requests and make sure
-   everything passes.
+1. Include passing tests (run ``tox``) [1]_.
+2. Update documentation when there's new API, functionality etc. 
+3. Add a note to ``CHANGELOG.rst`` about the changes.
+4. Add yourself to ``AUTHORS.rst``.
 
+.. [1] If you don't have all the necessary python versions available locally you can rely on Travis - it will 
+       `run the tests <https://travis-ci.org/ionelmc/sphinx-py3doc-enhanced-theme/pull_requests>`_ for each change you add in the pull request.
+       
+       It will be slower though ...
+       
 Tips
 ----
 
 To run a subset of tests::
 
-    tox -e envname -- pytest -k test_myfeature
+    tox -e envname -- py.test -k test_myfeature
+
+To run all the test environments in *parallel* (you need to ``pip install detox``)::
+
+    detox

+ 2 - 2
LICENSE

@@ -1,4 +1,4 @@
-Copyright (c) 2014, Ionel Cristian Mărieș
+Copyright (c) 2014-2015, Ionel Cristian Mărieș
 All rights reserved.
 
 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the
@@ -16,4 +16,4 @@ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
 SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

+ 4 - 6
MANIFEST.in

@@ -1,10 +1,7 @@
-exclude .travis* .cache*
-
-global-exclude *.py[co]
-
 graft docs
 graft examples
 graft src
+graft ci
 graft tests
 
 include *.komodoproject
@@ -19,5 +16,6 @@ include CONTRIBUTING.rst
 include LICENSE
 include README.rst
 
-include configure
-include tox*.ini
+include tox.ini .travis.yml appveyor.yml
+
+global-exclude *.py[co] __pycache__ *.so *.pyd

+ 45 - 6
README.rst

@@ -2,16 +2,55 @@
 Enhanced theme based on py3 documentation's theme
 =================================================
 
-.. image:: http://img.shields.io/pypi/v/sphinx_py3doc_enhanced_theme.png
-    :alt: PYPI Package
-    :target: https://pypi.python.org/pypi/sphinx_py3doc_enhanced_theme
+| |version| |downloads| |wheel| |supported-versions| |supported-implementations|
 
-.. image:: http://img.shields.io/pypi/dm/sphinx_py3doc_enhanced_theme.png
-    :alt: PYPI Package
-    :target: https://pypi.python.org/pypi/sphinx_py3doc_enhanced_theme
+.. |docs| image:: https://readthedocs.org/projects/sphinx-py3doc-enhanced-theme/badge/?style=flat
+    :target: https://readthedocs.org/projects/sphinx-py3doc-enhanced-theme
+    :alt: Documentation Status
+
+.. |travis| image:: http://img.shields.io/travis/ionelmc/sphinx-py3doc-enhanced-theme/master.png?style=flat
+    :alt: Travis-CI Build Status
+    :target: https://travis-ci.org/ionelmc/sphinx-py3doc-enhanced-theme
+
+.. |appveyor| image:: https://ci.appveyor.com/api/projects/status/github/ionelmc/sphinx-py3doc-enhanced-theme?branch=master
+    :alt: AppVeyor Build Status
+    :target: https://ci.appveyor.com/project/ionelmc/sphinx-py3doc-enhanced-theme
+
+.. |coveralls| image:: http://img.shields.io/coveralls/ionelmc/sphinx-py3doc-enhanced-theme/master.png?style=flat
+    :alt: Coverage Status
+    :target: https://coveralls.io/r/ionelmc/sphinx-py3doc-enhanced-theme
+
+.. |landscape| image:: https://landscape.io/github/ionelmc/sphinx-py3doc-enhanced-theme/master/landscape.svg?style=flat
+    :target: https://landscape.io/github/ionelmc/sphinx-py3doc-enhanced-theme/master
+    :alt: Code Quality Status
+
+.. |version| image:: http://img.shields.io/pypi/v/sphinx-py3doc-enhanced-theme.png?style=flat
+    :alt: PyPI Package latest release
+    :target: https://pypi.python.org/pypi/sphinx-py3doc-enhanced-theme
+
+.. |downloads| image:: http://img.shields.io/pypi/dm/sphinx-py3doc-enhanced-theme.png?style=flat
+    :alt: PyPI Package monthly downloads
+    :target: https://pypi.python.org/pypi/sphinx-py3doc-enhanced-theme
+
+.. |wheel| image:: https://pypip.in/wheel/sphinx-py3doc-enhanced-theme/badge.png?style=flat
+    :alt: PyPI Wheel
+    :target: https://pypi.python.org/pypi/sphinx-py3doc-enhanced-theme
+
+.. |supported-versions| image:: https://pypip.in/py_versions/sphinx-py3doc-enhanced-theme/badge.png?style=flat
+    :alt: Supported versions
+    :target: https://pypi.python.org/pypi/sphinx-py3doc-enhanced-theme
+
+.. |supported-implementations| image:: https://pypip.in/implementation/sphinx-py3doc-enhanced-theme/badge.png?style=flat
+    :alt: Supported imlementations
+    :target: https://pypi.python.org/pypi/sphinx-py3doc-enhanced-theme
+
+.. |scrutinizer| image:: https://img.shields.io/scrutinizer/g/ionelmc/sphinx-py3doc-enhanced-theme/master.png?style=flat
+    :alt: Scrutinizer Status
+    :target: https://scrutinizer-ci.com/g/ionelmc/sphinx-py3doc-enhanced-theme/
 
 A theme based on the theme of https://docs.python.org/3/ with some responsive enhancements.
 
+* Free software: BSD license
 Installation
 ============
 

+ 86 - 2
setup.cfg

@@ -1,2 +1,86 @@
-[wheel]
-universal = 1
+[bdist_wheel]
+universal = 1
+
+[aliases]
+release = register clean --all sdist bdist_wheel upload
+
+[flake8]
+max-line-length = 140
+exclude = tests/*,*/migrations/*,*/south_migrations/*
+
+[bumpversion]
+current_version = 0.1.0
+files = setup.py docs/conf.py src/sphinx_py3doc_enhanced_theme/__init__.py
+commit = True
+tag = True
+
+[pytest]
+norecursedirs =
+    .git
+    .tox
+    dist
+    build
+    south_migrations
+    migrations
+python_files =
+    test_*.py
+    *_test.py
+    tests.py
+addopts =
+    -rxEfs
+    --strict
+    --ignore=docs/conf.py
+    --ignore=setup.py
+    --ignore=ci
+    --doctest-modules
+    --doctest-glob=\*.rst
+    --tb=short
+
+[isort]
+force_single_line=True
+line_length=120
+known_first_party=sphinx_py3doc_enhanced_theme
+default_section=THIRDPARTY
+forced_separate=test_sphinx_py3doc_enhanced_theme
+
+[matrix]
+# This is the configuration for the `./bootstrap.py` script.
+# It generates `.travis.yml`, `tox.ini` and `appveyor.yml`.
+#
+# Syntax: [alias:] value [!variable[glob]] [&variable[glob]]
+#
+# alias:
+#  - is used to generate the tox environment
+#  - it's optional
+#  - if not present the alias will be computed from the `value`
+# value:
+#  - a value of "-" means empty
+# !variable[glob]:
+#  - exclude the combination of the current `value` with
+#    any value matching the `glob` in `variable`
+#  - can use as many you want
+# &variable[glob]:
+#  - only include the combination of the current `value`
+#    when there's a value matching `glob` in `variable`
+#  - can use as many you want
+
+python_versions =
+    2.6
+    2.7
+    3.3
+    3.4
+    pypy
+
+dependencies =
+#    1.4: Django==1.4.16 !python_versions[3.*]
+#    1.5: Django==1.5.11
+#    1.6: Django==1.6.8
+#    1.7: Django==1.7.1 !python_versions[2.6]
+# Deps commented above are provided as examples. That's what you would use in a Django project.
+
+coverage_flags =
+    : true
+    nocover: false
+
+environment_variables =
+    -

+ 41 - 36
setup.py

@@ -1,63 +1,68 @@
-# -*- encoding: utf8 -*-
-import glob
+#!/usr/bin/env python
+# -*- encoding: utf-8 -*-
+from __future__ import absolute_import, print_function
+
 import io
+import os
 import re
+from glob import glob
 from os.path import basename
 from os.path import dirname
 from os.path import join
+from os.path import relpath
 from os.path import splitext
 
 from setuptools import find_packages
 from setuptools import setup
 
-
 def read(*names, **kwargs):
     return io.open(
         join(dirname(__file__), *names),
-        encoding=kwargs.get("encoding", "utf8")
+        encoding=kwargs.get('encoding', 'utf8')
     ).read()
 
+
 setup(
-    name="sphinx_py3doc_enhanced_theme",
-    version="1.2.0",
-    license="BSD",
-    description="A theme based on the theme of https://docs.python.org/3/",
-    long_description="%s\n%s" % (read("README.rst"), re.sub(":obj:`~?(.*?)`", r"``\1``", read("CHANGELOG.rst"))),
-    author="Ionel Cristian Mărieș",
-    author_email="contact@ionelmc.ro",
-    url="https://github.com/ionelmc/sphinx-py3doc-enhanced-theme",
-    packages=find_packages("src"),
-    package_dir={"": "src"},
-    py_modules=[splitext(basename(i))[0] for i in glob.glob("src/*.py")],
+    name='sphinx-py3doc-enhanced-theme',
+    version='1.2.0',
+    license='BSD',
+    description='A theme based on the theme of https://docs.python.org/3/ with some responsive enhancements.',
+    long_description='%s\n%s' % (read('README.rst'), re.sub(':obj:`~?(.*?)`', r'``\1``', read('CHANGELOG.rst'))),
+    author='Ionel Cristian M\xc4\x83rie\xc8\x99',
+    author_email='contact@ionelmc.ro',
+    url='https://github.com/ionelmc/sphinx-py3doc-enhanced-theme',
+    packages=find_packages('src'),
+    package_dir={'': 'src'},
+    py_modules=[splitext(basename(path))[0] for path in glob('src/*.py')],
     include_package_data=True,
     zip_safe=False,
     classifiers=[
-        "Development Status :: 5 - Production/Stable",
-        "Intended Audience :: Developers",
-        "License :: OSI Approved :: BSD License",
-        "Operating System :: Unix",
-        "Operating System :: POSIX",
-        "Operating System :: Microsoft :: Windows",
-        "Programming Language :: Python",
-        "Programming Language :: Python :: 2.6",
-        "Programming Language :: Python :: 2.7",
-        "Programming Language :: Python :: 3",
-        "Programming Language :: Python :: 3.3",
-        "Programming Language :: Python :: 3.4",
-        "Programming Language :: Python :: Implementation :: CPython",
-        "Programming Language :: Python :: Implementation :: PyPy",
-        "Topic :: Utilities",
+        # complete classifier list: http://pypi.python.org/pypi?%3Aaction=list_classifiers
+        'Development Status :: 5 - Production/Stable',
+        'Intended Audience :: Developers',
+        'License :: OSI Approved :: BSD License',
+        'Operating System :: Unix',
+        'Operating System :: POSIX',
+        'Operating System :: Microsoft :: Windows',
+        'Programming Language :: Python',
+        'Programming Language :: Python :: 2.6',
+        'Programming Language :: Python :: 2.7',
+        'Programming Language :: Python :: 3',
+        'Programming Language :: Python :: 3.3',
+        'Programming Language :: Python :: 3.4',
+        'Programming Language :: Python :: Implementation :: CPython',
+        'Programming Language :: Python :: Implementation :: PyPy',
+        'Topic :: Utilities',
     ],
     keywords=[
+        # eg: 'keyword1', 'keyword2', 'keyword3',
     ],
     install_requires=[
+        # eg: 'aspectlib==1.1.1', 'six>=1.7',
     ],
     extras_require={
+        # eg: 'rst': ['docutils>=0.11'],
     },
     entry_points={
-        "console_scripts": [
-            "sphinx_py3doc_enhanced_theme = sphinx_py3doc_enhanced_theme:main"
-        ]
-    }
-
-)
+    },
+)