Source

rope_py3k / docs / dev / stories.txt

Full commit
==============
 rope stories
==============

This file is actually a todo list.  Right now most of rope's efforts
are concentrated on implementing `base stories`_.  Contributions to
the `IDE and UI stories`_ are extremely welcome. Have a look at
`contributing.txt`_ file.

.. _`contributing.txt`: contributing.html


Base Stories
============

* Extract superclass
* Collapse hierarchy
* Python C extensions
* Zip imports
* Pull up method
* Push down method
* Introduce redirection


IDE And UI Stories
==================

* Editor folding
* Auto-importing modules
* Replacement; M-%
* Remembering last open project
* Go to matching parenthesis
* Indenting a region of a file
* Finding available refactorings
* Auto completion type

  * Inserting or overwriting
  * Inserting common prefixes

* ReST

  * highlighting inside pydocs
  * goto definition
  * outlines
  * codeassists

* Show PyDoc reST highlighting
* Enhancing module running

  * Showing running status in the GUI
  * Printing output
  * Getting input
  * Customizing CWD and parameters
  * Running last run

* Formating code
* Spell checking python source


Stories
=======

> Public Release 0.8


* Handling the return type of ``yield`` keyword


* Extracting methods from pieces with only one return/yield statement


* Moving initialization to constructor in local variable to field


* Encapsulate field using properties


* Adding an option to remove old parameter in inline argument default


* Renaming similarly named variables


* Analyzing function decorators


* Extract class


* Supporting templates in text modes


* Next/prev sentence


* Searching inside `EnhancedList`\s


* Supporting modules without source code


* Moving `staticmethod`\s


* Changing method to static method refactoring


* Better warnings


* Enhanced occurrence finding


* Move refactoring and moving a group of elements together


* View type hierarchy


* Removing files/folders


* Renaming and moving normal files/folders


* Generate ... and implicit interfaces


* Using `svn` instead of `pysvn`


* Generate method and class hierarchies


* Handling tuple parameters


* Lambdas as functions; consider their parameters


* Split tuple assignment refactoring


* Inlining a single occurrence


* An option to decide whether to use froms or normal imports for back
  imports


* Generate ~/.rope graphically


* Performing refactorings across multiple projects


* ropemacs: only activating keybinding in python files


* ropemacs: auto-complete


* ropemacs: previewing changes


* ropemacs: showing refactoring progress


* ropemacs: adding a menu


* ropemacs: specifying refactoring options


> Public Release 0.7 : November 2, 2007