Bug 40921 - Task tags should be case-insensitive
Summary: Task tags should be case-insensitive
Status: VERIFIED FIXED
Alias: None
Product: JDT
Classification: Eclipse Project
Component: Core (show other bugs)
Version: 3.0   Edit
Hardware: PC Windows XP
: P3 enhancement (vote)
Target Milestone: 3.0 M8   Edit
Assignee: Philipe Mulet CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-07-29 19:18 EDT by David Witherspoon CLA
Modified: 2004-03-24 11:57 EST (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Witherspoon CLA 2003-07-29 19:18:07 EDT
I like to set up "todo" tags.  But I don't always remember how I enter them.  
Because task tags are sensitive to case, I have to define todo, TODO, ToDo, 
Todo, and so on in order to see them all.

Seems to me that task tags shouldn't care about case.
Comment 1 Philipe Mulet CLA 2003-08-06 05:28:12 EDT
Java is a case-sensitive language, so I would not change this. Same for 
javadocs. May reconsider at later stage.
Comment 2 David Witherspoon CLA 2003-12-16 11:36:06 EST
I'd like to add a little to this one.  Yes, it is true that Java is
case-sensitive, but the contents of comments are not. You are just doing some
extra processing on the contents of comments you recognize with a keyword, and
so you are free to choose how case sensitive to be.

Our group has standardized on the use of "todo" and "future" tags. Some of us
tend to use TODO and some tend to use todo.  In order to see all the todo items,
you have to define at least 4 task names:  TODO, todo, Todo, ToDo, and maybe
even tOdo, tODo, tODO, tOdO, and such for those that are mistyped. It's silly to
require that.
Comment 3 Philipe Mulet CLA 2003-12-16 11:48:08 EST
Using the same argument, you could argue that @SEE should work as @see, but it 
doesn't. 
Comment 4 David Witherspoon CLA 2003-12-17 08:56:41 EST
I disagree. JavaDoc is a defined standard within the realm of Java, with Java's
 case sensitivity.  But task tags are an artifact of Eclipse, not defined within
Java or JavaDoc.  We know they are different because /** @see other */ is
recognized, whereas // @see other or /* @see other */ are not recognized. 
However, all of these get recognized by Eclipse:
/** todo Fix me */
/* TODO Fix me  */
// Todo Fix me 

This is really a team programming issue.  I can remember to do my tags in
lowercase, but I cannot count on my team members to do so. Some of them have had
a habit of using upper or mixed case in their todo items over the years (some of
the code is quite old now). We are on a kick to ensure we are warning free, and
that all the todo's are done or removed. And so I want to see them all,
regardless of case.

I cannot think of any harm that would coming in recognize a task tag in a
case-insensitive fashion.  And I really think you'd be helping development teams
find ALL their task items.
Comment 5 Philipe Mulet CLA 2003-12-17 12:57:33 EST
I understand your argument, though I want to minimze the amount of time spent 
checking comments (for this matter Javadoc tags and TODO fall into the same 
category from my end).
Comment 6 David Witherspoon CLA 2003-12-17 13:39:44 EST
Fair enough. You might be doing more than you think.  Instead of one todo tag
and one future tag, my group members have to define about four todo tags and
three future tags to catch just the most common variations of these tags.  So in
my group, you're scanning for 7 tags in a case-sensitive fashion rather than
just 2 tags in a case-insensitive fashion.

Just something to think about...
Comment 7 Philipe Mulet CLA 2004-03-09 08:54:49 EST
Reopening
Comment 8 Philipe Mulet CLA 2004-03-09 08:55:45 EST
Adding option to make task check case insensitive. Default is still case 
sensitive.

Added regression test NegativeTest#test411
Comment 9 Philipe Mulet CLA 2004-03-09 08:55:57 EST
Fixed
Comment 10 Jerome Lanneluc CLA 2004-03-24 11:57:29 EST
UI is missing (see bug 55929) but verified that the JDT Core functionality is 
in build I200403240800.