Skip to content

v27.0

Choose a tag to compare

@github-actions github-actions released this 27 Apr 13:53

mautrix-teams 27.0 aligns versioning with the underlying mautrix-go release
line; future patch releases will track it as 27.0.x. The release fixes the
meeting/group/channel naming gap, breaks a tight Trouter reconnect loop, and
stops the bridge re-inviting you to portals you have manually left.

Fixed

  • Group, channel and meeting portals now pick up their Teams topic. The
    per-thread /v1/threads/<id> API returns thread metadata under the
    top-level properties key, while /conversations (used at startup)
    uses threadProperties; we now read either, and fall back to the
    calendar subject parsed from properties.meeting JSON for meeting
    threads where neither topic is set.
  • Trouter /v4/a registration now refreshes the skype token on a 401 and
    retries once. Without this the bridge would enter a 5-second reconnect
    loop after Microsoft rotated the websocket and the cached skype token
    expired in the gap, hammering the auth endpoint until manual restart.
  • Startup chat sync no longer re-invites you to portals you have manually
    left in Matrix. The bridge checks the room's member state and skips the
    resync when your membership is leave or ban. Live messages still
    trigger re-invite, as before.
  • Unknown Teams contacts (no profile available, no cached display name)
    show as the bare AAD GUID instead of the full 8:orgid:<guid> MRI, and
    DM rooms with such contacts no longer get the bare MRI written into the
    room name; Element falls back to the ghost's display name instead.

Full Changelog: v26.04.2...v27.0