PR# 14192 Warning code: Obsolete Class

Problem Report Summary
Submitter: ericbe
Category: WEL
Priority: Medium
Date: 2008/04/09
Class: Bug
Severity: Non-critical
Number: 14192
Release: 6.2.7.2969
Confidential: No
Status: Analyzed
Responsible:
Environment: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; InfoPath.1; .NET CLR 3.0.04506.648)
Synopsis: Warning code: Obsolete Class

Description
Can this warning be fixed:

~~~~~~~~~~~~~~~~~~~~~~~~~
Warning code: Obsolete Class
Warning: type relies on obsolete class.
What to do: update to new class at your earliest convenience. The
  class is still available but may be removed in the future.

Class: WEL_GDIP_IMAGE
Obsolete class: WEL_GDIP_IMAGE_FORMAT
Obsolete message: Use {WEL_GDIP_IMAGE_ENCODER} instead
To Reproduce

										
Problem Report Interactions
From:manus_eiffel    Date:2008/05/01    Download   
Forgot that we had the metrics tool to locate those obsolete classes/features.

From:manus_eiffel    Date:2008/05/01    Download   
For the record it was correctly done, that is to say no warning will be generated when calling an obsolete feature in an obsolete feature. It was just missing for classes being used in an obsolete feature.

Regardless, I think we still need a format where one can quickly locate all the obsolete classes/features in a system.

From:manus_eiffel    Date:2008/04/30    Download   
Next release should not trigger an obsolete warning when the currently processed feature is already obsolete or the class is obsolete (the later was already done, but not the former).

From:ericbe    Date:2008/04/10    Download   
OK, I understand now.

Indeed that's something that I once asked Manu a long time ago. He probably don't remember. My suggestion was that EiffelStudio doesn't report obsolete message when an obsolete feature calls another obsolete feature. I don't know if this was ever implemented or not. Here it's the same thing, but extended to obsolete classes.

Nevertheless, it is embarassing to release a library which has warnings when we compile it.

From:ted_eiffel    Date:2008/04/10    Download   
I think Larry meant that the obsolete class could not be removed because of the obsolete feature `save_image_to_file_with_format' which was not used in the library any more but compiled. I guess the compiler should be smarter to get rid of this kind of warnings.

From:ericbe    Date:2008/04/10    Download   
You are just telling me that EiffelStudio was right to report a warning. I knew that. But I don't think that it makes any good to Eiffel if ISE releases libraries containing warnings.

It can be fixed: just stop using features from obsolete classes (if it should really be obsolete), or mark this class as non-obsolete (if it should not be obsolete).

From:larryl    Date:2008/04/10    Status: Analyzed    Download   
Hi, Eric,

Because obsolete feature {WEL_GDIP_IMAGE}.save_image_to_file_with_format use the obsolete class {WEL_GDIP_IMAGE_FORMAT} in its parameter, I think this warning can’t be fixed now. Sorry.