Skip to content

Releases: IsmaelMartinez/teams-for-linux

2.5.11

04 Oct 07:03
31ff6fc

Choose a tag to compare

2.5.11 Pre-release
Pre-release

What's Changed

  • feat: join teams meeting using link from clipboard by @Yumeo0 in #1856

New Contributors

Full Changelog: v2.5.10...v2.5.11

2.5.10

03 Oct 08:08
8d1325d

Choose a tag to compare

2.5.10 Pre-release
Pre-release

Summary

  • Disable all audio in screen sharing to try to fix issue #1800
  • Might fix audio echo during Wayland/Pipewire sessions (needs user testing to verify)
  • Update dependencies: Electron 37.6.0, ESLint 9.36.0 for latest security patches

Changes Made

  • Audio Echo Fix: Force disable all audio in screen sharing to prevent echo issues
  • Dependency Updates: Electron 37.5.0 → 37.6.0, @eslint/js & eslint 9.35.0 → 9.36.0
  • Code Quality: Replace window with globalThis, forEach with for...of, setAttribute with dataset API

What's Changed

Full Changelog: v2.5.9...v2.5.10

2.5.9

29 Sep 07:25
6f40977

Choose a tag to compare

2.5.9 Pre-release
Pre-release

Summary

This PR implements comprehensive improvements to Teams for Linux with three key features:

🔒 Secure Token Cache Storage part of #1357

  • Implement secure token cache storage using Electron safeStorage API
  • Tokens are now encrypted using OS-level security (Keychain/DPAPI/kwallet) instead of plain localStorage
  • Provides fallback mechanisms: safeStorage → localStorage → memory storage
  • Improved security posture before addressing the authentication persistence issues
  • This isn't really needed as the browser has those tokens public, but I just wanted to go the extra mile

📈 Increased Cache Size Limit tries to fix #1841 and #1845

  • Increase default cache size limit from 300MB to 600MB
  • Reduces frequency of automatic cache cleanup operations
  • We might make this cache cleanup disabled by default if cache issues still happening.

🎤 DisableAutogain Bug Fix fixes #1846

  • Resolve disableAutogain initialization failure that prevented microphone auto-gain control from being disabled properly
  • Fix function call bug where init() was calling disableAutogain() instead of applyDisableAutogainPatch()

What's Changed

  • feat: secure token cache storage using Electron safeStorage API (v2.5.9) by @IsmaelMartinez in #1839

Full Changelog: v2.5.8...v2.5.9

2.5.8

19 Sep 12:26
540d82c

Choose a tag to compare

2.5.8 Pre-release
Pre-release

What's Changed

Full Changelog: v2.5.7...v2.5.8

2.5.7

18 Sep 10:57
cd765fa

Choose a tag to compare

2.5.7 Pre-release
Pre-release

Summary

• Restores tray icon badge count functionality that was missing since v2.3.0
• Re-applies the TrayIconRenderer fix that was previously reverted
• Updates version to 2.5.7 with proper release notes
• Fixes #1795 by releasing the wrongly direct push to main of 82ac088

Changes Included

  • Reverted the revert commit to restore the tray icon fix
  • Updated package.json to version 2.5.7
  • Added release entry to appdata.xml with release notes
  • Generated release-info.json for build process

What's Changed

Full Changelog: v2.5.6...v2.5.7

2.5.6

16 Sep 06:10
26cd698

Choose a tag to compare

2.5.6 Pre-release
Pre-release

What's Changed

New Contributors

Full Changelog: v2.5.5...v2.5.6

2.5.5

15 Sep 13:17

Choose a tag to compare

2.5.5 Pre-release
Pre-release

🔧 Diagnostic Logging Enhancement Release

Added comprehensive diagnostic logging to help troubleshoot three major user-reported issues:

  • 🖥️ Screen Sharing Echo Investigation - Added [SCREEN_SHARE_DIAG] logging with audio track analysis and preview window monitoring to investigate #1800
  • 🔔 Tray Notification Timing - Added [TRAY_DIAG] logging with performance metrics to troubleshoot notification display issues #1795
  • 🔐 Intune SSO Integration - Enhanced [INTUNE_DIAG] logging with D-Bus troubleshooting guidance for enterprise environments

📚 Documentation & Updates:

  • Updated RPM installation instructions to use modern dnf commands. Fixes #1811
  • Comprehensive Intune SSO documentation for enterprise deployments
  • Electron updated to 37.5.0 with latest security patches

This release focuses on diagnostic capabilities to help identify and resolve persistent user issues through enhanced logging.

What's Changed

  • Add comprehensive diagnostic logging and update documentation for v2.5.5 by @IsmaelMartinez in #1831

Full Changelog: v2.5.4...v2.5.5

2.5.4

11 Sep 22:23
a6975a1

Choose a tag to compare

2.5.4 Pre-release
Pre-release

What's Changed

New Contributors

Full Changelog: v2.5.3...v2.5.4

2.5.3

03 Sep 09:02
cb737cb

Choose a tag to compare

2.5.3 Pre-release
Pre-release

Summary

Try to fix Microsoft Teams authentication refresh issues from #1357 by providing the missing _tokenCache interface to the Teams authentication provider. Should eliminate the frequent "Please sign in again" prompts after system sleep/wake cycles.

Other small fixes and enhanced login implemented as shown in the highlights

Highlights

  • Authentication Re-login Fix: Implemented a localStorage-backed token cache bridge to resolve persistent re-authentication issues (#1357), allowing the Teams authentication provider to perform silent token refreshes and maintain user sessions across restarts and sleep/wake cycles.
  • Enhanced Diagnostic Logging: Added comprehensive diagnostic logging for both authentication and screen sharing functionalities. This includes detailed insights into token cache operations, authentication state, screen sharing stream creation, and cleanup, which will aid in diagnosing future issues like screen sharing echo (#1800).
  • Configuration Updates: Updated default application settings to enable the screen sharing thumbnail to always be on top and to enable incoming call toasts by default, improving user experience.
  • Extensive Documentation: Introduced new detailed documentation, including an issue investigation report, a Product Requirements Document (PRD), and technical research documents covering the token cache authentication fix and future secure storage plans. This provides a clear roadmap and rationale for the changes.

Attempts to fix #1357 and add more logging to diagnose #1800

2.5.2

02 Sep 15:26
52414f5

Choose a tag to compare

2.5.2 Pre-release
Pre-release

Summary

  • Restored Teams DOM access by disabling Electron contextIsolation and sandbox security features while maintaining nodeIntegration: false
  • Implemented comprehensive security compensating controls including CSP headers and IPC channel validation
  • Added React version detection to monitor for breaking changes in React 19+ timeline
  • Consolidated documentation structure following architectural guidelines
  • Version bump to 2.5.2 following proper release workflow
  • Changed from --webDebug --logConfig='{}' to ELECTRON_ENABLE_LOGGING=true teams-for-linux --logConfig='{}'

Background

Teams for Linux relies on accessing React internals through deprecated APIs (_reactRootContainer, _internalRoot) that will be completely removed in React 19 (expected Q4 2025). To maintain functionality while these APIs still exist, we've restored DOM access by temporarily disabling Electron security isolation features and implementing robust
compensating security controls. Previous attempts to remove DOM access in v2.3.0 highlighted this critical dependency.

Documentation Updates

  • Restructured configuration.md with proper TOC and categorized options (Core, Authentication, Security, etc.)
  • Created development documentation with consolidated research and security architecture
  • Enhanced v2.5.2 release notes to include security and quality improvements
  • Archived planning documents to maintain clean documentation structure

Security Implementation

While contextIsolation and sandbox are disabled for the main Teams window, we've implemented multiple compensating controls:

Content Security Policy headers preventing malicious script injection
IPC channel allowlisting with payload validation and prototype pollution protection
Teams domain validation before DOM access (teams.microsoft.com, teams.live.com only)
Node.js access prevention (nodeIntegration: false maintained)
Screen sharing windows maintain full security isolation (they don't need DOM access)

Testing Performed

✅ ReactHandler successfully accesses Teams React internals
✅ Screen sharing functionality preserved with secure isolation
✅ React version detection working across multiple detection methods
✅ IPC validation preventing unauthorized channel access
✅ Documentation builds successfully in Docusaurus
✅ ESLint validation passes with no errors

Attempts to fix #1789 and #1795