type Ask

ezx@1.11.0.0 · src/lock/up.bend:38

import ezx@1.11.0.0/src/lock/up.bend as Up
import Base

38# a question the upgrade asks, answered by one IO action. `ez add`
39# (add/plan.bend) asks four of them too: `Tags`, `Head` and `Refs` to resolve
40# a ref, and `Clone` for the checkout it walks. The upgrade asks each with
41# the source its ledger records, and looks the answer up by that; git is asked
42# the same question with that source anchored at the project (`anchor`),
43# which the planner computes (lock/plan.bend, `P.Query`). `ez add` and
44# `ez fetch` ask with the source anchored already.
45type Ask is Data:
46  Refs{url: String, ref: String}                 # `git ls-remote url refs/tags/<ref> ... refs/heads/<ref>`
47  Head{url: String}                              # `git ls-remote --symref url HEAD`
48  Tags{url: String}                              # `git ls-remote --tags url`, for a tool with no tag
49  Above{url: String, pin: String, tip: String}   # whether `tip` descends from `pin`
50  Tree{url: String, rev: String, entry: String}  # a checkout at rev: narHash, root, the package its entry reaches
51  Weigh{url: String, rev: String}                # a checkout at rev, narHash only, for a tool
52  HubHas{hub: String, hash: String}              # the hub's manifest for a hash a dependency moved to
53  Ignore{}                                       # `.gitignore`, "" when missing
54  Sources{}                                      # every `.bend` file outside `.ez` and `.git`
55  Clone{url: String, rev: String}                # a checkout at rev: narHash and every file's text, for `ez add`

Uses (1)

Used by (80)