Skip to content

servePlumb throws error message: plumb file does not exist #4

@benghancock

Description

@benghancock

Hi Russ,

Thanks for the todo package - it's really nice to have this functionality inside of Acme.

I've experienced an issue where each time I start with todo -a, I get an +Errors window with this message:

plumb: plumb file does not exist

Upon investigation, this appears to be thrown by the servePlumb() function:

todo/acme.go

Lines 435 to 441 in d56e308

func servePlumb() {
kind := strings.Trim(root, "/")
fid, err := plumb.Open(kind, 0)
if err != nil {
acme.Err(root, fmt.Sprintf("plumb: %v", err))
return
}

I modified the source and rebuilt, and it seems that fid is consistently <nil> and that this function simply returns at line 440. The other effect of this seems to be that the call to acme.AutoExit(true) does not work; even after deleting the last managed window, the todo process stays running.

If I comment out the call to go servePlumb() here ...

todo/acme.go

Line 42 in d56e308

go servePlumb()

... then the plumb: error message does not appear and autoExit works as expected; the functionality of todo seems unaffected. I imagine that there is an impact, though; I just haven't figured out what it is yet.

From my limited understanding of the plumb package and 9p, it seems that this function is trying to open a file at plumb/todo on the 9P server, which (for me at least) does not exist - though I do have plumb/rules. Is this correct, and if so, is there documentation on what this file is used for and how it should be created?

I'm running plan9port under OpenBSD 7.1.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions