PyUp Safety actively tracks 316,954 Python packages for vulnerabilities and notifies you when to upgrade.
-------------- (not released yet)
------------- (released October 24, 2020) - Updated lexers: * Latex (1517, 1516) * LLVM (1565) * SPARQL (1559) - Fix Python console/traceback lexer problems with custom exceptions without messages (1548) - Allow loading ttc fonts on Mac/image formatter (1223) - Improve ``analyze_text`` across a variety of lexers (1549) - Remove CSS rule which forced the vertical padding to 0 for line numbers (1583, 1579) - Fix ``TNTLexer`` crashing on unexpected EOL (1568, 1570) - ``regexlint`` can be now run locally as part of ``tox`` tests (1557) - Fix typos (1550, 1562) - Add Python 3.9 as a supported version (1554)
------------- (released September 16, 2020) - Fixed a regression in the JSON lexer (1544)
------------- (released March 8, 2020) - This release fixes a packaging issue. No functional changes.
------------- (released November 29, 2019) - Fix incompatibility with some setuptools versions (PR1316) - Fix lexing of ReST field lists (PR1279) - Fix lexing of Matlab keywords as field names (PR1282) - Recognize double-quoted strings in Matlab (PR1278) - Avoid slow backtracking in Vim lexer (PR1312) - Fix Scala highlighting of types (PR1315) - Highlight field lists more consistently in ReST (PR1279) - Fix highlighting Matlab keywords in field names (PR1282) - Recognize Matlab double quoted strings (PR1278) - Add some Terraform keywords - Update Modelica lexer to 3.4 - Update Crystal examples
------------- (released November 26, 2019) - This release fixes a packaging issue. No functional changes.
------------- (released November 26, 2019) - Added lexers: * Email (PR1246) * Erlang, Elixir shells (PR823, 1521) * Notmuch (PR1264) * `Scdoc <https://git.sr.ht/~sircmpwn/scdoc>`_ (PR#1268) * `Solidity <https://solidity.readthedocs.io/>`_ (#1214) * `Zeek <https://www.zeek.org>`_ (new name for Bro) (PR#1269) * `Zig <https://ziglang.org/>`_ (PR#820) - Updated lexers: * Apache2 Configuration (PR1251) * Bash sessions (1253) * CSound (PR1250) * Dart * Dockerfile * Emacs Lisp * Handlebars (PR773) * Java (1101, 987) * Logtalk (PR1261) * Matlab (PR1271) * Praat (PR1277) * Python3 (PR1255, PR1400) * Ruby * YAML (1528) * Velocity - Added styles: * Inkpot (PR1276) - The ``PythonLexer`` class is now an alias for the former ``Python3Lexer``. The old ``PythonLexer`` is available as ``Python2Lexer``. Same change has been done for the ``PythonTracebackLexer``. The ``python3`` option for the ``PythonConsoleLexer`` is now true by default. - Bump ``NasmLexer`` priority over ``TasmLexer`` for ``.asm`` files (fixes 1326) - Default font in the ``ImageFormatter`` has been updated (928, PR1245) - Test suite switched to py.test, removed nose dependency (1490) - Reduce ``TeraTerm`` lexer score -- it used to match nearly all languages (1256) - Treat ``Skylark``/``Starlark`` files as Python files (PR1259) - Image formatter: actually respect ``line_number_separator`` option - Add LICENSE file to wheel builds - Agda: fix lambda highlighting - Dart: support ` annotations - Dockerfile: accept ``FROM ... AS`` syntax - Emacs Lisp: add more string functions - GAS: accept registers in directive arguments - Java: make structural punctuation (braces, parens, colon, comma) ``Punctuation``, not ``Operator`` (987) - Java: support ``var`` contextual keyword (1101) - Matlab: Fix recognition of ``function`` keyword (PR1271) - Python: recognize ``.jy`` filenames (976) - Python: recognize ``f`` string prefix (1156) - Ruby: support squiggly heredocs - Shell sessions: recognize Virtualenv prompt (PR1266) - Velocity: support silent reference syntax
------------- (released May 28, 2019) - Fix encoding error when guessing lexer with given ``encoding`` option (1438)
------------- (released May 24, 2019) - Updated lexers: * Coq (1430) * MSDOS Session (PR734) * NASM (1517) * Objective-C (PR813, 1508) * Prolog (1511) * TypeScript (1515) - Support CSS variables in stylesheets (PR814, 1356) - Fix F lexer name (PR709) - Fix ``TerminalFormatter`` using bold for bright text (1480)
------------- (released May 8, 2019) - Added lexers: * Augeas (PR807) * BBC Basic (PR806) * Boa (PR756) * Charm++ CI (PR788) * DASM16 (PR807) * FloScript (PR750) * FreeFem++ (PR785) * Hspec (PR790) * Pony (PR627) * SGF (PR780) * Slash (PR807) * Slurm (PR760) * Tera Term Language (PR749) * TOML (PR807) * Unicon (PR731) * VBScript (PR673) - Updated lexers: * Apache2 (PR766) * Cypher (PR746) * LLVM (PR792) * Makefiles (PR766) * PHP (1482) * Rust * SQL (PR672) * Stan (PR774) * Stata (PR800) * Terraform (PR787) * YAML - Add solarized style (PR708) - Add support for Markdown reference-style links (PR753) - Add license information to generated HTML/CSS files (1496) - Change ANSI color names (PR777) - Fix catastrophic backtracking in the bash lexer (1494) - Fix documentation failing to build using Sphinx 2.0 (1501) - Fix incorrect links in the Lisp and R lexer documentation (PR775) - Fix rare unicode errors on Python 2.7 (PR798, 1492) - Fix lexers popping from an empty stack (1506) - TypoScript uses ``.typoscript`` now (1498) - Updated Trove classifiers and ``pip`` requirements (PR799)
------------- (released Dec 16, 2018) - Updated lexers: * ASM (PR784) * Chapel (PR735) * Clean (PR621) * CSound (PR684) * Elm (PR744) * Fortran (PR747) * GLSL (PR740) * Haskell (PR745) * Hy (PR754) * Igor Pro (PR764) * PowerShell (PR705) * Python (PR720, 1299, PR715) * SLexer (PR680) * YAML (PR762, PR724) - Fix invalid string escape sequences - Fix `FutureWarning` introduced by regex changes in Python 3.7
------------- (released Nov 25, 2018) - Added lexers: * Fennel (PR783) * HLSL (PR675) - Updated lexers: * Dockerfile (PR714) - Minimum Python versions changed to 2.7 and 3.5 - Added support for Python 3.7 generator changes (PR772) - Fix incorrect token type in SCSS for single-quote strings (1322) - Use `terminal256` formatter if `TERM` contains `256` (PR666) - Fix incorrect handling of GitHub style fences in Markdown (PR741, 1389) - Fix `%a` not being highlighted in Python3 strings (PR727)
------------- (released Jan 22, 2017) - Added lexers: * AMPL * TypoScript (1173) * Varnish config (PR554) * Clean (PR503) * WDiff (PR513) * Flatline (PR551) * Silver (PR537) * HSAIL (PR518) * JSGF (PR546) * NCAR command language (PR536) * Extempore (PR530) * Cap'n Proto (PR595) * Whiley (PR573) * Monte (PR592) * Crystal (PR576) * Snowball (PR589) * CapDL (PR579) * NuSMV (PR564) * SAS, Stata (PR593) - Added the ability to load lexer and formatter classes directly from files with the `-x` command line option and the `lexers.load_lexer_from_file()` and `formatters.load_formatter_from_file()` functions. (PR559) - Added `lexers.find_lexer_class_by_name()`. (1203) - Added new token types and lexing for magic methods and variables in Python and PHP. - Added a new token type for string affixes and lexing for them in Python, C++ and Postgresql lexers. - Added a new token type for heredoc (and similar) string delimiters and lexing for them in C++, Perl, PHP, Postgresql and Ruby lexers. - Styles can now define colors with ANSI colors for use in the 256-color terminal formatter. (PR531) - Improved the CSS lexer. (1083, 1130) - Added "Rainbow Dash" style. (PR623) - Delay loading `pkg_resources`, which takes a long while to import. (PR690)
------------- (released Mar 2, 2016) - Fixed regression in Bash lexer (PR563)
------------- (released Feb 29, 2016) - Fixed Python 3 regression in image formatter (1215) - Fixed regression in Bash lexer (PR562)
------------- (relased Feb 14, 2016) - Fixed Jython compatibility (1205) - Fixed HTML formatter output with leading empty lines (1111) - Added a mapping table for LaTeX encodings and added utf8 (1152) - Fixed image formatter font searching on Macs (1188) - Fixed deepcopy-ing of Token instances (1168) - Fixed Julia string interpolation (1170) - Fixed statefulness of HttpLexer between get_tokens calls - Many smaller fixes to various lexers
------------- (released Jan 20, 2015) - Fix Python tracebacks getting duplicated in the console lexer (1068). - Backquote-delimited identifiers are now recognized in F (1062).
------------- (released Nov 10, 2014) - Fix an encoding issue when using ``pygmentize`` with the ``-o`` option.
----------- (released Nov 9, 2014) - Default lexer encoding is now "guess", i.e. UTF-8 / Locale / Latin1 is tried in that order. - Major update to Swift lexer (PR410). - Multiple fixes to lexer guessing in conflicting cases: * recognize HTML5 by doctype * recognize XML by XML declaration * don't recognize C/C++ as SystemVerilog - Simplified regexes and builtin lists.
----------- (released Feb 3, 2013) - Lexers added: * Dylan console (PR149) * Logos (PR150) * Shell sessions (PR158) - Fix guessed lexers not receiving lexer options (838). - Fix unquoted HTML attribute lexing in Opa (841). - Fixes to the Dart lexer (PR160).
-------------- (released Jan 9, 2013) - Lexers added: * AspectJ (PR90) * AutoIt (PR122) * BUGS-like languages (PR89) * Ceylon (PR86) * Croc (new name for MiniD) * CUDA (PR75) * Dg (PR116) * IDL (PR115) * Jags (PR89) * Julia (PR61) * Kconfig (711) * Lasso (PR95, PR113) * LiveScript (PR84) * Monkey (PR117) * Mscgen (PR80) * NSIS scripts (PR136) * OpenCOBOL (PR72) * QML (PR123) * Puppet (PR133) * Racket (PR94) * Rdoc (PR99) * Robot Framework (PR137) * RPM spec files (PR124) * Rust (PR67) * Smali (Dalvik assembly) * SourcePawn (PR39) * Stan (PR89) * Treetop (PR125) * TypeScript (PR114) * VGL (PR12) * Visual FoxPro (762) * Windows Registry (819) * Xtend (PR68) - The HTML formatter now supports linking to tags using CTags files, when the python-ctags package is installed (PR87). - The HTML formatter now has a "linespans" option that wraps every line in a <span> tag with a specific id (PR82). - When deriving a lexer from another lexer with token definitions, definitions for states not in the child lexer are now inherited. If you override a state in the child lexer, an "inherit" keyword has been added to insert the base state at that position (PR141). - The C family lexers now inherit token definitions from a common base class, removing code duplication (PR141). - Use "colorama" on Windows for console color output (PR142). - Fix Template Haskell highlighting (PR63). - Fix some S/R lexer errors (PR91). - Fix a bug in the Prolog lexer with names that start with 'is' (810). - Rewrite Dylan lexer, add Dylan LID lexer (PR147). - Add a Java quickstart document (PR146). - Add a "external/autopygmentize" file that can be used as .lessfilter (802).
----------- (codename Zeitdilatation, released Mar 10, 2012) - Lexers added: * Awk (630) * Fancy (633) * PyPy Log * eC * Nimrod * Nemerle (667) * F (353) * Groovy (501) * PostgreSQL (660) * DTD * Gosu (634) * Octave (PR22) * Standard ML (PR14) * CFengine3 (601) * Opa (PR37) * HTTP sessions (PR42) * JSON (PR31) * SNOBOL (PR30) * MoonScript (PR43) * ECL (PR29) * Urbiscript (PR17) * OpenEdge ABL (PR27) * SystemVerilog (PR35) * Coq (734) * PowerShell (654) * Dart (715) * Fantom (PR36) * Bro (PR5) * NewLISP (PR26) * VHDL (PR45) * Scilab (740) * Elixir (PR57) * Tea (PR56) * Kotlin (PR58) - Fix Python 3 terminal highlighting with pygmentize (691). - In the LaTeX formatter, escape special &, < and > chars (648). - In the LaTeX formatter, fix display problems for styles with token background colors (670). - Enhancements to the Squid conf lexer (664). - Several fixes to the reStructuredText lexer (636). - Recognize methods in the ObjC lexer (638). - Fix Lua "class" highlighting: it does not have classes (665). - Fix degenerate regex in Scala lexer (671) and highlighting bugs (713, 708). - Fix number pattern order in Ocaml lexer (647). - Fix generic type highlighting in ActionScript 3 (666). - Fixes to the Clojure lexer (PR9). - Fix degenerate regex in Nemerle lexer (706). - Fix infinite looping in CoffeeScript lexer (729). - Fix crashes and analysis with ObjectiveC lexer (693, 696). - Add some Fortran 2003 keywords. - Fix Boo string regexes (679). - Add "rrt" style (727). - Fix infinite looping in Darcs Patch lexer. - Lots of misc fixes to character-eating bugs and ordering problems in many different lexers.
------------- (bugfix release, released Mar 05, 2010) - The ``pygmentize`` script was missing from the distribution.
----------- (codename Schneeglöckchen, released Mar 01, 2010) - Added the ``ensurenl`` lexer option, which can be used to suppress the automatic addition of a newline to the lexer input. - Lexers added: * Ada * Coldfusion * Modula-2 * Haxe * R console * Objective-J * Haml and Sass * CoffeeScript - Enhanced reStructuredText highlighting. - Added support for PHP 5.3 namespaces in the PHP lexer. - Added a bash completion script for `pygmentize`, to the external/ directory (466). - Fixed a bug in `do_insertions()` used for multi-lexer languages. - Fixed a Ruby regex highlighting bug (476). - Fixed regex highlighting bugs in Perl lexer (258). - Add small enhancements to the C lexer (467) and Bash lexer (469). - Small fixes for the Tcl, Debian control file, Nginx config, Smalltalk, Objective-C, Clojure, Lua lexers. - Gherkin lexer: Fixed single apostrophe bug and added new i18n keywords.
------------- (bugfix release, released Jan 02, 2010) * Removed a backwards incompatibility in the LaTeX formatter that caused Sphinx to produce invalid commands when writing LaTeX output (463). * Fixed a forever-backtracking regex in the BashLexer (462).
------------- (bugfix release, released Jan 02, 2010) * Fixed mishandling of an ellipsis in place of the frames in a Python console traceback, resulting in clobbered output.
----------- (codename Neujahr, released Jan 01, 2010) - Dropped Python 2.3 compatibility. - Lexers added: * Asymptote * Go * Gherkin (Cucumber) * CMake * Ooc * Coldfusion * Haxe * R console - Added options for rendering LaTeX in source code comments in the LaTeX formatter (461). - Updated the Logtalk lexer. - Added `line_number_start` option to image formatter (456). - Added `hl_lines` and `hl_color` options to image formatter (457). - Fixed the HtmlFormatter's handling of noclasses=True to not output any classes (427). - Added the Monokai style (453). - Fixed LLVM lexer identifier syntax and added new keywords (442). - Fixed the PythonTracebackLexer to handle non-traceback data in header or trailer, and support more partial tracebacks that start on line 2 (437). - Fixed the CLexer to not highlight ternary statements as labels. - Fixed lexing of some Ruby quoting peculiarities (460). - A few ASM lexer fixes (450).
------------- (bugfix release, released Sep 15, 2009) - Fixed the BBCode lexer (435). - Added support for new Jinja2 keywords. - Fixed test suite failures. - Added Gentoo-specific suffixes to Bash lexer.
-------------- (released Aug 24, 2008) - Fixed a Jython compatibility issue in pygments.unistring (358).
------------ (codename Straußenei, released Aug 23, 2008) Many thanks go to Tim Hatch for writing or integrating most of the bug fixes and new features. - Lexers added: * Nasm-style assembly language, thanks to delroth * YAML, thanks to Kirill Simonov * ActionScript 3, thanks to Pierre Bourdon * Cheetah/Spitfire templates, thanks to Matt Good * Lighttpd config files * Nginx config files * Gnuplot plotting scripts * Clojure * POV-Ray scene files * Sqlite3 interactive console sessions * Scala source files, thanks to Krzysiek Goj - Lexers improved: * C lexer highlights standard library functions now and supports C99 types. * Bash lexer now correctly highlights heredocs without preceding whitespace. * Vim lexer now highlights hex colors properly and knows a couple more keywords. * Irc logs lexer now handles xchat's default time format (340) and correctly highlights lines ending in ``>``. * Support more delimiters for perl regular expressions (258). * ObjectiveC lexer now supports 2.0 features. - Added "Visual Studio" style. - Updated markdown processor to Markdown 1.7. - Support roman/sans/mono style defs and use them in the LaTeX formatter. - The RawTokenFormatter is no longer registered to ``*.raw`` and it's documented that tokenization with this lexer may raise exceptions. - New option ``hl_lines`` to HTML formatter, to highlight certain lines. - New option ``prestyles`` to HTML formatter. - New option *-g* to pygmentize, to allow lexer guessing based on filetext (can be slowish, so file extensions are still checked first). - ``guess_lexer()`` now makes its decision much faster due to a cache of whether data is xml-like (a check which is used in several versions of ``analyse_text()``. Several lexers also have more accurate ``analyse_text()`` now.
------------ (codename Malzeug, released May 06, 2008) - Lexers added: * Io * Smalltalk * Darcs patches * Tcl * Matlab * Matlab sessions * FORTRAN * XSLT * tcsh * NumPy * Python 3 * S, S-plus, R statistics languages * Logtalk - In the LatexFormatter, the *commandprefix* option is now by default 'PY' instead of 'C', since the latter resulted in several collisions with other packages. Also, the special meaning of the *arg* argument to ``get_style_defs()`` was removed. - Added ImageFormatter, to format code as PNG, JPG, GIF or BMP. (Needs the Python Imaging Library.) - Support doc comments in the PHP lexer. - Handle format specifications in the Perl lexer. - Fix comment handling in the Batch lexer. - Add more file name extensions for the C++, INI and XML lexers. - Fixes in the IRC and MuPad lexers. - Fix function and interface name highlighting in the Java lexer. - Fix at-rule handling in the CSS lexer. - Handle KeyboardInterrupts gracefully in pygmentize. - Added BlackWhiteStyle. - Bash lexer now correctly highlights math, does not require whitespace after semicolons, and correctly highlights boolean operators. - Makefile lexer is now capable of handling BSD and GNU make syntax.
----------- (codename Herbstzeitlose, released Oct 14, 2007) - Lexers added: * Erlang * ActionScript * Literate Haskell * Common Lisp * Various assembly languages * Gettext catalogs * Squid configuration * Debian control files * MySQL-style SQL * MOOCode - Lexers improved: * Greatly improved the Haskell and OCaml lexers. * Improved the Bash lexer's handling of nested constructs. * The C and Java lexers exhibited abysmal performance with some input code; this should now be fixed. * The IRC logs lexer is now able to colorize weechat logs too. * The Lua lexer now recognizes multi-line comments. * Fixed bugs in the D and MiniD lexer. - The encoding handling of the command line mode (pygmentize) was enhanced. You shouldn't get UnicodeErrors from it anymore if you don't give an encoding option. - Added a ``-P`` option to the command line mode which can be used to give options whose values contain commas or equals signs. - Added 256-color terminal formatter. - Added an experimental SVG formatter. - Added the ``lineanchors`` option to the HTML formatter, thanks to Ian Charnas for the idea. - Gave the line numbers table a CSS class in the HTML formatter. - Added a Vim 7-like style.
------------- (released Jun 27, 2007) - Fixed POD highlighting in the Ruby lexer. - Fixed Unicode class and namespace name highlighting in the C lexer. - Fixed Unicode string prefix highlighting in the Python lexer. - Fixed a bug in the D and MiniD lexers. - Fixed the included MoinMoin parser.
----------- (codename Maikäfer, released May 30, 2007) - Lexers added: * Haskell, thanks to Adam Blinkinsop * Redcode, thanks to Adam Blinkinsop * D, thanks to Kirk McDonald * MuPad, thanks to Christopher Creutzig * MiniD, thanks to Jarrett Billingsley * Vim Script, by Tim Hatch - The HTML formatter now has a second line-numbers mode in which it will just integrate the numbers in the same ``<pre>`` tag as the code. - The `CSharpLexer` now is Unicode-aware, which means that it has an option that can be set so that it correctly lexes Unicode identifiers allowed by the C specs. - Added a `RaiseOnErrorTokenFilter` that raises an exception when the lexer generates an error token, and a `VisibleWhitespaceFilter` that converts whitespace (spaces, tabs, newlines) into visible characters. - Fixed the `do_insertions()` helper function to yield correct indices. - The ReST lexer now automatically highlights source code blocks in ".. sourcecode:: language" and ".. code:: language" directive blocks. - Improved the default style (thanks to Tiberius Teng). The old default is still available as the "emacs" style (which was an alias before). - The `get_style_defs` method of HTML formatters now uses the `cssclass` option as the default selector if it was given. - Improved the ReST and Bash lexers a bit. - Fixed a few bugs in the Makefile and Bash lexers, thanks to Tim Hatch. - Fixed a bug in the command line code that disallowed ``-O`` options when using the ``-S`` option. - Fixed a bug in the `RawTokenFormatter`.
------------- (released Feb 15, 2007) - Fixed little highlighting bugs in the Python, Java, Scheme and Apache Config lexers. - Updated the included manpage. - Included a built version of the documentation in the source tarball.
----------- (codename Faschingskrapfn, released Feb 14, 2007) - Added a MoinMoin parser that uses Pygments. With it, you get Pygments highlighting in Moin Wiki pages. - Changed the exception raised if no suitable lexer, formatter etc. is found in one of the `get_*_by_*` functions to a custom exception, `pygments.util.ClassNotFound`. It is, however, a subclass of `ValueError` in order to retain backwards compatibility. - Added a `-H` command line option which can be used to get the docstring of a lexer, formatter or filter. - Made the handling of lexers and formatters more consistent. The aliases and filename patterns of formatters are now attributes on them. - Added an OCaml lexer, thanks to Adam Blinkinsop. - Made the HTML formatter more flexible, and easily subclassable in order to make it easy to implement custom wrappers, e.g. alternate line number markup. See the documentation. - Added an `outencoding` option to all formatters, making it possible to override the `encoding` (which is used by lexers and formatters) when using the command line interface. Also, if using the terminal formatter and the output file is a terminal and has an encoding attribute, use it if no encoding is given. - Made it possible to just drop style modules into the `styles` subpackage of the Pygments installation. - Added a "state" keyword argument to the `using` helper. - Added a `commandprefix` option to the `LatexFormatter` which allows to control how the command names are constructed. - Added quite a few new lexers, thanks to Tim Hatch: * Java Server Pages * Windows batch files * Trac Wiki markup * Python tracebacks * ReStructuredText * Dylan * and the Befunge esoteric programming language (yay!) - Added Mako lexers by Ben Bangert. - Added "fruity" style, another dark background originally vim-based theme. - Added sources.list lexer by Dennis Kaarsemaker. - Added token stream filters, and a pygmentize option to use them. - Changed behavior of `in` Operator for tokens. - Added mimetypes for all lexers. - Fixed some problems lexing Python strings. - Fixed tickets: 167, 178, 179, 180, 185, 201.
----------- (codename Zimtstern, released Dec 20, 2006) - Added option for the HTML formatter to write the CSS to an external file in "full document" mode. - Added RTF formatter. - Added Bash and Apache configuration lexers (thanks to Tim Hatch). - Improved guessing methods for various lexers. - Added `media` support to CSS lexer (thanks to Tim Hatch). - Added a Groff lexer (thanks to Tim Hatch). - License change to BSD. - Added lexers for the Myghty template language. - Added a Scheme lexer (thanks to Marek Kubica). - Added some functions to iterate over existing lexers, formatters and lexers. - The HtmlFormatter's `get_style_defs()` can now take a list as an argument to generate CSS with multiple prefixes. - Support for guessing input encoding added. - Encoding support added: all processing is now done with Unicode strings, input and output are converted from and optionally to byte strings (see the ``encoding`` option of lexers and formatters). - Some improvements in the C(++) lexers handling comments and line continuations.
------------- (released Oct 30, 2006) - Fixed traceback in ``pygmentize -L`` (thanks to Piotr Ozarowski).
----------- (codename PyKleur, released Oct 30, 2006) - Initial public release.