module

Hwaro::Utils::OutputOwnership

Constants

FILE = File.join(HwaroDir::DIR, "owned_outputs")

One resolved absolute path per line.

Instance methods

clearable?(output_dir : String, resolved : String, project_root : String) : Bool

true when a cold build may clear resolved (a symlink-resolved absolute path) before writing. output_dir is the path as given, for the lexical public/ rule; project_root is the resolved project directory the .hwaro/ record lives under.

Source
conventional?(output_dir : String) : Bool

The documented default output directory, next to the project. Judged on the UNRESOLVED path on purpose: a public symlink resolves to the tree behind it, and publishing through such a link is a deliberate setup whose clearing the cold build must keep.

Source
record(resolved : String, project_root : String) : Nil

Remember that hwaro owns resolved from now on. Best effort: a read-only project directory must not fail the build over bookkeeping.

Source
recorded?(resolved : String, project_root : String) : Bool
Source