Re: Release Candidate [was: Re: Beta 2.090.0]

2020-01-01 Thread berni44 via Digitalmars-d-announce
On Monday, 30 December 2019 at 22:41:51 UTC, Rainer Schuetze 
wrote:
The windows build is still considered "dirty", i.e.it reports 
version DMD32 D Compiler v2.090.0-rc.1-dirty.


Is there something that can be done about that?


Not sure, if that's the reason, but:

Merge https://github.com/dlang/phobos/pull/7331. This PR is 
allready merged into master (the wrong target was my mistake) and 
should have been merged into stable. This PR corrects this. (It 
fixes an issue on machines, where real==double).


Re: Release Candidate [was: Re: Beta 2.090.0]

2019-12-30 Thread Rainer Schuetze via Digitalmars-d-announce



On 30/12/2019 12:07, Martin Nowak wrote:
> On Sunday, 22 December 2019 at 15:23:32 UTC, Martin Nowak wrote:
>> Glad to announce the first beta for the 2.090.0 release, ♥ to the 48
>> contributors.
>>
>> http://dlang.org/download.html#dmd_beta
>> http://dlang.org/changelog/2.090.0.html
>>
>> As usual please report any bugs at
>> https://issues.dlang.org
>>
>> -Martin
> 
> Release candidate is live now.

The windows build is still considered "dirty", i.e.it reports version
DMD32 D Compiler v2.090.0-rc.1-dirty.

Is there something that can be done about that?


Release Candidate [was: Re: Beta 2.090.0]

2019-12-30 Thread Martin Nowak via Digitalmars-d-announce

On Sunday, 22 December 2019 at 15:23:32 UTC, Martin Nowak wrote:
Glad to announce the first beta for the 2.090.0 release, ♥ to 
the 48 contributors.


http://dlang.org/download.html#dmd_beta
http://dlang.org/changelog/2.090.0.html

As usual please report any bugs at
https://issues.dlang.org

-Martin


Release candidate is live now.


Re: Beta 2.090.0

2019-12-26 Thread berni44 via Digitalmars-d-announce
On Thursday, 26 December 2019 at 14:16:50 UTC, Steven 
Schveighoffer wrote:

DRT switches are runtime switches

./test --DRT-testmode=run-main


Aaah. Did not know about runtime switches...



Re: Beta 2.090.0

2019-12-26 Thread Steven Schveighoffer via Digitalmars-d-announce

On Thursday, 26 December 2019 at 10:20:27 UTC, berni44 wrote:

On Sunday, 22 December 2019 at 15:23:32 UTC, Martin Nowak wrote:

As usual please report any bugs at
https://issues.dlang.org


Not sure, if this is a bug, but --DRT-testmode=run-main seems 
to have no effect here.


Example:

---
import std.stdio;

unittest
{
assert(1==1);
}

void main(string[] argv)
{
writeln("X");
}
---

$> dmd -unittest -g -run test.d
1 unittests passed
$> dmd -unittest --DRT-testmode=run-main -g -run test.d


DRT switches are runtime switches

./test --DRT-testmode=run-main

What you did was to pass the DRT switch to DMD itself.

-Steve




Re: Beta 2.090.0

2019-12-26 Thread berni44 via Digitalmars-d-announce

On Sunday, 22 December 2019 at 15:23:32 UTC, Martin Nowak wrote:

As usual please report any bugs at
https://issues.dlang.org


Not sure, if this is a bug, but --DRT-testmode=run-main seems to 
have no effect here.


Example:

---
import std.stdio;

unittest
{
assert(1==1);
}

void main(string[] argv)
{
writeln("X");
}
---

$> dmd -unittest -g -run test.d
1 unittests passed
$> dmd -unittest --DRT-testmode=run-main -g -run test.d
1 unittests passed

In both cases main is not executed. I thought, in the second one 
it should...


Re: Beta 2.090.0

2019-12-25 Thread Steven Schveighoffer via Digitalmars-d-announce

On 12/23/19 4:59 PM, Per Nordlöw wrote:

On Sunday, 22 December 2019 at 23:05:20 UTC, Steven Schveighoffer wrote:

extern(C) __gshared string[] rt_options = [ "testmode=run-main"];

There are far more people who run unittests as a separate step from 
running their application. If unittests pass, then there's no 
distinguishable output from a build without unittests. I can totally 
imagine accidentally shipping code with unittests in it without 
intending to.


Thanks.

So what is now the difference between

     dub run --build=unittest

and

     dub test

?


dub test adds its own main function and unittest handler (and actually 
the function is based on the old unittest system, so it won't print the 
tests run or number of failures. It usually only works for libraries 
which don't have a main function.


-Steve


Re: Beta 2.090.0

2019-12-24 Thread Per Nordlöw via Digitalmars-d-announce

On Tuesday, 24 December 2019 at 05:59:35 UTC, Soulsbane wrote:
dub test doesn't run the actual program only unittests are far 
as I can tell.


Correct, but that is from 2.090 the behaviour of

dub run --build=unittest

aswell. This seems strange to me.

I would like to see a new built-in build target in dub, say

dub run --build=unittest-debug

, that mimics the behaviour of

dub run --build=unittest

prior to 2.090.


Re: Beta 2.090.0

2019-12-23 Thread Soulsbane via Digitalmars-d-announce

On Monday, 23 December 2019 at 21:59:42 UTC, Per Nordlöw wrote:
On Sunday, 22 December 2019 at 23:05:20 UTC, Steven 
Schveighoffer wrote:
extern(C) __gshared string[] rt_options = [ 
"testmode=run-main"];


There are far more people who run unittests as a separate step 
from running their application. If unittests pass, then 
there's no distinguishable output from a build without 
unittests. I can totally imagine accidentally shipping code 
with unittests in it without intending to.


Thanks.

So what is now the difference between

dub run --build=unittest

and

dub test

?


dub test doesn't run the actual program only unittests are far as 
I can tell.


Re: Beta 2.090.0

2019-12-23 Thread Per Nordlöw via Digitalmars-d-announce
On Sunday, 22 December 2019 at 23:05:20 UTC, Steven Schveighoffer 
wrote:
extern(C) __gshared string[] rt_options = [ 
"testmode=run-main"];


There are far more people who run unittests as a separate step 
from running their application. If unittests pass, then there's 
no distinguishable output from a build without unittests. I can 
totally imagine accidentally shipping code with unittests in it 
without intending to.


Thanks.

So what is now the difference between

dub run --build=unittest

and

dub test

?


Re: Beta 2.090.0

2019-12-23 Thread Seb via Digitalmars-d-announce

On Sunday, 22 December 2019 at 20:30:06 UTC, berni44 wrote:
On Sunday, 22 December 2019 at 19:00:15 UTC, Eugene Wissner 
wrote:
Probably differen email addresses. You can set an email 
address locally for the repository in .git/config. Or just add 
an alias: https://github.com/dlang/tools/blob/master/.mailmap


git config -l reveals only one address (which is set at global 
level; there is no local and no systemwide email address). It's 
the same I use in github. In bugzilla I use a different one, 
but I guess, that this is not relevant.


It looks like you made a commit via the GitHub UI. By default it 
uses a default generated (<...>@users.noreply.github.com) email 
address. You can change this in your GitHub user settings.


Anyhow, I went ahead and made a PR to "reduce" you to only one 
person ;-)


https://github.com/dlang/tools/pull/388

For future readers, here's how I found out the other email 
address:


$ ./contributors.d -f git "v2.075.0..master" | grep -i berni



Re: Beta 2.090.0

2019-12-22 Thread Steven Schveighoffer via Digitalmars-d-announce

On 12/22/19 8:23 PM, Mathias Lang wrote:

On Sunday, 22 December 2019 at 22:22:26 UTC, Per Nordlöw wrote:


Have I missed something or is this a known problem with dub? If so, do 
I have any alternative to brute-forcing the problem with


    dub run --compiler=dmd --build=unittest
    dub run --compiler=dmd --build=debug

which, for me, doubles my development iteration time.


If it's something common enough, I suggest just creating an alias such 
as `dubtest` which does `dub test --compiler=dmd && dub run --compiler 
--build=debug`.
Should you want to change compiler, you can make it a function that 
takes an argument.


The druntime issue with `--DRT` is something that is on the map, and 
should be fixed soon, but I can't promise it will be fixed before the 
release, as it requires a druntime fix.
Alternatively, some other bugs need to be fixed for the druntime fix to 
be truly efficient.


The solution is already available since 2.084. Dub just needs to ignore 
DRT options.


See info about rt_cmdline_enabled here: 
https://dlang.org/phobos/rt_config.html


-Steve


Re: Beta 2.090.0

2019-12-22 Thread Mathias Lang via Digitalmars-d-announce

On Sunday, 22 December 2019 at 22:22:26 UTC, Per Nordlöw wrote:


Have I missed something or is this a known problem with dub? If 
so, do I have any alternative to brute-forcing the problem with


dub run --compiler=dmd --build=unittest
dub run --compiler=dmd --build=debug

which, for me, doubles my development iteration time.


If it's something common enough, I suggest just creating an alias 
such as `dubtest` which does `dub test --compiler=dmd && dub run 
--compiler --build=debug`.
Should you want to change compiler, you can make it a function 
that takes an argument.


The druntime issue with `--DRT` is something that is on the map, 
and should be fixed soon, but I can't promise it will be fixed 
before the release, as it requires a druntime fix.
Alternatively, some other bugs need to be fixed for the druntime 
fix to be truly efficient.


Re: Beta 2.090.0

2019-12-22 Thread Steven Schveighoffer via Digitalmars-d-announce

On 12/22/19 4:04 PM, Steven Schveighoffer wrote:

I haven't tested, but the frameworks should be fine.


FYI, here is where d-unit overrides the behavior:

https://github.com/linkrope/dunit/blob/e78971a27395169158458e3ab1c35b61c67079f4/src/dunit/framework.d#L772-L775

Doing this prevents any unittest from being run before main, so the 
default behavior will be ignored.


-Steve


Re: Beta 2.090.0

2019-12-22 Thread Steven Schveighoffer via Digitalmars-d-announce

On 12/22/19 5:22 PM, Per Nordlöw wrote:

On Sunday, 22 December 2019 at 15:23:32 UTC, Martin Nowak wrote:
Glad to announce the first beta for the 2.090.0 release, ♥ to the 48 
contributors.


http://dlang.org/download.html#dmd_beta
http://dlang.org/changelog/2.090.0.html

As usual please report any bugs at
https://issues.dlang.org



I've gotten very used to running my app via

     dub run --compiler=dmd --build=unittest

in order to, with short iterations, run tests and the application at the 
same time.


Changing this behaviour via

https://dlang.org/changelog/2.090.0.html#unittest-default

is, to me, an usually disruptive change.


It's a long overdue change IMO. The original intention was to have it 
switched on version 2.080, but I forgot about it. Most of the time, if 
you are unittesting, you aren't building exactly production code, so 
there's no reason to run the main function.


Most people used to do this:

```
version(unittest) void main() {}
else
int main(string[] args) {
   ... // normal application
}
```

Which is somewhat embarrassing for the language to have to do this.



I tried changing to

     dub run --compiler=dmd --build=unittest -- --DRT-testmode=run-main

but it still doesn't run the application after the unittests are run.


The issue is that dub is built with D! So dub is actually consuming that 
option without trying to.


There's an open bug on it: https://github.com/dlang/dub/issues/1280

Have I missed something or is this a known problem with dub? If so, do I 
have any alternative to brute-forcing the problem with


     dub run --compiler=dmd --build=unittest
     dub run --compiler=dmd --build=debug

which, for me, doubles my development iteration time.


Option a: don't use dub run.

dub build --compiler=dmd --build=unittest && ./application 
--DRT-testmode=run-main


Option b: you can also set a DRT switch inside your code:

https://dlang.org/phobos/rt_config.html

e.g.:

extern(C) __gshared string[] rt_options = [ "testmode=run-main"];

There are far more people who run unittests as a separate step from 
running their application. If unittests pass, then there's no 
distinguishable output from a build without unittests. I can totally 
imagine accidentally shipping code with unittests in it without 
intending to.


But I can totally see your use case during development. It should work 
with dub run, I hope it gets fixed.


-Steve


Re: Beta 2.090.0

2019-12-22 Thread Per Nordlöw via Digitalmars-d-announce

On Sunday, 22 December 2019 at 15:23:32 UTC, Martin Nowak wrote:
Glad to announce the first beta for the 2.090.0 release, ♥ to 
the 48 contributors.


http://dlang.org/download.html#dmd_beta
http://dlang.org/changelog/2.090.0.html

As usual please report any bugs at
https://issues.dlang.org

-Martin


I've gotten very used to running my app via

dub run --compiler=dmd --build=unittest

in order to, with short iterations, run tests and the application 
at the same time.


Changing this behaviour via

https://dlang.org/changelog/2.090.0.html#unittest-default

is, to me, an usually disruptive change.

I tried changing to

dub run --compiler=dmd --build=unittest -- 
--DRT-testmode=run-main


but it still doesn't run the application after the unittests are 
run.


Have I missed something or is this a known problem with dub? If 
so, do I have any alternative to brute-forcing the problem with


dub run --compiler=dmd --build=unittest
dub run --compiler=dmd --build=debug

which, for me, doubles my development iteration time.


Re: Beta 2.090.0

2019-12-22 Thread Mike Parker via Digitalmars-d-announce

On Sunday, 22 December 2019 at 18:51:45 UTC, berni44 wrote:

On Sunday, 22 December 2019 at 15:23:32 UTC, Martin Nowak wrote:
Glad to announce the first beta for the 2.090.0 release, ♥ to 
the 48 contributors.


I'm wondering, why I'm listed twice there (as Bernhard 
Seckinger and as berni44). IMHO berni44 should not have been 
listed there... Do I have to change something in my git 
settings to get this right?


You can submit a PR to add a mapping to tools/.mailmap:

https://github.com/dlang/tools/blob/master/.mailmap
https://github.com/git/git/blob/master/Documentation/mailmap.txt


Re: Beta 2.090.0

2019-12-22 Thread Steven Schveighoffer via Digitalmars-d-announce

On 12/22/19 2:17 PM, Andre Pany wrote:

On Sunday, 22 December 2019 at 15:23:32 UTC, Martin Nowak wrote:
Glad to announce the first beta for the 2.090.0 release, ♥ to the 48 
contributors.


http://dlang.org/download.html#dmd_beta
http://dlang.org/changelog/2.090.0.html

As usual please report any bugs at
https://issues.dlang.org



The unittest default mode might cause some issues for unittest 
frameworks like d-unit. They need a main but due to a dub bug, passing 
DRT affects the Dub executable but not the spawned application. Open bug 
issue https://github.com/dlang/dub/issues/1280




I haven't tested, but the frameworks should be fine. They override the 
behavior (i.e. register a different handler for unittests)


The switch only affects vanilla D unittest handler behavior.

In other words, if you use e.g. unitthreaded or dub's test build, the 
switch is of no consequence.


-Steve


Re: Beta 2.090.0

2019-12-22 Thread berni44 via Digitalmars-d-announce

On Sunday, 22 December 2019 at 19:00:15 UTC, Eugene Wissner wrote:
Probably differen email addresses. You can set an email address 
locally for the repository in .git/config. Or just add an 
alias: https://github.com/dlang/tools/blob/master/.mailmap


git config -l reveals only one address (which is set at global 
level; there is no local and no systemwide email address). It's 
the same I use in github. In bugzilla I use a different one, but 
I guess, that this is not relevant.


Re: Beta 2.090.0

2019-12-22 Thread Andre Pany via Digitalmars-d-announce

On Sunday, 22 December 2019 at 15:23:32 UTC, Martin Nowak wrote:
Glad to announce the first beta for the 2.090.0 release, ♥ to 
the 48 contributors.


http://dlang.org/download.html#dmd_beta
http://dlang.org/changelog/2.090.0.html

As usual please report any bugs at
https://issues.dlang.org

-Martin


The unittest default mode might cause some issues for unittest 
frameworks like d-unit. They need a main but due to a dub bug, 
passing DRT affects the Dub executable but not the spawned 
application. Open bug issue 
https://github.com/dlang/dub/issues/1280


Kind regards
Andre


Re: Beta 2.090.0

2019-12-22 Thread Eugene Wissner via Digitalmars-d-announce

On Sunday, 22 December 2019 at 18:51:45 UTC, berni44 wrote:

On Sunday, 22 December 2019 at 15:23:32 UTC, Martin Nowak wrote:
Glad to announce the first beta for the 2.090.0 release, ♥ to 
the 48 contributors.


I'm wondering, why I'm listed twice there (as Bernhard 
Seckinger and as berni44). IMHO berni44 should not have been 
listed there... Do I have to change something in my git 
settings to get this right?


Probably differen email addresses. You can set an email address 
locally for the repository in .git/config. Or just add an alias: 
https://github.com/dlang/tools/blob/master/.mailmap


Re: Beta 2.090.0

2019-12-22 Thread berni44 via Digitalmars-d-announce

On Sunday, 22 December 2019 at 15:23:32 UTC, Martin Nowak wrote:
Glad to announce the first beta for the 2.090.0 release, ♥ to 
the 48 contributors.


I'm wondering, why I'm listed twice there (as Bernhard Seckinger 
and as berni44). IMHO berni44 should not have been listed 
there... Do I have to change something in my git settings to get 
this right?


Re: Beta 2.090.0

2019-12-22 Thread Mike Parker via Digitalmars-d-announce
On Sunday, 22 December 2019 at 15:27:15 UTC, rikki cattermole 
wrote:

On 23/12/2019 4:23 AM, Martin Nowak wrote:
Glad to announce the first beta for the 2.090.0 release, ♥ to 
the 48 contributors.


http://dlang.org/download.html#dmd_beta
http://dlang.org/changelog/2.090.0.html

As usual please report any bugs at
https://issues.dlang.org

-Martin


404'ing


The changelog, that is.


Re: Beta 2.090.0

2019-12-22 Thread rikki cattermole via Digitalmars-d-announce

On 23/12/2019 4:23 AM, Martin Nowak wrote:
Glad to announce the first beta for the 2.090.0 release, ♥ to the 48 
contributors.


http://dlang.org/download.html#dmd_beta
http://dlang.org/changelog/2.090.0.html

As usual please report any bugs at
https://issues.dlang.org

-Martin


404'ing