PEPTIC – Python Eclipse Plugin To Improve Code

Welcome! The PEPTIC project aims to bring refactorings to Python. It is based on PyDev, an Eclipse plugin providing an integrated development environment for Python programmers, with a lot of useful features like code completion and syntax error highlighting. PEPTIC's goal is to enhance PyDev by offering a variety of refactorings like Extract Method or Rename, which used to be available only to Java developers.

The project PEPTIC was originally started by Dennis Hunziker and Ueli Kistler as a term project in the winter 2006/2007 at the Hochschule für Technik Rapperswil in Switzerland. It is now our goal to extend their work in our term project. Although separately developed, we want to merge our work back into PyDev during and at the end of our term project.

Have a look at the Showcase to see what PEPTIC is already able to do. If you are interested in the details, take a look at our report.

If you want to follow the development of PEPTIC, feel free try it out using our update site. We suggest you use a dedicated Eclipse installation. We are looking forward to your feedback, feel free to use the ticketing system or drop us a line: rstocker + (and/or) + rschuett + (at) + hsr.ch :)

Eclipse 3.3 Update Site: http://peptic.ifs.hsr.ch/updateSite/

Subversion: http://peptic.ifs.hsr.ch/svn/trunk/

Project Report: Documentation

Please take a look at our bachelor thesis: http://pystructure.ifs.hsr.ch/

Main Goals

  • Implement more refactorings for Python
    • Various rename refactorings: Rename Local Variable, Rename Method
    • Extract and Inline Local Variable
    • Generate Docstring
    • and others
  • Implement a type inference engine to improve the Rename refactorings (based on the DDP algorithm as used by DLTK)

Authors

  • Robin Stocker
  • Reto Schüttel
#!/usr/bin/python
import base64
print "Please send your feedback and ideas to:"
print base64.b64decode("RS1NYWlsOiByc3RvY2tlckBoc3IuY2ggcnNjaHVldHRAaHNyLmNo")

Project plan

Try it out!

Update Site: http://peptic.ifs.hsr.ch/updateSite/

Use a clean & dedicated Eclipse Installation, we can't guarantee any damage our update does to your computer or your physical or mental health! ;)

Documentation

Resources

Administrative

Reviews

PyDev

PyDev is a plugin that enables developers to use Eclipse for Python and Jython development – making Eclipse a first class Python IDE. It comes with many goodies such as code completion, syntax highlighting, syntax analysis, refactoring, debug and many others.

PyDev was mainly developed by Fabio Zadrozny.

PyDev Plugin for Eclipse – http://pydev.sourceforge.net/

Sponsors

Institute for Software – http://www.ifs.hsr.ch/

Institute for Software logo

Hochschule für Technik Rapperswil – http://www.hsr.ch/

HSR logo

Utilities

Structure101

"Structure101 greatly helped us to analyze and optimize PEPTIC's codebase. We'd like to thank Headway Software for providing us with a free license!" Robin Stocker & Reto Schuettel

Structure101 lets you control the structural complexity of your code-base and ensure that it conforms to a defined architecture, making it less costly and risky to develop, modify, test, and deploy. Structure101 exposes structure, lets you define how it should be, communicate this to the team and know when architecture deviations make it into the mainline. A rich client, web application, RSS feeds and IDE plug-ins provide the right information at the right time to make architectural control a cinch on any project or process, local or distributed.