Skip to main content

Module settings

Module settings 

Source
Expand description

Settings (spec/sync/README.md §3): one schema at two layers — the workspace_settings singleton (defaults) and repos.settings (overrides) — resolved by a deep merge.

Functions§

deep_merge
over wins at the leaf; a plain object over a plain object merges recursively; anything else (scalars, arrays, null) replaces wholesale. Key order: base’s keys in place, new keys appended (JavaScript’s { ...base } then assignment).
repo_own_settings
A repo’s own (override) blob — not merged.
resolve_settings
deep_merge(workspace, repo_own); the workspace layer alone for None.
workspace_settings
The workspace default layer (row id = 0).
write_repo_settings
Replace a repo’s blob.
write_workspace_settings
Replace the workspace blob.

Type Aliases§

Settings
A settings blob: a JSON object.