c0d9aa7518
Codeberg is being retired as the project's public site, so every reference now points at GitHub. That includes the Go module path (codeberg.org/mix/selfpost → github.com/mixeme/selfpost): leaving an import path on a host that is going away would break `go get` and `go install`, so this is not only a docs change. Touches go.mod, test/e2e/go.mod, all imports, Makefile MODULE, the -ldflags version stamp in build/Dockerfile and docs/development.md, the licence headers in the SVG/HTML assets, and README (no more primary/mirror pair). Comments no longer cite the archived specification. "spec 7.6.1", "spec 5.1" and friends pointed into docs/archive/specification-v1.0.md, which is marked as not a source of truth; each is now a reference to the live document that owns the subject — architecture.md (with section), product.md, security.md or the README. The review only asked for the 7.x refs (code-review.md § 4), but 4/5/6/ 8/9 had the same defect, so they went too. Comments only, no behaviour change. Also closes the remaining review items: architecture.md gained a Code layers section with the layer diagram (A2), and TestParseDelivery gained the exotic mail.log cases (§ 3). Fixes a bug that last test found: the delivery-line pattern matched status= greedily, taking the *last* occurrence on the line. Postfix appends the remote server's reply verbatim, so a rejection whose reply quoted "status=sent" was filed as a delivered message in the send log. It now takes the first status= after the recipient, which is the real field. R7 (CONTRIBUTING.md) moved to roadmap 2.x — one developer, no external PR flow, so the file would have no audience yet. R1 (compose image tag) and the git tag stay in roadmap § v1.x as the release-commit steps. gofmt/go vet clean on both modules; go test ./... green except the three known Windows-only failures (file perms, backslash paths, renaming an open file). Not exercised on the dev server — no Docker locally. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
11 lines
13 KiB
XML
11 lines
13 KiB
XML
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 330 150" width="330" height="150" role="img" aria-label="SelfPost — self-hosted SMTP relay">
|
|
<!-- SelfPost · https://github.com/mixeme/selfpost · AGPL-3.0
|
|
Wordmark set in IBM Plex Sans (OFL) and converted to outlines: the
|
|
file needs no font installed to render as drawn. -->
|
|
<path d="M24.70 14.00 L27.97 14.00 A2.7 2.7 0 0 0 33.37 14.00 L36.63 14.00 A2.7 2.7 0 0 0 42.03 14.00 L45.30 14.00 A2.7 2.7 0 0 0 50.70 14.00 L53.97 14.00 A2.7 2.7 0 0 0 59.37 14.00 L62.63 14.00 A2.7 2.7 0 0 0 68.03 14.00 L71.30 14.00 A2.7 2.7 0 0 0 76.70 14.00 L79.97 14.00 A2.7 2.7 0 0 0 85.37 14.00 L88.63 14.00 A2.7 2.7 0 0 0 94.03 14.00 L97.30 14.00 A2.7 2.7 0 0 0 102.70 14.00 L105.97 14.00 A2.7 2.7 0 0 0 111.37 14.00 L114.63 14.00 A2.7 2.7 0 0 0 120.03 14.00 L123.30 14.00 A2.7 2.7 0 0 0 128.70 14.00 L131.97 14.00 A2.7 2.7 0 0 0 137.37 14.00 L140.63 14.00 A2.7 2.7 0 0 0 146.03 14.00 L149.30 14.00 A2.7 2.7 0 0 0 154.70 14.00 L157.97 14.00 A2.7 2.7 0 0 0 163.37 14.00 L166.63 14.00 A2.7 2.7 0 0 0 172.03 14.00 L175.30 14.00 A2.7 2.7 0 0 0 180.70 14.00 L183.97 14.00 A2.7 2.7 0 0 0 189.37 14.00 L192.63 14.00 A2.7 2.7 0 0 0 198.03 14.00 L201.30 14.00 A2.7 2.7 0 0 0 206.70 14.00 L209.97 14.00 A2.7 2.7 0 0 0 215.37 14.00 L218.63 14.00 A2.7 2.7 0 0 0 224.03 14.00 L227.30 14.00 A2.7 2.7 0 0 0 232.70 14.00 L235.97 14.00 A2.7 2.7 0 0 0 241.37 14.00 L244.63 14.00 A2.7 2.7 0 0 0 250.03 14.00 L253.30 14.00 A2.7 2.7 0 0 0 258.70 14.00 L261.97 14.00 A2.7 2.7 0 0 0 267.37 14.00 L270.63 14.00 A2.7 2.7 0 0 0 276.03 14.00 L279.30 14.00 A2.7 2.7 0 0 0 284.70 14.00 L287.97 14.00 A2.7 2.7 0 0 0 293.37 14.00 L296.63 14.00 A2.7 2.7 0 0 0 302.03 14.00 L305.30 14.00 A2.7 2.7 0 0 0 308.00 16.70 L308.00 20.01 A2.7 2.7 0 0 0 308.00 25.41 L308.00 28.73 A2.7 2.7 0 0 0 308.00 34.13 L308.00 37.44 A2.7 2.7 0 0 0 308.00 42.84 L308.00 46.16 A2.7 2.7 0 0 0 308.00 51.56 L308.00 54.87 A2.7 2.7 0 0 0 308.00 60.27 L308.00 63.59 A2.7 2.7 0 0 0 308.00 68.99 L308.00 72.30 A2.7 2.7 0 0 0 308.00 77.70 L308.00 81.01 A2.7 2.7 0 0 0 308.00 86.41 L308.00 89.73 A2.7 2.7 0 0 0 308.00 95.13 L308.00 98.44 A2.7 2.7 0 0 0 308.00 103.84 L308.00 107.16 A2.7 2.7 0 0 0 308.00 112.56 L308.00 115.87 A2.7 2.7 0 0 0 308.00 121.27 L308.00 124.59 A2.7 2.7 0 0 0 308.00 129.99 L308.00 133.30 A2.7 2.7 0 0 0 305.30 136.00 L302.03 136.00 A2.7 2.7 0 0 0 296.63 136.00 L293.37 136.00 A2.7 2.7 0 0 0 287.97 136.00 L284.70 136.00 A2.7 2.7 0 0 0 279.30 136.00 L276.03 136.00 A2.7 2.7 0 0 0 270.63 136.00 L267.37 136.00 A2.7 2.7 0 0 0 261.97 136.00 L258.70 136.00 A2.7 2.7 0 0 0 253.30 136.00 L250.03 136.00 A2.7 2.7 0 0 0 244.63 136.00 L241.37 136.00 A2.7 2.7 0 0 0 235.97 136.00 L232.70 136.00 A2.7 2.7 0 0 0 227.30 136.00 L224.03 136.00 A2.7 2.7 0 0 0 218.63 136.00 L215.37 136.00 A2.7 2.7 0 0 0 209.97 136.00 L206.70 136.00 A2.7 2.7 0 0 0 201.30 136.00 L198.03 136.00 A2.7 2.7 0 0 0 192.63 136.00 L189.37 136.00 A2.7 2.7 0 0 0 183.97 136.00 L180.70 136.00 A2.7 2.7 0 0 0 175.30 136.00 L172.03 136.00 A2.7 2.7 0 0 0 166.63 136.00 L163.37 136.00 A2.7 2.7 0 0 0 157.97 136.00 L154.70 136.00 A2.7 2.7 0 0 0 149.30 136.00 L146.03 136.00 A2.7 2.7 0 0 0 140.63 136.00 L137.37 136.00 A2.7 2.7 0 0 0 131.97 136.00 L128.70 136.00 A2.7 2.7 0 0 0 123.30 136.00 L120.03 136.00 A2.7 2.7 0 0 0 114.63 136.00 L111.37 136.00 A2.7 2.7 0 0 0 105.97 136.00 L102.70 136.00 A2.7 2.7 0 0 0 97.30 136.00 L94.03 136.00 A2.7 2.7 0 0 0 88.63 136.00 L85.37 136.00 A2.7 2.7 0 0 0 79.97 136.00 L76.70 136.00 A2.7 2.7 0 0 0 71.30 136.00 L68.03 136.00 A2.7 2.7 0 0 0 62.63 136.00 L59.37 136.00 A2.7 2.7 0 0 0 53.97 136.00 L50.70 136.00 A2.7 2.7 0 0 0 45.30 136.00 L42.03 136.00 A2.7 2.7 0 0 0 36.63 136.00 L33.37 136.00 A2.7 2.7 0 0 0 27.97 136.00 L24.70 136.00 A2.7 2.7 0 0 0 22.00 133.30 L22.00 129.99 A2.7 2.7 0 0 0 22.00 124.59 L22.00 121.27 A2.7 2.7 0 0 0 22.00 115.87 L22.00 112.56 A2.7 2.7 0 0 0 22.00 107.16 L22.00 103.84 A2.7 2.7 0 0 0 22.00 98.44 L22.00 95.13 A2.7 2.7 0 0 0 22.00 89.73 L22.00 86.41 A2.7 2.7 0 0 0 22.00 81.01 L22.00 77.70 A2.7 2.7 0 0 0 22.00 72.30 L22.00 68.99 A2.7 2.7 0 0 0 22.00 63.59 L22.00 60.27 A2.7 2.7 0 0 0 22.00 54.87 L22.00 51.56 A2.7 2.7 0 0 0 22.00 46.16 L22.00 42.84 A2.7 2.7 0 0 0 22.00 37.44 L22.00 34.13 A2.7 2.7 0 0 0 22.00 28.73 L22.00 25.41 A2.7 2.7 0 0 0 22.00 20.01 L22.00 16.70 A2.7 2.7 0 0 0 24.70 14.00 Z" fill="#F3EDE1" stroke="#12161C" stroke-width="0.8" stroke-linejoin="round" />
|
|
<rect x="31" y="23" width="268" height="104" fill="#7A3B2E" />
|
|
<path d="M110.54 82.46Q107.27 82.46 105.14 81.22Q103.02 79.99 101.53 78.05L102.6 77.21Q104 79.04 105.85 80.12Q107.69 81.2 110.58 81.2Q113.88 81.2 115.69 79.64Q117.49 78.09 117.49 75.16Q117.49 73.15 116.73 71.99Q115.97 70.83 114.64 70.22Q113.31 69.61 111.68 69.27L109.13 68.78Q106.51 68.28 105.01 67.28Q103.51 66.27 102.85 64.88Q102.18 63.49 102.18 61.86Q102.18 59.54 103.21 58.02Q104.23 56.5 106.09 55.76Q107.96 55.02 110.43 55.02Q113.39 55.02 115.37 56.05Q117.34 57.07 118.48 58.78L117.42 59.58Q116.28 57.95 114.57 57.11Q112.86 56.27 110.35 56.27Q107.2 56.27 105.39 57.64Q103.59 59.01 103.59 61.82Q103.59 63.68 104.37 64.81Q105.14 65.93 106.47 66.53Q107.8 67.14 109.44 67.48L111.98 67.98Q114.68 68.47 116.18 69.52Q117.68 70.56 118.27 71.99Q118.86 73.41 118.86 75.05Q118.86 77.48 117.86 79.11Q116.85 80.75 114.97 81.6Q113.09 82.46 110.54 82.46Z M130.04 82.46Q127.49 82.46 125.65 81.28Q123.81 80.1 122.8 77.86Q121.79 75.62 121.79 72.35Q121.79 69.08 122.78 66.82Q123.77 64.56 125.58 63.4Q127.38 62.24 129.93 62.24Q132.28 62.24 134.07 63.42Q135.85 64.6 136.86 66.74Q137.87 68.89 137.87 71.82V72.42H123.2V73.45Q123.2 76.98 125.01 79.13Q126.81 81.28 130.08 81.28Q132.36 81.28 133.97 80.16Q135.59 79.04 136.42 76.87L137.45 77.44Q136.61 79.72 134.71 81.09Q132.81 82.46 130.04 82.46ZM129.93 63.38Q127.8 63.38 126.3 64.35Q124.8 65.32 124 67.09Q123.2 68.85 123.2 71.21V71.36H136.42V71.13Q136.42 68.78 135.61 67.05Q134.79 65.32 133.33 64.35Q131.86 63.38 129.93 63.38Z M146.92 82H144.07Q143.23 82 142.83 81.58Q142.44 81.16 142.44 80.4V53.88H143.76V80.82H146.92Z M151.56 82V63.87H148.1V62.7H151.56V55.82Q151.56 54.91 152.02 54.39Q152.47 53.88 153.42 53.88H157.22V55.06H152.89V62.7H157.22V63.87H152.89V82Z M164.87 82H159.85V55.48H171.78Q174.25 55.48 176 56.5Q177.75 57.53 178.7 59.37Q179.65 61.21 179.65 63.68Q179.65 66.15 178.7 68Q177.75 69.84 176 70.87Q174.25 71.89 171.78 71.89H164.87ZM164.87 59.85V67.56H171.33Q172.31 67.56 173 67.2Q173.68 66.84 174.06 66.17Q174.44 65.51 174.44 64.56V62.81Q174.44 61.82 174.06 61.18Q173.68 60.53 173 60.19Q172.31 59.85 171.33 59.85Z M190.37 82.46Q187.56 82.46 185.49 81.18Q183.42 79.91 182.3 77.57Q181.17 75.24 181.17 72.04Q181.17 68.85 182.3 66.55Q183.42 64.25 185.49 62.98Q187.56 61.71 190.37 61.71Q193.22 61.71 195.29 62.98Q197.36 64.25 198.48 66.55Q199.6 68.85 199.6 72.04Q199.6 75.24 198.48 77.57Q197.36 79.91 195.29 81.18Q193.22 82.46 190.37 82.46ZM190.37 78.54Q192.31 78.54 193.41 77.34Q194.51 76.15 194.51 73.91V70.22Q194.51 67.98 193.41 66.8Q192.31 65.62 190.37 65.62Q188.51 65.62 187.39 66.8Q186.27 67.98 186.27 70.22V73.91Q186.27 76.15 187.39 77.34Q188.51 78.54 190.37 78.54Z M209 82.46Q206.15 82.46 204.21 81.49Q202.27 80.52 200.79 78.81L203.75 75.92Q204.85 77.17 206.17 77.9Q207.48 78.62 209.19 78.62Q210.93 78.62 211.71 78.01Q212.49 77.4 212.49 76.34Q212.49 75.46 211.94 74.95Q211.39 74.44 210.06 74.25L208.08 73.98Q205.96 73.72 204.47 72.99Q202.99 72.27 202.23 71.02Q201.47 69.76 201.47 67.98Q201.47 65.09 203.54 63.4Q205.61 61.71 209 61.71Q210.93 61.71 212.32 62.07Q213.71 62.43 214.77 63.13Q215.84 63.84 216.75 64.82L213.9 67.67Q213.02 66.76 211.81 66.15Q210.59 65.55 209.15 65.55Q207.63 65.55 206.89 66.1Q206.15 66.65 206.15 67.6Q206.15 68.59 206.74 69.1Q207.32 69.61 208.73 69.84L210.74 70.11Q214.01 70.56 215.59 72.03Q217.17 73.49 217.17 75.96Q217.17 77.86 216.16 79.34Q215.15 80.82 213.31 81.64Q211.47 82.46 209 82.46Z M229.75 82H226.25Q223.75 82 222.44 80.69Q221.12 79.38 221.12 76.95V66H218.2V62.16H219.72Q220.82 62.16 221.22 61.65Q221.62 61.14 221.62 60.11V56.73H225.99V62.16H230.06V66H225.99V78.12H229.75Z" fill="#F6EDE2" />
|
|
<path d="M137.0 98 H193.0" stroke="#F6EDE2" stroke-width="1" opacity=".5" />
|
|
<path d="M88.83 115.09Q88.15 115.09 87.72 114.84Q87.28 114.59 87 114.2L87.44 113.84Q87.74 114.21 88.07 114.39Q88.39 114.57 88.85 114.57Q89.39 114.57 89.68 114.32Q89.97 114.06 89.97 113.61Q89.97 113.24 89.76 113.04Q89.55 112.83 89.03 112.75L88.47 112.65Q88.11 112.59 87.86 112.46Q87.61 112.33 87.46 112.15Q87.31 111.96 87.24 111.74Q87.18 111.52 87.18 111.28Q87.18 110.59 87.63 110.24Q88.08 109.89 88.85 109.89Q89.46 109.89 89.87 110.09Q90.29 110.29 90.54 110.66L90.11 111.03Q89.91 110.75 89.61 110.58Q89.32 110.41 88.85 110.41Q88.34 110.41 88.06 110.62Q87.79 110.84 87.79 111.27Q87.79 111.61 87.99 111.82Q88.2 112.03 88.73 112.13L89.27 112.22Q89.64 112.29 89.89 112.42Q90.14 112.54 90.3 112.72Q90.45 112.9 90.52 113.13Q90.58 113.35 90.58 113.6Q90.58 114.29 90.13 114.69Q89.67 115.09 88.83 115.09Z M94.45 115V109.97H97.54V110.5H95.05V112.19H97.46V112.72H95.05V114.47H97.54V115Z M101.78 115V109.97H102.39V114.47H104.77V115Z M108.69 115V109.97H111.86V110.5H109.29V112.19H111.64V112.72H109.29V115Z M116.28 113.11V112.51H118.36V113.11Z M125.42 112.72H123.46V115H122.86V109.97H123.46V112.19H125.42V109.97H126.02V115H125.42Z M131.56 115.09Q131.1 115.09 130.77 114.91Q130.44 114.73 130.22 114.4Q130 114.07 129.9 113.59Q129.8 113.11 129.8 112.49Q129.8 111.88 129.9 111.39Q130 110.9 130.22 110.57Q130.44 110.24 130.77 110.06Q131.1 109.89 131.56 109.89Q132.02 109.89 132.35 110.06Q132.68 110.24 132.9 110.57Q133.12 110.9 133.22 111.39Q133.32 111.88 133.32 112.49Q133.32 113.11 133.22 113.59Q133.12 114.07 132.9 114.4Q132.68 114.73 132.35 114.91Q132.02 115.09 131.56 115.09ZM131.56 114.56Q131.86 114.56 132.07 114.44Q132.28 114.32 132.42 114.11Q132.55 113.89 132.61 113.59Q132.68 113.28 132.68 112.9V112.08Q132.68 111.7 132.61 111.39Q132.55 111.08 132.42 110.87Q132.28 110.65 132.07 110.53Q131.86 110.41 131.56 110.41Q131.26 110.41 131.05 110.53Q130.84 110.65 130.7 110.87Q130.57 111.08 130.51 111.39Q130.44 111.7 130.44 112.08V112.9Q130.44 113.28 130.51 113.59Q130.57 113.89 130.7 114.11Q130.84 114.32 131.05 114.44Q131.26 114.56 131.56 114.56Z M138.67 115.09Q137.99 115.09 137.56 114.84Q137.12 114.59 136.84 114.2L137.28 113.84Q137.58 114.21 137.91 114.39Q138.23 114.57 138.69 114.57Q139.23 114.57 139.52 114.32Q139.81 114.06 139.81 113.61Q139.81 113.24 139.6 113.04Q139.39 112.83 138.87 112.75L138.31 112.65Q137.95 112.59 137.7 112.46Q137.45 112.33 137.3 112.15Q137.15 111.96 137.08 111.74Q137.02 111.52 137.02 111.28Q137.02 110.59 137.47 110.24Q137.92 109.89 138.69 109.89Q139.3 109.89 139.71 110.09Q140.13 110.29 140.38 110.66L139.95 111.03Q139.75 110.75 139.45 110.58Q139.16 110.41 138.69 110.41Q138.18 110.41 137.9 110.62Q137.63 110.84 137.63 111.27Q137.63 111.61 137.83 111.82Q138.04 112.03 138.57 112.13L139.11 112.22Q139.48 112.29 139.73 112.42Q139.98 112.54 140.14 112.72Q140.29 112.9 140.36 113.13Q140.42 113.35 140.42 113.6Q140.42 114.29 139.97 114.69Q139.51 115.09 138.67 115.09Z M146.1 110.5V115H145.5V110.5H143.82V109.97H147.78V110.5Z M151.41 115V109.97H154.5V110.5H152.01V112.19H154.42V112.72H152.01V114.47H154.5V115Z M158.56 109.97H159.97Q160.89 109.97 161.34 110.61Q161.8 111.24 161.8 112.49Q161.8 113.73 161.34 114.37Q160.89 115 159.97 115H158.56ZM159.94 114.47Q160.54 114.47 160.85 114.06Q161.16 113.64 161.16 112.88V112.1Q161.16 111.34 160.85 110.92Q160.54 110.5 159.94 110.5H159.17V114.47Z M174.27 115.09Q173.59 115.09 173.16 114.84Q172.72 114.59 172.44 114.2L172.88 113.84Q173.18 114.21 173.51 114.39Q173.83 114.57 174.29 114.57Q174.83 114.57 175.12 114.32Q175.41 114.06 175.41 113.61Q175.41 113.24 175.2 113.04Q174.99 112.83 174.47 112.75L173.91 112.65Q173.55 112.59 173.3 112.46Q173.05 112.33 172.9 112.15Q172.75 111.96 172.68 111.74Q172.62 111.52 172.62 111.28Q172.62 110.59 173.07 110.24Q173.52 109.89 174.29 109.89Q174.9 109.89 175.31 110.09Q175.73 110.29 175.98 110.66L175.55 111.03Q175.35 110.75 175.05 110.58Q174.76 110.41 174.29 110.41Q173.78 110.41 173.5 110.62Q173.23 110.84 173.23 111.27Q173.23 111.61 173.43 111.82Q173.64 112.03 174.17 112.13L174.71 112.22Q175.08 112.29 175.33 112.42Q175.58 112.54 175.74 112.72Q175.89 112.9 175.96 113.13Q176.02 113.35 176.02 113.6Q176.02 114.29 175.57 114.69Q175.11 115.09 174.27 115.09Z M182.52 112.48V110.89H182.46L181.4 113.47L180.34 110.89H180.28V112.48V115H179.73V109.97H180.51L181.39 112.19H181.44L182.32 109.97H183.07V115H182.52Z M188.82 110.5V115H188.22V110.5H186.54V109.97H190.5V110.5Z M194.13 115V109.97H195.96Q196.66 109.97 197.02 110.36Q197.39 110.74 197.39 111.42Q197.39 112.11 197.02 112.49Q196.66 112.87 195.96 112.87H194.73V115ZM194.73 112.34H195.94Q196.32 112.34 196.54 112.15Q196.75 111.96 196.75 111.61V111.23Q196.75 110.88 196.54 110.69Q196.32 110.5 195.94 110.5H194.73Z M208.97 115H208.37V109.97H210.2Q210.9 109.97 211.26 110.36Q211.63 110.74 211.63 111.42Q211.63 112.03 211.31 112.4Q211 112.77 210.39 112.83L211.67 115H211L209.77 112.85H208.97ZM210.18 112.34Q210.56 112.34 210.78 112.15Q210.99 111.96 210.99 111.61V111.23Q210.99 110.88 210.78 110.69Q210.56 110.5 210.18 110.5H208.97V112.34Z M215.49 115V109.97H218.58V110.5H216.09V112.19H218.5V112.72H216.09V114.47H218.58V115Z M222.82 115V109.97H223.43V114.47H225.81V115Z M232.54 115 232.12 113.57H230.35L229.93 115H229.3L230.84 109.97H231.64L233.18 115ZM231.27 110.62H231.2L230.5 113.04H231.97Z M238.06 115V113.03L236.32 109.97H237.01L237.73 111.28L238.35 112.43H238.37L239 111.28L239.72 109.97H240.4L238.66 113.03V115Z" fill="#F6EDE2" opacity=".78" />
|
|
</svg>
|