-
v3.8 Stable
released this
2026-10-27 11:43:19 +00:00 | 6 commits to main since this releaseThis release supports Discord's @time command. It's converted to a hyperlink that lets you check when it is in your local time. See an example. From Matrix, since you can't use @time to coordinate, there's a new //time command where it will attempt to parse freeform text and make a link for you. You have to set your time zone on your Matrix profile first for this to work.
There's also a new feature from N0\A that lets you change m->d @room mentions to mention a specific role on Discord. This is useful in channels that have a theme. On Discord it has to be a role because users are forced to be in every channel, but on Matrix you may as well mention everyone who's chosen to join the room.
Please update for important security fixes that somehow went unnoticed for years.
AI disclosure
The readme's AI policy says, "Out Of Your Element is 100% organically cultivated ethical hand-fed code. Let's work together to conserve that!"
However, some of the problems that I fixed in this release were found after I prompted an LLM (specifically OpenCode's free models) to scan the repo. I have labelled the specific affected commits. While I consider LLM use to be objectionable, I think this tradeoff was ultimately worthwhile to improve security on issues that would have otherwise gone undiscovered.
The fixes are my own. I did not use the LLM's suggested code.
If LLMs are used in the future, I will continue to disclose their precise involvement going forward.
Features
c25b5a1a4f8f931434cb5be40369Support Discord @time5794beeSupport Discord game mentionsf19f243c196beff39a7f4Add customisable @room mention roles (thank you to first time contributor N0\A!)866a496Support component URL previews, currently used by Wikipedia2d298ac9b96457Set own nick to "a Matrix user" once per guild- This prominently displays for typing indicators ("a Matrix user is typing...") and reactions ("a Matrix user reacted cat emoji")
Changes
39e3e502e9725aDocument privileged intents applicationbdcdb4fMake spoiler file URLs unpreviewable (thank you Guzio)ce4b9114d96963Show account and pronouns for PMP messages3024270Don't display URL previews for GitHub860506cShow displayname runoff once per message group161f1a1Fine-tune bot user detection for small-text conversion8001924Convert too-large files to WebP instead of JPEG
Security fixes
4ecce3f(Discovered by LLM) Fix being able to edit anyone's message m->d7229923(Discovered by LLM) Fix reflected XSS in time webpage69256a9(Discovered by LLM) Actually get correct user ID when logging in21efcbc(Discovered by LLM) Fix next URLs redirecting anywhere after loginsb331e79(Discovered by LLM) Fix unsanitised names in formatted_body2fea23dSanitise route path parts when calling APIs
Other fixes
12d448dAvoid media stream errors crashing process4ac4aecReliability fixes59b5e0577cc1e6Make m->d Klipy links not produce errorfab512aFix Klipy gifs when url previews disabled26a434e000ec06heatsync: remember various module globals on reload (thank you to first time contributor l1s5!)
Code quality
9058b60Update dependencies2959fd8Render pug blocks without a separate template08dea68Support npm v127902b91Fix time formatting in different node versions3cb1260Rename auth file to web-utils3dd7830Tests to see when uncaught errors are emitted99673dbSet recognizable process and main thread name (thank you oysteikt!)279c58bDependency review
Downloads
-
Source code (ZIP)
1 download
-
Source code (TAR.GZ)
2 downloads