Jump to page: 1 2
Thread overview
Why no stable LTS releases?
Jun 12, 2021
sighoya
Jun 12, 2021
Imperatorn
Jun 13, 2021
bahhratt
Jun 13, 2021
Bastiaan Veelo
Jun 14, 2021
Mathias LANG
Jun 14, 2021
Imperatorn
Jun 14, 2021
Iain Buclaw
Jun 14, 2021
Iain Buclaw
Jun 14, 2021
mw
Jun 14, 2021
Guillaume Piolat
June 12, 2021

I've heard the complaint all the time, and I'm asking myself what the problem actually is with stable long term releases?
It would be better not to break every two months and instead have schedules for bugfixes, non-breaking features and breaking features.
It very much resembles that idea given in: https://gist.github.com/mdparker/ab61a1309752905cf93acb2653c50beb
Btw, what is actually the state of this dip?

Your opinions?

June 12, 2021

On Saturday, 12 June 2021 at 13:06:20 UTC, sighoya wrote:

>

I've heard the complaint all the time, and I'm asking myself what the problem actually is with stable long term releases?
It would be better not to break every two months and instead have schedules for bugfixes, non-breaking features and breaking features.
It very much resembles that idea given in: https://gist.github.com/mdparker/ab61a1309752905cf93acb2653c50beb
Btw, what is actually the state of this dip?

Your opinions?

It would need some discipline to get it to work, but is probably needed

June 13, 2021

On Saturday, 12 June 2021 at 13:06:20 UTC, sighoya wrote:

>

I've heard the complaint all the time, and I'm asking myself what the problem actually is with stable long term releases?
It would be better not to break every two months and instead have schedules for bugfixes, non-breaking features and breaking features.
It very much resembles that idea given in: https://gist.github.com/mdparker/ab61a1309752905cf93acb2653c50beb
Btw, what is actually the state of this dip?

Your opinions?

D is Walter's hobby project and he just enjoys playing with it. He doesn't seem interested in having a clear roadmap, LTS releases, breaking backward compatibility for sake of evolution, etc.

June 13, 2021

On Saturday, 12 June 2021 at 13:06:20 UTC, sighoya wrote:

>

I've heard the complaint all the time, and I'm asking myself what the problem actually is with stable long term releases?

Quite likely the only problem is a lacking champion. As soon as somebody steps up and proclaims: “I’m maintaining an LTS”, forks a release and starts back porting fixes, I’m quite sure we’ll have an LTS.

— Bastiaan.

June 14, 2021

On Saturday, 12 June 2021 at 13:06:20 UTC, sighoya wrote:

>

I've heard the complaint all the time, and I'm asking myself what the problem actually is with stable long term releases?
It would be better not to break every two months and instead have schedules for bugfixes, non-breaking features and breaking features.
It very much resembles that idea given in: https://gist.github.com/mdparker/ab61a1309752905cf93acb2653c50beb
Btw, what is actually the state of this dip?

Your opinions?

We have an LTS. It's called GDC. Iain have done a great job at maintaining it. You see it in the upstream repositories as dmd-cxx (yes it's still using C++ for the frontend).

June 14, 2021

On Monday, 14 June 2021 at 01:47:51 UTC, Mathias LANG wrote:

>

On Saturday, 12 June 2021 at 13:06:20 UTC, sighoya wrote:

>

I've heard the complaint all the time, and I'm asking myself what the problem actually is with stable long term releases?
It would be better not to break every two months and instead have schedules for bugfixes, non-breaking features and breaking features.
It very much resembles that idea given in: https://gist.github.com/mdparker/ab61a1309752905cf93acb2653c50beb
Btw, what is actually the state of this dip?

Your opinions?

We have an LTS. It's called GDC. Iain have done a great job at maintaining it. You see it in the upstream repositories as dmd-cxx (yes it's still using C++ for the frontend).

Well, this is actually true. But I get the feeling he meant dmd?

June 14, 2021

On Monday, 14 June 2021 at 07:10:41 UTC, Imperatorn wrote:

>

On Monday, 14 June 2021 at 01:47:51 UTC, Mathias LANG wrote:

>

On Saturday, 12 June 2021 at 13:06:20 UTC, sighoya wrote:

>

I've heard the complaint all the time, and I'm asking myself what the problem actually is with stable long term releases?
It would be better not to break every two months and instead have schedules for bugfixes, non-breaking features and breaking features.
It very much resembles that idea given in: https://gist.github.com/mdparker/ab61a1309752905cf93acb2653c50beb
Btw, what is actually the state of this dip?

Your opinions?

We have an LTS. It's called GDC. Iain have done a great job at maintaining it. You see it in the upstream repositories as dmd-cxx (yes it's still using C++ for the frontend).

Well, this is actually true. But I get the feeling he meant dmd?

The front-end used by GDC is DMD. :-)

You can generally expect any given major release of GCC to support and backport any fixes to the version of DMD it's sporting for 3 years.

Do we want to re-upstream patches to a GCC release branch into a DMD "LTS" branch? That can be a topic for beerconf or the next quarterly meeting.

June 14, 2021

On Saturday, 12 June 2021 at 13:06:20 UTC, sighoya wrote:

>

Your opinions?

Use an earlier version of the compiler.
Otherwise I'm not seeing all the breakage people complain about...

June 14, 2021

On Monday, 14 June 2021 at 09:18:19 UTC, Iain Buclaw wrote:

>

The front-end used by GDC is DMD. :-)

You can generally expect any given major release of GCC to support and backport any fixes to the version of DMD it's sporting for 3 years.

Sadly, LDC was much easier to compile on Mac than GCC the last time I tried. If this is changed then it makes a lot of sense to view GDC as a stable release if it is stable over a period of 3+ years.

But then you have to be quite picky about which release of DMD you embrace, and not try to follow the latest release because people demand it (before it has proven itself as free of regressions).

Another issue is that of libraries an "tutorialish" starting points (like a 2D game app on github that is a startingpoint for writing your own games).

They need a clear set of feature-profiles, so that it is clear whether a compiler upgrade will break or not break an older code base. People seem to complain about this regularly in the forums; they found something interesting on github, try to compile it and get lots of errors.

What is the difference between GDC and LDC? Off the top of my head:

  1. I assume dcompute
  2. LLVM intrinsics

Are there differences between GDC and LDC inline assembly?

Map out all these "sets of features" and how future/backwards compatible they are and define a manifest-file-standard for expressing it in repos and we can talk about stability.

June 14, 2021

On Monday, 14 June 2021 at 12:13:40 UTC, Ola Fosheim Grøstad wrote:

>

On Monday, 14 June 2021 at 09:18:19 UTC, Iain Buclaw wrote:

>

The front-end used by GDC is DMD. :-)

You can generally expect any given major release of GCC to support and backport any fixes to the version of DMD it's sporting for 3 years.

Sadly, LDC was much easier to compile on Mac than GCC the last time I tried. If this is changed then it makes a lot of sense to view GDC as a stable release if it is stable over a period of 3+ years.

The darwin port maintainer and I have been testing various OS X versions and hardware combinations.

  • PPC almost passes cleanly save for some unknown deadlock in druntime when printing the stack trace of an uncaught exception.
  • Anything older than OS X 10.5 or 10.6 generally won't work.
  • OS X 10.6 through to 10.8 mostly pass, but may require you to stub out missing symbols present only in newer versions.
  • OS X 10.9 through to 10.15 pretty much all pass (and the Cirrus CI pipelines I've added have been keeping tabs on this).
  • OS X 11 reported tests that started failing again, but having checked DMD, and I can safely say that it fails for all compilers.
>

But then you have to be quite picky about which release of DMD you embrace, and not try to follow the latest release because people demand it (before it has proven itself as free of regressions).

I think people would prefer to have the latest over regression-free. Having a release branch open for 3 years should allow plenty of time for all regressions to be plugged long after DMD has moved on to the next major release.

>

Another issue is that of libraries an "tutorialish" starting points (like a 2D game app on github that is a startingpoint for writing your own games).

They need a clear set of feature-profiles, so that it is clear whether a compiler upgrade will break or not break an older code base. People seem to complain about this regularly in the forums; they found something interesting on github, try to compile it and get lots of errors.

What is the difference between GDC and LDC? Off the top of my head:

  1. I assume dcompute
  2. LLVM intrinsics
  1. ldc.attributes vs. gcc.attributes. I've kept it in sync with LDC, but GDC has a few more attributes available - mostly alternative names though to match GCC equivalents.
>

Are there differences between GDC and LDC inline assembly?

Yes, there are. Though LDC does support GDC-style asm nowadays.

« First   ‹ Prev
1 2