help me with dpldocs - how to filter 3rd party libs

Norm norm.rowtree at gmail.com
Sun Mar 4 23:18:25 UTC 2018


On Sunday, 4 March 2018 at 22:24:58 UTC, Adam D. Ruppe wrote:
> So the dpldocs scraper right now pulls all the .d files out of 
> a repo and tries to build docs for them. But in some cases, 
> there's a lot of added dependencies in there that can cause the 
> built to time out.
>
> For example, take a look at dlangui:
>
> http://dlangui.dpldocs.info/dlangui.html
>
> Notice the sidebar on the left has a lot of other packages, 
> including x11 and win32 bindings. Similarly, dplug 
> <http://dplug.dpldocs.info/derelict.html> comes with some 
> derelict things bundled.
>
>
> I'm tempted to say if there's a D package that matches the dub 
> package, just focus on it and leave the others out. I could 
> also read the dub description for excludedSourceFiles or for 
> the ddoxFilterArgs and piggyback off that, though a lot of 
> packages haven't concerned themselves with docs at all and 
> didn't set those either.
>
> Really, I think my ideal solution would be to figure out what 
> the library is supposed to export, and focus on that. Its 
> internal implementation details shouldn't matter in docs; who 
> cares if it bundles some dependency when that isn't meant to be 
> part of its public API. But I don't see any way dub reports 
> what this is meant to be, it just eats up all src too.
>
>
> Do you guys have any better ideas?

Can you run dub describe and parse the output, which is JSON I 
think. It used to indicate a role for each source file under each 
configuration, one of which is "unusedSource".

Alternatively you could also take the simple (but fragile) route 
and dictate a convention. Anything under 
third-party/thirdparty/third_party/3rdparty/3rd-party/3rd_party 
will be ignored. Convention based APIs work for the internet CRLF 
CRLF.

Cheers,
Norm


More information about the Digitalmars-d mailing list