after 1.2.4

Pydev:
<ul>
	<li><strong>Pydev package explorer</strong> was created. Features already implemented:
		<ul>
			<li>Common resource actions (delete, copy, rename, team...)</li>
			<li>Shows the Source folder with a different icon</li>
			<li>Linking mode enabled</li>
			<li>Shows the outline for a python file</li>
			<li>Opening an item in the outline opens the correct place in the correspondent file</li>
		</ul>
	</li>
	<li>Debugger bug-fix: Crash when debugging wxPython programs should not happen anymore</li>
	<li>When opening a file, the encoding is considered (and not only when saving it)</li>
	<li>Patches from <strong>Gergely Kis</strong>:
		<ul>
		<li>Option for having a 'default interpreter' in the combo for selecting which interpreter to use for a run</li>
		<li>Saving the things related to the pydev project in a .pydevproject file to be commited</li>
		</ul>
	</li>
	<li>Patch from <strong>Gregory Golberg</strong>:	
		<ul>
		<li><strong>Ctrl+Shift+D</strong> when a variable is selected in debug mode shows the variable value</li>
		</ul>
	</li>
</ul>

Pydev Extensions:
<ul>
	<li>Minor bug on mark occurrences fixed</li>
	<li>The quick outline now will go to the 'sole item' in the tree even if it is not selected (and OK is pressed)</li>
</ul>

after 1.2.3

Pydev:
Completions for parameters based on the tokens that were defined for it in a given context
Removed the default PyLint options, because its command-line interface changed (was crashing PyLint in newer versions)
Changed the grammar, so that 'yield' is correctly parsed as an expression
Giving better error message when external file is opened without any interpreter selected
Icons for the builtins gotten on large libraries (such as wx)
Adding jars relative to the project now works correctly
The debugger is now able to get the variables in a context when handling negative payloads (patch by kovan)

Pydev Extensions:
Code analysis: analysis on imported modules do no longer give you errors on:
- classes that have __getattribute__ overriden
- assigns that are initially None 
- assigns to a function call and not a class definition
Completions for parameters in a context-insensitive way, looking for all the methods/attributes declared in classes available to the project (after 3 chars)
Note: Builtins are still not handled here.

after 1.2.2

Pydev:

<ul>
<li>When the user specifies an invalid interpreter, a better error report is given (it was only shown in the error log previously)
</li><li>When threads die, the debugger is notified about it (to remove them from the stack)
</li><li>Made writing the preferences buffered
</li><li>Fixed problem when debugging in jython with (from xxx import *)
</li><li>Fixed one issue with the indentation engine
</li><li>Commenting a line does not remove a blank line in the end anymore
</li><li>Added debug mode for unit-test 
</li><li>Added the possibility of setting the -Dpython.cachedir for running the jython shell
</li><li><strong>Darrell</strong>: unit-test refactoring and run as jython unit-test
</li><li><strong>Joel</strong>: Added a ctrl+1 for the case 
def m1(self, arg=None):
    arg |<-- Ctrl+1 shows option to do:
    
def m1(self, arg=None):
    if arg is None:
        arg = []
</li>    

<ul>
<strong>Support for python 2.5</strong>
</li><li>Added the new relative import to the parser 
</li><li>Added the new if expression to the parser 
</li><li>Added the unified try..except..finally statement
</li><li>Added the with x:... statement
</li><li>indenting after the new with statement
</ul>
</ul>

Pydev Extensions:

<ul>
<li>Added support for python 2.5
</li><li>Fixed some minor issues on mark occurrences when the definition for something could not be found
</li>
</ul>

after 1.2.1

Pydev:
- Getting in completions for the pattern a,b,c=range(3) inside a class
- Errors getting the tests to run are no longer suppressed
- Calltips added to pydev
- Parameters gotten from docstring analysis for builtins that don't work with 'inspect.getargspec'
- The parameters are now linked when a completion is selected (so, tab iterates through them and enter goes to the end of the declaration)
- Ctrl+2+kill also clears the internal cache for compiled modules (especially useful for those that create compiled dependencies).
- Code completion for nested modules had a bug fixed
- Added the 'toggle completion type' when ctrl is pressed in the code-completion for context-sensitive data
- Code-completion works correctly after instantiating class: MyClass(). <-- will bring correct completions
- Code-completion can now get the arguments passed when instatiating a class (getting the args from __init__)
- paths are remembered when configuring the pythonpath
- self is added as a parameter in the completion analyzing whether we're in a bounded or unbounded call
- Possibility of setting pyunit verbosity level (by Darrell Maples)
- Pressing Ctrl+Space a second time changes default / template completions
- Added option for hiding comments and imports in the outline view
- Persisting outline view configuration
- Added option for expanding all in the outline view

Pydev Extensions:
- Handling nested 'for' and list comprehensions correctly in code-analysis
- Mark occurrences bug-fix
- Duplicated signature is no longer warned inside an if..else
- The binding for creating the interactive console and passing commands has been changed to Ctrl+Alt+Enter (because Ctrl+Enter is used when applying a toggled completion)
- Added the 'toggle completion type' when ctrl is pressed in the code-completion for context-insensitive data
- When getting some definition, if it is defined by an import..from, it keeps going until the actual token is found


after 1.2.0

Pydev:
- The user is asked for which paths should be added to the system pythonpath
- Go to previous method now works with decorators
- Stack-trace link now opens in correct line for external files
- Variables now show in the variables view while debugging
- If an invalid interpreter is selected to run a file (old interpreter or wrong project type), a warning is given to the user
- Ctrl+w is removed as the default for select word (the action is still there, but its keybinding is removed, so, users have to configure themselves which keybinding they want for it)
- Assign to local or field variable now enters in linked mode
- Added dependency to Eclipse 3.2 features, as version 1.2.0 of pydev and newer are only Eclipse 3.2 compatible.

Pydev Extensions:
- Bug-Fixes

after 1.1.0

Pydev:
- Eclipse 3.2 supported (and 3.1 support is now discontinued)
- Lot's of optimizations to make pydev faster
- Ctrl+Click now works with the find definition engine 
- Comments that start with #--- are shown in the outline
- Attributes are shown in the outline
- Parse errors are now show (again) in the editor
- Other bugs fixed

Pydev Extensions:
- Interactive console: content is now changed so that you don't have syntax errors when passing code to it.
- An action was added to the menu so that you can use the 'globals' browser without needing focus on the pydev editor.


after 1.0.8

Pydev:
- Startup is now faster for the plugin: actions, scripts, etc. are now all initialized in a separate thread
- Indentation engine does not degrade as document grows
- Multiple-string does not mess up highlighting anymore
- code completion issue with {} solved
- Ctrl+W: now expands the selection to cover the whole word where the cursor is
- Assign to attributes (provided by Joel Hedlund) was expanded so that Ctrl+1 on method line provides it as a valid proposal
- A Typing preferences page was created so that the main page now fits in lower resolutions 

Extensions:
- mark occurrences improved


after 1.0.7

Pydev:
- single bug-fix: enter could lead into loop

Extensions:
- rename occurrences forces parse

after 1.0.6

Pydev:
- The Parser character stream was redone to be more efficient (especially when dealing with big files)
- The thread that does analysis had its priority lowered
- When running a file, the pythonpath set now let's the project pythonpath before the system pythonpath
- The way modules are resolved for loading when running unit-tests has changed
- Indentation further improved
- Debugger changes for working with jython
- <strong>Ctrl+2+w</strong>: wraps the current paragraph to the number of lines specified in the preferences. This was provided by Don Tailor (revisions are also available in http://pilger.googlepages.com/pydevstuff)
- Lot's of bug-fixes

Extensions:
- Mark Occurrences: find all the occurrences of the selected token in the file (python-aware)
- <strong>Ctrl+2+r</strong>: rename all the occurrences of the selected token in the file (python-aware)
- Remote debugger can redirect the output to the client (the signature for starting the remote debugger became settrace(host='localhost', stdoutToServer = False, stderrToServer = False))
- It is now possible to map the locations from the server to the client even if they are not in the same exact paths
- <strong>Ctrl+2+c</strong>: force code-analysis in the current editor
- The find hierarchy was improved and can now find children classes in referencing modules


after 1.0.5

Pydev:
- 3 minor 'quirks' were fixed when indenting
- The debugger had some changes (so, if you had halts with it, please try it again).
- Allow changing the keybinding for activating the Find next problem (Ctrl+.)
- The debugger step-return had its behaviour changed.
- Additional scripts location added to pythonpath in the jython scripting engine
- Transversal of nested references improved
- Fixed problems with compiled modules when they had 'nested' module structures (e.g.: wx.glcanvas)
- assign params to attrs (by yohell)

Pydev Extensions:
- Analysis happens in a Thread, so, you should now always have the latest parse without any halts (this happened only when the option was set to analyze only on save).
- Class variable marked as error when self ommitted
- when an undefined import is found within a try..except ImportError, it will not be reported.
- Allow changing the keybinding for activating the Interactive Console (Ctrl+Enter)
- Added a simple text-search that looks for in all .py and .pyw files (will be improved in the future to make a real python-like search).
- New Feature: Show hierarchy (F4) -- Still in a beta state (currently only looks for subclasses on the same project).
- The keywords that match the 'simple' keywords completion do not show up.

after 1.0.4
Pydev:
- Indent does not try to make auto-indentation when pasting
- When smart-indent is not selected, it will still add an indentation level after ':'
- It will keep the indent of the previous line on new-lines if the current line is empty
- Other little things
- Added a place to specify vm arguments (for jython or python) -- thanks to Rudi de Andrade for this patch
- Added a way to kill the underlying python/jython shells (Ctrl+2+kill)

Pydev Extensions:
- Made the pop-up pop 'less' while in evaluation

after 1.0.3
Pydev:
- Does not try to make different indentations inside multilines
- Does not try to add spaces to make smart-indent when in only tabs mode
- Indents correctly after opening some bracket or after closing some bracket
- Indents to expected level when hitting tab
- Fixed bug: syntax error described instead of throwing an error
- Added jython scripting 
- Profiled Pydev (and I'm hoping you'll actually "feel" the difference) -- It is awesome when you see that 90/10 in action (altough I think it is something more like 99/1).
- Added a 'go to next problem' with jython scripting capabilities, as a first example on how to script Pydev with Jython (Ctrl+.)
- Fixed bug: the pythonpath was not added when additional environment variables where specified

Pydev Extensions:
- Python and Jython interactive console (Ctrl+Enter)





after 1.0.2

Pydev:
- Fixed error while organizing imports with the construct from xxx import (a,b\n c)
- Fixed debugger error: it could halt when getting some variable representation if the variable translated in a string that was huge
- Fixed error while debugging with conditional breakpoint (only evaluated the first time) -- Thank Achim Nierbeck for this fix
- Show in view: Resource Navigator (Ctrl+Alt+W) now is always active on the pydev view
- Fixed leak on template images
- Auto-dedent for else: and elif constructs
- Added color customization for the function name and class name

Pydev Extensions:
- Added open declaration 'quick dialog' - Ctrl+Shift+T: Enables the user to find any global (class, method or attribute) declaration,
including methods and attributes from classes (does not show only 'top-level' tokens).
- Code analysis minor bugs fixed
- Added a 'memento' for the Quick outline layout




after 1.0.1

Pydev:

- Jython debugging now working.
- Code coverage does not report docstrings as not being executed.
- Freeze when making a 'step-in' fixed in the debugger.
- Grammar generated with javacc version 4.0 

Pydev Extensions:

- New feature in the debugger: the console is available for probing when in 'suspendend mode'
- New feature in code analysis: Provided a way to consider tokens that should be in the globals
- Halt fix when too many matches where found in the go to definition.
- Code analysis minor bugs fixed.
- Error when opening browser fixed.


after 1.0

- Single fix: out of memory setting interpreter

after 0.9.8.7

- Minor bug: if there was no other project to reference in the new project wizard, it appeared next even though
it didn't have a 'next' page.
- Debugger speed up (on par with the best debuggers available)
- Debugger now gets the variables 'on-demand'
- The variables returned for jython are much more complete
- Wizard to create new project has option for creating a default 'src' folder (and add it to the pythonpath).
- The create new python module and new python package have been reviewed (you can still use
the regular ones, but the new ones are really reccommended -- also it will help in making sure you have your pythonpath
correctly configured!).
- Create new source folder option added.
- Pylint can now give the output to the console too (configurable).
- Pylint 0.9.0 tested
- Pylint errors now show in the hover
- The Pydev perspective was changed (so, please, close the current and open a new one)
- Templates were added for the keywords
- Keybindings were added to run the current editor as python (F9) or as jython (Ctrl+F9). Those are customizable in the 'keys' preferences 

after 0.9.8.6

- Fixed debugger so that tracing does not appear
- Fixed jython shell (and extended it to get better information).
- Changed the interpreter configuration so that it is backwards-compatible from now on 
(but the current interpreters will be lost and will need to be configured)
- Breakpoints can have conditionals (this was contributed by Achim Nierbeck, and was actually provided in release 0.9.8.6,
but I forgot to put it in the release notes)


after 0.9.8.5

- Conditional breakpoint added (Achim Nierbeck)
- New python project (Mikko Ohtamaa)
- New python module (Mikko Ohtamaa)
- Python launch configuration tabs reworked (Mikko Ohtamaa)
- Some locking problems were fixed when doing code completion
- Faq has been extended with more doubts

after 0.9.8.3

- Saving information as deltas
- Option for not using smart-indent after opening brackets
- License changed
- Bugfixes



Begginers guide draft (from Jack Trainor - given in the blog)

* Unzip eclipse-SDK-3.1.1-win32.zip to c:\
* Unzip org.python.pydev.feature-0_9_8_3.zip to c:\
* Double-click c:\eclipse\eclipse.exe
* Set default workspace where you want it.
* Close Welcome splash pane.
* Select Resource perspective: Window\Open Perspective\Other...\Select Perspective\Resource.
* Click OK.
* Select Window\Preferences\PyDev\Interpreter - Python.
* Click top New... button and enter Python path, e.g., c:\Python24\python.exe
* Click OK.
* Click File\New\Project...
* Select Simple\Project Wizard
* Click Next.
* Enter Project Name, e.g. SimpleProj1.
* Click Finish.
* Click File\New...\File.
* Enter File Name, e.g. Py1.py.
* Click Finish.
* Right-click SimpleProj1 in Navigator pane and select Properties.
* Click PyDev-PYTHONPATH.
* Click top pane "Add source folder" button.
* /SimpleProj1 should already be selected. Click OK.
* Click top pane "Add source folder" button.
* Add path to source folder on disk, e.g., C:\Dev\eclipse\SimpleProj1.
* Click OK.
* Add some Python code to Py1.py:
print 'Hello from eclipse and python."
* Save.
* Right-click on Py1.py in Navigator pane.
* Select Run as\Python run.
* A console window should appear showing output from the Python program.

I think the problem I experienced resulted from my closing all the eclipse windows and working from a bare desktop when I started. I thought that would make things simpler; apparently not so.

Anyway, thanks for your work in putting Python on Eclipse.


after 0.9.8.2

- Debugger was improved to be faster (more info about it <a href="http://pydev.blogspot.com/2005/10/high-speed-debugger.html"> at my blog</a>).
- Add watch added to the editor popup menu
- Added syntax highlighting to the 'self' token
- Code folding added for 'glued' imports
- Fixed some outline problems
- Debugger does not try to get breakpoints on closed projects anymore
- Some refreshing issues regarding the outline and colors when reusing the editor were fixed
- Code completion for relative imports has changed a lot (there were some pretty hard-to-find bugs in this area...)
- Some move imports problems fixed
- The auto-add '(self):' now works with tabs too

after 0.9.8.1

- Dedent also added
- Options for doing parsing only when saving the document (check the builder preferences)
- Options for doing parsing only after an elapsed time (check the builder preferences)
- .pyc is removed when the corresponding .py file is removed.
- debugger has been changed so that it becomes faster (still not as fast as I would like, but still... faster)
- other bug-fixes (as ususal)
- some creation assists have been removed until they are improved (so, Ctrl+1 now is pretty stable for all of its uses)
  and the structure has been changed to enable extensions
- Some escaped quotes problems fixed when formatting code
- Navigation with Ctrl+Shift+ (up or down) has been slightly improved, so that it goes to the start or the end of the file

after 0.9.8

- Gerhard Kalab contributed patch to:
	- enable bold and italic style for syntax coloring
	- added parse rule and color/style for string representation (backquotes)
- java 1.4 support reintroduced
- zombie process after exiting eclipse reviewed
- paths with '.' are accepted for the pythonpath (unless they start with a '.', because it may not accept relative paths).
- relative imports are added to code-completion
- local imports are taken into consideration when doing code completion
- debugger has 'change support', so, changed variables in a scope appear red


after 0.9.7.99

- jython integration supports spaces for jython.jar and java install
- jython debugger support has been added
- jython code-completion support for new style objects (jython 2.2a1) has been enhanced.
- many templates were added
- the grammar evolved a lot (and will probably be re-used by the jython guys), 
so, now you can actually use decorators (not in a hackish way as previously),
list comprehension on method calls and tuples and the new from xxx import (a,b,c) syntax.
- pylint supports spaces
- pylint is no longer distributed with pydev (its location must be specified)
- some problems with the shells used for code-completion should be fixed


done in 0.9.7.99
- Code completion has been improved for supporting wild imports and relative imports better (sometimes it had some problems).
- There are hovers for the text and annotations (when you pass the mouse through an error it will show its description).
- Block comment (Ctrl+4) now uses the size defined for the print margin.
- New block-comment style added (Ctrl+Shift+4).
- The debugger had many fixes (altough it is still not perfect). Thanks to Aleks Totic, Scott Schlesier and Vitor Oba for the patches!
- Jython has its first shot at PyDev, you should be able to use many things already, meaning: all the common editor features and code completion.
- New icons were created.
- Many other bug-fixes as usual.














what I want:

- simple "text completion" for locals without found definitions:
e.g. 
c.bla = 1
c.foo = 2
c. | triggers completion with bla,foo

- code completion with self variables should be an union of all found occurences (right now, it finds the
first and gets completions based on it, so, some strange behaviours can happen... e.g.: if the first occurence
found maps to None, even if some other value finds the correct class, it is ignored. What we should have is
the union between the completions from None and the other class).

- imports in local scope should be gotten
- pythonpath should be the same for project and lauch
- IPython should be integrated
- code completion: support zip imports
- code completion: reference to update completions for other project. Some kind of 'broadcast' could be used for these changes.
- code completion: some thread could check for completions from time to time to make sure they're up-to-date (check timestamp)/changes in structure.
- code completion: ClassC().| should bring suggestions for class 'ClassC'



After 0.9.3

- Integrated Scott Schleiser patches for the debugger (you won't see any 'implement me' anymore!).
- Integrated Heikki Toivonen patch for PyLint using the project pythonpath (only tested on windows). Please, keep an eye for errors and report them.
- Integrated Heikki Toivonen patch for indentation after '(', '[' and '{' (if the line ends with a comma).
- Some StackOverflow errors were removed from code completion.
- Keybindings added for Refactoring (powered by bycicle repair man) - check the <a href="faq.html">FAQ</a>.
- If your python executable is in the path, its complete path is found.    






Bug:
PyLint does not work if we have spaces in the path

After 0.9.1

- Integrated Scott Schleiser's editor patch (now on apply, it really applies new settings, without having to close the editor).
- Integrated Scott Schleiser's debugger patch - most 'implement me' and 'volunteers needed' were fixed.
- Code Formatting bugs solved (and unit-tests added).
- Code completion had unit-tests added and some minor bugs solved.
- New Content Assistants added. 
- Docstrings in national encodings should work now.
- from scbr import a, b... should work now.
- Decorators now can have custom colors.
- Numbers now can have custom colors.
- Matching brackets now highlighted.
- Minor bugs in other areas. 




Done in 0.9.1

Content assistant improvements:
- assign content assistant when assigned to variable strips the "get";
- move imports content assistant should be improved to move import closer to existant import and
not to top of file;
- Icons added to them;

Others:
- Ctrl+Shift+O: if no selection: Organizes all global imports from the file (sorts alphabetically);
- Ctrl+Shift+O: if some line selection: sorts alphabetically the lines selected;
- Ctrl+Shift+F: if no selection: Formats all code;
- Ctrl+Shift+F: if some line selection: Formats selected code;
- PyLint only blocks interface on "update results";
- the namespace in debug mode is not polluted anymore (Scott Schleiser provided the patch);
- The PYTHONPATH used for debug now should be the same used in run.
- Editor preferences

Code Completion:
- get parameters in code completion;
- builtins like ' ', {}, [] should bring correct suggestions;
- relative imports;
- other bug-fixes;














org.python.pydev

Since 0.3

New features:

- Added team file extensions for .py & .pyc
- Added "Source" menu to the editor: comment/goto methods implemented by fabioz
- Added Python nature, and nature icon. Nature get automatically added to any project
that opens a python editor.
- Added Python properties to projects that have Python nature
- Editor now has a python icon. Icon is ugly, help!
- .pyc files are filtered out in the resource view
- Parsing now happens either immediately on return, or a second after input
This makes error notifications nicer and more predictable
- New double-clicking strategy, copied from Java
- Moved debug preferences into main plugin. We need them for import paths parsing
- Hyperlinks on simple imports now work. For them to find system includes, you'll need to
set up the python interpreter in the preferences.
	active hyperlinks are:
		[imports] import sys: you can click on sys, and sys.py will open
		[local function calls]: functions defined in the same file
		[class constructors]: a = SomeClass() takes you to class definition
		[self.method calls]: self.method_name works if method is defined in the same file
- When you are editing in the tab mode, paste will replace spaces with tabs
- tabs/spaces conversion only takes place inside code, not inside comments
- IDLE like colors for text

Bug fixes:
- Moved parsing so that all pydev parsers use single thread
-








