highlightjs/highlight.js (highlight.js)
### [`v10.4.1`](https://togithub.com/highlightjs/highlight.js/blob/HEAD/CHANGES.md#Version-1041-tentative)
[Compare Source](https://togithub.com/highlightjs/highlight.js/compare/10.4.0...10.4.1)
Security
- (fix) Exponential backtracking fixes for: [Josh Goebel][]
- cpp
- handlebars
- gams
- perl
- jboss-cli
- r
- erlang-repl
- powershell
- routeros
- (fix) Polynomial backtracking fixes for: [Josh Goebel][]
- asciidoc
- reasonml
- latex
- kotlin
- gcode
- d
- aspectj
- moonscript
- coffeescript/livescript
- csharp
- scilab
- crystal
- elixir
- basic
- ebnf
- ruby
- fortran/irpf90
- livecodeserver
- yaml
- x86asm
- dsconfig
- markdown
- ruleslanguage
- xquery
- sqf
Very grateful to [Michael Schmidt][] for all the help.
[Michael Schmidt]: https://togithub.com/RunDevelopment
[Josh Goebel]: https://togithub.com/joshgoebel
### [`v10.4.0`](https://togithub.com/highlightjs/highlight.js/blob/HEAD/CHANGES.md#Version-1040)
[Compare Source](https://togithub.com/highlightjs/highlight.js/compare/10.3.2...10.4.0)
A largish release with many improvements and fixes from quite a few different contributors. Enjoy!
Deprecations:
- (chore) `requireLanguage` is deprecated.
- Prefer `getLanguage` (with custom error handling) or built-time dependencies.
- See [Library API](https://highlightjs.readthedocs.io/en/latest/api.html#requirelanguage-name) for more information.
Parser:
- enh(parser) use negative look-ahead for `beginKeywords` support ([#2813](https://togithub.com/highlightjs/highlight.js/issues/2813)) [Josh Goebel][]
- enh(grammars) allow `classNameAliases` for more complex grammars [Josh Goebel][]
- fix(vue): Language name now appears in CSS class ([#2807](https://togithub.com/highlightjs/highlight.js/issues/2807)) [Michael Rush][]
- (chore) Clean up all regexs to be UTF-8 compliant/ready ([#2759](https://togithub.com/highlightjs/highlight.js/issues/2759)) [Josh Goebel][]
- enh(grammars) allow `classNameAliases` for more complex grammars [Josh Goebel][]
New Languages:
- Added 3rd party Chapel grammar to SUPPORTED_LANGUAGES ([#2806](https://togithub.com/highlightjs/highlight.js/issues/2806)) [Brad Chamberlain][]
- Added BBCode grammar to SUPPORTED_LANGUAGES ([#2867](https://togithub.com/highlightjs/highlight.js/issues/2867)) [Paul Reid][]
- enh(javascript) Added `node-repl` for Node.js REPL sessions ([#2792](https://togithub.com/highlightjs/highlight.js/issues/2792)) [Marat Nagayev][]
Language Improvements:
- enh(shell) Recognize prompts which contain tilde `~` ([#2859](https://togithub.com/highlightjs/highlight.js/issues/2859)) [Guillaume Grossetie][]
- enh(shell) Add support for multiline commands with line continuation `\` ([#2861](https://togithub.com/highlightjs/highlight.js/issues/2861)) [Guillaume Grossetie][]
- enh(autodetect) Over 30+ improvements to auto-detect ([#2745](https://togithub.com/highlightjs/highlight.js/issues/2745)) [Josh Goebel][]
- 4-5% improvement in auto-detect against large sample set
- properties, angelscript, lsl, javascript, n1ql, ocaml, ruby
- protobuf, hy, scheme, crystal, yaml, r, vbscript, groovy
- python, java, php, lisp, matlab, clojure, csharp, css
- fix(r) fixed keywords not properly spaced ([#2852](https://togithub.com/highlightjs/highlight.js/issues/2852)) [Josh Goebel][]
- fix(javascript) fix potential catastrophic backtracking ([#2852](https://togithub.com/highlightjs/highlight.js/issues/2852)) [Josh Goebel][]
- fix(livescript) fix potential catastrophic backtracking ([#2852](https://togithub.com/highlightjs/highlight.js/issues/2852)) [Josh Goebel][]
- bug(xml) XML grammar was far too imprecise/fuzzy [Josh Goebel][]
- enh(xml) Improve precision to prevent false auto-detect positives [Josh Goebel][]
- fix(js/ts) Prevent for/while/if/switch from falsly matching as functions ([#2803](https://togithub.com/highlightjs/highlight.js/issues/2803)) [Josh Goebel][]
- enh(julia) Update keyword lists for Julia 1.x ([#2781](https://togithub.com/highlightjs/highlight.js/issues/2781)) [Fredrik Ekre][]
- enh(python) Match numeric literals per the language reference [Richard Gibson][]
- enh(ruby) Match numeric literals per language documentation [Richard Gibson][]
- enh(javascript) Match numeric literals per ECMA-262 spec [Richard Gibson][]
- enh(java) Match numeric literals per Java Language Specification [Richard Gibson][]
- enh(swift) Match numeric literals per language reference [Richard Gibson][]
- enh(php) highlight variables ([#2785](https://togithub.com/highlightjs/highlight.js/issues/2785)) [Taufik Nurrohman][]
- fix(python) Handle comments on decorators ([#2804](https://togithub.com/highlightjs/highlight.js/issues/2804)) [Jonathan Sharpe][]
- enh(diff) improve highlighting of diff for git patches \[Florian Bezdeka]\[]
- fix(llvm) lots of small improvements and fixes ([#2830](https://togithub.com/highlightjs/highlight.js/issues/2830)) [Josh Goebel][]
- enh(mathematica) Rework entire implementation [Patrick Scheibe][]
- Correct matching of the many variations of Mathematica's numbers
- Matching of named-characters aka special symbols like `\[Gamma]`
- Updated list of version 12.1 built-in symbols
- Matching of patterns, slots, message-names and braces
- fix(swift) Handle keywords that start with `#` [Marcus Ortiz][]
- enh(swift) Match `some` keyword [Marcus Ortiz][]
- enh(swift) Match `@main` attribute [Marcus Ortiz][]
Dev Improvements:
- chore(dev) add theme picker to the tools/developer tool ([#2770](https://togithub.com/highlightjs/highlight.js/issues/2770)) [Josh Goebel][]
- fix(dev) the Vue.js plugin no longer throws an exception when hljs is not in the global namespace [Kyle Brown][]
New themes:
- *StackOverflow Dark* by [Jan Pilzer][]
- *StackOverflow Light* by [Jan Pilzer][]
[Guillaume Grossetie]: https://togithub.com/mogztter
[Brad Chamberlain]: https://togithub.com/bradcray
[Marat Nagayev]: https://togithub.com/nagayev
[Fredrik Ekre]: https://togithub.com/fredrikekre
[Richard Gibson]: https://togithub.com/gibson042
[Josh Goebel]: https://togithub.com/joshgoebel
[Taufik Nurrohman]: https://togithub.com/taufik-nurrohman
[Jan Pilzer]: https://togithub.com/Hirse
[Jonathan Sharpe]: https://togithub.com/textbook
[Michael Rush]: https://togithub.com/rushimusmaximus
[Patrick Scheibe]: https://togithub.com/halirutan
[Kyle Brown]: https://togithub.com/kylebrown9
[Marcus Ortiz]: https://togithub.com/mportiz08
[Paul Reid]: https://togithub.com/RedGuy12
### [`v10.3.2`](https://togithub.com/highlightjs/highlight.js/releases/tag/10.3.2): - Oops, "Javascript".
[Compare Source](https://togithub.com/highlightjs/highlight.js/compare/10.3.1...10.3.2)
Tiny tiny release, just to fix the website incorrectly not listing Javascript
in the list of languages you could choose for a custom build. NPM and CDN
build should not have been affected so 10.3.1 is effectively the same as
10.3.2 for those builds.
If you made a custom build from the website with 10.3 or 10.3.1 you may
want to check and make sure it includes Javascript, and if not, build it again.
[ ] If you want to rebase/retry this PR, check this box
This PR contains the following updates:
10.3.1
->10.4.1
By merging this PR, the issue #8 will be automatically resolved and closed:
Release Notes
highlightjs/highlight.js (highlight.js)
### [`v10.4.1`](https://togithub.com/highlightjs/highlight.js/blob/HEAD/CHANGES.md#Version-1041-tentative) [Compare Source](https://togithub.com/highlightjs/highlight.js/compare/10.4.0...10.4.1) Security - (fix) Exponential backtracking fixes for: [Josh Goebel][] - cpp - handlebars - gams - perl - jboss-cli - r - erlang-repl - powershell - routeros - (fix) Polynomial backtracking fixes for: [Josh Goebel][] - asciidoc - reasonml - latex - kotlin - gcode - d - aspectj - moonscript - coffeescript/livescript - csharp - scilab - crystal - elixir - basic - ebnf - ruby - fortran/irpf90 - livecodeserver - yaml - x86asm - dsconfig - markdown - ruleslanguage - xquery - sqf Very grateful to [Michael Schmidt][] for all the help. [Michael Schmidt]: https://togithub.com/RunDevelopment [Josh Goebel]: https://togithub.com/joshgoebel ### [`v10.4.0`](https://togithub.com/highlightjs/highlight.js/blob/HEAD/CHANGES.md#Version-1040) [Compare Source](https://togithub.com/highlightjs/highlight.js/compare/10.3.2...10.4.0) A largish release with many improvements and fixes from quite a few different contributors. Enjoy! Deprecations: - (chore) `requireLanguage` is deprecated. - Prefer `getLanguage` (with custom error handling) or built-time dependencies. - See [Library API](https://highlightjs.readthedocs.io/en/latest/api.html#requirelanguage-name) for more information. Parser: - enh(parser) use negative look-ahead for `beginKeywords` support ([#2813](https://togithub.com/highlightjs/highlight.js/issues/2813)) [Josh Goebel][] - enh(grammars) allow `classNameAliases` for more complex grammars [Josh Goebel][] - fix(vue): Language name now appears in CSS class ([#2807](https://togithub.com/highlightjs/highlight.js/issues/2807)) [Michael Rush][] - (chore) Clean up all regexs to be UTF-8 compliant/ready ([#2759](https://togithub.com/highlightjs/highlight.js/issues/2759)) [Josh Goebel][] - enh(grammars) allow `classNameAliases` for more complex grammars [Josh Goebel][] New Languages: - Added 3rd party Chapel grammar to SUPPORTED_LANGUAGES ([#2806](https://togithub.com/highlightjs/highlight.js/issues/2806)) [Brad Chamberlain][] - Added BBCode grammar to SUPPORTED_LANGUAGES ([#2867](https://togithub.com/highlightjs/highlight.js/issues/2867)) [Paul Reid][] - enh(javascript) Added `node-repl` for Node.js REPL sessions ([#2792](https://togithub.com/highlightjs/highlight.js/issues/2792)) [Marat Nagayev][] Language Improvements: - enh(shell) Recognize prompts which contain tilde `~` ([#2859](https://togithub.com/highlightjs/highlight.js/issues/2859)) [Guillaume Grossetie][] - enh(shell) Add support for multiline commands with line continuation `\` ([#2861](https://togithub.com/highlightjs/highlight.js/issues/2861)) [Guillaume Grossetie][] - enh(autodetect) Over 30+ improvements to auto-detect ([#2745](https://togithub.com/highlightjs/highlight.js/issues/2745)) [Josh Goebel][] - 4-5% improvement in auto-detect against large sample set - properties, angelscript, lsl, javascript, n1ql, ocaml, ruby - protobuf, hy, scheme, crystal, yaml, r, vbscript, groovy - python, java, php, lisp, matlab, clojure, csharp, css - fix(r) fixed keywords not properly spaced ([#2852](https://togithub.com/highlightjs/highlight.js/issues/2852)) [Josh Goebel][] - fix(javascript) fix potential catastrophic backtracking ([#2852](https://togithub.com/highlightjs/highlight.js/issues/2852)) [Josh Goebel][] - fix(livescript) fix potential catastrophic backtracking ([#2852](https://togithub.com/highlightjs/highlight.js/issues/2852)) [Josh Goebel][] - bug(xml) XML grammar was far too imprecise/fuzzy [Josh Goebel][] - enh(xml) Improve precision to prevent false auto-detect positives [Josh Goebel][] - fix(js/ts) Prevent for/while/if/switch from falsly matching as functions ([#2803](https://togithub.com/highlightjs/highlight.js/issues/2803)) [Josh Goebel][] - enh(julia) Update keyword lists for Julia 1.x ([#2781](https://togithub.com/highlightjs/highlight.js/issues/2781)) [Fredrik Ekre][] - enh(python) Match numeric literals per the language reference [Richard Gibson][] - enh(ruby) Match numeric literals per language documentation [Richard Gibson][] - enh(javascript) Match numeric literals per ECMA-262 spec [Richard Gibson][] - enh(java) Match numeric literals per Java Language Specification [Richard Gibson][] - enh(swift) Match numeric literals per language reference [Richard Gibson][] - enh(php) highlight variables ([#2785](https://togithub.com/highlightjs/highlight.js/issues/2785)) [Taufik Nurrohman][] - fix(python) Handle comments on decorators ([#2804](https://togithub.com/highlightjs/highlight.js/issues/2804)) [Jonathan Sharpe][] - enh(diff) improve highlighting of diff for git patches \[Florian Bezdeka]\[] - fix(llvm) lots of small improvements and fixes ([#2830](https://togithub.com/highlightjs/highlight.js/issues/2830)) [Josh Goebel][] - enh(mathematica) Rework entire implementation [Patrick Scheibe][] - Correct matching of the many variations of Mathematica's numbers - Matching of named-characters aka special symbols like `\[Gamma]` - Updated list of version 12.1 built-in symbols - Matching of patterns, slots, message-names and braces - fix(swift) Handle keywords that start with `#` [Marcus Ortiz][] - enh(swift) Match `some` keyword [Marcus Ortiz][] - enh(swift) Match `@main` attribute [Marcus Ortiz][] Dev Improvements: - chore(dev) add theme picker to the tools/developer tool ([#2770](https://togithub.com/highlightjs/highlight.js/issues/2770)) [Josh Goebel][] - fix(dev) the Vue.js plugin no longer throws an exception when hljs is not in the global namespace [Kyle Brown][] New themes: - *StackOverflow Dark* by [Jan Pilzer][] - *StackOverflow Light* by [Jan Pilzer][] [Guillaume Grossetie]: https://togithub.com/mogztter [Brad Chamberlain]: https://togithub.com/bradcray [Marat Nagayev]: https://togithub.com/nagayev [Fredrik Ekre]: https://togithub.com/fredrikekre [Richard Gibson]: https://togithub.com/gibson042 [Josh Goebel]: https://togithub.com/joshgoebel [Taufik Nurrohman]: https://togithub.com/taufik-nurrohman [Jan Pilzer]: https://togithub.com/Hirse [Jonathan Sharpe]: https://togithub.com/textbook [Michael Rush]: https://togithub.com/rushimusmaximus [Patrick Scheibe]: https://togithub.com/halirutan [Kyle Brown]: https://togithub.com/kylebrown9 [Marcus Ortiz]: https://togithub.com/mportiz08 [Paul Reid]: https://togithub.com/RedGuy12 ### [`v10.3.2`](https://togithub.com/highlightjs/highlight.js/releases/tag/10.3.2): - Oops, "Javascript". [Compare Source](https://togithub.com/highlightjs/highlight.js/compare/10.3.1...10.3.2) Tiny tiny release, just to fix the website incorrectly not listing Javascript in the list of languages you could choose for a custom build. NPM and CDN build should not have been affected so 10.3.1 is effectively the same as 10.3.2 for those builds. If you made a custom build from the website with 10.3 or 10.3.1 you may want to check and make sure it includes Javascript, and if not, build it again.