Skip to content

fix: bump youtube-transcript-api to >=1.2.3 for Python 3.14 support - #2407

Merged
afourney merged 4 commits into
microsoft:mainfrom
nithin434:main
Sep 21, 2026
Merged

afourney merged 4 commits into
microsoft:mainfrom
nithin434:main

Conversation

@nithin434

Copy link
Copy Markdown
Contributor

Fix: Bump youtube-transcript-api for Python 3.14 support

This PR resolves the installation error reported in Issue #2287.

Issue

On Python 3.14.6, installing with pip install -e 'packages/markitdown[all]' fails with:

INFO: pip is looking at multiple versions of markitdown[all] to determine which version is compatible with other requirements. This could take a while.
ERROR: Ignored the following versions that require a different python version: 0.5.0 Requires-Python >=3.8,<3.12; 0.5.1 Requires-Python >=3.8,<3.13; 0.6.3 Requires-Python <3.14,>=3.8; 1.0.0 Requires-Python <3.14,>=3.8; 1.0.1 Requires-Python <3.14,>=3.8; 1.0.2 Requires-Python <3.14,>=3.8; 1.0
[tests.md](https://github.com/user-attachments/files/31925193/tests.md)
.3 Requires-Python <3.14,>=3.8; 1.1.0 Requires-Python <3.14,>=3.8; 1.1.1 Requires-Python <3.14,>=3.8; 1.2.0 Requires-Python <3.14,>=3.8; 1.2.1 Requires-Python <3.14,>=3.8; 1.2.2 Requires-Python <3.14,>=3.8
ERROR: Could not find a version that satisfies the requirement youtube-transcript-api~=1.0.0; extra == "all" (from markitdown[all]) (from versions: 0.1.0, 0.1.1, 0.1.2, 0.1.3, 0.1.4, 0.1.5, 0.1.6, 0.1.7, 0.1.8, 0.1.9, 0.2.0, 0.2.1, 0.3.0, 0.3.1, 0.4.0, 0.4.1, 0.4.2, 0.4.3, 0.4.4, 0.5.0, 0.6.0, 0.6.1, 0.6.2, 1.2.3, 1.2.4)
ERROR: No matching distribution found for youtube-transcript-api~=1.0.0; extra == "all"


Root Cause

The dependency youtube-transcript-api~=1.0.0 restricts to versions <1.1.0, all of which require Python <3.14. This blocks Python 3.14+ users from installing the [all] extra.

Fix

  • Bump the dependency constraint from youtube-transcript-api~=1.0.0 to youtube-transcript-api>=1.2.3
  • Version 1.2.3+ supports Python 3.14+ (Requires-Python <3.15)
  • No code changes are needed as the 1.x API remains compatible

Testing

  • ✅ Successfully installed and tested on Python 3.14.6
  • ✅ Installation now completes without errors

Closes #2287

@nithin434

Copy link
Copy Markdown
Contributor Author

@microsoft-github-policy-service agree

@nithin434

Copy link
Copy Markdown
Contributor Author

afourney can you take a look at this patch

@afourney

Copy link
Copy Markdown
Member

Taking a look. I'm trying to remember why I pinned that package originally (I believe there was some incompatibility).

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.

Copilot review overview

🟡 Changes recommended

The dependency constraints use ~=1.2.3, which conflicts with the documented >=1.2.3 range.

Get a fresh assessment by requesting another Copilot review.

Review effort: Balanced
Findings: 2 Medium severity

Open (2)
What changed in this PR

Updates MarkItDown for Python 3.14 compatibility and resolves the installation failure from issue #2287.

Changes:

  • Updates YouTube transcript dependency constraints.
  • Declares Python 3.10–3.14 support.
  • Adds Python 3.14 CI coverage.
File Description
README.md Documents supported Python versions.
packages/​markitdown/​pyproject.toml Updates Python metadata and transcript dependencies.
.github/​workflows/​tests.yml Adds Python 3.14 test jobs.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread packages/markitdown/pyproject.toml
Comment thread packages/markitdown/pyproject.toml
@afourney
afourney merged commit d51937d into microsoft:main Sep 21, 2026
23 checks passed
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.

Error while pip install -e 'packages/markitdown[all]'

3 participants