<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/test/test-lib.el, branch 0.30_rc0</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=0.30_rc0</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=0.30_rc0'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2020-04-30T20:54:37Z</updated>
<entry>
<title>tests/smime: Use gpgsm instead of openssl for mml creation of S/MIME msgs</title>
<updated>2020-04-30T20:54:37Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2020-04-28T18:57:13Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=2e351d10c2aba786656715e8334fc2296e22527d'/>
<id>urn:sha1:2e351d10c2aba786656715e8334fc2296e22527d</id>
<content type='text'>
The documentation for message mode clearly states that EasyPG (which
uses GnuPG) is the default and recommended way to use S/MIME with
mml-secure:

[0] https://www.gnu.org/software/emacs/manual/html_node/message/Using-S_002fMIME.html

To ensure that this mode works, we just need to import the secret key
in question into gpgsm in addition to the public key.  gpgsm should be
able pick the right keys+certificates to use based on To/From headers,
so we don't have to specify anything manually in the #secure mml tag.

The import process from the OpenSSL-preferred form (cert+secretkey) is
rather ugly, because gpgsm wants to see a PKCS#12 object when
importing secret keys.

Note that EasyPG generates the more modern Content-Type:
application/pkcs7-signature instead of application/x-pkcs7-signature
for the detached signature.

We are also obliged to manually set gpgsm's include-certs setting to 1
because gpgsm defaults to send "everything but the root cert".  In our
weird test case, the certificate we're using is self-signed, so it
*is* the root cert, which means that gpgsm doesn't include it by
default.  Setting it to 1 forces inclusion of the signer's cert, which
satisfies openssl's smime subcommand. See https://dev.gnupg.org/T4878
for more details.

Signed-off-by: Daniel Kahn Gillmor &lt;dkg@fifthhorseman.net&gt;
</content>
</entry>
<entry>
<title>emacs: Use `cl-lib' instead of deprecated `cl'</title>
<updated>2020-04-27T10:36:10Z</updated>
<author>
<name>Jonas Bernoulli</name>
<email>jonas@bernoul.li</email>
</author>
<published>2020-04-25T20:18:07Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=11ac932a4503872c19987b843d58513c4b9ef76f'/>
<id>urn:sha1:11ac932a4503872c19987b843d58513c4b9ef76f</id>
<content type='text'>
Starting with Emacs 27 the old `cl' implementation is finally
considered obsolete.  Previously its use was strongly discouraged
at run-time but one was still allowed to use it at compile-time.

For the most part the transition is very simple and boils down to
adding the "cl-" prefix to some symbols.  A few replacements do not
follow that simple pattern; e.g. `first' is replaced with `car',
even though the alias `cl-first' exists, because the latter is not
idiomatic emacs-lisp.

In a few cases we start using `pcase-let' or `pcase-lambda' instead
of renaming e.g. `first' to `car'.  That way we can remind the reader
of the meaning of the various parts of the data that is being
deconstructed.

An obsolete `lexical-let' and a `lexical-let*' are replaced with their
regular variants `let' and `let*' even though we do not at the same
time enable `lexical-binding' for that file.  That is the right thing
to do because it does not actually make a difference in those cases
whether lexical bindings are used or not, and because this should be
enabled in a separate commit.

We need to explicitly depend on the `cl-lib' package because Emacs
24.1 and 24.2 lack that library.  When using these releases we end
up using the backport from GNU Elpa.

We need to explicitly require the `pcase' library because
`pcase-dolist' was not autoloaded until Emacs 25.1.
</content>
</entry>
<entry>
<title>emacs: maildir: add the actual insert code</title>
<updated>2016-09-04T11:23:14Z</updated>
<author>
<name>Mark Walters</name>
<email>markwalters1009@gmail.com</email>
</author>
<published>2016-09-03T22:59:43Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=fce8146a8b738f2317034fee6236cdbd3597849b'/>
<id>urn:sha1:fce8146a8b738f2317034fee6236cdbd3597849b</id>
<content type='text'>
With all the preparation it is now simple to add the actual insert
code. Since insert can fail for many reasons we let the user decide
interactively deal with it.

We modify test-lib.el to set file fcc, so that all the old tests and
emacs_fcc_message from test-lib.sh still work
</content>
</entry>
<entry>
<title>Use https instead of http where possible</title>
<updated>2016-06-05T11:32:17Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2016-06-02T16:26:14Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=6a833a6e83865f6999707cc30768d07e1351c2cb'/>
<id>urn:sha1:6a833a6e83865f6999707cc30768d07e1351c2cb</id>
<content type='text'>
Many of the external links found in the notmuch source can be resolved
using https instead of http.  This changeset addresses as many as i
could find, without touching the e-mail corpus or expected outputs
found in tests.
</content>
</entry>
<entry>
<title>test/test-lib.el: revert setting notmuch-mua-reply-insert-header-p-function</title>
<updated>2016-03-26T12:03:54Z</updated>
<author>
<name>Tomi Ollila</name>
<email>tomi.ollila@iki.fi</email>
</author>
<published>2016-03-19T15:50:29Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=cc369779abc6599a758ed60dc17d2f3862bdcacf'/>
<id>urn:sha1:cc369779abc6599a758ed60dc17d2f3862bdcacf</id>
<content type='text'>
in d27d90875dfb1 (2016-02-20) notmuch-mua-reply-insert-header-p-function
was set to notmuch-show-reply-insert-header-p-never as its default was
changed to something else. Now that default is set back to *-never so
this change done in d27d90875dfb1 is not needed anymore.
</content>
</entry>
<entry>
<title>emacs/mua: Let user specify which parts get a header in citations.</title>
<updated>2016-02-21T12:37:48Z</updated>
<author>
<name>David Edmondson</name>
<email>dme@dme.org</email>
</author>
<published>2016-02-20T18:24:40Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=d27d90875dfb16720de624a57387451665882c19'/>
<id>urn:sha1:d27d90875dfb16720de624a57387451665882c19</id>
<content type='text'>
Add a customizable function specifying which parts get a header when
replying, and give some sensible possiblities. These are,

1) all parts except multipart/*. (Subparts of a multipart part do
receive a header button.)

2) only included text/* parts.

3) Exactly as in the show buffer.

4) None at all. This means the reply contains a mish-mash of all the
original message's parts.

In the test suite we set the choice to option 4 to match the
previous behaviour.
</content>
</entry>
<entry>
<title>test: initial tests for S/MIME and notmuch-emacs</title>
<updated>2016-01-29T21:45:46Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2015-08-16T17:41:12Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=ef30770dfa0fbef4e91ec90d6ce21b5a55b15375'/>
<id>urn:sha1:ef30770dfa0fbef4e91ec90d6ce21b5a55b15375</id>
<content type='text'>
Test the ability of notmuch-mua-mail to send S/MIME signed (and
encrypted) messages; this really relies on existing functionality in
message-mode.

The generated keys and messages will later be useful for testing the
notmuch CLI.
</content>
</entry>
<entry>
<title>test: New tests for Emacs charset handling</title>
<updated>2014-09-21T19:23:45Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2014-04-21T18:37:39Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=f4cdabccd0e75d94d7f6f4d50684afc67bbf7f0d'/>
<id>urn:sha1:f4cdabccd0e75d94d7f6f4d50684afc67bbf7f0d</id>
<content type='text'>
The test of viewing 8bit messages is known-broken.  The rest pass, but
for very fragile reasons.  The next several commits will fix the
known-broken test and make our charset handling robust.
</content>
</entry>
<entry>
<title>test/emacs: globally force the html renderer to html2text</title>
<updated>2014-09-21T19:12:52Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2014-09-20T05:41:35Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=b4892677016c7a994dea75b8ea71bbde92ac17cb'/>
<id>urn:sha1:b4892677016c7a994dea75b8ea71bbde92ac17cb</id>
<content type='text'>
Previously we did this for a single test, but some other proposed
tests ( id:1398105468-14317-3-git-send-email-amdragon@mit.edu ) show
similar breakage when switching renderers.
</content>
</entry>
<entry>
<title>test: make test_emacs call post-command-hook</title>
<updated>2014-07-13T15:33:53Z</updated>
<author>
<name>David Bremner</name>
<email>david@tethera.net</email>
</author>
<published>2014-05-09T00:20:07Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=eed6c75556e18d943ac690598edceef0c4ee59d5'/>
<id>urn:sha1:eed6c75556e18d943ac690598edceef0c4ee59d5</id>
<content type='text'>
The unread/read changes will use the post-command-hook. test_emacs
does not call the post-command-hook. This adds a notmuch-test-progn
which takes a list of commands as argument and executes them in turn
but runs the post-command-hook after each one.

The caller can batch operations (ie to stop post-command-hook from
being interleaved) by wrapping the batch of operations inside a progn.

We also explicitly run the post-command-hook before getting the output
from a test; this makes sense as this will be a place the user would
be seeing the information.
</content>
</entry>
</feed>
