Skip to content

v0.2.0

@pinecat pinecat tagged this 09 Nov 06:23
This is a pretty huge rewrite of the application, which adds quite a bit
of features and functionality.

First of all, the program has been split up into multiple files, in
order to organize the code a bit better. Doc comments were added/updated
for new and exiting functions alike.

The program now comes with multiple binaries:
  - midnight,
  - mn,
  - mnq,
  - mnrm,
  - and mnsend.

The 'midnight' binary is used to schedule messages for delivery, and is
primarily intended to be used via a macro in neomutt (see README file
for details).

The 'mn' binary is just an alias for 'midnight'.

The 'mnq' binary lists messages that have been scheduled for delivery in
a nice format.

The 'mnrm' binary takes in a job ID, and removes that job from the queue
(also removes the job from atq(1)).

The 'mnsend' binary is used to send a message that has been queued for
delivery. This is in opposition to the way the program worked before,
where neomutt was invoked directly by at(1). The benefit of using
'mnsend', is that it works off of the unique message ID, meaning that
the user is able to edit a message that is scheduled for delivery,
before it actually gets sent, without having to requeue the message. The
binary is not intended to be used by the user directly, but rather, is
called by Message::enqueue().

The following (optional) flags were added to midnight. They may be
invoked from any of the binaries listed above (which may override that
binary's default behavior):
  - -h, --help: Print help message then quit
  - -q, --queue: List items in queue (alias for 'mnq')
  - -r, --remove: Remove item from queue via job ID (alias for 'mnrm')
  - -s, --send: Send message in queue via message ID
                (alias for 'mnsend')
  - -V, --version: Print the version then quit

Finally, the README file was updated to address some of the caveats, as
well as provide extra information for installation and configuration.
Assets 2
Loading