3 hours ago
highlight.js

v11.12.0 - Summer, hot and rainy.

Parser Engine:

  • fix(parser) count named capture groups when rewriting backreferences spokodev

New Grammars:

  • add FreeDesktop config file (.desktop / systemd) grammar gg582
  • added 3rd party Cedar grammar to SUPPORTED_LANGUAGES Dhruv Maniya
  • added 3rd party DAX and M (Power Query) grammars to SUPPORTED_LANGUAGES jiaopengzi
  • added 3rd party Djot grammar to SUPPORTED_LANGUAGES Mark Scherer
  • added 3rd party Igor Pro grammar to SUPPORTED_LANGUAGES Ryne Andal
  • added 3rd party Jaiva grammar to SUPPORTED_LANGUAGES Lehlogonolo Poole
  • added 3rd party Liquidsoap grammar to SUPPORTED_LANGUAGES Romain Beauxis
  • added 3rd party MoonBit grammar to SUPPORTED_LANGUAGES Kaida-Amethyst
  • added 3rd party Pkl grammar to SUPPORTED_LANGUAGES Dan Chao
  • added 3rd party RAScript grammar to SUPPORTED_LANGUAGES Joshua Raphael
  • added 3rd party Veryl grammar to SUPPORTED_LANGUAGES Naoya Hatta
  • added 3rd party Why3 grammar to SUPPORTED_LANGUAGES JGalego
  • added 3rd party Xojo grammar to SUPPORTED_LANGUAGES patricksalo
  • referenced existing 3rd party ES|QL grammar in SUPPORTED_LANGUAGES Styx0x6

Core Grammars:

  • fix(c) only match real atomic_* type names, not C11 atomic functions, issue #3837 Mark Xian
  • fix(c, cpp) bound the run of type tokens in front of a function name (ReDoS), issue #4362 Jayesh Bhade
  • fix(c, cpp) scope angle-bracket header string to #include, issue #3505 Pablo
  • fix(c, cpp) stop a raw string's closing delimiter from swallowing quotes, issue #3585 David Pavlovschii
  • enh(cmake) add block and endblock keywords Anonymous Maarten
  • fix(cmake) only highlight standalone numbers, not digits that begin an identifier (e.g. 3rdparty), issue #4170 Mark Xian
  • fix(cpp) require a word boundary before numeric literals so digits inside identifiers aren't highlighted as numbers, issue #4231 Mark Xian
  • fix(crystal) stop treating integer division // as a regex literal Zain Asif
  • enh(csharp) support digit separators in binary literals and numeric type suffixes, and stop highlighting the leading _ of an identifier, issue #4258 Sarath Francis
  • enh(css) add corner-shape properties Hama Tanveer
  • enh(css) support six-digit unicode-range values Konstantin Baltsat
  • enh(dart) add highlighting for class and function names guuido
  • enh(dns) highlight registered CAA property tags, issue #4475 Joey Huang
  • enh(dns) improve grammar: character strings, TXT, classes, escapes, addresses Checconio
  • enh(dos) add batch as an alias, issue #4395 Hashim Khan
  • enh(gherkin) update keyword list Hirse
  • enh(gherkin) variables can't contain whitespace Hirse
  • enh(gherkin) docstrings can use backticks Hirse
  • enh(go) recognize binary integer literals spokodev
  • enh(groovy) support underscores in numeric literals greymoth
  • fix(haskell) highlight where in GADT and closed type-family declarations, issue #3753 Konstantin Baltsat
  • enh(java) improve detection of types, including generic and array types Hannes Wallnoefer
  • enh(javascript) add self to built-in variables Dsaquel
  • enh(kotlin) add ktm and ktx aliases DarkMatter-999
  • fix(leaf) fix bug in Leaf keyword highlighting Francesco Paolo Severino
  • fix(lisp) preserve highlighting after quoted multiplication expressions arturict
  • enh(llvm) support block C-style comments utam-1
  • enh(lua) add Lua 5.5 global keyword Nibiri
  • fix(markdown) don't treat a *** or ___ thematic break as the start of bold text, issue #3719 Mayank Gupta
  • enh(nsis) enhance NSIS rules Jan T. Sott
  • enh(python) add missing builtins: aiter and anext (3.10), frozendict and sentinel (3.15) Hugo van Kemenade
  • enh(python) correctly highlight lazy import syntax from PEP 810 Peter Bierma
  • enh(python) support t-strings Nicolas Le Cam
  • fix(ruby) don't treat the scope resolution operator :: as a symbol, issue #4294 Hashim Khan
  • enh(rust) add safe keyword Frances Wingerter
  • enh(rust) include the raw borrow operator in keywords Shiva Kiran Koninty
  • enh(rust) parse f16 and f128 literals usamoi
  • fix(rust) allow function invocations whose names start with a keyword Xia Li-yao
  • fix(rust) recognize \\ and \" char-literal escapes so highlighting doesn't leak, issue #4351 Sarath Francis
  • enh(shell) match period (.) as part of shell prompt Ian Wienand
  • enh(sqf) update to Arma 3 v2.22 LouMontana
  • fix(xml) remove recursive sublanguage references to prevent ReDoS petejm

Documentation:

  • docs(php) explain the difference between php and php-template Zain Asif
  • document LLVM IR in SUPPORTED_LANGUAGES Jan Schultke
  • document the existing pwsh alias for PowerShell helpimnotdrowning
  • list languages with category "common" in SUPPORTED_LANGUAGES Marc Bernard
  • remind contributors to run npm i Proliecan
  • fix typos in README.CDN.md Zitrone

Themes:

Build / Tooling:

  • (build) allow third-party packages to override default languages Lysxia
  • (build) use Trusted Publishers in the publishing pipeline allejo
  • fix(types) allow RegExp in Mode.keywords KJyang-0114
  • refactor(tools) replace @colors/colors with ansis webdiscus
  • chore: dependency updates

CONTRIBUTORS

5 hours ago
zip.js

v2.8.43

What's Changed in v2.8.43

New features

  • The gzip fallback introduced in v2.8.42 now supports reading AES-encrypted entries. The gzip trailer is computed from the decompressed data instead of relying on the CRC-32 value stored in the central directory, which is zeroed for AES-encrypted entries. As a side effect, archives with a corrupted CRC-32 value can now be read with this fallback when checkSignature is not set, like with the other implementations
  • Entries are now stored uncompressed instead of failing when zip.js cannot compress data at all, e.g. when the Compression Streams API is unavailable and the WebAssembly module cannot load

Bug fixes

  • Archives with an invalid uncompressed size in the central directory are now rejected with ERR_INVALID_UNCOMPRESSED_SIZE when read with the gzip fallback, instead of failing with a misleading error

Full Changelog: https://github.com/gildas-lormeau/zip.js/compare/v2.8.42...v2.8.43

6 hours ago
zip.js

v2.8.42

What's Changed in v2.8.42

New features

  • New entry point @zip.js/zip.js/external referencing the web worker script and the WebAssembly module as external files instead of embedding them. Bundlers like webpack and Vite emit zip-web-worker.js and zip-module.wasm as separate assets, which removes approximately 45KB of embedded payloads from the main bundle. The worker also runs from a real file URL. This avoids blob: restrictions on pages and browser extensions with a strict Content Security Policy (cf. #669). Smaller compositions are also available: @zip.js/zip.js/lib/zip-fs-core-external.js excludes the MIME type table (approximately 23KB), and @zip.js/zip.js/lib/zip-core-external.js also excludes the filesystem API. The three compositions come with prebuilt ES module bundles in the /dist directory, which resolve the two asset files from their own directory
  • New entry point @zip.js/zip.js/mime-types exposing getMimeType() with the full MIME type table, usable from any build
  • zip.js now wraps raw deflate data in the gzip format and relies on CompressionStream("gzip")/DecompressionStream("gzip") when the "deflate-raw" format and the WebAssembly module are both unavailable. This makes reading and writing zip files work out of the box on Chromium 80 to 102 when a Content Security Policy blocks WebAssembly compilation, e.g. on extension pages (cf. #669), and lowers the minimum requirements of the "core" builds to Chrome 80, Node.js 18, and Deno 1.19. Reading AES-encrypted entries and Deflate64 entries is not supported with this fallback

Bug fixes

  • A failure to load the WebAssembly module is now reported with an explicit "WASM module not loaded" error, with the original error as cause, e.g. the CSP error, instead of a TypeError thrown later by the codec (cf. #669)
  • A failed load of the WebAssembly module is now retried on the next use instead of being cached for the whole session

Full Changelog: https://github.com/gildas-lormeau/zip.js/compare/v2.8.41...v2.8.42

8 hours ago
next.js

v16.3.1-canary.13

Misc Changes

  • Decouple loader tree construction from children ordering: #97192
  • [turbopack] Retain fewer stale cache versions and use a TTL: #96941
  • Bump lightningcss: #97159

Credits

Huge thanks to @gnoff, @lukesandberg, and @mischnic for helping!

9 hours ago
rari
10 hours ago
react-query

Release 2026-08-11 21:43

Release 2026-08-11 21:43

Changes

Fix

  • solid-query: consume hydration data client-side via a provider-owned streaming channel (#11168) (67c817940) by @ryansolid

Packages

  • @tanstack/solid-query@6.0.0-beta.8
  • @tanstack/solid-query-devtools@6.0.0-beta.8
  • @tanstack/solid-query-persist-client@6.0.0-beta.8
10 hours ago
query

Release 2026-08-11 21:43

Release 2026-08-11 21:43

Changes

Fix

  • solid-query: consume hydration data client-side via a provider-owned streaming channel (#11168) (67c817940) by @ryansolid

Packages

  • @tanstack/solid-query@6.0.0-beta.8
  • @tanstack/solid-query-devtools@6.0.0-beta.8
  • @tanstack/solid-query-persist-client@6.0.0-beta.8
10 hours ago
query

@tanstack/solid-query@6.0.0-beta.8

Patch Changes

  • #11168 67c8179 - chore: upgrade to solid v2 beta 33. @tanstack/solid-query now requires solid-js >= 2.0.0-beta.33 (peer range floor raised): the provider-owned hydration channel depends on beta.33's normalizeIterator buffered-replay conflation fix — on beta.32 and earlier, hydration that begins after multiple stream chunks have arrived silently drops later channel yields, leaving queries never primed and their components frozen.

  • #11168 67c8179 - fix: prime the query cache during hydration through a provider-owned dehydration channel, so SSR-fetched queries come up warm instead of refetching on mount. QueryClientProvider streams dehydrated cache entries (query-core dehydrate() shapes) as each query settles during SSR — entries ride the same flush as the content that awaited them — and applies them on the client via query-core hydrate() (newer-wins) as they arrive, attaching each hydrated component's observer as soon as its entry is primed. The vestigial per-observer-result hydrationData copy is no longer serialized.

10 hours ago
query

@tanstack/solid-query-persist-client@6.0.0-beta.8

Patch Changes

  • #11168 67c8179 - chore: upgrade to solid v2 beta 33. @tanstack/solid-query now requires solid-js >= 2.0.0-beta.33 (peer range floor raised): the provider-owned hydration channel depends on beta.33's normalizeIterator buffered-replay conflation fix — on beta.32 and earlier, hydration that begins after multiple stream chunks have arrived silently drops later channel yields, leaving queries never primed and their components frozen.

  • Updated dependencies [67c8179, 67c8179]:

    • @tanstack/solid-query@6.0.0-beta.8