Skip to main content

Module resolve

Module resolve 

Source
Expand description

Resolving a target’s layers into one Resolved profile: read, composed, answered, rendered.

In order, each step reading only what the steps before it decided:

  1. Graph. The configured layers and everything they require, by name, their features unified, in the order they apply.
  2. Variables. Every variable a layer declares, answered.
  3. Paths. Each entry’s path, and the paths and globs its gates name, rendered.
  4. Gates. Entries whose features, profiles or vars do not hold are off; exists and scaffolds wait for survey, which sees the disk.
  5. Providers. One layer per file, or one per part, the target’s overrides applied.
  6. Content. Templates rendered with the answers and the graph; parts read out of it.

Structs§

Layer
An active profile, read from its source at one revision, and rendered for the target.
LayerFile
One of a layer’s files: its entry, where its payload is, and whether its gates let it apply.
Question
A variable the target has not answered.
Resolved
A target’s layers, composed: each file has one provider, or one per part, and settings are decided.
Settings
The settings in force: devset’s defaults, then each layer’s, then the target’s.
Suggestion
A merge driver a layer suggests and the target has not configured.

Enums§

Applied
Whether a layer’s content is what the lock recorded.
Driver
How three-way merges are performed; written as its driver line, checked as it is read, so a mistake points into the file that holds it.
Enabler
Who turned a feature on.
Refresh
Which sources resolve may move off their locked commit.
Warning
Something the graph settled that the target may not expect.

Functions§

resolve
Resolves target’s layers into one profile, the target’s overrides and settings on top.