Skip to content


dub-lint - Executes the linter tests of the selected package


dub lint [<package>[@<version-spec>]] OPTIONS... [-- <application arguments...>]


Builds the package and executes D-Scanner linter tests.


Lexes and parses sourceFile, printing the line and column number of any syntax errors to stdout.
Lexes and parses sourceFiles, printing the line and column number of any static analysis check failures stdout.
Format errors produced by the style/syntax checkers.
Generate a static analysis report in JSON format.
Specifies the format of the generated report.
Write report to file.
Import paths
Use the given d-scanner configuration file.
-b, --build=VALUE
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, plain, release, release-debug, release-nobounds, unittest, profile, profile-gc, docs, ddox, cov, cov-ctfe, unittest-cov, unittest-cov-ctfe, syntax and custom types
-c, --config=VALUE
Builds the specified configuration. Configurations can be defined in dub.json
Uses the specified configuration for a certain dependency. Can be specified multiple times. Format: --override-config=/
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, --arch=VALUE
Force a different architecture (e.g. x86 or x86_64)
-d, --debug=VALUE
Define the specified `debug` version identifier when building - can be used multiple times
Define the specified `version` identifier when building - can be used multiple times. Use sparingly, with great power comes great responsibility! For commonly used or combined versions and versions that dependees should be able to use, create configurations in your package.
Do not resolve missing dependencies before building
Specifies the way the compiler and linker are invoked. Valid values: separate (default), allAtOnce, singleFile
Treats the package name as a filename. The file must contain a package recipe comment.
Deprecated option that does nothing.
[Experimental] Filter version identifiers and debug version identifiers to improve build cache efficiency.


See dub(1)


DUB succeeded
usage errors, unknown command line flags
package not found, package failed to load, miscellaneous error


dub.sdl, dub.json


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



dub(1), dub-dustmite(1), dub-test(1)

Last update: February 1, 2024
Created: September 1, 2023