Hey,
This is something I've come across several times before when deprecating functions: people want different behaviour with regard to the warnings they
get.
Typically what people want can be split into two groups:
Weak deprecation: The function is documented as being deprecated but no wfDeprecated is put in
...
Strong deprecation: The function is documented as being deprecated and wfDeprecated is put in.
...
It's clear each that for different people the same approach might not be preferred. Discussion arises when some people do not want something to be strongly deprecated. What about introducing a soft deprecation function (ie wfSoftDeprecated) that calls wfDeprecated with an additional argument specifying it's a soft deprecation call, which by default does not result
in any
warnings or notices, but can by means of some setting be turned on by those
that
want to get them? Such a setting could either be a boolean, int (ie show warnings above this level) or some whitelist of softly deprecated functions
one
wants to get warnings for. Seems to be pretty trivial to accommodate both
groups
here, and get rid of the silly discussions.
Any thoughts?
Cheers
Definitely think this is a good idea. We could name the option $wfShowSoftDeprecated or something similar, but not nearly as long. I noticed that we have a $wgDebugLogFile configuration option. Right now, from what I can tell, it appears to only log SQL errors. I wonder if it might be a good idea to log both soft and hard deprecated warnings there as well.
Thank you, Derric Atzrott