ExQuality.Tools (ExQuality v0.2.0)

View Source

Detects which quality tools are available in the project.

Checks Mix.Project.config()[:deps] for tool packages and determines which stages should be enabled by default.

Example

ExQuality.Tools.detect()
#=> %{
  credo: true,
  dialyzer: true,
  doctor: false,
  coverage: true,
  gettext: false,
  audit: true
}

ExQuality.Tools.available?(:credo)
#=> true

Summary

Functions

Checks if a specific tool is available.

Returns a map of tool availability.

Functions

available?(tool)

@spec available?(atom()) :: boolean()

Checks if a specific tool is available.

Returns false if the tool is not recognized or not installed.

detect()

@spec detect() :: %{required(atom()) => boolean()}

Returns a map of tool availability.

Scans the project's dependencies to determine which quality checking tools are installed.