diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 1e725ec1b1..ddb6eac8dc 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -16,7 +16,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest] - python-version: ["3.10", "3.11", "3.12", "3.13"] + python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"] include: - os: windows-latest python-version: "3.12" @@ -42,7 +42,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest] - python-version: ["3.10", "3.11", "3.12", "3.13"] + python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"] include: - os: windows-latest python-version: "3.12" @@ -71,7 +71,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest] - python-version: ["3.10", "3.11", "3.12", "3.13"] + python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"] include: - os: windows-latest python-version: "3.12" diff --git a/README.md b/README.md index 5c5a0ccaa5..fa33f6b343 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,7 @@ Markdown-formatted text, and understand it well. As a side benefit, Markdown con are also highly token-efficient. ## Prerequisites -MarkItDown requires Python 3.10 or higher. It is recommended to use a virtual environment to avoid dependency conflicts. +MarkItDown requires Python 3.10 through 3.14. It is recommended to use a virtual environment to avoid dependency conflicts. With the standard Python installation, you can create and activate a virtual environment using the following commands: diff --git a/packages/markitdown/pyproject.toml b/packages/markitdown/pyproject.toml index d4c20a402c..43144043da 100644 --- a/packages/markitdown/pyproject.toml +++ b/packages/markitdown/pyproject.toml @@ -7,7 +7,7 @@ name = "markitdown" dynamic = ["version"] description = 'Utility tool for converting various files to Markdown' readme = "README.md" -requires-python = ">=3.10" +requires-python = ">=3.10,<3.15" license = "MIT" keywords = [] authors = [ @@ -20,6 +20,7 @@ classifiers = [ "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", ] @@ -45,7 +46,7 @@ all = [ "olefile", "pydub", "SpeechRecognition", - "youtube-transcript-api~=1.0.0", + "youtube-transcript-api~=1.2.3", "azure-ai-documentintelligence", "azure-ai-contentunderstanding>=1.2.0b1", "azure-identity", @@ -57,7 +58,7 @@ xls = ["pandas", "xlrd"] pdf = ["pdfminer.six>=20251230", "pdfplumber>=0.11.9"] outlook = ["olefile"] audio-transcription = ["pydub", "SpeechRecognition"] -youtube-transcription = ["youtube-transcript-api"] +youtube-transcription = ["youtube-transcript-api~=1.2.3"] az-doc-intel = ["azure-ai-documentintelligence", "azure-identity"] # >=1.2.0b1 required for to_llm_input() helper used by ContentUnderstandingConverter az-content-understanding = ["azure-ai-contentunderstanding>=1.2.0b1", "azure-identity"]