Friday, June 30, 2006

Pydev 1.2.1 released

Actually, Pydev 1.2.1 has been released 2 days ago, but the final Eclipse 3.2 (which is the one that pydev targets) will be released later today, so, I think it's a good time if you were waiting to upgrading to the latest pydev release.

Information on the release for:
- Pydev Extensions: http://www.fabioz.com/pydev
- Pydev: http://pydev.sf.net

Details on its development: http://pydev.blogspot.com

Friday, June 23, 2006

Notes

Ok, just as a note to pydev extension users, http://www.fabioz.com/pydev will be out this weekend due to some restructuring in the network where the server is, but it should be back on monday.

And in the beggining of the next week, there should be a new release (1.2.1), with fixes for some integration issues with Eclipse 3.2 (the major one is that variables in the debugger did not show on 1.2.0) and some minor enhancements.

Monday, June 19, 2006

Pydev 1.2.0 released

Pydev and Pydev Extensions 1.2.0 have been released

This release focused mainly on making pydev compatible with Eclipse 3.2 (so support for Eclipse 3.1 is now discontinued) and optimizing pydev to make its operation 'smoother'.

Another nice thing is that the outline now has more info (attributes, and comments starting with #---)

More details can be found at:

Pydev Extensions: http://www.fabioz.com/pydev
Pydev: http://pydev.sf.net

Friday, June 09, 2006

Pydev 1.2 shaping up

Yeap... Pydev is going to the gym ;-)

I've spent the last week just evaluating it and making it run faster... I belive that it will have about a 20% gain in performance overall (depending on which features you use could be more or less).

Special attention was given for the parser, because it is used on lot's of things.

A (big) memory leak was also found and removed... I'll even comment a little more about it, as it was something that "amused" me for a while.

When I did an analysis, pydev would create a thread, and depending if it was a full build or a delta build, it would call 'run' or 'start' on the thread... Now, I've discovered that if you call 'run' in a Thread and not 'start', and loose its reference, it will NOT be garbage collected, so, you'll loose that memory forever (way to go ThreadGroup)... needless to say that this particular thread held a reference to the generated AST, so, basically, all the ASTs generated in a full build would be there for eternity -- considering eternity the lifetime of Eclipse ;-)

This is fixed for 1.2... Also, many changes were needed to make it work with Eclipse 3.2, so, please, wait for the next release of pydev to come out before migrating!

Tuesday, June 06, 2006

Pydev 1.1.0 released

Pydev 1.1.0 has just been released. It has a number of bug-fixes and enhancements (check http://pydev.sourceforge.net/)

This release will be the last release targeting Eclipse 3.1 -- the next release will be targeting Eclipse 3.2.

Thursday, June 01, 2006

Pydev faster start-up

Ok, when starting pydev, until now, all its aspects where initialized linearly when some part of the plugin was requested. As you usually started with the editor, the time it would take pydev to be usable was about 40 secs (in a good machine), because it would have to start:

1 - the plugin (major work was on loading the interpreter information)
2 - the editor itself (major work was on starting up the scripting engine and binding some actions to the editor)

-- This was just the initial loading time (one-time operation), so, new editors after that would be pretty fast, but still, that initial start-up could be annoying sometimes...

So, now the structure was changed so that you can start pydev and begin using it making the other initializations in a thread. It became a bit more complex, because binding actions would have to sync with the main thread and so on, but on the other hand, after starting pydev, it would take (in a good machine) 1-2 secs to open an editor that first time (quite acceptable in my opinion).

When that happens, some actions might still not be 'readily' available, such as the scripts, so, if you request them right away, they just won't be available as you'll have to wait those other threads make their work, but still, you can already open and begin typing without using that (which is the most common behaviour).

I also think most performance bottleneck were sorted out, so version 1.0.9 should be quite responsive -- it should be released in the start of the next week.

Cheers,

Fabio