Update dependency pygments to v2.20.0 [SECURITY]#211
Open
renovate[bot] wants to merge 1 commit intomainfrom
Open
Update dependency pygments to v2.20.0 [SECURITY]#211renovate[bot] wants to merge 1 commit intomainfrom
renovate[bot] wants to merge 1 commit intomainfrom
Conversation
0c12a19 to
fd44447
Compare
fd44447 to
3e9ffaf
Compare
3e9ffaf to
b360656
Compare
b360656 to
3f7ddcf
Compare
3f7ddcf to
73b2f70
Compare
73b2f70 to
b08f89d
Compare
b08f89d to
69037be
Compare
69037be to
373eddb
Compare
373eddb to
c14ca7d
Compare
c14ca7d to
0bdd6fd
Compare
0bdd6fd to
4d06386
Compare
4d06386 to
4efe9fe
Compare
3fa523a to
905b977
Compare
905b977 to
fb867f1
Compare
fb867f1 to
278c3ca
Compare
278c3ca to
6582406
Compare
6582406 to
b681103
Compare
b681103 to
3ff8473
Compare
3ff8473 to
385875a
Compare
385875a to
78bc66a
Compare
78bc66a to
7aca1c9
Compare
7aca1c9 to
a412fd5
Compare
a412fd5 to
c77b6fb
Compare
c77b6fb to
b061b98
Compare
b061b98 to
54e94ca
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
==2.4.0→==2.20.0Pygments vulnerable to Regular Expression Denial of Service (ReDoS)
CVE-2021-27291 / GHSA-pq64-v7f5-gqh8
More information
Details
In pygments 1.1+, fixed in 2.7.4, the lexers used to parse programming languages rely heavily on regular expressions. Some of the regular expressions have exponential or cubic worst-case complexity and are vulnerable to ReDoS. By crafting malicious input, an attacker can cause a denial of service.
Severity
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:NReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Infinite Loop in Pygments
CVE-2021-20270 / GHSA-9w8r-397f-prfh
More information
Details
An infinite loop in SMLLexer in Pygments versions 1.5 to 2.7.3 may lead to denial of service when performing syntax highlighting of a Standard ML (SML) source file, as demonstrated by input that only contains the "exception" keyword.
Severity
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:NReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Pygments vulnerable to ReDoS
CVE-2022-40896 / GHSA-mrwq-x4v8-fh7p
More information
Details
A ReDoS issue was discovered in
pygments/lexers/smithy.pyin Pygments until 2.15.0 via SmithyLexer.Severity
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:NReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Pygments has Regular Expression Denial of Service (ReDoS) due to Inefficient Regex for GUID Matching
CVE-2026-4539 / GHSA-5239-wwwm-4pmq
More information
Details
A security flaw has been discovered in pygments before 2.20.0. The impacted element is the function AdlLexer of the file pygments/lexers/archetype.py. The manipulation results in inefficient regular expression complexity. The attack is only possible with local access. The exploit has been released to the public and may be used for attacks. The project was informed of the problem early through an issue report but has not responded yet.
Severity
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N/E:PReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Release Notes
pygments/pygments (pygments)
v2.20.0Compare Source
(released March 29th, 2026)
New lexers:
Updated lexers:
analyse_text(#3028, #3032)]',]?,]!(#2946)__PROPERTY__magic constant (#2924), add reserved keywords (#3002)t-string support (#2973, #3009, #3010).xbrlas file ending (#2890, #2891)Drop Python 3.8, and add Python 3.14 as a supported version (#2987, #3012)
Various improvements to
autopygmentize(#2894)Update
onedarkstyle to support more token types (#2977)Update
rttstyle to support more token types (#2895)Cache entry points to improve performance (#2979)
Fix
xterm-256color table (#3043)Fix
kwargsdictionary getting mutated on each call (#3044)v2.19.2Compare Source
(released June 21st, 2025)
v2.19.1Compare Source
(released January 6th, 2025)
Updated lexers:
v2.19.0Compare Source
(released January 5th, 2025)
New lexers:
Updated lexers:
filekeyword (#2726, #2805, #2806), add various other keywords (#2745, #2770)revert(#2766, #2775)Change-Byfield (#2757)int(#2801)splat, improve floating-point number parsing (#2755)EXPLAINkeywords (#2785), handle/(#2774)^as an operator to Matlab, Octave and Scilab (#2798)staticcallandextcall(#2719)HTML/XML+Evoqueas aliases (#2743)Operator.Wordto therrtstyle (#2709)analyze_text(#2771, #2772)v2.18.0Compare Source
(released May 4th, 2024)
New lexers:
Android.bp(#2659)Updated lexers:
openrcalias (#2599, #2371)fewer tokens on heading comments (#2678)
uninstantiationkeyword and recognizeescape sequences (#2619)
None/True/FalseToken.Commentfor comments instead ofComment.Preproc(#2598):,::and->asPunctuationand whitespace as
Whitespace, instead ofTextin both cases (#2631)
strings (#2624)
<?doc?>and<?note?>tags (#2597)kk-*invariant_langs(#2647)valandvar(#2602)New styles:
Make background colors in the image formatter work with Pillow 10.0 (#2623)
Require Python 3.8. As a result, the
importlib-metadatapackageis no longer needed for fast plugin discovery on Python 3.7.
The
pluginsextra (used as, e.g.,pip install pygments[plugins])is kept for backwards compatibility but now has no effect. (#2601)
Require the
urlattribute for lexers inside Pygments, addit to many lexers (#2588)
Replace Pyflakes linter with Ruff (#2592)
Add macOS CI (#2594)
Built-in lexers now declare the version of Pygments in which they were
added in a required
version_addedlexer attribute, instead of a.. versionadded::directive in the docstring (#2589, #2634)The
urlattribute is now required for built-in lexers andhas been added to all existing lexers (#2588)
The RTF formatter supports line number and line highlighting now (#1217, #2654)
Add
\sa0keyword in the RTF formatter (#1111, #2607)Register
pyconas an alias for the Python console lexer (#2697)Add MIME-Type for
DesktopLexer(#2613)Fix native style to meet WCAG AA guidelines (#2600)
Fix typo in documentation (#2672)
Use format strings consistently (#2661)
Add
__class_getitem__toFormatterto improve typing support (#2665)v2.17.2Compare Source
(released November 21, 2023)
v2.17.1Compare Source
(released November 19, 2023)
Updated lexers:
v2.17.0Compare Source
(released November 18, 2023)
New lexers:
Updated lexers:
elseifkeyword (#2528)lean3, in preparation fora possible switch to
leanhighlighting as Lean 4 (#2546)JSON formats (#2490)
andkeyword, removevaluefrom keywords (#2521)starlarkandbazelaliases (#2517, #2516)lenlikesize(#2508)panickeyword and->operator (#2510)(#2493), add missing variant languages (#2494)
[=[ bracketed arguments ]=](#2549)Fix ctags support and tests (#2487)
Include
Lexer.add_filterin the documentation (#2519)Add a
Lean3Lexeralias (#2546)The
pygments.stylesmodule contains a newSTYLESvariablewith a dictionary of built-in styles. The old
STYLE_MAPvariable,which uses a different format, is kept for backwards compatibility.
On Windows, add a new installation extra (
windows-terminal) which pulls independencies for colored console output. See :doc:
cmdlinefor more details.(#2505)
Support more file types in
autopygmentizescript (#2513)Change color of numbers in
rrtstyle (#2526)Fix error when trying to look up plugin formatters by file extension
of the output format (#2563)
Use Hatchling as a build backend instead of setuptools.
This change is transparent to most users. Distribution packagers
who build without build isolation need to add hatchling as a build
dependency and remove setuptools. People downloading source distributions
and wheels from PyPI directly should note that they now have
pygmentsin their file names instead of
Pygments. (#2573)Improve the test framework to also check for lost tokens when processing the
snippets and example files (#2582.)
Improve the Dracula style definition to make it easier to maintain (#2575)
v2.16.1Compare Source
(released August 6th, 2023)
nativestyle missing from style list (#2484)v2.16.0Compare Source
(released August 6th, 2023)
New lexers:
Freedesktop group, formerly known as XDG) (#2470)
Updated lexers:
application/pem-certificate-chainmimetype (#2471)lexing (#2454, #2456)
also recognize responses in
analyse_textimplementation (#2460), andhighlight URL encoded data (#2465, #1620)
in code blocks (#2437)
positive; add bold italic markup (#2447)
Add
Generic.EmphStrongtoken for bold italic markup (#2444)Add Lightbulb style (#2474)
Improve contrast in Monokai style (#2448)
Add documentation how to create terminal code highlighting commands (#2131, #2425)
Add support for loading TrueType fonts to the
ImageFormatter(#1960)v2.15.1Compare Source
(released April 18th, 2023)
Updated lexers:
Fix Python console traceback lexing being too strict
and sometimes reordering output (#2407, #2410, #2412)
v2.15.0Compare Source
(released April 10th, 2023)
Added lexers:
Updated lexers:
AMDGPU: Add support for
scratch_instructions, theattr*.*argument,as well as the
offmodifier (#2327).APDL: Miscellaneous improvements (#2314)
bash/tcsh:
breakto keywords (#2377)Chapel: Support attributes (#2376)
CMake: Implement bracket style comments (#2338, #2354)
CSS: Improve lexing of numbers inside function calls (#2382, #2383)
diff: Support normal diff syntax, as opposed to unified diff syntax (#2321)
GLSL, HLSL:
LilyPond: minor update of builtins
PHP: support attributes (#2055, #2347, #2360), fix anonymous classes without
parameters (#2359), improve lexing of variable variable syntax (#2358)
Python:
None(#2406)Rebol/Red: Don't require script headers (#2348, #2349)
Spice: Update keywords (#2336)
SQL+Jinja (
analyse_textmethod): Fix catastrophic backtracking (#2355)Terraform: Add
hclalias (#2375)Declare support for Python 3.11 and drop support for Python 3.6 (#2324).
Update
nativestyle to improve contrast (#2325).Update `github-dark`` style to match latest Primer style (#2401)
Revert a change that made guessing lexers based on file names slower
on Python 3.10 and older (#2328).
Fix some places where a locale-dependent encoding could unintentionally
be used instead of UTF-8 (#2326).
Fix Python traceback handling (#2226, #2329).
Groff formatter: sort color definitions for reproducibility (#2343)
Move project metadata to
pyproject.toml, removesetup.pyand
setup.cfg(#2342)The top-level
Makefilehas been removed. Instead, all shortcutsfor developing are now defined and run through tox. The
docfolderstill contains a
Makefileas an alternative totox -e doc.v2.14.0Compare Source
(released January 1st, 2023)
Added lexers:
Updated lexers:
Abap: Update keywords (#2281)
Alloy: Update for Alloy 6 (#1963)
C family (C, C++ and many others):
definition due to braces in comments (#2210)
C#: Fix number and operator recognition (#2256, #2257)
CSound: Updated builtins (#2268)
F#: Add
.fsxfile extension (#2282)gas (GNU assembler): recognize braces as punctuation (#2230)
HTTP: Add
CONNECTkeyword (#2242)Inform 6: Fix lexing of properties and doubles (#2214)
INI: Allow comments that are not their own line (#2217, #2161)
Java properties: Fix issue with whitespace-delimited keys, support
comments starting with
!and escapes, no longer support undocumented;and//comments (#2241)LilyPond: Improve heuristics, add
\maximaduration (#2283)LLVM: Add opaque pointer type (#2269)
Macaulay2: Update keywords (#2305)
Minecraft-related lexers (SNB and Minecraft function) moved to
pygments.lexers.minecraft(#2276)Nim: General improvements (#1970)
Nix: Fix single quotes inside indented strings (#2289)
Objective J: Fix catastrophic backtracking (#2225)
NASM: Add support for SSE/AVX/AVX-512 registers as well as 'rel'
and 'abs' address operators (#2212)
Powershell:
local:keyword (#2254)Solidity: Add boolean operators (#2292)
Spice: Add
enumkeyword and fix a bug regarding binary,hexadecimal and octal number tokens (#2227)
YAML: Accept colons in key names (#2277)
Fix
make mapfileswhen Pygments is not installed in editable mode(#2223)
Support more filetypes and compression types in
autopygmentize(#2219)Merge consecutive tokens in Autohotkey, Clay (#2248)
Add
.nasmas a recognized file type for NASM (#2280)Add
*Spec.hsas a recognized file type forHSpec(#2308)Add
*.pyi(for typing stub files) as a recognized file type forPython (#2231)
The HTML lexer no longer emits empty spans for whitespace (#2304)
Fix
IRCFormatterinserting linenumbers incorrectly (#2270)v2.13.0Compare Source
(released August 15th, 2022)
Added lexers:
Updated lexers:
because it disturbs lexing of aspects (#2125)
elements of function headers, e.g. between the arguments and
the opening brace for the body (#1891)
Errortokens (#2207, #2208)Setand qualified identifiers (#2158)
(#2194)
valuemodifier (#2142)appears in the output (#2166)
StarOffice Basic (#2170)
Name.Builtininstead ofKeyword.Type(#2136)\"$var\"inside strings (#2105)\N,\uand\Uescape sequencesin string literals, but not in bytes literals where they are
not supported (#2204)
${name}variables (#2145)<<heredocdelimiters (#2162)
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.