Changelog History
Page 3
-
v10.2.0 Changes
September 07, 2020π Version 10.2.0
π Parser Engine:
- (fix) When ignoring a potential match highlighting can terminate early (#2649) Josh Goebel
π New themes:
- Gradient Light by Samia Ali
π Deprecations:
- π
fixMarkup
is now deprecated and will be removed in v11.0. (#2534) Josh Goebel
Big picture:
- β Add simple Vue plugin for basic use cases (#2544) Josh Goebel
Language Improvements:
- π fix(bash) Fewer false positives for keywords in arguments (#2669) sirosen
- π fix(js) Prevent long series of /////// from causing freezes (#2656) Josh Goebel
- enh(csharp) Add
init
andrecord
keywords for C# 9.0 (#2660) Youssef Victor - enh(matlab) Add new R2019b
arguments
keyword and fixenumeration
keyword (#2619) Andrew Janke - π fix(kotlin) Remove very old keywords and update example code (#2623) kageru
- π fix(night) Prevent object prototypes method values from being returned in
getLanguage
(#2636) night - π enh(java) Add support for
enum
, which will identify as aclass
now (#2643) ezksd - π enh(nsis) Add support for NSIS 3.06 commands (#2653) idleberg
- enh(php) detect newer more flexible HEREdoc syntax (#2658) eytienne
-
v10.1.2 Changes
July 23, 2020 -
v10.1.1 Changes
June 16, 2020π Fixes:
- Resolve issue on Node 6 due to dangling comma (#2608) Edwin Hoogerbeets
- Resolve
index.d.ts is not a module
error (#2603) Josh Goebel
-
v10.1.0 Changes
June 11, 2020π New themes:
π Parser Engine:
- π (parser) Now escapes quotes in text content when escaping HTML (#2564) Josh Goebel
- π (parser) Adds
keywords.$pattern
key to grammar definitions (#2519) Josh Goebel - π (parser) Adds SHEBANG utility mode Josh Goebel
- π (parser) Adds
registerAliases
method (#2540) [Taufik Nurrohman][] - (enh) Added
on:begin
callback for modes (#2261) Josh Goebel - (enh) Added
on:end
callback for modes (#2261) Josh Goebel - (enh) Added ability to programatically ignore begin and end matches (#2261) Josh Goebel
- (enh) Added
END_SAME_AS_BEGIN
mode to replaceendSameAsBegin
parser attribute (#2261) Josh Goebel - (fix)
fixMarkup
would rarely destroy markup whenuseBR
was enabled (#2532) Josh Goebel
π Deprecations:
- π
htmlbars
grammar is now deprecated. Usehandlebars
instead. (#2344) Nils Knappmeier - π when using
highlightBlock
result.re
deprecated. Useresult.relevance
instead. (#2552) Josh Goebel - ditto for
result.second_best.re
=>result.second_best.relevance
(#2552) - π
lexemes
is now deprecated in favor ofkeywords.$pattern
key (#2519) Josh Goebel - π
endSameAsBegin
is now deprecated. (#2261) Josh Goebel
Language Improvements:
- π fix(groovy) strings are not allowed inside ternary clauses (#2217) Josh Goebel
- π fix(typescript) add
readonly
keyword (#2562) Martin (Lhoerion) - π fix(javascript) fix regex inside parens after a non-regex (#2530) Josh Goebel
- enh(typescript) use identifier to match potential keywords, preventing false positivites (#2519) Josh Goebel
- enh(javascript) use identifier to match potential keywords, preventing false positivites (#2519) Josh Goebel
- β‘οΈ [enh] Add
OPTIMIZE:
andHACK:
to the labels highlighted inside comments Josh Goebel - enh(typescript/javascript/coffeescript/livescript) derive ECMAscript keywords from a common foudation (#2518) Josh Goebel
- enh(typescript) add setInterval, setTimeout, clearInterval, clearTimeout (#2514) Josh Goebel
- enh(javascript) add setInterval, setTimeout, clearInterval, clearTimeout (#2514) Vania Kucher
- enh(cpp) add
pair
,make_pair
,priority_queue
as built-ins (#2538) Hankun Lin - enh(cpp) recognize
priority_queue
pair
as cpp containers (#2541) Hankun Lin - π fix(javascript) prevent
set
keyword conflicting with setTimeout, etc. (#2514) Vania Kucher - π fix(cpp) Fix highlighting of unterminated raw strings (#2261) David Benjamin
- π fix(javascript)
=>
function with nested()
in params now works (#2502) Josh Goebel - π fix(typescript)
=>
function with nested()
in params now works (#2502) Josh Goebel - π fix(yaml) Fix tags to include non-word characters (#2486) Peter Plantinga
- π fix(swift)
@objcMembers
was being partially highlighted (#2543) Nick Randall - enh(dart) Add
late
andrequired
keywords, theNever
built-in type, and nullable built-in types (#2550) Sam Rawlins - enh(erlang) Add underscore separators to numeric literals (#2554) Sergey Prokhorov
- π enh(handlebars) Support for sub-expressions, path-expressions, hashes, block-parameters and literals (#2344) Nils Knappmeier
- π enh(protobuf) Support multiline comments (#2597) Pavel Evstigneev
- π fix(toml) Improve key parsing (#2595) Antoine du Hamel
-
v10.0.3
May 12, 2020 -
v10.0.2 Changes
May 03, 2020π Brower build:
- Issue (bug) Fix: Version 10 fails to load as CommonJS module. (#2511) Josh Goebel
- π Issue (removal) AMD module loading support has been removed. (#2511) Josh Goebel
π Parser Engine Changes:
- π Issue fix(parser) Fix freez issue with illegal 0 width matches (#2524) Josh Goebel
-
v10.0.1 Changes
April 26, 2020π Fixes: sublanguage with no rule matches causes text to disappear in final output. (#2506).
-
v10.0.0 Changes
March 10, 2020π New languages:
- β add(php-template) Explicit language to detect PHP templates (vs xml) Josh Goebel
- enh(python) Added
python-repl
for Python REPL sessions - β add(never) Added 3rd party Never language support
π New themes:
- Srcery by Chen Bin
π Parser Engine Changes:
- (bug) Fix
beginKeywords
to ignore . matches (#2434) Josh Goebel - π (enh) add
before:highlight
plugin API callback (#2395) Josh Goebel - π (enh) add
after:highlight
plugin API callback (#2395) Josh Goebel - π (enh) split out parse tree generation and HTML rendering concerns (#2404) Josh Goebel
- (enh) every language can have a
name
attribute now (#2400) Josh Goebel - (enh) improve regular expression detect (less false-positives) (#2380) Josh Goebel
- π§ (enh) make
noHighlightRe
andlanguagePrefixRe
configurable (#2374) Josh Goebel
Language Improvements:
- enh(python) Exclude parens from functions params (#2490) Γlvaro MondΓ©jar
- enh(swift) Add
compactMap
to keywords as built_in (#2478) Omid Golparvar - enh(nim) adds
func
keyword (#2468) Adnan Yaqoob - π enh(xml) deprecate ActionScript inside script tags (#2444) Josh Goebel
- π fix(javascript) prevent get/set variables conflicting with keywords (#2440) Josh Goebel
- π bug(clojure) Now highlights
defn-
properly (#2438) Josh Goebel - 0οΈβ£ enh(bash) default value is another variable (#2439) Josh Goebel
- enh(bash) string nested within string (#2439) Josh Goebel
- π enh(bash) Add arithmetic expression support (#2439) Josh Goebel
- π enh(clojure) Add support for global definitions name (#2347) Alexandre Grison
- π enh(fortran) Support Fortran 77 style comments (#2416) Josh Goebel
- π
(csharp) add support for
@identifier
style identifiers (#2414) Josh Goebel - π fix(elixir) Support function names with a slash (#2406) Josh Goebel
- π fix(javascript) comma is allowed in a "value container" (#2403) Josh Goebel
- enh(apache) add
deny
andallow
keywords Josh Goebel - enh(apache) highlight numeric attributes values Josh Goebel
- enh(apache) highlight IP addresses, ports, and strings in sections Josh Goebel
- enh(php) added more keywords and include
<?=
syntax to meta Taufik Nurrohman - π fix(protobuf) Fix
rpc
when followed by a block (#) Josh Goebel - enh(zephir) almost complete rework of the zephir grammar (#2387) Josh Goebel
- π (markdown) much improved code block support (#2382) Josh Goebel
- (markdown) improve bold/italic nesting (#2382) Josh Goebel
- π enh(csharp) Support
where
keyword as class constraint (#2378) Josh Goebel - enh(csharp) Allow reference path in class inheritance lists (#2378) Josh Goebel
- enh(csharp) Add generic modifiers (in, out) (#2378) Josh Goebel
- π (fortran) enh(fortran) support intrinsic data types (#2379) Josh Goebel
- enh(java) annotations can include numbers (#2377) Josh Goebel
- enh(java) annotations can take params (#2377) Josh Goebel
- enh(java) allow annotations inside function call params (#2377) Josh Goebel
- π enh(parser) pre/post-highlightBlock callbacks via plugin (#2285) Josh Goebel
- (fortran) Add Fortran 2018 keywords and coarray intrinsics (#2361) Sam Miller
- (delphi) highlight hexadecimal, octal, and binary numbers (#2370) Robert Riebisch
- enh(plaintext) added
text
andtxt
as alias (#2360) Taufik Nurrohman - 0οΈβ£ enh(powershell) added PowerShell v5.1/v7 default aliases as "built_in"s (#2423) Sean Williams
- π enh(yaml) added support for timestamps (#2475) [Peter Plantinga][]
Developer Tools:
- β added Dockerfile for optionally developing with a container
-
v10.0.0-beta.0 Changes
March 10, 2020π Welcome to version 10.0 (BETA). This a major release and therefore will contain breaking changes.
π₯ Breaking Changes
π Our normal minor releases try to never break anything, holding all breaking changes for major releases.
We tried to squeeze in as many as we could this time so that after 10.0 ships we'll be back to quiet sailing for a while before we need to push version 11. That said, we're very conservative about what we consider a breaking change.IE, if there it could possibly break things for anyone, it's typically a breaking change. The fact is a vast majority of users should upgrade and probably not notice any changes at all.
See VERSION_10_BREAKING_CHANGES.md for a comprehensive list of breaking changes, but here is a summary... if you use:
Core highlight.js lib on the client (with no extra CDN languages)
Just keep doing that.
- If you're using
darkula.css
, you'll need to change that todarcula.css
- β‘οΈ The minified distributable has changed from
.pack.js
to.min.js
, update your name when you update your URL. - π» If your users have very old browsers, they may no longer be supported (no more IE11, etc.). (We're using ES2015 code now.)
nohighlight
orno-highlight
are the only two CSS classes that will SKIP highlighting completely.*text*
and*plain*
no longer will do this.
Core highlight.js lib on the client (plus additional CDN languages)
Quite a few grammars have been renamed. Ex:
nimrod.js
is nownim.js
.- β‘οΈ Check the renamed grammars to see if you might need to update your links.
- Be aware that you can't use version 9 CDN JS files anymore, they aren't compatible.
- Plus read the above list of items.
highlight.js on the server (via NPM) and only use the public API
If you're just pulling in the FULL library (
require('./highlight.js')
) just keep doing that. You might not need to change anything.- If you're manually loading a smaller set of languages and using
registerLanguage
make sure you check out all the renamed grammars and dependency changes. - Read the client-side lists above also.
highlight.js on the server (via NPM) with a custom integration
Read the complete breaking changes list carefully.
- Read the client-side lists above also.
highlight.js lib on the client, with source directly from our GitHub repo
π That will no longer work. The source needs to be built to work properly and cannot be used "raw" unless you've also setup your own build pipeline (rollup, etc.). Fetch a static build from the CDN, the cdn-release repo or use the new
highlightjs-dist
NPM package.highlight.js source code directly from our GitHub repo with a custom integration
π All bets are off, since we only try to guarantee stability of our NPM and CDN builds and the public API. Read all the breaking changes and perhaps skim the commit history.
- We're using ES6 modules now.
- π· We're using an entirely new build system.
- The source will likely become more and more modular during the 10.0 timeline.
Enjoy and good luck.
As always if you have any questions or issues, jump on the Github Issues.
- If you're using
-
v9.18.5
November 19, 2020