www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - dub dustmite struggles

reply DanielG <simpletangent gmail.com> writes:
I can't seem to figure out what dub's dustmite command is looking 
for with its regexes. No matter what I try - no matter how simple 
- the initial test fails.

I am able to run dustmite standalone just fine with the following 
test script:

cd example
dub 2>&1 | grep -F "ScrollView6__initZ+0xd8): undefined reference 
to \`internal'"

However, when I attempt using 'dub dustmite' with --linker-regex 
(or --linker-status, even), the initial test always fails. I've 
also tried simplifying the regex on the assumption that I'm not 
escaping things properly - to no avail.

Is it perhaps something to do with my project structure? My 
project is a library containing an /example subfolder, containing 
an application dub project, and that's where my linker error 
occurs, not in the library itself. So that's where I'm attempting 
to run dub dustmite as well.
Jan 19 2020
next sibling parent reply FeepingCreature <feepingcreature gmail.com> writes:
On Monday, 20 January 2020 at 06:48:08 UTC, DanielG wrote:
 I can't seem to figure out what dub's dustmite command is 
 looking for with its regexes. No matter what I try - no matter 
 how simple - the initial test fails.

 I am able to run dustmite standalone just fine with the 
 following test script:

 cd example
 dub 2>&1 | grep -F "ScrollView6__initZ+0xd8): undefined 
 reference to \`internal'"

 However, when I attempt using 'dub dustmite' with 
 --linker-regex (or --linker-status, even), the initial test 
 always fails. I've also tried simplifying the regex on the 
 assumption that I'm not escaping things properly - to no avail.

 Is it perhaps something to do with my project structure? My 
 project is a library containing an /example subfolder, 
 containing an application dub project, and that's where my 
 linker error occurs, not in the library itself. So that's where 
 I'm attempting to run dub dustmite as well.
I don't know how `dub dustmite` works, but my advice would be to use standalone dustmite and write a shellscript that handles your success/fail condition with an exit code. That's always worked for me, and it makes it easier to externally check what's happening. Ie. test.sh: --- dub 2>&1 |grep -F "ScrollView6__initZ+0xd8): undefined
 reference to \`internal'"
--- dustmite example ../test.sh Then if you have to recurse into a dub project, just copy it into your example folder so it's compiled in, and repeat.
Jan 19 2020
parent DanielG <simpletangent gmail.com> writes:
On Monday, 20 January 2020 at 07:14:24 UTC, FeepingCreature wrote:
 dustmite example ../test.sh
Right, that's what I'm already doing now. However, the process is extremely slow (takes 10+ hours for the current project, when I've done this in the past) so I am hoping to speed things up a bit by using dub's dustmite directly (vs. the test script invoking dub anew on each run).
Jan 19 2020
prev sibling parent reply Andre Pany <andre s-e-a-p.de> writes:
On Monday, 20 January 2020 at 06:48:08 UTC, DanielG wrote:
 I can't seem to figure out what dub's dustmite command is 
 looking for with its regexes. No matter what I try - no matter 
 how simple - the initial test fails.

 I am able to run dustmite standalone just fine with the 
 following test script:

 cd example
 dub 2>&1 | grep -F "ScrollView6__initZ+0xd8): undefined 
 reference to \`internal'"

 However, when I attempt using 'dub dustmite' with 
 --linker-regex (or --linker-status, even), the initial test 
 always fails. I've also tried simplifying the regex on the 
 assumption that I'm not escaping things properly - to no avail.

 Is it perhaps something to do with my project structure? My 
 project is a library containing an /example subfolder, 
 containing an application dub project, and that's where my 
 linker error occurs, not in the library itself. So that's where 
 I'm attempting to run dub dustmite as well.
In general dub Dustmite works fine, I used it several times. Maybe it has to do s.th. with your project structure. Please create a dub issue with an example zip. But yes, it could take also with dub a lot of time. One thing which caused me a lot of headaches, dmd is lies about the error message if coloured output is on. Then the error text lacks some characters. Kind regards Andre
Jan 20 2020
parent DanielG <simpletangent gmail.com> writes:
On Monday, 20 January 2020 at 15:04:32 UTC, Andre Pany wrote:
 In general dub Dustmite works fine, I used it several times. 
 Maybe it has to do s.th. with your project structure. Please 
 create a dub issue with an example zip.
I've created a minimal nested project with a similar structure (library with nested app project), and dub-dustmite works fine there. So it must be something peculiar to my real project. Once the standalone dustmite finishes running, I'll spend some time manually reducing my project structure to something repeatable to file an issue with. Thanks!
Jan 20 2020