purebred-mua / purebred

A terminal based mail user agent based on notmuch
GNU Affero General Public License v3.0
139 stars 19 forks source link

abstract EntityCommand over the output type #490

Closed frasertweedale closed 1 year ago

frasertweedale commented 1 year ago

EntityCommand final output type was T.Text. The ccAfterExit must convert the raw command output from Tainted L.ByteString to T.Text. This was not ideal. In general, features that execute commands over body content might need the raw bytes, or might wish to convert the raw bytes into something other than T.Text.

Therefore this commit makes the following changes:

This refactor will facilitate an upcoming generalisation of the "mailcap" configuration. It also enables more kinds of body processing in the future.