Reliability of refactorings?

Hi,
I am using build 896. I noted that some non-critical operations were
performing unreliably:

  • CtrlShiftSpace (Type aware completion)sometimes doesn't find appropiate

methods although they exist

  • Sometimes the editor doesn't "realize" a method in a class implements or

overload a method from a superclass, causing the class to be signaled as
not implementing some abstract method

But recently I ran into a more severe problem: a simple refactoring (rename
a class) did not perform well: my class got its name changed, and a few
references also, but some references were left untouched.

Are these problems JetBrains is aware of, or should I try to reproduce them
and file them?
Guillaume

7 comments
Comment actions Permalink

All listed problems (if they really exist) are surely bugs. Please do submit
them into the tracker. Of course there should be something more concrete
than 'sometimes' in order we're capable to process them.

--

Best regards,
Maxim Shafirov
JetBrains, Inc / IntelliJ Software
http://www.intellij.com
"Develop with pleasure!"


"Guillaume Pothier" <gpothier@free.fr> wrote in message
news:bide3h$oda$1@is.intellij.net...

Hi,
I am using build 896. I noted that some non-critical operations were
performing unreliably:

  • CtrlShiftSpace (Type aware completion)sometimes doesn't find

appropiate

methods although they exist

  • Sometimes the editor doesn't "realize" a method in a class implements or

overload a method from a superclass, causing the class to be signaled as
not implementing some abstract method

>

But recently I ran into a more severe problem: a simple refactoring

(rename

a class) did not perform well: my class got its name changed, and a few
references also, but some references were left untouched.

>

Are these problems JetBrains is aware of, or should I try to reproduce

them

and file them?
Guillaume



0
Comment actions Permalink
  • Sometimes the editor doesn't "realize" a method in

a class implements or
overload a method from a superclass, causing the
class to be signaled as
not implementing some abstract method


I've seen it too, only once though (#896). Suddenly for many classes IDEA stopped seeing that some methods overload or implement (and as a result, "this class doesn't implement abstract methods" errors). No exceptions. After I restarted IDEA, everything was ok again.


Timur

0
Comment actions Permalink

Timur Zambalayev wrote:
>> * Sometimes the editor doesn't "realize" a method in a class
>> implements or overload a method from a superclass, causing the
>> class to be signaled as not implementing some abstract method


I've seen it too, only once though (#896). Suddenly for many classes
IDEA stopped seeing that some methods overload or implement (and as a
result, "this class doesn't implement abstract methods" errors). No
exceptions. After I restarted IDEA, everything was ok again.


I saw it too, at work today. I haven't sent in a bug report yet since I
wanted to try to reproduce it and I haven't had the time yet.

What I did was clone three different classes (F5) and change the
signature of one method -- I don't remember the order. In any case, for
each of the cloned classes, IDEA didn't realize one of the methods was
actually an override of a superclass method.

I haven't restarted IDEA on that computer yet, but I just tried to
reproduce it at home and failed.

0
Comment actions Permalink

I noticed in very early aurora builds that the Undo feature after renaming a class would totally mess up most references to the class. It would insert the old class name a few characters before the renamed class name, so the resulting code (after renaming OldClass to RenamedClass) would look like

public claOldClassamedClass {

I haven't seen this lately, though.

0
Comment actions Permalink

>

  • CtrlShiftSpace (Type aware completion)sometimes doesn't find appropiate

methods although they exist


This may be this one http://www.intellij.net/tracker/idea/viewSCR?publicId=14367
if it is in the context of a return statement. Already marked as fixed.

  • Sometimes the editor doesn't "realize" a method in a class implements or

overload a method from a superclass, causing the class to be signaled as
not implementing some abstract method


I've seen similar behavior after the Change Method Signature refactoring
with a very similar stack trace as here:
http://www.intellij.net/tracker/idea/viewSCR?publicId=15056
Also marked as fixed.


Sascha


0
Comment actions Permalink


What bugs me the most, is the LVCS unability to undo some simple
changes, and justify it by a laughable
"Cannot undo. Some files were changed"
, even after a simple change in one file.
see : http://www.intellij.net/tracker/idea/viewSCR?publicId=12102

Some time ago, a /Eugene/ - or was it a /Maxim/ ? - mentioned a
possible internal data corruption, as a probable source of problem.

Alain

0
Comment actions Permalink

In article <bide3h$oda$1@is.intellij.net>,
Guillaume Pothier <gpothier@free.fr> wrote:

But recently I ran into a more severe problem: a simple refactoring (rename
a class) did not perform well: my class got its name changed, and a few
references also, but some references were left untouched.

Are these problems JetBrains is aware of, or should I try to reproduce them
and file them?


Speaking of refactoring bugs, this one:

<http://www.intellij.net/tracker/idea/viewSCR?publicId=12815>

has been open for 3 months, and this bug:

<http://www.intellij.net/tracker/idea/viewSCR?publicId=7580>

has been open for 9 months. Luckily, they are relatively rare.

0

Please sign in to leave a comment.