deprecate deprecated?
monarch_dodra
monarchdodra at gmail.com
Mon Nov 12 03:09:34 PST 2012
On Sunday, 11 November 2012 at 21:14:10 UTC, Jonathan M Davis
wrote:
> Agreed. Otherwise, you can't deprecate something without
> immediately breaking
> code, which means that if you're trying to never immediately
> break people's
> code when making a change (which is the position that Phobos is
> in), then you
> can't use deprecated.
>
> [SNIP]
>
> - Jonathan M Davis
The problem with this approach is that the step after marking
something deprecated is removing the function. So people using
something deprecated go from
- "warning: Don't use this" (yeah... whatever...)
- "Your function has disappeared". (Oh oh)
At this point, they're fucked bad because they can't even bypass
the problem with an extra -d command line option, which (in my
eyes) is "pretty please, I'll change it, just give me a bit more
time".
IMO, there *NEEDS* to be some way of saying
- "this _will_ be deprecated soon (marked for deprecation), you
should consider migrating to something else. here is you warning."
and
- "This is already deprecated. Here is your error. You can
*still* use it with -d, but migrate away soon, because this
function is about to disappear"
----
If you can't make this distinction, then you also run into the
danger of not breaking anybody's code when deprecating stuff, but
having to keep deprecated stuff around forever.
More information about the Digitalmars-d
mailing list