Skip to content

Latest commit

 

History

History
122 lines (113 loc) · 3.9 KB

TODO.md

File metadata and controls

122 lines (113 loc) · 3.9 KB

Core Spec

Core specification includes anything that are not modules and the spec deem necessary for every client.

  • API Standards
  • Server Discovery
  • Client Auth
    • Soft Logout
    • User Interactive Authentication API (UIAA)
    • Login
    • Account Registration and Management
    • Adding 3PIDs
    • whoami
  • Capabilities Negotiation
  • Filtering
  • Events
    • Room Events
    • Syncing
    • Getting Events for a Room
    • Sending Events
    • Redaction
  • Rooms
    • Creation
    • Room Aliases
    • Room Membership
      • Joining
      • Leaving
      • Kick
      • Ban
      • Unban
    • Listing Rooms
  • User Data
  • Rate Limiting

Modules

These are modules that are "optional" but somewhat required to figure out what is going on.

  • Instant Messaging
  • [/] Voice over IP // Note: Need to provide user-friendly API.
  • Typing Notifications
  • Receipts
  • Fully Read Marker
  • Presence (Online/Unavailable/Offline)
  • Content Repository
  • Send-to-Device Messaging
  • Device Management
  • End-to-end Encryption
  • Secrets
  • History Visibility
  • Push Notification
  • Third Party Invites
  • Server Side Search
  • Guest Access
  • Room Previews
  • Room Tagging
  • Client Config
  • Server Administration
  • Event Context
  • SSO Client Login
  • Direct Messaging
  • Ignoring Users
  • Sticker Messages
  • Reporting Content
  • Third Party Networks
  • OpenID
  • Server ACL
  • User, Room and Group mentions
  • Room Upgrades
  • Server Notices
  • Moderation Policy

Migration

These are the changelogs of v1.1 and v1.2. They should be marked off when they're checked to be implemented.

Breaking Changes

  • MSC 2687: curve25519-hkdf-sha256 for SAS verification
  • MSC 3139: m.key.verification.ready and m.key.verification.done
  • MSC 3524: prev_content is now unsigned
  • MSC 3624: aliases has been removed

Deprecations

  • MSC 3199: Remove starting verification without m.key.verification.ready

New Endpoints

  • MSC 2387 + MSC 2639: /room_keys/*
  • MSC 2536: POST /keys/device_signing/upload and POST /keys/signatures/upload
  • MSC 3154 + MSC 3254: /knock
  • MSC 3163: /login/sso/redirect/{idpId}
  • MSC 3610: /rooms/{roomId}/hierarchy
  • MSC 3616: /register/m.login.registration_token/validity

Removed Endpoints

  • MSC 2609: m.login.oauth2 and m.login.token User-Interactive Auth API

Backwards Compatible Changes

  • MSC 2399: Advise recipients about withholding keys
  • MSC 2536: Cross-signing property to POST /keys/query
  • MSC 2597 + MSC 3151: Secure Secret Storage and Sharing
  • MSC 2709: device_id parameter to login fallback (Won't fix. JS callback)
  • MSC 2728: SAS Emojis
  • MSC 2795: reason on membership events
  • MSC 2796: M_NOT_FOUND on push rule endpoints
  • MSC 2807: Content reporting API: reason/score now optional
  • MSC 2808: Guest may get list of members of a room (Not relevant)
  • MSC 3098: Support for spoilers
  • MSC 3100: <details> and <summary> now in HTML subset (Not relevant)
  • MSC 3139 + MSC 3150: Key verification using in-room messages
  • MSC 3147: SSSS for cross-signing and key backup
  • MSC 3149: Key verification using QR code
  • MSC 3163: Multiple SSO providers
  • MSC 3166: device_id on /account/whoami
  • MSC 3169: Identity server discovery failure results in FAIL_PROMPT
  • MSC 3421: Re-version to be v3 instead of r0
  • MSC 3324: App-service login
  • MSC 3387: restricted rooms
  • MSC 3605: is_guest in /account/whoami
  • MSC 3610: Spaces and room types
  • MSC 3614: m.set_displayname, m.set_avatar_url, m.3pid_changes
  • MSC 3615: Fallback keys
  • MSC 3616: Token-authenticated registration support
  • MSC 3530: M_FORBIDDEN on /profile/{userId}
  • MSC 3652: Remove group mentions