Changes¶
Version 3.0.2¶
Released 2024-10-18
Version 3.0.1¶
Released 2024-10-08
Version 3.0.0¶
Released 2024-10-07
Support Python 3.13 and its experimental free-threaded build. #461
Drop support for Python 3.7 and 3.8.
Use modern packaging metadata with
pyproject.toml
instead ofsetup.cfg
. #348Change
distutils
imports tosetuptools
. #399Use deferred evaluation of annotations. #400
Update signatures for
Markup
methods to matchstr
signatures. Use positional-only arguments. #400Some
str
methods onMarkup
no longer escape their argument:strip
,lstrip
,rstrip
,removeprefix
,removesuffix
,partition
, andrpartition
;replace
only escapes itsnew
argument. These methods are conceptually linked to search methods such asin
,find
, andindex
, which already do not escape their argument. #401The
__version__
attribute is deprecated. Use feature detection, orimportlib.metadata.version("markupsafe")
, instead. #402Speed up escaping plain strings by 40%. #434
Simplify speedups implementation. #437
Version 2.1.5¶
Released 2024-02-02
Fix
striptags
not collapsing spaces. #417
Version 2.1.4¶
Released 2024-01-19
Don’t use regular expressions for
striptags
, avoiding a performance issue. #413
Version 2.1.3¶
Released 2023-06-02
Version 2.1.2¶
Released 2023-01-17
Fix
striptags
not stripping tags containing newlines. #310
Version 2.1.1¶
Released 2022-03-14
Avoid ambiguous regex matches in
striptags
. #293
Version 2.1.0¶
Released 2022-02-17
Version 2.0.1¶
Released 2021-05-18
Version 2.0.0¶
Released 2021-05-11
Drop Python 2.7, 3.4, and 3.5 support.
Markup.unescape
useshtml.unescape()
to support HTML5 character references. #117Add type annotations for static typing tools. #149
Version 1.1.1¶
Released 2019-02-23
Fix segfault when
__html__
method raises an exception when using the C speedups. The exception is now propagated correctly. #109
Version 1.1.0¶
Released 2018-11-05
Drop support for Python 2.6 and 3.3.
Build wheels for Linux, Mac, and Windows, allowing systems without a compiler to take advantage of the C extension speedups. #104
Use newer CPython API on Python 3, resulting in a 1.5x speedup. #64
escape
wraps__html__
result inMarkup
, consistent with documented behavior. #69
Version 1.0¶
Released 2017-03-07
Fixed custom types not invoking
__unicode__
when used withformat()
.Added
__version__
module attribute.Improve unescape code to leave lone ampersands alone.
Version 0.18¶
Released 2013-05-22
Fixed
__mul__
and string splitting on Python 3.
Version 0.17¶
Released 2013-05-21
Fixed a bug with broken interpolation on tuples.
Version 0.16¶
Released 2013-05-20
Improved Python 3 Support and removed 2to3.
Removed support for Python 3.2 and 2.5.
Version 0.15¶
Released 2011-07-20
Fixed a typo that caused the library to fail to install on pypy and jython.
Version 0.14¶
Released 2011-07-20
Release fix for 0.13.
Version 0.13¶
Released 2011-07-20
Do not attempt to compile extension for PyPy or Jython.
Work around some 64bit Windows issues.
Version 0.12¶
Released 2011-02-17
Improved PyPy compatibility.