diff options
author | holger krekel <holger@merlinux.eu> | 2015-02-27 11:54:17 +0100 |
---|---|---|
committer | holger krekel <holger@merlinux.eu> | 2015-02-27 11:54:17 +0100 |
commit | f6df3b0b9744239b6de731bb5b53db3e119f9c7f (patch) | |
tree | 54f5adb6577ba86abf8812baca45c3112a0d9ca6 | |
parent | e9d4853296d37bdc9fcde6447acc1e910c4f94a5 (diff) | |
download | pytest-f6df3b0b9744239b6de731bb5b53db3e119f9c7f.tar.gz |
added documentationo on the new pytest-dev teams on bitbucket and
github. See https://pytest.org/latest/contributing.html (tentative)
Thanks to Anatoly for pushing and initial work on this.
--HG--
branch : docs_community
-rw-r--r-- | CHANGELOG | 4 | ||||
-rw-r--r-- | CONTRIBUTING.rst | 61 | ||||
-rw-r--r-- | doc/en/plugins.txt | 44 |
3 files changed, 65 insertions, 44 deletions
@@ -3,6 +3,10 @@ - add ability to set command line options by environment variable PYTEST_ADDOPTS. +- added documentationo on the new pytest-dev teams on bitbucket and + github. See https://pytest.org/latest/contributing.html . + Thanks to Anatoly for pushing and initial work on this. + - fix issue650: new option ``--docttest-ignore-import-errors`` which will turn import errors in doctests into skips. Thanks Charles Cloud for the complete PR. diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst index b65731cb7..e7939c285 100644 --- a/CONTRIBUTING.rst +++ b/CONTRIBUTING.rst @@ -1,18 +1,59 @@ -============ -Contributing -============ +============================ +Contribution getting started +============================ Contributions are highly welcomed and appreciated. Every little help counts, so do not hesitate! +.. contents:: Contribution links + :depth: 2 -Types of contributions -====================== + +.. _submitplugin: + +Submit a plugin, co-develop pytest +---------------------------------- + +Pytest development of the core, some plugins and support code happens +in repositories living under: + +- `the pytest-dev bitbucket team <https://bitbucket.org/pytest-dev>`_ + +- `the pytest-dev github organisation <https://github.com/pytest-dev>`_ + +All pytest-dev team members have write access to all contained +repositories. pytest core and plugins are generally developed +using `pull requests`_ to respective repositories. + +You can submit your plugin by subscribing to the `pytest-dev mail list +<https://mail.python.org/mailman/listinfo/pytest-dev>`_ and writing a +mail pointing to your existing pytest plugin repository which must have +the following: + +- PyPI presence with a ``setup.py`` that contains a license, ``pytest-`` + prefixed, version number, authors, short and long description. + +- a ``tox.ini`` for running tests using `tox <http://tox.testrun.org>`_. + +- a ``README.txt`` describing how to use the plugin and on which + platforms it runs. + +- an issue tracker unless you rather want to use the core ``pytest`` + issue tracker. + +If no contributor strongly objects and two agree, the repo will be +transferred to the ``pytest-dev`` organisation and you'll become a +member of the ``pytest-dev`` team, with commit rights to all projects. +We recommend that each plugin has at least three people who have the +right to release to pypi. + + +.. _reportbugs: Report bugs ----------- -Report bugs at https://bitbucket.org/hpk42/pytest/issues. +Report bugs for pytest at https://bitbucket.org/hpk42/pytest/issues If you are reporting a bug, please include: @@ -22,6 +63,8 @@ If you are reporting a bug, please include: installed libraries and pytest version. * Detailed steps to reproduce the bug. +.. _submitfeedback: + Submit feedback for developers ------------------------------ @@ -37,6 +80,7 @@ We'd also like to hear about your propositions and suggestions. Feel free to * If you have required skills and/or knowledge, we are very happy for :ref:`pull requests <pull-requests>`. +.. _fixbugs: Fix bugs -------- @@ -46,6 +90,8 @@ https://bitbucket.org/hpk42/pytest/issues?status=new&status=open&kind=bug :ref:`Talk <contact>` to developers to find out how you can fix specific bugs. +.. _writeplugins: + Implement features ------------------ @@ -67,6 +113,7 @@ pytest could always use more documentation. What exactly is needed? * Blog posts, articles and such -- they're all very appreciated. .. _pull-requests: +.. _`pull requests`: Preparing Pull Requests on Bitbucket ===================================== @@ -154,7 +201,7 @@ the issues there and submit your pull requests. .. _contribution-using-git: -What about git (and so GitHub)? +Using git with bitbucket/hg ------------------------------- There used to be the pytest GitHub mirror. It was removed in favor of the diff --git a/doc/en/plugins.txt b/doc/en/plugins.txt index 6ede5a0af..d6f886de4 100644 --- a/doc/en/plugins.txt +++ b/doc/en/plugins.txt @@ -120,43 +120,9 @@ You may also discover more plugins through a `pytest- pypi.python.org search`_. .. _`pytest- pypi.python.org search`: http://pypi.python.org/pypi?%3Aaction=search&term=pytest-&submit=search -External plugin development ---------------------------- - -Pytest community cares about pytest users, in particular, it's crucial for the community -to keep all pieces of the pytest ecosystem well supported. External plugins are important for -pytest users, as they implement many useful, and sometimes critical features which the pytest core does -not implement. - -To simplify the plugin development and/or support, it was decided to create teams(companies) on popular code hosting -services (at the moment it's github and bitbucket): - -* `<https://github.com/pytest-dev>`_: - probably the most popular hosting for pytest plugins - the name ``pytest-dev`` is choosen because ``pytest`` was already taken by - some unknown person, who's not active on the github or just doesn't check the email used to register - that organization. -* `<https://bitbucket.org/pytest-dev>`_: - pytest is hosted on the bitbucket, also a lot of pytest plugins are hosted there. - -More code hosting services can be added in the future. - -Community encourages pytest plugin developers to move their plugins under those organizations (eg transfer ownership), -paying with a better support, faster feedback, better discoverability, etc. - -Generic workflow of the ownership transfer looks like: - -* If not a member already, developer asks for a membership in the `pytest plugin developers community` organizations listed above, sending an email to `<pytest-dev@python.org>`_. - -* Developer transfers the ownership of his plugin repository to the organization listed above. - -* Existing organization members will make sure proper write permissions are set up for developer who transfered the ownership to the organization. - - Writing a plugin by looking at examples --------------------------------------- -.. _`Distribute`: http://pypi.python.org/pypi/distribute .. _`setuptools`: http://pypi.python.org/pypi/setuptools If you want to write a plugin, there are many real-life examples @@ -169,6 +135,10 @@ you can copy from: All of these plugins implement the documented `well specified hooks`_ to extend and add functionality. +You can also :doc:`contribute your plugin to pytest-dev<submitplugin>` +once it has some happy users other than yourself. + + .. _`setuptools entry points`: Making your plugin installable by others @@ -177,10 +147,10 @@ Making your plugin installable by others If you want to make your plugin externally available, you may define a so-called entry point for your distribution so that ``pytest`` finds your plugin module. Entry points are -a feature that is provided by `setuptools`_ or `Distribute`_. -pytest looks up the ``pytest11`` entrypoint to discover its +a feature that is provided by `setuptools`_. pytest looks up +the ``pytest11`` entrypoint to discover its plugins and you can thus make your plugin available by defining -it in your setuptools/distribute-based setup-invocation: +it in your setuptools-invocation: .. sourcecode:: python |