Decorators lack some features

Bug #128423 reported by Guillermo Gonzalez
8
Affects Status Importance Assigned to Milestone
Bazaar Plugin for Eclipse
Fix Released
High
Guillermo Gonzalez

Bug Description

Sharebear reported the following issues in a Question:

1) No decorators on directories
2) Missing the last user and revision of edit (see subclipse for example)
3) Icons do not update on save (showstopper for me) or on refresh of project, the only way to trigger an update is to perform a bazaar action or click on another file in the same directory in the Package explorer (Note: the directory isn't enough, I must click on an artifact at the same directory level).

3 makes it difficult to see what files I need to consider committing and makes it difficult to use for now. Combined with the mylyn functionality this could easily lead to files being missed or unintentionally committed if I don't pay close attention to the file list in the commit dialog

Changed in bzr-eclipse:
status: New → Confirmed
Changed in bzr-eclipse:
assignee: nobody → guillo.gonzo
status: Confirmed → In Progress
Changed in bzr-eclipse:
importance: Undecided → High
Revision history for this message
Guillermo Gonzalez (verterok) wrote :

most of this issues are "fixed", but there is a lot work to do to reach subclipse/cvs decorator support.
if any other issues araise, plase reopen or create a new bug

Changed in bzr-eclipse:
status: In Progress → Fix Released
Revision history for this message
Andrew McClain (awmcclain) wrote :

It "works", but seems to take a long time to refresh? I can't seem to figure out when the decorators update.

Also, new projects that have .bzr files integrate with the plugin correctly, but I don't see decorators.

I still don't see immediate changes when I save.

Attached is a screenshot of a bzr branch (panda-trunk) with an existing .project file, imported into eclipse. Notice that some of the decorators have updated, some have not.

Below is a branch created using Import >> bzr import. Still "works", but no decorators.

Changed in bzr-eclipse:
status: Fix Released → Incomplete
Revision history for this message
Jemsquash (james-stewart) wrote :

I agree, speed seems to be an issue. My project is small at the moment so I don't know if it gets worse with the size of the project.

Sometimes when I have the mouse cursor over the package explorer the cursor icon seems to switch frequently (until the bazaar plugin is finished doing what it's doing), I don't know if this has any relevance on anything, i.e. it might just be a symptom of something else.

I would expect pressing F5 or selecting refresh from the menu in the package explorer to update the bazaar info/icons.

Revision history for this message
Guillermo Gonzalez (verterok) wrote :

Andrew,
    I'll like to known more about the enviroment you are using (platform, versions of bzr, eclipse, bzr-eclipse), and if when this happen (the attached screenshot) you get a error message in the "Error Log" view. Also if this get fixed if you colse and reopen the project.
   If this is a common behaviour of the plugin, please fill a bug about this specific issue, so we can track it appropiately.
   (About the performance see below)

Andrew, Jemsquash,
    Speed problems are a consecuence of executing bzr executable for each status calculation, bzr-eclipse is using a cache to minime the times 'bzr status' is called, If you think the time it take to calculate status is a problem, please fill a bug on this specific issue so we can track it more appropiately.

    I'm working in updating the status with F5 key (or at refresh), please fill a bug on this particular issue, as I said before, that 'll help us to keep track of all this items, and to make bzr-eclipse better.

Regards

Changed in bzr-eclipse:
status: Incomplete → Triaged
Revision history for this message
Andrew McClain (awmcclain) wrote : Re: [Bug 128423] Re: Decorators lack some features

Using OS X 10.5, Eclipse 3.2.2 and 3.3 (happens with both), using eclipse
plugin version 0.17.200712280044, Clientadapter 0.0.9.200712280044, bzr
1.2.0.

No errors in the log. Opening and closing the project actually makes things
worse; if i create a new branch I'll see a few random files decorated in the
file browser; closing and reopening will either not do anything or reset all
the decorators.

About speed: it's not that the status operation is taking a long time; it's
just that it seems to take a _very_ long time for the decorators to update
(so if I save a file, the decorator doesn't change). I think you're right,
though -- it's a caching issue.

I have a copy of the codebase, so if you give me a hint where to look, I can
help debug.

Andrew

On Sun, Feb 24, 2008 at 6:57 PM, Guillermo Gonzalez <email address hidden>
wrote:

> Andrew,
> I'll like to known more about the enviroment you are using (platform,
> versions of bzr, eclipse, bzr-eclipse), and if when this happen (the
> attached screenshot) you get a error message in the "Error Log" view. Also
> if this get fixed if you colse and reopen the project.
> If this is a common behaviour of the plugin, please fill a bug about
> this specific issue, so we can track it appropiately.
> (About the performance see below)
>
> Andrew, Jemsquash,
> Speed problems are a consecuence of executing bzr executable for each
> status calculation, bzr-eclipse is using a cache to minime the times 'bzr
> status' is called, If you think the time it take to calculate status is a
> problem, please fill a bug on this specific issue so we can track it more
> appropiately.
>
> I'm working in updating the status with F5 key (or at refresh),
> please fill a bug on this particular issue, as I said before, that 'll
> help us to keep track of all this items, and to make bzr-eclipse better.
>
> Regards
>
> ** Changed in: bzr-eclipse
> Status: Incomplete => Triaged
>
> --
> Decorators lack some features
> https://bugs.launchpad.net/bugs/128423
> You received this bug notification because you are subscribed to Bazaar
> Plugin for Eclipse.
>
> Status in Bazaar Plugin for Eclipse: Triaged
>
> Bug description:
> Sharebear reported the following issues in a Question:
>
> 1) No decorators on directories
> 2) Missing the last user and revision of edit (see subclipse for example)
> 3) Icons do not update on save (showstopper for me) or on refresh of
> project, the only way to trigger an update is to perform a bazaar action or
> click on another file in the same directory in the Package explorer (Note:
> the directory isn't enough, I must click on an artifact at the same
> directory level).
>
> 3 makes it difficult to see what files I need to consider committing and
> makes it difficult to use for now. Combined with the mylyn functionality
> this could easily lead to files being missed or unintentionally committed if
> I don't pay close attention to the file list in the commit dialog
>

--
Tap the collective.
http://www.fluther.com

Revision history for this message
Guillermo Gonzalez (verterok) wrote :

Thanks for the input.
I cant' reproduce the problem in OS X 10.4, same Eclipse and bzr version.
In order to be able to reproduce the error:
 * What is the layout of the branch? (are you using nested branches?)
 * Also what is the status (using the CLI)?

To debug the decorators you should start in two classes and navigate from there:
  * org.vcs.bazaar.eclipse.ui.decorator.BazaarLightweightDecorator
  * org.vcs.bazaar.eclipse.core.listeners.FileModificationManager

BazaarLightweightDecorator do the decorations, FileModificationManager handle the status change events.

If you need more guidance about the code, don't doubt in ask (there is no problem to contact me via IM or at #bzr when I'm around IRC)

Regards.

Revision history for this message
Mirko Friedenhagen (mfriedenhagen) wrote :

Hello,

I am running Mac OS X 10.5.2 with the latest patches, bzr-1.3, Eclipse 3.3.1.1 and the same bzr-eclipse versions as Andrew on an iBook (1.2 GHz, 1.2 GB RAM) and bzr-eclipse really feels slow to me. When bzr-eclipse is running, I see a lot of bzr processes being forked in the Activity-Monitor (or top) and my notebook is really hogged by these.

I kind of worked around this behaviour by implementing a small HTTP-bzr-service and a small curl-script which is invoked instead of bzr. This really speeds up a lot of operations. However some are not working correctly (bzr nick as it looks in the cwd) and quoting the message of a commit isn't implemented right now.

I already had a look into the bzr eclipse code and I think it should be possible to start up such a bzr-service for every project being shared with bzr and executing commands via java.net.URL.

If anyone is interested in the code, I put a copy of my bzr-repo at:

http://friedenhagen.net/bzr/bzr-service/.bzr

Best Regards
Mirko

Revision history for this message
Mirko Friedenhagen (mfriedenhagen) wrote :

I started up bzrweb at http://friedenhagen.net:8001/log/bzr-service/head

Regards
Mirko

Revision history for this message
Guillermo Gonzalez (verterok) wrote :

Mirko,
   You are right about the performance, in OS X, G4 1.33GHz and 1GB it crawls :-(
   But I have been working on this issue, and I have a (not yet finished) working version that minimze the calls to bzr (I cut off almost a half of the unneeded calls :-) )
   Thanks a lot for starting this, just whant to let you know some related topics:
   * at the last Sprint we talked about a XML service: http://bazaar-vcs.org/SprintLondonMarch08/Brainstorms#head-a1f0e77d00a77e7f4634334e12dd5703e44fd8aa
  * John made (some time ago) a bzr-service, maaybe you can continue and improve his work: https://code.launchpad.net/bzr-service

Regards

Revision history for this message
Guillermo Gonzalez (verterok) wrote :

I just made a build of the current trunk (it's at the sourceforge update-site), please try this out and see if it performance improved for your setup (I'm sure it should)

Cheers

Revision history for this message
Mirko Friedenhagen (mfriedenhagen) wrote :

Am 15.04.2008 um 01:02 schrieb Guillermo Gonzalez:
> Mirko,
> You are right about the performance, in OS X, G4 1.33GHz and 1GB
> it crawls :-(
> But I have been working on this issue, and I have a (not yet
> finished) working version that minimze the calls to bzr (I cut off
> almost a half of the unneeded calls :-) )
> Thanks a lot for starting this, just whant to let you know some
> related topics:
> * at the last Sprint we talked about a XML service: http://bazaar-vcs.org/SprintLondonMarch08/Brainstorms#head-a1f0e77d00a77e7f4634334e12dd5703e44fd8aa
> * John made (some time ago) a bzr-service, maaybe you can continue
> and improve his work: https://code.launchpad.net/bzr-service

Thanks a lot for your links. I just got bzr-service working after
correcting some import errors. Now using the service and the supplied
C-program, your newest plugin-version feels really fast. I was going
for the HTTP solution as I felt more comfortable using a standard way
of en- and decoding the request instead of pack and unpack. I now
applied the idea of changing the pwd in my http-server but will look
into improving John's solution.

Best Regards
Mirko

Revision history for this message
Guillermo Gonzalez (verterok) wrote :

Y're welcome
Nice! (in my G4 I'm also using bzr-service)
Yes, it's more snappy that the previous versions, I have some ideas that *maybe* can improve it a bit more.

Cheers,

Revision history for this message
Guillermo Gonzalez (verterok) wrote :

So, I'll mark this bug a fix commited (if it's ok).
If anyone get into this issue please reopen the bug.

Changed in bzr-eclipse:
status: Triaged → Fix Committed
Changed in bzr-eclipse:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Related questions

Remote bug watches

Bug watches keep track of this bug in other bug trackers.