dub-dustmite - Man Page

Package and build management system for D

Synopsis

dub dustmite <destination-path> Options... [-- <application arguments...>]

Description

This command uses the Dustmite utility to isolate the cause of build errors in a DUB project.

It will create a copy of all involved packages and run dustmite on this copy, leaving a reduced test case.

Determining the desired error condition is done by checking the compiler/linker status code, as well as their output (stdout and stderr combined). If --program-status or --program-regex is given and the generated binary is an executable, it will be executed and its output will also be incorporated into the final decision.

Options

--compiler-status=VALUE

The expected status code of the compiler run

--compiler-regex=VALUE

A regular expression used to match against the compiler output

--linker-status=VALUE

The expected status code of the linker run

--linker-regex=VALUE

A regular expression used to match against the linker output

--program-status=VALUE

The expected status code of the built executable

--program-regex=VALUE

A regular expression used to match against the program output

--test-package=VALUE

Perform a test run - usually only used internally

--combined

Builds multiple packages with one compiler run

--no-redirect

Don't redirect stdout/stderr streams of the test command

-b,

Specifies the type of build to perform. Note that setting the DFLAGS environment variable will override the build type with custom flags. Possible names:
 debug (default), plain, release, release-debug, release-nobounds, unittest, profile, profile-gc, docs, ddox, cov, unittest-cov, syntax and custom types

-c,

Builds the specified configuration. Configurations can be defined in dub.json

--override-config=VALUE

Uses the specified configuration for a certain dependency. Can be specified multiple times. Format: --override-config=<dependency>/<config>

--compiler=VALUE

Specifies the compiler binary to use (can be a path). Arbitrary pre- and suffixes to the identifiers below are recognized (e.g. ldc2 or dmd-2.063) and matched to the proper compiler type:
 dmd, gdc, ldc, gdmd, ldmd

-a,

Force a different architecture (e.g. x86 or x86_64)

-d,

Define the specified debug version identifier when building - can be used multiple times

--nodeps

Do not resolve missing dependencies before building

--build-mode=VALUE

Specifies the way the compiler and linker are invoked. Valid values:
 separate (default), allAtOnce, singleFile

--single

Treats the package name as a filename. The file must contain a package recipe comment.

--force-remove

Deprecated option that does nothing.

--filter-versions

[Experimental] Filter version identifiers and debug version identifiers to improve build cache efficiency.

Files

dub.sdl, dub.json

Author

Copyright (c) 1999-2022 by The D Language Foundation

Online Documentation

http://code.dlang.org/docs/commandlinehttp://code.dlang.org/docs/commandline

See Also

dmd(1), dub(1)

Referenced By

dub(1).

2022-07-27 The D Language Foundation