[phobos] Why ConvError and not ConvException?
Jonathan M Davis
jmdavisProg at gmx.com
Tue Nov 16 16:29:03 PST 2010
On Tuesday, November 16, 2010 13:01:47 David Simcha wrote:
> Once again, *please* put the aliases in for the old names for a few
> releases. I'm getting really, really sick of having my code break every
> release now that D2 is supposed to be "stable" and I think other D users
> are starting to feel the same way.
I think that it should be general policy to use deprecated aliases where
appropriate to reduce code breakages due to changes in Phobos, but since we're
far from API stability, we're going to get breakages, and I really don't think
that it's clear outside of anyone really paying attention to D development that
Phobos is as unstable and immature as it is. It's definitely improving, but
backwards incompatible changes do occur and will continue to occur for at least
a little while regardless of the state of the compiler (e.g.
std.file.lastModified() will presumably changed to return a std.datetime.SysTime
was std.datetime has been approved, and you _can't_ make that change in a way
that supports a deprecated backwards-compatible solution since it's only the
return value that changes).
In any case, I think that your point is a good one that we should try and only
break code old code when it makes good sense to do so, and deprecated aliases
can be a good way to reduce such breakages. Eventually, we'll likely have to
move to a release cycle with major and minor releases where such breakages are
only permitted in major releases, but that's a ways off yet I think.
- Jonathan M Davis
More information about the phobos
mailing list