mirror of
1
Fork 0
forgejo/services/mailer
Gusted 0d8478cff8
[GITEA] Drop sha256-simd in favor of stdlib
- In Go 1.21 the crypto/sha256 [got a massive
improvement](https://go.dev/doc/go1.21#crypto/sha256) by utilizing the
SHA instructions for AMD64 CPUs, which sha256-simd already was doing.
The performance is now on par and I think it's preferable to use the
standard library rather than a package when possible.

```
cpu: AMD Ryzen 5 3600X 6-Core Processor
                │  simd.txt   │               go.txt                │
                │   sec/op    │    sec/op     vs base               │
Hash/8Bytes-12    63.25n ± 1%    73.38n ± 1%  +16.02% (p=0.002 n=6)
Hash/64Bytes-12   98.73n ± 1%   105.30n ± 1%   +6.65% (p=0.002 n=6)
Hash/1K-12        567.2n ± 1%    572.8n ± 1%   +0.99% (p=0.002 n=6)
Hash/8K-12        4.062µ ± 1%    4.062µ ± 1%        ~ (p=0.396 n=6)
Hash/1M-12        512.1µ ± 0%    510.6µ ± 1%        ~ (p=0.485 n=6)
Hash/5M-12        2.556m ± 1%    2.564m ± 0%        ~ (p=0.093 n=6)
Hash/10M-12       5.112m ± 0%    5.127m ± 0%        ~ (p=0.093 n=6)
geomean           13.82µ         14.27µ        +3.28%

                │   simd.txt   │               go.txt                │
                │     B/s      │     B/s       vs base               │
Hash/8Bytes-12    120.6Mi ± 1%   104.0Mi ± 1%  -13.81% (p=0.002 n=6)
Hash/64Bytes-12   618.2Mi ± 1%   579.8Mi ± 1%   -6.22% (p=0.002 n=6)
Hash/1K-12        1.682Gi ± 1%   1.665Gi ± 1%   -0.98% (p=0.002 n=6)
Hash/8K-12        1.878Gi ± 1%   1.878Gi ± 1%        ~ (p=0.310 n=6)
Hash/1M-12        1.907Gi ± 0%   1.913Gi ± 1%        ~ (p=0.485 n=6)
Hash/5M-12        1.911Gi ± 1%   1.904Gi ± 0%        ~ (p=0.093 n=6)
Hash/10M-12       1.910Gi ± 0%   1.905Gi ± 0%        ~ (p=0.093 n=6)
geomean           1.066Gi        1.032Gi        -3.18%
```

(cherry picked from commit abd94ff5b5)
(cherry picked from commit 15e81637ab)

Conflicts:
	go.mod
	https://codeberg.org/forgejo/forgejo/pulls/1581
(cherry picked from commit 5caea2d75aeac78fb306f58a3cf7809d5b70c7f2)
(cherry picked from commit 08da542cce)
(cherry picked from commit d71a8cc9fb)
(cherry picked from commit 63c9fc2bee)
(cherry picked from commit e1db85d48a)
(cherry picked from commit 5e86a5d2d1)
2023-11-13 14:06:31 +01:00
..
incoming Next round of `db.DefaultContext` refactor (#27089) 2023-09-16 14:39:12 +00:00
token [GITEA] Drop sha256-simd in favor of stdlib 2023-11-13 14:06:31 +01:00
mail.go Clean up template locale usage (#27856) (#27857) 2023-10-31 17:35:55 +01:00
mail_admin_new_user.go [GITEA] notifies admins on new user registration 2023-11-13 14:06:27 +01:00
mail_admin_new_user_test.go [GITEA] notifies admins on new user registration 2023-11-13 14:06:27 +01:00
mail_comment.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
mail_issue.go Clean up template locale usage (#27856) (#27857) 2023-10-31 17:35:55 +01:00
mail_release.go Clean up template locale usage (#27856) (#27857) 2023-10-31 17:35:55 +01:00
mail_repo.go Clean up template locale usage (#27856) (#27857) 2023-10-31 17:35:55 +01:00
mail_team_invite.go Clean up template locale usage (#27856) (#27857) 2023-10-31 17:35:55 +01:00
mail_test.go Add support for incoming emails (#22056) 2023-01-14 23:57:10 +08:00
mailer.go Clean up template locale usage (#27856) (#27857) 2023-10-31 17:35:55 +01:00
mailer_test.go Prevent multiple `To` recipients (#22566) 2023-01-22 08:23:52 -06:00
main_test.go move repository deletion to service layer (#26948) 2023-09-08 04:51:15 +00:00
notify.go [GITEA] notifies admins on new user registration 2023-11-13 14:06:27 +01:00