Thread overview |
---|
March 13, 2021 Compiler module import graph | ||||
---|---|---|---|---|
| ||||
Is there a tool to view module import graph? The compiler verbose output shows that the module is imported/parsed but not why. I wan't to avoid unnecessary imports to speed up compile times or avoid issues if the module contents are not fully compatible with the current compile target being in development. |
March 13, 2021 Re: Compiler module import graph | ||||
---|---|---|---|---|
| ||||
Posted in reply to frame | On 13.03.21 15:20, frame wrote: > Is there a tool to view module import graph? > > The compiler verbose output shows that the module is imported/parsed but not why. I wan't to avoid unnecessary imports to speed up compile times or avoid issues if the module contents are not fully compatible with the current compile target being in development. `dmd -deps` shows what imports what. https://dlang.org/dmd-linux.html#switch-deps Be aware that there is a bug where DMD misses some edges in the graph: https://issues.dlang.org/show_bug.cgi?id=21238 |
March 13, 2021 Re: Compiler module import graph | ||||
---|---|---|---|---|
| ||||
Posted in reply to frame | On Saturday, 13 March 2021 at 14:20:01 UTC, frame wrote: > Is there a tool to view module import graph? > > The compiler verbose output shows that the module is imported/parsed but not why. I wan't to avoid unnecessary imports to speed up compile times or avoid issues if the module contents are not fully compatible with the current compile target being in development. An external tool: https://github.com/funkwerk/depend. |
March 13, 2021 Re: Compiler module import graph | ||||
---|---|---|---|---|
| ||||
Posted in reply to ag0aep6g | On Saturday, 13 March 2021 at 14:30:52 UTC, ag0aep6g wrote:
> On 13.03.21 15:20, frame wrote:
>> Is there a tool to view module import graph?
>>
>> The compiler verbose output shows that the module is imported/parsed but not why. I wan't to avoid unnecessary imports to speed up compile times or avoid issues if the module contents are not fully compatible with the current compile target being in development.
>
> `dmd -deps` shows what imports what.
>
> https://dlang.org/dmd-linux.html#switch-deps
>
> Be aware that there is a bug where DMD misses some edges in the graph:
> https://issues.dlang.org/show_bug.cgi?id=21238
For some reason the only output I get is 'interface function ... is not implemented' errors if I run this switch.
|
March 13, 2021 Re: Compiler module import graph | ||||
---|---|---|---|---|
| ||||
Posted in reply to Eugene Wissner | On Saturday, 13 March 2021 at 14:41:48 UTC, Eugene Wissner wrote:
> On Saturday, 13 March 2021 at 14:20:01 UTC, frame wrote:
>> Is there a tool to view module import graph?
>>
>> The compiler verbose output shows that the module is imported/parsed but not why. I wan't to avoid unnecessary imports to speed up compile times or avoid issues if the module contents are not fully compatible with the current compile target being in development.
>
> An external tool: https://github.com/funkwerk/depend.
Thanks! I will try this out.
|
March 13, 2021 Re: Compiler module import graph | ||||
---|---|---|---|---|
| ||||
Posted in reply to frame | On Saturday, 13 March 2021 at 14:55:20 UTC, frame wrote:
> On Saturday, 13 March 2021 at 14:30:52 UTC, ag0aep6g wrote:
>> On 13.03.21 15:20, frame wrote:
>>> Is there a tool to view module import graph?
>>>
>>> The compiler verbose output shows that the module is imported/parsed but not why. I wan't to avoid unnecessary imports to speed up compile times or avoid issues if the module contents are not fully compatible with the current compile target being in development.
>>
>> `dmd -deps` shows what imports what.
>>
>> https://dlang.org/dmd-linux.html#switch-deps
>>
>> Be aware that there is a bug where DMD misses some edges in the graph:
>> https://issues.dlang.org/show_bug.cgi?id=21238
>
> For some reason the only output I get is 'interface function ... is not implemented' errors if I run this switch.
Ok, I was stupid forget the -m64 switch and had a size_t/ulong bug in an interface. Thanks.
|
Copyright © 1999-2021 by the D Language Foundation