rope / docs / contributing.txt

 Contributing to Rope

Get Involved!

Rope's main goal is being a good refactoring tool for python.  It also
provides some IDE helpers.  If you like to contribute, you're welcome!

How to Help Rope?

Rope mailing list is `rope-dev (at)`_.  You can send
a mail to ``rope-dev-subscribe (at) googlegroups [dot] com`` to

* Use rope
* Send bugs reports and request features
* Submit patches for bugs or new features
* Discuss your ideas

.. _`rope-dev (at)`:

Wish List

You are welcome to send your patches to `rope-dev (at)`_ mailing list.  Here is only a list of suggestions.


The `dev/issues.txt`_ file is actually the main rope todo file.  There
is a section called "unresolved issues"; it contains almost every kind
of task.  Most of them need some thought or discussion.  Pickup
whichever you are most interested in.  If you have ideas or questions
about them, don't hesitate to discuss it in the mailing list.

.. _`dev/issues.txt`: dev/issues.html

Getting Ready For Python 3.0

Checkout Mercurial_ repository.
Contributions are welcome.

Write Plugins For Other IDEs

See ropemacs_, ropevim_, eric4_ and ropeide_.

.. _ropemacs:
.. _ropevim:
.. _ropeide:
.. _eric4:

Rope Structure

Rope package structure:

* `rope.base`: the base part of rope
* `rope.refactor`: refactorings and tools used in them
* `rope.contrib`: IDE helpers

Have a look at ```` of these packages or `library.txt`_ for
more information.

.. _`library.txt`: library.html

Source Repository

Rope uses Mercurial_ CMS:

* Rope main branch:
* Rope py3k branch:

.. _Mercurial:

Submitting patches

Patches are welcome.

Patch style

* Follow :PEP:`8`.
* Use four spaces for indentation.
* Include good unit-tests if possible.
* Rope test suite should pass after patching
* Use ``hg export`` format to preserve your identity