Refactor -transition and -dip to -transition, -revert and -preview#9206
Refactor -transition and -dip to -transition, -revert and -preview#9206WalterBright merged 2 commits intodlang:masterfrom
Conversation
|
Thanks for your pull request, @wilzbach! Bugzilla referencesYour PR doesn't reference any Bugzilla issue. If your PR contains non-trivial changes, please reference a Bugzilla issue or create a manual changelog. Testing this PR locallyIf you don't have a local development environment setup, you can use Digger to test this PR: dub fetch digger
dub run digger -- build "master + dmd#9206" |
Unfortunately, things are a bit inconsistent at the moment. |
Hmm, how about adding a new We really need to find a good & managed model to enable transitions. Most of these transition flag have been there for many years ... |
|
How about |
|
@wilzbach you have a good point. An idea:
|
aec9c7b to
4f43dff
Compare
9358e5e to
8cdb927
Compare
| buf ~= `params.`~t.paramName~` = true;`; | ||
| buf ~= "break;"; | ||
|
|
||
| foreach (t; features) |
There was a problem hiding this comment.
Or maybe sth. like:
| foreach (t; features) | |
| foreach (t; mixin("Usage."~name~"s")) |
Though this would make it even more assumptive.
I really like the idea and went ahead and implemented it. All old flags have been kept and will continue to work (even without a deprecation or warning message).
Even if we enable a -preview by default, people might have been using
I think for most non-DMD developers With the same motivation, I didn't keep the keep bugzilla numbers when moving the flags to |
8cdb927 to
1960b6b
Compare
| if (*ps != '=') | ||
| return false; | ||
|
|
||
| if (strcmp(ps + 1, "?") == 0) |
There was a problem hiding this comment.
This can use isHelpOption once #9205 has been merged.
I think we're too late for that, but we could have That being said, here's what a
Though all of these can be simply enabled by default after a few months of testing in the wild. The "good stuff" like |
dcf4cfa to
f3e33d0
Compare
f548f53 to
39e86e7
Compare
|
As #9217 refactors the way CLI options with arguments and usage pages are handled, we should probably wait with this until that one has been merged -> setting Blocked on this for now. Though this doesn't mean that we can't already reach a consensus on whether all |
39e86e7 to
9fefd25
Compare
9fefd25 to
2f66b77
Compare
|
Blocking #9331 |
What is this PR blocked on? It's passing all CIs, no? |
Nothing, this is blocking something else. |
Yeah, that's my take too, so why not merge it and unblock the other PR then? |
|
At the time I wrote that, this PR was not passing everything. I see that it is now. |
|
After thinking a bit about it, I realized that we should probably provide a changelog entry for this -> #9336 |
|
Phobos in the compiler? @wilzbach why? |
-transition=noDIP25switch already)-transition=markdownimho it belongs in-transitionto. However, an argument could be made that there should be an-experimentor-unstableflag for such experimental features.Motivation:
-std=d20(or similar flag) which will enable a bunch of these transitions by default-transitionwe unify the user interface and also show the clear intent that they will be the default eventuallyI could very easily add tests like in #9205 (though I would prefer to append to this file).