mu/perl
Ævar Arnfjörð Bjarmason 6523ca6b3c perl: Add a .gitignore file with the MYMETA build assets
These get created by ExtUtils::MakeMaker, so they won't be found by
grepping our own code, but they're created by the build process.
2017-02-17 14:43:16 +01:00
..
lib perl: Integrate the mup interface from https://github.com/StAlphonsos/mup 2016-08-26 15:32:24 -05:00
t perl: Integrate the mup interface from https://github.com/StAlphonsos/mup 2016-08-26 15:32:24 -05:00
.gitignore perl: Add a .gitignore file with the MYMETA build assets 2017-02-17 14:43:16 +01:00
LICENSE perl: Integrate the mup interface from https://github.com/StAlphonsos/mup 2016-08-26 15:32:24 -05:00
MANIFEST perl: Integrate the mup interface from https://github.com/StAlphonsos/mup 2016-08-26 15:32:24 -05:00
Makefile.PL perl: Integrate the mup interface from https://github.com/StAlphonsos/mup 2016-08-26 15:32:24 -05:00
README.md perl: Integrate the mup interface from https://github.com/StAlphonsos/mup 2016-08-26 15:32:24 -05:00

README.md

mup

mup is a perl interface to mu (GitHub), a Maildir indexing and search system that also implements the core functionality needed by pretty much any MUA.

mup replicates the API described in the mu-server(1) man page in a pleasingly Perly style. It is licensed under the ISC license, a simplified variant of the BSD license.

mup works in the same way the elisp code in mu4e does: it forks a mu-server process and communicates with it. I use the Data::SExpression CPAN module to deal with mu-server's LISPy result syntax, which we transform into the obvious hashrefian results our callers crave (they've got electrolytes).

Tests

I use standard perl testing stuff (Test::More). The tests all operate on a temporary Maildir/mu index created by t/lib.pm. If you are interested in hacking on or understanding the tests you should first look at t/lib.pm to see how the temporary setup is created and torn down. All tests should have

use t::lib;

in them somewhere near the top. This is all that is necessary to make sure the code in the test does not e.g. hose down your actual ~/Maildir and/or ~/.mu.