summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorholger krekel <holger@merlinux.eu>2015-02-27 11:54:17 +0100
committerholger krekel <holger@merlinux.eu>2015-02-27 11:54:17 +0100
commitf6df3b0b9744239b6de731bb5b53db3e119f9c7f (patch)
tree54f5adb6577ba86abf8812baca45c3112a0d9ca6
parente9d4853296d37bdc9fcde6447acc1e910c4f94a5 (diff)
downloadpytest-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--CHANGELOG4
-rw-r--r--CONTRIBUTING.rst61
-rw-r--r--doc/en/plugins.txt44
3 files changed, 65 insertions, 44 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 23a281083..4b5c3230c 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -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