Skip to content

Add support for Python 3.14#259

Merged
heyitsaamir merged 9 commits into
mainfrom
aamirj/pythonthreeonefour
Jan 27, 2026
Merged

Add support for Python 3.14#259
heyitsaamir merged 9 commits into
mainfrom
aamirj/pythonthreeonefour

Conversation

@heyitsaamir

Copy link
Copy Markdown
Collaborator
  • Replaced asyncio.iscoroutinefunction() with inspect.iscoroutinefunction()
  • Tested echo, ai, invokes, mcp-client, graph with no issues.

Copilot AI review requested due to automatic review settings January 27, 2026 05:12
@heyitsaamir
heyitsaamir requested a review from lilyydu January 27, 2026 05:12

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds support for Python 3.14 to the Microsoft Teams SDK for Python. The changes update version constraints, replace deprecated async function detection methods, fix an MCP library API compatibility issue, and update the CI pipeline to test against Python 3.14.

Changes:

  • Updated Python version constraints from <3.14 to <3.15 across all packages, examples, and templates
  • Replaced asyncio.iscoroutinefunction() with inspect.iscoroutinefunction() for Python 3.14 compatibility
  • Fixed MCP transport to use updated streamable_http_client API (typo fix and httpx.AsyncClient usage)
  • Added Python 3.14 to CI test matrix
  • Corrected default port in graph example from 3979 to 3978

Reviewed changes

Copilot reviewed 31 out of 32 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
.github/workflows/ci.yml Added Python 3.14 to test matrix
packages/*/pyproject.toml (13 files) Updated Python version constraint to <3.15
templates/*/pyproject.toml (2 files) Updated Python version constraint in templates
examples/*/pyproject.toml (13 files) Updated Python version constraint in all examples
packages/common/src/microsoft_teams/common/events/event_emitter.py Replaced asyncio.iscoroutinefunction with inspect.iscoroutinefunction
packages/apps/src/microsoft_teams/apps/http_plugin.py Replaced asyncio.iscoroutinefunction with inspect.iscoroutinefunction, removed unused asyncio import
packages/mcpplugin/src/microsoft_teams/mcpplugin/transport.py Fixed streamablehttp_client typo, updated to use httpx.AsyncClient for MCP API compatibility
examples/graph/src/main.py Corrected default port from 3979 to 3978
uv.lock Updated dependency lock file with new versions

Comment thread examples/graph/src/main.py Outdated
Comment thread packages/mcpplugin/src/microsoft_teams/mcpplugin/transport.py Outdated
Comment thread .github/workflows/ci.yml
Comment thread examples/a2a-test/pyproject.toml
@heyitsaamir
heyitsaamir merged commit ae377e9 into main Jan 27, 2026
7 checks passed
@heyitsaamir
heyitsaamir deleted the aamirj/pythonthreeonefour branch January 27, 2026 23:11
heyitsaamir added a commit that referenced this pull request Jan 28, 2026
# Release version 2.0.0a9

Commits since v2.0.0a8:
  - Add support for Python 3.14 (#259)
  - Bump qs from 6.14.0 to 6.14.1 in /examples/tab/Web (#240)
  - Bump urllib3 from 2.5.0 to 2.6.3 (#251)
  - Bump authlib from 1.6.5 to 1.6.6 (#252)
  - Bump starlette from 0.48.0 to 0.49.1 (#261)
  - Bump fastmcp from 2.12.4 to 2.14.0 (#260)
  - Bump python-multipart from 0.0.20 to 0.0.22 (#254)
  - Bump virtualenv from 20.35.3 to 20.36.1 (#256)
  - Bump pyasn1 from 0.6.1 to 0.6.2 (#255)
  - Bump azure-core from 1.36.0 to 1.38.0 (#257)
  - Bump aiohttp from 3.13.0 to 3.13.3 (#258)
- fix meetingStart and meetingEnd casing bug & add meetings sample
(#246)
  - Remove jitter during streaming (#248)
  - Add SERVICE_URL to override default service_url for Teams (#247)
- [Fix] streaming: do not reset timeout for each emit, do not wait
forever on close stream (#197)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants