<feed xmlns='http://www.w3.org/2005/Atom'>
<title>poul-list/src, branch master</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.</subtitle>
<id>https://git.delayed.space/poul-list/atom/src?h=master</id>
<link rel='self' href='https://git.delayed.space/poul-list/atom/src?h=master'/>
<link rel='alternate' type='text/html' href='https://git.delayed.space/poul-list/'/>
<updated>2026-07-05T10:37:44Z</updated>
<entry>
<title>Move the mail processing to its own function</title>
<updated>2026-07-05T10:37:44Z</updated>
<author>
<name>Mroik</name>
<email>mroik@delayed.space</email>
</author>
<published>2026-07-05T10:37:44Z</published>
<link rel='alternate' type='text/html' href='https://git.delayed.space/poul-list/commit/?id=d8b4f3b3e52edccc332df4600985e9bc2ce510d3'/>
<id>urn:sha1:d8b4f3b3e52edccc332df4600985e9bc2ce510d3</id>
<content type='text'>
Signed-off-by: Mroik &lt;mroik@delayed.space&gt;
</content>
</entry>
<entry>
<title>Implement SMTP client</title>
<updated>2026-06-29T16:21:47Z</updated>
<author>
<name>Mroik</name>
<email>mroik@delayed.space</email>
</author>
<published>2026-06-29T16:19:41Z</published>
<link rel='alternate' type='text/html' href='https://git.delayed.space/poul-list/commit/?id=938379d6d7f03747c8d7aeac4be534c9e20cfd05'/>
<id>urn:sha1:938379d6d7f03747c8d7aeac4be534c9e20cfd05</id>
<content type='text'>
This is used to forward requests to the main MTA to send emails to the
subscribers of the mailing list.

Signed-off-by: Mroik &lt;mroik@delayed.space&gt;
</content>
</entry>
<entry>
<title>SMTP: Handle empty fields in process request</title>
<updated>2026-05-30T14:57:32Z</updated>
<author>
<name>Mroik</name>
<email>mroik@delayed.space</email>
</author>
<published>2026-05-30T14:07:36Z</published>
<link rel='alternate' type='text/html' href='https://git.delayed.space/poul-list/commit/?id=91d07b57b17065f727f7b804979a0df6af69f3f2'/>
<id>urn:sha1:91d07b57b17065f727f7b804979a0df6af69f3f2</id>
<content type='text'>
Signed-off-by: Mroik &lt;mroik@delayed.space&gt;
</content>
</entry>
<entry>
<title>Add queue for mail processing</title>
<updated>2026-05-30T14:57:25Z</updated>
<author>
<name>Mroik</name>
<email>mroik@delayed.space</email>
</author>
<published>2026-05-09T01:23:52Z</published>
<link rel='alternate' type='text/html' href='https://git.delayed.space/poul-list/commit/?id=3bdf7734903c3b444866b744a461acf0ee728797'/>
<id>urn:sha1:3bdf7734903c3b444866b744a461acf0ee728797</id>
<content type='text'>
Add DB table for queue. It is necessary in case the delivery fails and
we'll need to retry.

Signed-off-by: Mroik &lt;mroik@delayed.space&gt;
</content>
</entry>
<entry>
<title>Fix last touchups on SmtpServer and add test</title>
<updated>2026-04-15T02:36:35Z</updated>
<author>
<name>Mroik</name>
<email>mroik@delayed.space</email>
</author>
<published>2026-04-15T00:20:50Z</published>
<link rel='alternate' type='text/html' href='https://git.delayed.space/poul-list/commit/?id=44de384e68732ad31b8d258580036b0a10004b71'/>
<id>urn:sha1:44de384e68732ad31b8d258580036b0a10004b71</id>
<content type='text'>
Fix some mistakes in the SmtpServer implementation and add test.

This test is only for the ideal interaction, it doesn't cover all checks
for the malformed or out of order commands. This is left for later.

Signed-off-by: Mroik &lt;mroik@delayed.space&gt;
</content>
</entry>
<entry>
<title>Remove extra String alloc improving memory usage</title>
<updated>2026-04-13T04:56:12Z</updated>
<author>
<name>Mroik</name>
<email>mroik@delayed.space</email>
</author>
<published>2026-04-12T19:16:17Z</published>
<link rel='alternate' type='text/html' href='https://git.delayed.space/poul-list/commit/?id=784bf87d6fbf59194412c1dafeb56b3ed3946106'/>
<id>urn:sha1:784bf87d6fbf59194412c1dafeb56b3ed3946106</id>
<content type='text'>
Signed-off-by: Mroik &lt;mroik@delayed.space&gt;
</content>
</entry>
<entry>
<title>Move logging for premature TCP termination</title>
<updated>2026-04-13T04:56:12Z</updated>
<author>
<name>Mroik</name>
<email>mroik@delayed.space</email>
</author>
<published>2026-04-12T01:23:32Z</published>
<link rel='alternate' type='text/html' href='https://git.delayed.space/poul-list/commit/?id=e3854173d720fbbc4f98a7939ac667fcac007ec1'/>
<id>urn:sha1:e3854173d720fbbc4f98a7939ac667fcac007ec1</id>
<content type='text'>
It logs anytime we break out of the loop, therefore logging a connection
closed by remote regardless of what happened.

Move logging to closed connection check and make it a warn instead of an
info.

Signed-off-by: Mroik &lt;mroik@delayed.space&gt;
</content>
</entry>
<entry>
<title>Add SMTP QUIT command</title>
<updated>2026-04-13T04:56:12Z</updated>
<author>
<name>Mroik</name>
<email>mroik@delayed.space</email>
</author>
<published>2026-04-11T22:08:02Z</published>
<link rel='alternate' type='text/html' href='https://git.delayed.space/poul-list/commit/?id=9fd2ab82f027c7434b4fe67d82874a017a531afb'/>
<id>urn:sha1:9fd2ab82f027c7434b4fe67d82874a017a531afb</id>
<content type='text'>
Signed-off-by: Mroik &lt;mroik@delayed.space&gt;
</content>
</entry>
<entry>
<title>Fix reply messages</title>
<updated>2026-04-13T04:56:12Z</updated>
<author>
<name>Mroik</name>
<email>mroik@delayed.space</email>
</author>
<published>2026-04-11T21:56:35Z</published>
<link rel='alternate' type='text/html' href='https://git.delayed.space/poul-list/commit/?id=3b8b520400060eef059c85e3ad7bfefccd17e29f'/>
<id>urn:sha1:3b8b520400060eef059c85e3ad7bfefccd17e29f</id>
<content type='text'>
The replies do not end with &lt;CRLF&gt;. Fix it.

Signed-off-by: Mroik &lt;mroik@delayed.space&gt;
</content>
</entry>
<entry>
<title>Add a note on email encodings</title>
<updated>2026-04-13T04:56:11Z</updated>
<author>
<name>Mroik</name>
<email>mroik@delayed.space</email>
</author>
<published>2026-04-11T03:22:40Z</published>
<link rel='alternate' type='text/html' href='https://git.delayed.space/poul-list/commit/?id=040279c48c893aae28de6fe5522f5cdc1f020eb3'/>
<id>urn:sha1:040279c48c893aae28de6fe5522f5cdc1f020eb3</id>
<content type='text'>
Leave a note for future devs that the server might receive an email with
an encoding different from ASCII or UTF-8. This can be problematic as
String accepts only UTF-8 valid strings.

In TODO when I say "handle non UTF-8 encodings", I think it would be
totally ok to just disregard anything that isn't UTF-8 and return a
"rejected for policy" error to the MTA. Otherwise we'll just have to put
`encoding_rs` in the mix.

Signed-off-by: Mroik &lt;mroik@delayed.space&gt;
</content>
</entry>
</feed>
