diff --git a/.travis.yml b/.travis.yml index 2a709288..9f3d7d18 100644 --- a/.travis.yml +++ b/.travis.yml @@ -28,13 +28,15 @@ matrix: env: TOXENV=manifest - python: "2.7" env: TOXENV=docs + - python: "3.5" + env: TOXENV=readme install: - pip install tox script: - - tox --hashseed 0 + - tox before_install: - pip install codecov diff --git a/AUTHORS.rst b/AUTHORS.rst new file mode 100644 index 00000000..bb3c7283 --- /dev/null +++ b/AUTHORS.rst @@ -0,0 +1,11 @@ +Credits +======= + +``attrs`` is written and maintained by `Hynek Schlawack `_. + +The development is kindly supported by `Variomedia AG `_. + +A full list of contributors can be found in `GitHub's overview `_. + +It’s the spiritual successor of `characteristic `_ and aspires to fix some of it clunkiness and unfortunate decisions. +Both were inspired by Twisted’s `FancyEqMixin `_ but both are implemented using class decorators because `sub-classing is bad for you `_, m’kay? diff --git a/README.rst b/README.rst index b79b1fd9..fc2af666 100644 --- a/README.rst +++ b/README.rst @@ -2,6 +2,10 @@ attrs: Attributes without boilerplate. ====================================== +.. image:: https://readthedocs.org/projects/attrs/badge/?version=stable + :target: http://attrs.readthedocs.org/en/stable/?badge=stable + :alt: Documentation Status + .. image:: https://travis-ci.org/hynek/attrs.svg :target: https://travis-ci.org/hynek/attrs :alt: CI status @@ -51,9 +55,5 @@ This gives you the power to use actual classes with actual types in your code in So put down that type-less data structures and welcome some class into your life! -.. note:: - I wrote an `explanation `_ on why I forked my own ``characteristic``. - It's not dead but ``attrs`` will have more new features. - ``attrs``\ ’s documentation lives at `Read the Docs `_, the code on `GitHub `_. It’s rigorously tested on Python 2.6, 2.7, 3.3+, and PyPy. diff --git a/dev-requirements.txt b/dev-requirements.txt new file mode 100644 index 00000000..9a647015 --- /dev/null +++ b/dev-requirements.txt @@ -0,0 +1,3 @@ +coverage +pytest +zope.interface diff --git a/docs/contributing.rst b/docs/contributing.rst index 46281822..1d519c38 100644 --- a/docs/contributing.rst +++ b/docs/contributing.rst @@ -1,3 +1,5 @@ .. _contributing: .. include:: ../CONTRIBUTING.rst + +.. include:: ../CODE_OF_CONDUCT.rst diff --git a/docs/license.rst b/docs/license.rst index 01d00038..e74ac47f 100644 --- a/docs/license.rst +++ b/docs/license.rst @@ -1,18 +1,8 @@ -License and Hall of Fame -======================== +=================== +License and Credits +=================== ``attrs`` is licensed under the `MIT `_ license. The full license text can be also found in the `source code repository `_. - -Authors -------- - -``attrs`` is written and maintained by `Hynek Schlawack `_. - -The development is kindly supported by `Variomedia AG `_. - -A full list of contributors can be found in `GitHub's overview `_. - -It’s the spiritual successor of `characteristic `_ and aspires to fix some of it clunkiness and unfortunate decisions. -Both were inspired by Twisted’s `FancyEqMixin `_ but both are implemented using class decorators because `sub-classing is bad for you `_, m’kay? +.. include:: ../AUTHORS.rst diff --git a/setup.py b/setup.py index 4298a1f8..30af1fae 100644 --- a/setup.py +++ b/setup.py @@ -73,7 +73,11 @@ if __name__ == "__main__": maintainer=find_meta("author"), maintainer_email=find_meta("email"), keywords=KEYWORDS, - long_description=read("README.rst") + "\n\n" + read("CHANGELOG.rst"), + long_description=( + read("README.rst") + "\n\n" + + read("AUTHORS.rst") + "\n\n" + + read("CHANGELOG.rst") + ), packages=PACKAGES, package_dir={"": "src"}, zip_safe=False, diff --git a/tox.ini b/tox.ini index bb2b217a..0c4b013e 100644 --- a/tox.ini +++ b/tox.ini @@ -1,13 +1,10 @@ [tox] -envlist = coverage-clean,py26,py27,py33,py34,py35,pypy,flake8,manifest,docs,coverage-report +envlist = coverage-clean,py26,py27,py33,py34,py35,pypy,flake8,manifest,docs,readme,coverage-report [testenv] passenv = TERM # ensure colors -deps = - coverage - pytest - zope.interface +deps = -rdev-requirements.txt commands = coverage run --parallel -m pytest {posargs} @@ -23,7 +20,7 @@ setenv = PYTHONHASHSEED = 0 deps = sphinx - zope.interface + zope.interface # for doctests commands = sphinx-build -W -b html -d {envtmpdir}/doctrees docs docs/_build/html sphinx-build -W -b doctest -d {envtmpdir}/doctrees docs docs/_build/html @@ -36,6 +33,12 @@ skip_install = true commands = check-manifest +[testenv:readme] +deps = readme +skip_install = true +commands = python setup.py check -r -s + + [testenv:coverage-clean] deps = coverage skip_install = true