On Friday, 7 August 2020 at 13:24:36 UTC, Andrei Alexandrescu
wrote:
On 7/7/20 8:04 AM, Steven Schveighoffer wrote:
On 7/7/20 7:13 AM, 9il wrote:
On Tuesday, 7 July 2020 at 07:49:02 UTC, Walter Bright wrote:
On 7/5/2020 5:46 AM, Joseph Rushton Wakeling wrote:
On Sunday, 5 July 2020 at 11:07:55 UTC, 9il wrote:
There is no risk for DMD and DFL to depend on a Mir's
Boost licensed library. If something happens with Mir or
Mir change the license, DFL will be able to fork the
required code at any point in the Boost licensed part of
git history.
Can't speak for Walter or the D foundation here, but I'm
not sure the concern is really about licensing. It's about
putting in place a required dependency on code where
maintenance decisions are outside the hands of the D
Foundation.
That's right, it's not about the licensing. It's that the
DLF should control the code it distributes.
Businesses will not want to commit to a balkanized project.
The proposal is for Mir to become a central required
component of DMD and Phobos. This means it needs to become
part of the D Language Foundation.
These don't serve my business needs. DLF doesn't serve my
business needs. DLF blocks the initiatives my business needs.
For the current state of things being a part of DLF codebase
for Mir is nonsense.
Guys, this is all open source, all licensed identically. There
are ways to solve this. Practically speaking, just because DMD
depends on Mir, doesn't mean that Mir has control over how the
dependency works. DMD can depend on a specific version of Mir,
upgraded when reasonable (i.e. it should take a PR change to
DMD for upgrading which code exactly is depended on) and if
something changes in the future, you can fork it, or move back
to using libc. This way, the code is only maintained in one
place unless something catastrophic happens.
In this sense, the DLF *does* control which code is used, as
well as if it were in the DMD repository itself.
We have a boost license for a reason.
FWIW it would be wisest to simply copy the code from Mir into
druntime now with due credit. It's a minimally committal
decision than can be easily revisited later. It is legal,
appropriate, and there's no shame to it any more than it is for
other projects to fork (parts of) dmd, druntime, or phobos.
What's the purpose of that? If someone needs Mir, they can just
add it as a dependency in dub. This will just be adding more
bloat to drubtime. The development surrounding D seems to have a
stigma of using external dependencies even when there is
significant benefit. I find it odd that you bring up that there's
no shame to copy and paste. It seems the only reason there simply
wouldn't be a link to a dependency is because of stigma. There's
no shame relying on another project and you don't have to copy
and paste it. Optlink, DMC, DMC's club, etc. Its gotten better
than it was, but there's no reason to even use any of those
anymore, supporting them is just a waste of time. As would
maintaining a copy pasta of Mir would be.