Comments (2)
Yeah, I think the spec even says in some place that IDs are supposed to be treated as opaque strings somewhere, but clearly for things like discovering the server from the user ID for login, it's not entirely feasible. I'm not really sure what our options are. A Cargo feature seems too brittle to me, given anything in the dependency chain can activate it, and even if you exclude the possibility of that happening by accident (seems unlikely), there are appservices and possibly other kinds of Matrix software that use the client API as a client, but also include server functionality.
from ruma.
Another option then would be to add a validate()
method on identifiers types that servers must call to make sure identifiers are valid, when needed.
from ruma.
Related Issues (20)
- When user reply to their message, the reply mentions the current user HOT 1
- API responses always return a `200 OK` status code HOT 4
- Support optional path parameters for endpoints HOT 1
- Implement Matrix 1.11 changes HOT 1
- Make it harder to accidentally log sensitive data like user IDs HOT 7
- RoomMemberUnsigned is only useful in federation, but not used by servers HOT 5
- ruma rejects `Authorization: X-Matrix ...` headers that include optional whitespace around parameter pairs HOT 1
- `failures` is optional in responses to `/keys/signatures/upload` HOT 2
- Choose between `DeviceKeyId` and `DeviceSigningKeyId` HOT 6
- Handle encrypted stickers
- Implement `Borrow`/`Hash`/`Eq` for `ThirdPartyIdentifier` HOT 1
- `ProtocolInstanceInit` is exhaustive but has a field behind a cargo feature HOT 1
- `ThirdpartyIdCredentials`' `id_access_token` field should be optional HOT 1
- `AnyGlobalAccountDataEvent::SecretStorageKey` cannot be deserialized
- Provide a type for the `Content-Disposition` HTTP header. HOT 1
- Serialization of a room message event content with a thread relationship fails
- Auth checks for restricted joins fail when format of rules is unexpected HOT 1
- Prefer web_time types over std::time HOT 1
- Markdown constructors do not detect all markdown syntax HOT 1
- Check more crates with the WASM target in CI HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ruma.