diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index b08af0e..1bc35e4 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -11,21 +11,11 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
- python-version: [3.8, 3.9, "3.10", 3.11, 3.12, 3.13]
+ python-version: [3.9, "3.10", 3.11, 3.12, 3.13, 3.14]
os: [ubuntu-latest, macos-latest, windows-latest]
- exclude:
- - python-version: 3.8
- os: macos-latest
- - python-version: 3.9
- os: macos-latest
- include:
- - python-version: 3.8
- os: macos-13
- - python-version: 3.9
- os: macos-13
steps:
- - uses: actions/checkout@v4
+ - uses: actions/checkout@v5
with:
submodules: true
- name: Set up PDM
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index ee39596..c611449 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -11,11 +11,11 @@ jobs:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v4
+ - uses: actions/checkout@v5
- name: Set up Python
- uses: actions/setup-python@v4
+ uses: actions/setup-python@v5
with:
- python-version: '3.11'
+ python-version: '3.12'
- name: Build artifacts
run: |
pipx run build
@@ -28,5 +28,4 @@ jobs:
[[ $output == "
hello world
" ]] || false
- name: Upload to Pypi
run: |
- pip install twine
- twine upload --username __token__ --password ${{ secrets.PYPI_TOKEN }} dist/*
+ pipx run twine upload --username __token__ --password ${{ secrets.PYPI_TOKEN }} dist/*
diff --git a/.github/workflows/update.yml b/.github/workflows/update.yml
index 5914764..2f451e5 100644
--- a/.github/workflows/update.yml
+++ b/.github/workflows/update.yml
@@ -9,7 +9,7 @@ jobs:
update-dependencies:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v4
+ - uses: actions/checkout@v5
- name: Update dependencies
uses: pdm-project/update-deps-action@main
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 54f9747..0346323 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,14 @@
+## v2.2.1(2025-10-13)
+
+### Changed
+
+- Add support for Python 3.14 and drop support for Python 3.8.
+
+### Fixed
+
+- Fix mis-spelled textarea in regex for escaping (GFM).
+- Fix an inline parsing edge case with nested emphasis.
+
## v2.2.0(2025-08-08)
### Added
diff --git a/marko/__init__.py b/marko/__init__.py
index 4fee3f8..4aae580 100644
--- a/marko/__init__.py
+++ b/marko/__init__.py
@@ -23,7 +23,7 @@
from .block import Document
from .parser import ElementType
-__version__ = "2.2.0"
+__version__ = "2.2.1"
class SetupDone(Exception):
diff --git a/noxfile.py b/noxfile.py
index fe1bc45..ac51a8a 100644
--- a/noxfile.py
+++ b/noxfile.py
@@ -5,7 +5,7 @@
os.environ.update(PDM_IGNORE_SAVED_PYTHON="1")
-@nox.session(python=["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"])
+@nox.session(python=["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"])
def tests(session):
session.run("pdm", "install", "-d", external=True)
session.run("pytest", "tests/")
diff --git a/pyproject.toml b/pyproject.toml
index a6f835a..07d038b 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -9,7 +9,7 @@ authors = [
{name = "Frost Ming", email = "mianghong@gmail.com"},
]
dynamic = ["version"]
-requires-python = ">=3.8"
+requires-python = ">=3.9"
license = {text = "MIT"}
dependencies = []
description = "A markdown parser with high extensibility."
@@ -20,11 +20,12 @@ classifiers = [
"Intended Audience :: Developers",
'Operating System :: OS Independent',
"Programming Language :: Python :: 3",
- "Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
+ "Programming Language :: Python :: 3.13",
+ "Programming Language :: Python :: 3.14",
]
[project.urls]