On Wed, 17 Aug 2016 14:28:24 +0000, TencoDK wrote: > On Wednesday, 17 August 2016 at 14:19:08 UTC, Dejan Lekic wrote: >> On Wednesday, 17 August 2016 at 12:57:59 UTC, TencoDK wrote: >>> >>> I dropped D once about a year ago because the new DMD version has >>> broken backward compatibility. Some libraries have stopped >> >> You could have used STABLE DMD (v1), right? Assuming that you >> *intentionally* used the unstable (v2) DMD, I would say it is unfair to >> complain... > > That make sense. Though, I think, this must be a common misunderstanding > among newcomers. > D1 seems more like "an old, deprecated alpha version with support > dropped a long time ago".
Far from alpha. But it's deprecated, and support for it ended in 2012. code.dlang.org shows four projects that support D1. You can't find any information on D1 at dlang.org -- no downloads, changelog, spec, anything. There is no official, simple way to use a library from an old D version. Dub defaults to building everything with the system D compiler. New features and bugfixes provide an incentive to use the latest compiler version. The effect of it is that, if you have a library, it needs to support the most recent D version. If you have the time, you can support parallel branches for several versions of D, but that's laborious, so most people mix library feature development with language change updates. This is true even of incremental updates -- if I want to support a company that standardized on DMD 2.044 as well as the majority who are on DMD 2.070 and higher, that's probably going to mean two branches of development. D1 and D2 even more so.
