On 17.08.2011 14:24, Igor Stasenko wrote:
> On 17 August 2011 14:14, Philippe Marschall <kus...@gmx.net> wrote:
>> On 16.08.2011 19:51, Igor Stasenko wrote:
>>> Hello,
>>>
>>> i know that we're already having #deprecated: , #deprecated: on: in: etc
>>>
>>> but one thing what i think useful about annotations that it is a way
>>> to indicate that method is deprecated without showing a warning.
>>>
>>> The problem with using messages, that if you deprecate something which
>>> used quite often by code,
>>> you will be spammed with deprecation warnings all the time.
>>>
>>> So,  i think that in addition to messages, we can use these
>>> annotations, to indicate deprecated methods, in places where showing
>>> warning(s) are not feasible
>>> (for instance you cannot deprecate Deprecation>>showWarning, because
>>> it will lead to infinite recurtion)
>>>
>>> There could be variations in same way as with messages:
>>>
>>> <deprecated>
>>> <deprecated: '...' on: '..' in: '..'>
>>>
>>> etc.
>>>
>>>
>>> What you think?
>>
>> How would that help anybody to find out whether they are relying on
>> deprecated methods? This seems like a big step backwards form a user
>> point of view. Suddenly a method is gone and you didn't get a warning.
> 
> Yes. You get an error instead of warning :)

Right, I get an MNU. If this is your "solution" then you don't need
deprecation at all, you can just straight out remove the method. Which
I'm not against, don't get be wrong. But in this case I really don't see
the point in the pragma.

>> You are you supposed to check for deprecated methods? Debug each and
>> every one of your message sends?
>>
>> Yeah you could write tools support but we both know this isn't gonna happen.
>>
> 
> I understand your concerns. I don't like this too.
> But what choice you have if you have to deprecate something which used
> a lot? If you put a message there, you will get an
> image, which will show you warnings every time you doing something.
> This will piss off users up to the point that for comfortable work,
> they won't have other choice but to disable deprecation warnings,

Been like this for years.

> which means that at the end we will have same issue:
> once you disable it, you cannot see anymore whether your code using
> deprecated stuff or not.

I don't do that because I have to either fix that code or inform some
other person that they need to fix their code.

Cheers
Philippe


Reply via email to