Builtin Library
README.md
zm.prOpen
Open a pull request — propose the work on one branch for merging into another.
Both ends are addressable. From a fork, the target defaults to the world it was forked from, so zm.prOpen({ title = "..." }) proposes the fork's branch upstream; pass targetWorld to open the request against another world. In a world that is no fork the target is the same world, which is the ordinary branch-to-branch case.
A pull request references published commits. Work sitting only in your session is not part of one, so zm.push first — otherwise the request proposes a commit the other end cannot see.
A request lives in, and is numbered by, the world it targets, exactly as a forge numbers pull requests on the upstream repository. So a fork's outgoing requests are listed on the world they were opened against, not on the fork.
zm.prOpen({ title = "fix the door hinge" })
zm.prOpen({ title = "port the fix", targetWorld = "11111111-2222-3333-4444-555555555555" })