Anyway, the reality is we *don’t* use processes and pipes for important things, *because* they fail roughly like this. You can say “but error codes” all you want, we don’t do this with browsers or ssh or gzip or REPLs (hello, Jupyter) or anything else. Because this hits a wall.https://twitter.com/marcan42/status/996231278276919296 …
-
-
No, that’s what you’re not getting. It really is the fragility of the interface that gets you the “It returns content by default, hope you’re smart enough to check the error code, what do you mean nothing did” surprise not surprised dynamic
-
Again, that "it returns content by default" is a *consequence* of the streaming design of the interface. It would be *exactly the same* as a shared library, with that design constraint. You'd end up with a "more data" callback getting called before the main entry returns error.
- Show replies
New conversation -
-
-
If the bug were due to a weakly typed error message being ignored by default in a client then you'd have a point. But it isn't. The gpg command exits with a big fat retcode 2. That's just as good as a C function returning an error code.
Thanks. Twitter will use this to make your timeline better. UndoUndo
-
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.