November 06, 2019
On Tuesday, 5 November 2019 at 19:05:10 UTC, Manu wrote:
> On Mon, Nov 4, 2019 at 11:55 PM John Chapman via Digitalmars-d-announce <digitalmars-d-announce@puremagic.com> wrote:
>> [...]
>
> [...]

The keyword of share is really annoying for a class。
November 06, 2019
On Wednesday, 6 November 2019 at 01:16:00 UTC, Manu wrote:
> On Tue, Nov 5, 2019 at 5:14 PM Manu <turkeyman@gmail.com> wrote:
>>
>> On Tue, Nov 5, 2019 at 1:20 PM John Chapman via Digitalmars-d-announce <digitalmars-d-announce@puremagic.com> wrote:
>> >
>> > On Tuesday, 5 November 2019 at 19:05:10 UTC, Manu wrote:
>> > > Incidentally, in your sample above there, `a` and `b` are not shared... why not just write: `cas(&a, null, b);` ?? If source data is not shared, you shouldn't cast to shared.
>> >
>> > Because casts were needed in 2.088 and earlier and I just updated to 2.089, unaware of the API change. Should I log `null` not working as a bug?
>>
>> Yes
>
> But I also think you should update your code to not perform the casts. Can you confirm that the null works when removing the shared casts?

Yes and no - it compiles when removing the casts, but AVs at runtime.

Bug filed: https://issues.dlang.org/show_bug.cgi?id=20359
November 06, 2019
On Sunday, 3 November 2019 at 13:35:36 UTC, Martin Nowak wrote:
> Glad to announce D 2.089.0...

Hi Martin,

On the one hand, it's nice to get a shiny, new version (thanks to all involved), but is there any way the installer can be more selective about what it tosses out so I don't have to reconfigure GtkD libs, etc. in its aftermath?

November 06, 2019
On Wednesday, 6 November 2019 at 13:49:16 UTC, Ron Tarrant wrote:
>>
> On the one hand, it's nice to get a shiny, new version (thanks to all involved), but is there any way the installer can be more selective about what it tosses out so I don't have to reconfigure GtkD libs, etc. in its aftermath?

Are you putting libs in the compiler's directory tree? Or are you editing sc.ini/dmd.conf? You really shouldn't be doing the former.
November 06, 2019
On Sunday, 3 November 2019 at 13:35:36 UTC, Martin Nowak wrote:
> Glad to announce D 2.089.0, ♥ to the 44 contributors.

The Blog:
https://dlang.org/blog/2019/11/06/dmd-2-089-0-released/

Reddit:
https://www.reddit.com/r/programming/comments/dsgrc2/d_20890_released/


November 06, 2019
On 11/5/19 2:05 PM, Manu wrote:
> Incidentally, in your sample above there, `a` and `b` are not
> shared... why not just write: `cas(&a, null, b);` ?? If source data is
> not shared, you shouldn't cast to shared.

We have the same problem in Martin's std.io library, won't build with the null uncasted. And it's not improperly casting, because syncDriver is stateless and immutable, so casting to shared mutable isn't going to cause problems (I think).

https://github.com/MartinNowak/io/blob/2147802a9bca0dcf82293303f407dd3e253691e9/src/std/io/driver/package.d#L232-L250

Discussion: https://github.com/MartinNowak/io/issues/27

Currently causes pull requests for this and my iopipe library to fail to build on CI.

P.S. glad to see shared getting some attention!

-Steve
November 06, 2019
On Wednesday, 6 November 2019 at 01:51:24 UTC, Heromyth wrote:
> [snip]
>
> There are some bugs in cas. See here:
> https://issues.dlang.org/show_bug.cgi?id=20354
> https://issues.dlang.org/show_bug.cgi?id=20355

I suspect that providing simplified examples might improve your chances of getting these fixed...
November 06, 2019
On Tue., 5 Nov. 2019, 11:35 pm John Chapman via Digitalmars-d-announce, < digitalmars-d-announce@puremagic.com> wrote:

> On Wednesday, 6 November 2019 at 01:16:00 UTC, Manu wrote:
> > On Tue, Nov 5, 2019 at 5:14 PM Manu <turkeyman@gmail.com> wrote:
> >>
> >> On Tue, Nov 5, 2019 at 1:20 PM John Chapman via Digitalmars-d-announce <digitalmars-d-announce@puremagic.com> wrote:
> >> >
> >> > On Tuesday, 5 November 2019 at 19:05:10 UTC, Manu wrote:
> >> > > Incidentally, in your sample above there, `a` and `b` are
> >> > > not shared... why not just write: `cas(&a, null, b);` ??
> >> > > If source data is not shared, you shouldn't cast to shared.
> >> >
> >> > Because casts were needed in 2.088 and earlier and I just updated to 2.089, unaware of the API change. Should I log `null` not working as a bug?
> >>
> >> Yes
> >
> > But I also think you should update your code to not perform the casts. Can you confirm that the null works when removing the shared casts?
>
> Yes and no - it compiles when removing the casts, but AVs at runtime.
>
> Bug filed: https://issues.dlang.org/show_bug.cgi?id=20359


Thanks! I'll look into these as soon as I have a moment. Sorry for the inconvenience.


November 07, 2019
On Wednesday, 6 November 2019 at 14:09:35 UTC, Mike Parker wrote:

> Are you putting libs in the compiler's directory tree? Or are you editing sc.ini/dmd.conf? You really shouldn't be doing the former.

I follow the steps outlined here: https://github.com/gtkd-developers/GtkD/wiki/Installing-on-Windows

And one of those steps (Step #5) says to copy the gtkd libs to the compiler's directory tree. Is that what you mean by "You really shouldn't be doing the
former."?

And I also edit sc.ini.
November 07, 2019
On Thursday, 7 November 2019 at 10:25:46 UTC, Ron Tarrant wrote:

> I follow the steps outlined here: https://github.com/gtkd-developers/GtkD/wiki/Installing-on-Windows
>
> And one of those steps (Step #5) says to copy the gtkd libs to the compiler's directory tree. Is that what you mean by "You really shouldn't be doing the
> former."?
>
> And I also edit sc.ini.

I recommend that you use Dub instead and add gtk-d [1] as a dependency.

[1] https://code.dlang.org/packages/gtk-d

--
/Jacob Carlborg