src/pub/run.bend fails
raw source on the hub · import 0x886223f5c47e4983fe57d887c034bc7f/src/pub/run.bend as Run
pub/run: the interpreter for ez publish. It reads the directory the
project is in and the ledger's text into a World, then loops: it asks the
planner (pub/plan.bend) what is still open, answers each question, and adds
the answers to the World, until nothing is left to ask. Then it runs the
planner's plan with the lock's effect runner (Run.exec.plan), which prints
what a publish that agreed says, or exits 1 with the reason.
What git says of the project and a file's text are answered as the tool
commands answer them (ToolRun.answer). What git tracks is git ls-files
-v in the project, with paths written as they are rather than quoted. The
upload is bend <entry> --publish, followed by the <name>@<version> the
planner put in the question when the ledger names one, with the project's
packages on BEND_LIB, the way every other bend ez starts has them; the
planner asks for it last, once every other check has passed. Just before it
runs, the line the question carries, the hub description, goes to stderr,
where bend's own notices go, so stdout stays the hash and the import line.
Before that, the lock is read as a file, and a url under the hub is asked
for with the lock's own GET (Web.get), whose answer is a status line and
the text: whether the hub answered 200, and the body or why not.
It decides nothing; that it reads and executes faithfully is EZ-TRUST-2.
11 imports
import Base import 0xabe575924687afad4cee1a2c1194d639/main.bend as R import ../io/file.bend as F import ../lock/run.bend as Run import ../tool/run.bend as ToolRun import ../tool/world.bend as TW import ../hub/hub.bend as Web import ../hub/get.bend as Net import ../share/env.bend as Env import ./world.bend as PW import ./plan.bend as PP
The reader could not load this file (at 0x886223f5c47e4983fe57d887c034bc7f/src/tool/plan.bend:867). What bend.ts says:
Error:
- expected : a fresh constructor name (duplicate declaration: Wait)
- observed : 'Wait'
Location:
866 | Go{}
867>| Wait{asks: List<&2, TW.Ask>, ups: List<&2, Up.Ask>}
| ^^^^
868 | Stop{why: String}