Lock.nar.why.go: def of ezx@1.13.0.0 Import: import ezx@1.13.0.0/src/lock/lock.bend as Lock Lines 349-365 of ezx@1.13.0.0/src/lock/lock.bend: https://jend.leeeet.dev/read.txt?path=ezx@1.13.0.0/src/lock/lock.bend&start_line=349&end_line=365 import Base # why a fetched checkout is not the one the ledger pins, or "" when it is. # The NAR hash is over the whole checkout, so a rev that no longer holds what # it held when it was pinned is caught here, before anything is laid out. A # ledger with no NAR hash has nothing to check the checkout against, and an # unchecked tree is not one a lock may record. def nar.why.go(none: Bool, same: Bool, +want: String, +got: String, +url: String, +rev: String) -> String: match none: case True{}: "ez: ez.toml records no narHash for " ++ url ++ " at " ++ rev ++ ", so its tree cannot be checked; run `ez lock --upgrade` to pin it" case False{}: match same: case True{}: "" case False{}: "ez: " ++ url ++ " at " ++ rev ++ " has narHash " ++ got ++ ", and ez.toml records " ++ want Uses (3): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Bool https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=String https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=String.append