Phobos - breaking existing code
Mike via Digitalmars-d
digitalmars-d at puremagic.com
Fri Nov 28 17:27:05 PST 2014
On Friday, 28 November 2014 at 23:33:54 UTC, Walter Bright wrote:
> Just for fun, I've decided to try and get MicroEmacs in D added
> to the dub registry. The last time it compiled was 2 years ago.
>
> I wound up with at least a dozen references to Phobos names
> that have disappeared.
Only 12? That's pretty damn good.
No corrective action was indicated, just
> "undefined symbol". I have to go refigure out what the code was
> trying to do, and go poking through the Phobos documentation to
> see what will work today.
>
> I know there's been a lot of "break my code" advocacy lately,
> but this code was only 2 years old.
I don't expect any 2 year old software to work with the latest
tools. All of my products are tied to the compiler they are built
with. I don't upgrade until I'm ready to allocate resources to
refactoring and testing. I'm still using Visual Studio 6.0 on
some projects.
>
> I fully understand how unfriendly this is to users and how
> discouraging it can be to have their recently working code
> shattered and scattered. We need to do a lot better.
Users' migration to the latest tools is in their hands to handle
how they wish. It's their responsibility.
* They don't have to upgrade.
* There are beta cycles for them to test with to mitigate risk
and inform maintainers of problems.
* The project is open source, and developed right out in the
open, so all changes are documented, the source code is
available, and users have the opportunity to influence the
outcome.
* Each version is segregated into its own branch, and with diff
tools, all changes can be seen relatively easily.
* I could go on.
I'm not buying the argument that D shouldn't evolve because users
are carelessly upgrading their tools and expecting everything to
just work.
Mike
More information about the Digitalmars-d
mailing list