As of Rust 1.62, standard locks will recieve a massive performance
improvement (speed and memory footprint) on Linux.
parking_lot seems to be still be better [1] for the ordinary usecase
but I will still remove it preemptively for 2 reasons:
1. The application isn't still usable, I don't have any benchmarks where
parking_lot is needed because of critical locks causing a noticable
bottleneck. (I doubt it will be case anyway)
2. Having a smaller explicit dependency chain is good for
maintainability. (Don't take this too far as to reduce usability
though)
Tokio still uses parking_lot by default in itself.
Maybe I'll get rid of it after bumping MSRV to 1.62.
[1]: https://twitter.com/m_ou_se/status/1526220580361490438
I think that API key generation and revocation should be done by calling
the binary. Also, nuking all keys should be accessible. Public identity
regeneration can use `init` again for now.
I am thinking about seperating between confidential and public
clients in the structure that keeps track of them. The map keeping
track of the confidential should use the client base url as well.
Expecting to overhaul how its done after checking RFC 8725 and other JOSE
damage reduction strategies more throughly. (ugh)
Since the action audit used has rust 1.58, it automatically fails with
strip. If this doesn't work I'll disable the audit cron to stop auto
notification.