Skip to main content

Module ledger

Module ledger 

Source
Expand description

The install ledger: what this installer put into a game folder, at .pacenotes\installed.json for every game, outside any plugin tree that packages or other installers also write to.

It records what was written (a sha256 per file, so a file someone has since replaced is left alone), what was there before (so uninstall restores rather than deletes), paths under case-folded keys (as NTFS compares them), and a write-ahead state (so a run that died is recognised as ours).

Modules§

document 🔒
ownership 🔒
record 🔒

Structs§

Ledger
LedgerEntry
LedgerFile
One file an installed package owns.

Enums§

EntryState
LedgerState
How installed.json was found; only Missing means the folder is untouched.
Prior
What was at a path before the installer first wrote it, which decides what uninstall does.

Constants§

LEDGER_FILE 🔒
STATE_DIR
Everything the installer owns inside a game folder, under one directory.

Functions§

fold
The key a path is stored and compared under: lowercase, as the filesystem compares names, though not NTFS’s exact table.