This would entail:
- Pulling in the ClearUrls rules as a git submodule.
- Reading / transforming the json there into Rust structs.
- Creating a Rust crate that runs a
.clean(input_url) -> String
Lemmy issue: https://github.com/LemmyNet/lemmy/issues/4905
@dessalines Did something similar last night. Might take a look into using ClearURLs instead: https://github.com/diogotcorreia/alt-urls-discord-bot
Looks trivial and easy to automate.
I possibly would have done it if they had a test suite.
But unless I didn’t look hard enough, they have no tests at all (other than linting)!
Yep, it’d be a pretty small library. I’m not sure if they generate those JSON rules from somewhere else, but either way they could be converted to defined rust objects as part of a build process.
This might be helpful: https://github.com/oxidecomputer/typify
I just released a crate doing exactly that: https://crates.io/crates/clearurls
Let me know if if fits your need or you need anything else. Issues and PRs welcome.