Specifications

link-spec reads specs strictly, as typed TOML, and the paths in them, written so a spec means the same on any machine. An unknown key is refused, never ignored (Specs and Command Lines).

parse

Parses a spec into its type, refusing unknown fields and empty tables. An empty table is named with its line: line 3: [network] is empty: give it its key, or leave it out.

path

A path as a spec writes it, made absolute: ~/ is the home folder, and anything else relative is from the spec's folder. .. is refused, so a spec saved anywhere can't climb out of where it says: write it from ~/ or in full.

print

A spec as TOML, by the serializer, never by hand, so a name from elsewhere can't add a line.

duration_ms

A duration as milliseconds: a number and a unit, ms, s, m, h or d ("10m"). Anything else isn't a duration, and says so.