Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Extract method revival
Project Lead: Benjamin Muskalla (IRC: benny`work)
Mentor: Markus Keller
This project is part of the Google Summer of Code 2009
Contents
Abstract
JDT already provides several very good refactorings like Extract method. Despite the fact they are behave very good there are still some unresolved bugs and open enhancement requests. The project will take the "Extract method" refactoring to the next step by resolving all (possible) bugs and trying to enhance the current functionality. As it is one of the most used refactorings in day-to-day development it really deserves some work to get all details and edge cases fixed.
Primary goals
bug 101233: [extract method] remember selected access modifier
bug 273537: [extract method] Extract method fails when there is exception-throwing in the area
bug 160853: [extract method] Does not replace similar code in parent class of anonymous class
bug 213519: [extract method] Missing return value, while extractiong code out of a loop
bug 97413: [extract method] missing return type when code can throw exception
bug 50607: [extract method] Name ambigous return value in error message
bug 48056: [extract method] Extract method and continue
Timeline
Here is a complete list of the milestones and release candidates planned for this plugin.
Milestone | Date | Planned items |
---|---|---|
M1 | April 30 | TBD |
M2 | May 26 | TBD |
M3 | June 21 | TBD |
M4 | July 3 | TBD |
M5 | July 17 | TBD |
RC1 | August 2 | TBD |
Pencils down | August 10 | - |
Community Involvement
Getting the source
As all the changes made to the Extract method refactoring are done by patching the existing JDT bundles there is no seperate source repository. Either you wait that JDT includes the patches in one of the next I builds or you can checkout the JDT bundles yourself and apply the patches. All changes will be contributed trough the corresponding bugs in bugzilla (see above).
Open issues
To see all the open issues and feature requests of this project, take a look at this query.
New ideas
Do you have a great idea for the refactoring? Just open a new feature request.