www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Botan does not build with DMD 2.084. Is it still alive?

reply Piotr Mitana <the.mail.of.mi2 gmail.com> writes:
Hello,

I am not sure if this is the right place on the forum to ask - 
I'm sorry if not.

I have a project utilizing Botan and vibe.d. I also use a few 
Botan bits explicitely (bcrypt). I tried to switch to DMD 2.084, 
but Botan does not build.

Of course I have risen an issue in Botan - however its latest 
commit is 7 months old. Is this project still alive, or should I 
switch to another library?

I guess that for vibe.d I can move to OpenSSL, but what I lose 
then is bcrypt...
Jan 08 2019
parent reply bauss <jj_1337 live.dk> writes:
On Tuesday, 8 January 2019 at 09:48:17 UTC, Piotr Mitana wrote:
 Hello,

 I am not sure if this is the right place on the forum to ask - 
 I'm sorry if not.

 I have a project utilizing Botan and vibe.d. I also use a few 
 Botan bits explicitely (bcrypt). I tried to switch to DMD 
 2.084, but Botan does not build.

 Of course I have risen an issue in Botan - however its latest 
 commit is 7 months old. Is this project still alive, or should 
 I switch to another library?

 I guess that for vibe.d I can move to OpenSSL, but what I lose 
 then is bcrypt...
And why doesn't it compile? Perhaps you should give some more information about why it doesn't compiler. What's the error? And so on. Perhaps this should be in "Learn" too and not "General". Also maybe try to make an issue in their repo if it's an issue with Botan and not DMD.
Jan 08 2019
parent reply Piotr Mitana <the.mail.of.mi2 gmail.com> writes:
On Tuesday, 8 January 2019 at 11:04:11 UTC, bauss wrote:
 On Tuesday, 8 January 2019 at 09:48:17 UTC, Piotr Mitana wrote:
 [..]
And why doesn't it compile? Perhaps you should give some more information about why it doesn't compiler. What's the error? And so on. Perhaps this should be in "Learn" too and not "General". Also maybe try to make an issue in their repo if it's an issue with Botan and not DMD.
As I stated, I have created the issue in Botan repository of course: https://github.com/etcimon/botan/issues/49. I also noticed that the issue is related to Botan, not to D itelf. My question is if it is known whether Botan (I mean D port) is still in development or this issue will probably not be fixed anytime soon and I have to switch to other libraries at some point of time.
Jan 08 2019
parent reply bauss <jj_1337 live.dk> writes:
On Tuesday, 8 January 2019 at 12:14:56 UTC, Piotr Mitana wrote:
 On Tuesday, 8 January 2019 at 11:04:11 UTC, bauss wrote:
 On Tuesday, 8 January 2019 at 09:48:17 UTC, Piotr Mitana wrote:
 [..]
And why doesn't it compile? Perhaps you should give some more information about why it doesn't compiler. What's the error? And so on. Perhaps this should be in "Learn" too and not "General". Also maybe try to make an issue in their repo if it's an issue with Botan and not DMD.
As I stated, I have created the issue in Botan repository of course: https://github.com/etcimon/botan/issues/49. I also noticed that the issue is related to Botan, not to D itelf. My question is if it is known whether Botan (I mean D port) is still in development or this issue will probably not be fixed anytime soon and I have to switch to other libraries at some point of time.
Took a quick look at it and it seems that Botan uses an outdated version of memutils.
Jan 08 2019
parent reply Piotr Mitana <the.mail.of.mi2 gmail.com> writes:
On Tuesday, 8 January 2019 at 13:25:36 UTC, bauss wrote:
 Took a quick look at it and it seems that Botan uses an 
 outdated version of memutils.
Nope - I have "dub upgrade"d memutils to 0.4.13 (Botan's dub.json takes the latest 0.4.x version - and memutils 0.5.x does not exist currently). The error is still the same. Furthermore, memutils itself builds properly with DMD 2.084. So I expect it's either Botan requiring adapting to the latest DMD or it's a regression in object.d, according to this line: /usr/include/dmd/druntime/import/object.d(518,9): Error: union `object.destroy!(true, RTSS).destroy.UntypedInit` has forward references
Jan 09 2019
parent reply bauss <jj_1337 live.dk> writes:
On Wednesday, 9 January 2019 at 09:58:21 UTC, Piotr Mitana wrote:
 On Tuesday, 8 January 2019 at 13:25:36 UTC, bauss wrote:
 Took a quick look at it and it seems that Botan uses an 
 outdated version of memutils.
Nope - I have "dub upgrade"d memutils to 0.4.13 (Botan's dub.json takes the latest 0.4.x version - and memutils 0.5.x does not exist currently). The error is still the same. Furthermore, memutils itself builds properly with DMD 2.084. So I expect it's either Botan requiring adapting to the latest DMD or it's a regression in object.d, according to this line: /usr/include/dmd/druntime/import/object.d(518,9): Error: union `object.destroy!(true, RTSS).destroy.UntypedInit` has forward references
Looking into this it actually looks like an error from DMD. Sometime after dmd-2.074.0 it was introduced. I would look at the changelog for specifics.
Jan 09 2019
parent reply Piotr Mitana <the.mail.of.mi2 gmail.com> writes:
On Wednesday, 9 January 2019 at 10:29:42 UTC, bauss wrote:
 Looking into this it actually looks like an error from DMD.

 Sometime after dmd-2.074.0 it was introduced.

 I would look at the changelog for specifics.
If so, then it is almost sure a new regression in 2.084, as Botan builds with 2.083.1.
Jan 09 2019
parent reply Nicholas Wilson <iamthewilsonator hotmail.com> writes:
On Wednesday, 9 January 2019 at 10:33:14 UTC, Piotr Mitana wrote:
 On Wednesday, 9 January 2019 at 10:29:42 UTC, bauss wrote:
 Looking into this it actually looks like an error from DMD.

 Sometime after dmd-2.074.0 it was introduced.

 I would look at the changelog for specifics.
If so, then it is almost sure a new regression in 2.084, as Botan builds with 2.083.1.
Yes, that would be a regression (I reviewed that code) please report it.
Jan 09 2019
parent reply bauss <jj_1337 live.dk> writes:
On Wednesday, 9 January 2019 at 10:39:35 UTC, Nicholas Wilson 
wrote:
 On Wednesday, 9 January 2019 at 10:33:14 UTC, Piotr Mitana 
 wrote:
 On Wednesday, 9 January 2019 at 10:29:42 UTC, bauss wrote:
 Looking into this it actually looks like an error from DMD.

 Sometime after dmd-2.074.0 it was introduced.

 I would look at the changelog for specifics.
If so, then it is almost sure a new regression in 2.084, as Botan builds with 2.083.1.
Yes, that would be a regression (I reviewed that code) please report it.
Looks like it's from this commit: https://github.com/dlang/druntime/commit/0fe98729034a2d7bc76bfc81c25e9dbd1f3d560a Only thing I could find that has anything to do with object.destroy that has changed.
Jan 09 2019
parent reply Nicholas Wilson <iamthewilsonator hotmail.com> writes:
On Wednesday, 9 January 2019 at 10:45:51 UTC, bauss wrote:
 On Wednesday, 9 January 2019 at 10:39:35 UTC, Nicholas Wilson 
 wrote:
 On Wednesday, 9 January 2019 at 10:33:14 UTC, Piotr Mitana 
 wrote:
 On Wednesday, 9 January 2019 at 10:29:42 UTC, bauss wrote:
 Looking into this it actually looks like an error from DMD.

 Sometime after dmd-2.074.0 it was introduced.

 I would look at the changelog for specifics.
If so, then it is almost sure a new regression in 2.084, as Botan builds with 2.083.1.
Yes, that would be a regression (I reviewed that code) please report it.
Looks like it's from this commit: https://github.com/dlang/druntime/commit/0fe98729034a2d7bc76bfc81c25e9dbd1f3d560a Only thing I could find that has anything to do with object.destroy that has changed.
No. this commit before that https://github.com/dlang/druntime/commit/6a99ed19ab7a0fb9b6326b6fb1b52fca50fcbd17
Jan 09 2019
parent bauss <jj_1337 live.dk> writes:
On Wednesday, 9 January 2019 at 11:10:51 UTC, Nicholas Wilson 
wrote:
 On Wednesday, 9 January 2019 at 10:45:51 UTC, bauss wrote:
 On Wednesday, 9 January 2019 at 10:39:35 UTC, Nicholas Wilson 
 wrote:
 On Wednesday, 9 January 2019 at 10:33:14 UTC, Piotr Mitana 
 wrote:
 On Wednesday, 9 January 2019 at 10:29:42 UTC, bauss wrote:
 Looking into this it actually looks like an error from DMD.

 Sometime after dmd-2.074.0 it was introduced.

 I would look at the changelog for specifics.
If so, then it is almost sure a new regression in 2.084, as Botan builds with 2.083.1.
Yes, that would be a regression (I reviewed that code) please report it.
Looks like it's from this commit: https://github.com/dlang/druntime/commit/0fe98729034a2d7bc76bfc81c25e9dbd1f3d560a Only thing I could find that has anything to do with object.destroy that has changed.
No. this commit before that https://github.com/dlang/druntime/commit/6a99ed19ab7a0fb9b6326b6fb1b52fca50fcbd17
Ah yes, that's totally it! I didn't look through the commit tbh. I just checked whether it had anything to do with object.destroy
Jan 09 2019