May 11, 2020
See e.g.:

http://dtest.dlang.io/history/master
https://dlang.slack.com/archives/C59UPP30D

The build fails because DMD fails to find the file default_ddoc_theme.ddoc.

I can reproduce the problem with:

digger build --with=website "master @ 2020-05-11 00:00:00"

The failing dlang.org/posix.mak command is:

.generated/stable_dmd-2.088.0/dmd2/linux/bin64/dub build --compiler=.generated/stable_dmd-2.088.0/dmd2/linux/bin64/dmd --root=ddoc

It does fail when ran directly.

With -v, we can see that Dub runs the following DMD command:

.generated/stable_dmd-2.088.0/dmd2/linux/bin64/dmd -lib -of../dmd/.dub/build/library-debug-linux.posix-x86_64-dmd_2088-C1FF438DE5BFDA6A0E1D57F660E41FFC/libdmd_parser.a -debug -g -w -version=NoBackend -version=GC -version=NoMain -version=MARS -version=DdocOptions -version=IsExecutable -version=Have_dmd_parser -version=Have_dmd_lexer -version=Have_dmd_root -I../dmd/src/ -J../dmd/generated/dub ../dmd/src/dmd/astbase.d ../dmd/src/dmd/parse.d ../dmd/src/dmd/permissivevisitor.d ../dmd/src/dmd/strictvisitor.d ../dmd/src/dmd/transitivevisitor.d -vcolumns

Note that it indeed does not contain the -J switch needed for DMD to find default_ddoc_theme.ddoc.

dlang.org/ddoc/dub.sdl contains:

dependency "dmd" path="../../dmd"

and, ../../dmd/dub.sdl contains:

dependency ":frontend" version="*"
...
subPackage {
  name "frontend"
  ...
  stringImportPaths "res"

I don't see the problem. Seems to be a Dub bug?

Also worth noting that src/dmd/doc.d, the DMD file which performs the string import, is never mentioned in dub.sdl.

May 11, 2020
On Monday, 11 May 2020 at 18:54:27 UTC, Vladimir Panteleev wrote:
> See e.g.:
>
> http://dtest.dlang.io/history/master
> https://dlang.slack.com/archives/C59UPP30D

My mistake, these failures aren't actually random, just recent.

https://github.com/dlang/dmd/pull/11125#issuecomment-626901284
https://github.com/dlang/dmd/pull/11131