Community
Participate
Working Groups
In 3.3, if you delete a file from a project you got the dialog asking "Are you sure you want to delete "xxx" from the file system?". In 3.4, it asks "Are you sure you want to delete "xxx"?". We feel that this is an important change because it's not clear, especially for users coming from other IDE's, that the file will actually be deleted from the file system. in many other IDE's like Visual Studio, deleting a file only deletes it from the project itself. I know it sounds trivial, but we've already run into some customers complaining about there files going missing even with the 3.3 dialog. :) Can we please change the text back to how it was?
I agree. The previous wording was carefully crafted for that reason (see bug 29034). I don't know when or why this regressed.
I would guess somewhere around 3.4 M2/M3. The issue is located in ltk.
(In reply to comment #2) Probably related to bug 205805, bug 206604.
Not for 3.4
(In reply to comment #4) > Not for 3.4 > Why is it too late for a simple label change for 3.4? Also, I'm curious why this is assigned to JDT. This is in the platform isn't it? I don't even have the JDT installed.
The fix is in platform/ltk which which is owned by JDT UI. We're in 3.4 RC4 and should only fix show stoppers and blockers. I don't think this qualifies for this, even if it's a trivial fix. There are many other wizards that only write 'delete'. We will fix it for 3.4.1 or 3.5.
(In reply to comment #6) > The fix is in platform/ltk which which is owned by JDT UI. > > We're in 3.4 RC4 and should only fix show stoppers and blockers. > I don't think this qualifies for this, even if it's a trivial fix. There are > many other wizards that only write 'delete'. > We will fix it for 3.4.1 or 3.5. > I understand it's late in the release cycle, but I really do feel that this is more important than it may seem. Just about anybody using Eclipse is coming from some other IDE. Most of those other IDE's delete files from the project and not the file system. This is a big issue for new Eclipse users. If this were some code change then I could understand not wanting to address it in 3.4, but for just being a label, it seems silly to put it off. John/Szymon, what are your thoughts on this?
Normally I would agree with Martin that this is a minor issue and not worth fixing at this point. However, since it seems to be very important to some of our community, and it is a very safe change, I think it's worth fixing it. We are talking about potential loss of user data if they misunderstand the semantics of delete.
Unless we don't actually know whether the file is going to be deleted from the file system, I agree with John: We should update the string.
Strictly speaking, we actually don't know if we are deleting from the file system. Implementors can hook in a EFS and the delete might work on something else. UI differentiates between 'Delete' and 'Remove'. Delete typically removes something physically. There are many other wizards in the JDT land which only say 'delete'. And all wizards offer 'Undo'.
(In reply to comment #10) > Strictly speaking, we actually don't know if we are deleting from the file > system. Implementors can hook in a EFS and the delete might work on something > else. But this "something else" is a file system too, right?
EFS can potentially map a resource to an entry in a database, to a remote server, to a file in an archive...
(In reply to comment #12) > EFS can potentially map a resource to an entry in a database, to a remote > server, to a file in an archive... Right. What I'm trying to say is that db, remote server, memory etc. become file system when used in our EFS implementation. So if we have EFS based on db, we could call it db based filesystem. No matter how it is implemented, we actually delete something from this filesystem.
(In reply to comment #12) > EFS can potentially map a resource to an entry in a database, to a remote > server, to a file in an archive... > But EFS is "Eclipse File System", is it not? So "Are you sure you want to delete "foo.bar" from the file system?" is a valid question, no matter what the backend EFS implementation is. Granted, it would be better if it were to say "Are you sure you want to delete "foo.bar" from "bam.baz.zip?", but that would require an API to get the file system description from the EFS implementation. Maybe a good long term solution to the problem. But short term, changing it back to how it was for 3.4.0 is the best solution IMO. The default EFS implementation that ships with Eclipse is the local file system. So 90%+ of the users will be using the local file system? I just hate to think the first impression of Eclipse from someone moving from Visual Studio is "That damn tool deleted my *%!#@ source code!".
Created attachment 103756 [details] Snapshot of wording I am seeing in RC3 I'm confused. What I'm seeing is the wording "Are you sure you want to delete *file*( "testfile.txt"? (my emphasis) Which is not what it used to be, but differs from what's reported. The use of the word 'file' in "delete file 'x.y'?" would likely make me think that the thing on disk is being deleted. But I agree the previous wording was stronger, with the rewording providing no wider usage at the cost of more ambiguity. So ok with me to revert it for 3.4. However, that wording is still a problem WRT EFS. Unless EFS supplied the string though, I think all you can do is call it a file or a file system. What do I get in Properties for the Type field if its backed by a DB?
It seems intuitive to us that "delete" means delete from the file system, but clearly for users coming from other tools this isn't the case. See for example bug 28995 comment 0 and bug 29034 comment 2 for angry users who thought otherwise and lost work as a result. Undo would help them if they realized the problem quickly enough before their undo stack had conflicting changes, but it's not ideal.
This discussion has been good. Based on the comments, I believe we should revert the wording to what it said in 3.3.
Ok, I'll provide a patch. Regarding comment 15 from Kevin: It depends if you call the action from a Java project explorer or from the navigator or from a non-Java project in the common navigator. There are several implementors of the 'delete' action. My fix will just cover the default file/folder delete action provided by the platform.
Created attachment 103769 [details] patch
Szymon and Kevin, can you review?
+1 for 3.4RC4. Fix is good and restores 3.3.2 wording.
Created attachment 103784 [details] patch Improved patch that also brings back the labels of 3.3 regarding linked resources. Markus, can you re-review? Mike, veto if you don't want that. But my understanding is that we want to be identical to 3.3.
The new patch is obviously more work than would be ideal at this point, but I like the idea of reverting all the messages. +1 as long as we all believe the patch is safe.
(In reply to comment #22) > Created an attachment (id=103784) [details] Still +1 from my side (even +1.5 now). However, the new message DeleteResourcesWizard_label_multi_linked is not nicely formatted: You should add '\n\n' before 'Selection contains linked resources.' (like it was in 3.3).
(In reply to comment #23) The latest patch looks good. It is more work, but that's good. +1.
patch released with the additional new line change as discussed > 20080605
Verified in I20080605-1800.