1DUB-DUSTMITE(1) The D Language Foundation DUB-DUSTMITE(1)
2
3
4
6 dub-dustmite - Create reduced test cases for build errors
7
9 dub dustmite <destination-path> OPTIONS... [-- <application argu‐
10 ments...>]
11
13 This command uses the Dustmite utility to isolate the cause of build
14 errors in a DUB project.
15
16
17
18 It will create a copy of all involved packages and run dustmite on this
19 copy, leaving a reduced test case.
20
21
22
23 Determining the desired error condition is done by checking the com‐
24 piler/linker status code, as well as their output (stdout and stderr
25 combined). If --program-status or --program-regex is given and the gen‐
26 erated binary is an executable, it will be executed and its output will
27 also be incorporated into the final decision.
28
30 --compiler-status=VALUE
31 The expected status code of the compiler run
32
33 --compiler-regex=VALUE
34 A regular expression used to match against the compiler output
35
36 --linker-status=VALUE
37 The expected status code of the linker run
38
39 --linker-regex=VALUE
40 A regular expression used to match against the linker output
41
42 --program-status=VALUE
43 The expected status code of the built executable
44
45 --program-regex=VALUE
46 A regular expression used to match against the program output
47
48 --test-package=VALUE
49 Perform a test run - usually only used internally
50
51 --combined
52 Builds multiple packages with one compiler run
53
54 --no-redirect
55 Don't redirect stdout/stderr streams of the test command
56
57 --strategy=VALUE
58 Set strategy (careful/lookback/pingpong/indepth/inbreadth)
59
60 -j
61 Set number of look-ahead processes
62
63 --trace
64 Save all attempted reductions to DIR.trace
65
66 -b, --build=VALUE
67 Specifies the type of build to perform. Note that setting the
68 DFLAGS environment variable will override the build type with cus‐
69 tom flags. Possible names:
70 debug, plain, release, release-debug, release-nobounds, unittest,
71 profile, profile-gc, docs, ddox, cov, cov-ctfe, unittest-cov,
72 unittest-cov-ctfe, syntax and custom types
73
74 -c, --config=VALUE
75 Builds the specified configuration. Configurations can be defined
76 in dub.json
77
78 --override-config=VALUE
79 Uses the specified configuration for a certain dependency. Can be
80 specified multiple times. Format: --override-config=<depen‐
81 dency>/<config>
82
83 --compiler=VALUE
84 Specifies the compiler binary to use (can be a path). Arbitrary
85 pre- and suffixes to the identifiers below are recognized (e.g.
86 ldc2 or dmd-2.063) and matched to the proper compiler type:
87 dmd, gdc, ldc, gdmd, ldmd
88
89 -a, --arch=VALUE
90 Force a different architecture (e.g. x86 or x86_64)
91
92 -d, --debug=VALUE
93 Define the specified debug version identifier when building - can
94 be used multiple times
95
96 --nodeps
97 Do not resolve missing dependencies before building
98
99 --build-mode=VALUE
100 Specifies the way the compiler and linker are invoked. Valid val‐
101 ues:
102 separate (default), allAtOnce, singleFile
103
104 --single
105 Treats the package name as a filename. The file must contain a
106 package recipe comment.
107
108 --force-remove
109 Deprecated option that does nothing.
110
111 --filter-versions
112 [Experimental] Filter version identifiers and debug version identi‐
113 fiers to improve build cache efficiency.
114
115 COMMON OPTIONS
116 See dub(1)
117
119 Forwards the exit code from dustmite(1)
120
122 dub.sdl, dub.json
123
125 Copyright (c) 1999-2023 by The D Language Foundation
126
128 http://code.dlang.org/docs/commandline ⟨⟩
129
131 dub(1), dub-lint(1), dub-test(1), dustmite(1)
132
133
134
135The D Language Foundation 2023-07-24 DUB-DUSTMITE(1)