---
title: "jQuery lives on; major changes teased"
publication: "JavaScript Weekly"
issue: 639
published_at: "2023-05-18"
canonical_url: "https://javascriptweekly.com/issues/639"
---

Plus Microsoft's new V8 inspection tool, ES2023 code examples, reimplementing chess in JS, and how to get the benefits of TypeScript without writing your code in it. |        

#​639 — May 18, 2023 

[Read on the Web](https://javascriptweekly.com/issues/639)  

Together with [![Cloudflare\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,w_513,h_75/e_make_transparent/co_white,e_outline:7/i98pxyggcnwigwi3nhzz.png)](https://www.cloudflare.com/lp/pg-performance-plans/?utm_source=jsweekly&utm_medium=newsletter&utm_campaign=paygo-jsweekly-q2-23&utm_content=nl-1-performance)  

JavaScript Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/v4f7njnw57fpofql7e2k.jpg)](https://bun.sh/blog/bun-bundler)  

[Bun's New Bundler: 220x Faster than webpack?](https://bun.sh/blog/bun-bundler) — [Bun](https://bun.sh/) is one of the newest JavaScript runtimes (built atop the _JavaScriptCore_ engine) and focuses on speed while aiming to be a drop-in replacement for Node.js. This week’s [v0.6.0 release](https://bun.sh/blog/bun-v0.6.0) is the ‘biggest release yet’ with standalone executable generation and more, but its _new JavaScript bundler and minifier_ may attract most of the attention and this post digs into why. 

Jarred Sumner   

🤔 If you'd prefer to read what a third party thinks, Shane O'Sullivan [gave the new bundler a spin and shared his thoughts.](https://shaneosullivan.wordpress.com/2023/05/17/using-bun-js-as-a-bundler/) There's also [some discussion](https://news.ycombinator.com/item?id=35981662) on _Hacker News._ It's early days and while `esbuild` may be fast enough for most right now, it's fantastic to see any progress in bundling.  

[Deopt Explorer: A VS Code Extension to Inspect V8 Trace Log Info](https://devblogs.microsoft.com/typescript/introducing-deopt-explorer/) — A thorough introduction to MS's new tool for performing analysis of the V8 engine’s internals, including CPU profile data, how inline caches operate, deoptimizations, how functions were run (interpreted or compiled) and more. There’s a _lot_ going on. 

Ron Buckton (Microsoft)   [![\](https://copm.s3.amazonaws.com/0c777c6d.png)](https://www.cloudflare.com/lp/pg-performance-plans/?utm_source=jsweekly&utm_medium=newsletter&utm_campaign=paygo-jsweekly-q2-23&utm_content=nl-1-performance) 

[Supercharge Your Websites and Applications with Cloudflare](https://www.cloudflare.com/lp/pg-performance-plans/?utm_source=jsweekly&utm_medium=newsletter&utm_campaign=paygo-jsweekly-q2-23&utm_content=nl-1-performance) — Get ready for supercharged speed and reliability with Cloudflare's suite of performance tools. With ultra-fast CDN, smart traffic routing, media optimization, and more, Cloudflare has everything you need to ensure your site or app runs at peak performance. 

Cloudflare sponsor   

[jQuery 3.7.0 Released](https://blog.jquery.com/2023/05/11/jquery-3-7-0-released-staying-in-order/) — JavaScript Weekly is 638 issues old, or almost 13 years once you take away weeks off, so jQuery was a _big deal_ in our early days. We hold a lot of nostalgia for it, and it remains widely used even if no-one is writing about it anymore 😆 v3.7 folds the Sizzle selector engine into the core, adds some unitless CSS properties, gains a new `uniqueSort` method, and “major changes” are still promised in future. jQuery lives on! 

Timmy Willison (jQuery Foundation)   

**⚡️ IN BRIEF:** 

- TC39's Hemanth.HM has begun keeping a list of [ES2023 code examples](https://h3manth.com/ES2023/) like he did for [ES2022](https://h3manth.com/ES2022/), [ES2021](https://h3manth.com/ES2021/), and [ES2020](https://h3manth.com/ES2020/).
- 🤔 _The New Stack_ has a story about [Meta supporting the OpenJS Foundation](https://thenewstack.io/meta-backs-the-openjs-foundation-for-greater-diversity/) – but who _wrote_ the article is what we found more interesting..
- The folks at Meta / Facebook have written about the efficiency gains made in _Messenger Desktop_ [by moving from Electron to React Native.](https://developers.facebook.com/blog/post/2023/05/17/messenger-desktop-faster-and-smaller-by-moving-to-react-native-from-electron/)
- One downside to platforms like _Cloudflare Workers_ using V8 isolates has been a lack of support for opening TCP sockets – quite an impediement if you want to talk to a RDBMS over TCP or something. Fear no more, Cloudflare Workers has [introduced a `connect()` API](https://blog.cloudflare.com/workers-tcp-socket-api-connect-databases/) for creating TCP sockets from _Workers_ functions.
- [`Promise.withResolvers`](https://github.com/tc39/proposal-promise-with-resolvers) progressed to stage 2 at the latest TC39 meeting.   

**RELEASES:** 

- [Node.js 20.2](https://nodejs.org/en/blog/release/v20.2.0)
- [Rome 12.1](https://rome.tools/blog/2023/05/10/rome12_1/)
 ↳ The formatter/linter gains stage 3 decorator support.
- [Ember.js 5.0](https://github.com/emberjs/ember.js/releases/tag/v5.0.0) – App framework.
- [Jasmine 5.0](https://github.com/jasmine/jasmine/blob/main/release_notes/5.0.0.md) – Testing framework.
- [Gatsby 5.10](https://www.gatsbyjs.com/docs/reference/release-notes/v5.10/)  

📒 Articles & Tutorials  

[How to Get Full Type Support with Plain JavaScript](https://www.pausly.app/blog/full-type-support-with-plain-javascript) — It’s possible to reap the benefits of TypeScript, yet still write plain JavaScript, as TypeScript’s analyzer understands types written in the JSDoc format. 

Pausly   

TypeScript's own [JS Projects Utilizing TypeScript page](https://www.typescriptlang.org/docs/handbook/intro-to-js-ts.html) has more info on the different levels of strictness you can follow from mere inference on regular JS code through to full on TypeScript with `strict` enabled.  

▶[Coding a Working Game of Chess in Pure JavaScript](https://www.youtube.com/watch?v=Qv0fvm5B0EM) — No canvas, either. All using the DOM, SVG, and JavaScript. No AI and it’s not perfect, but it’s only 88 minutes long and it’ll give you something to work on.. 

Ania Kubow   

[Automate Slack and MS Teams Notifications Using Node.js](https://www.courier.com/blog/automate-slack-and-ms-teams-notifications-using-node-js/?utm_campaign=q2-fy23-cooper-press&utm_source=email&utm_medium=javascript-weekly-5-18-23&utm_content=blog-automate) — Quick guide to send and automate messages via Slack, MS Teams, and any other channel from your Node.js applications. 

Courier.com sponsor   

[Your Jest Tests Might Be Wrong](https://jamiemagee.co.uk/blog/your-jest-tests-might-be-wrong/) — Is your Jest test suite failing you? You might not be using the testing framework’s full potential, especially when it comes to preventing state leakage between tests. 

Jamie Magee   

[A Guide to Visual Regression Testing with Playwright](https://lost-pixel.com/blog/post/playwright-visual-regression-testing) — The Playwright browser control library can form the basis of an end-to-end testing mechanism all written in JavaScript, and comparing the visual output of tests can help show where things are going wrong. 

Dima Ivashchuk (Lost Pixel)   

[Create a Real Time Multi Host Video Chat in a Browser with Amazon IVS](https://dev.to/aws/creating-a-real-time-multi-host-video-chat-in-a-browser-with-amazon-ivs-m44) 

Amazon Web Services (AWS) sponsor   

[React Server Components, Next.js App Router and Examples](https://addyosmani.com/blog/react-server-components-app-router/) — Addy Osmani’s overview of of the state of React Server Components, the Next.js App Router implementation, other implementations, the move towards hybrid rendering, plus related links. 

Addy Osmani   

..and if React is your thing, the [latest issue of React Status](https://react.statuscode.com/issues/339) is for you. 

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/scgs1h0mgeftvdjtwahy.jpg)](https://vanjs.org/)  

[VanJS: A 1.2KB Reactive UI Framework Without JSX](https://vanjs.org/) — A new entrant to an increasingly crowded space, VanJS is particularly light and elegant, and its author has put some serious effort into documenting it and offering [tools to convert your HTML](https://vanjs.org/convert/) to its custom format. It’s short for _vanilla JavaScript_, by the way.. [GitHub repo.](https://github.com/vanjs-org/van) 

Tao Xin   

[JavaScript Scratchpad for VS Code (2m+ Downloads)](https://quokkajs.com/?utm_source=cooperpress&utm_medium=javascriptweekly&utm_content=javascriptweekly) — Quokka.js is the #1 tool for exploring/testing JavaScript with edit-continue experience to see realtime execution and runtime values. 

Wallaby.js sponsor   

[Introducing Legend-State 1.0: Faster State for React](https://legendapp.com/open-source/legend-state-v1/) — _Another_ state management solution? After a year of effort, Legend State 1.0 claims to be the fastest option _“on just about every metric”_ and they have [the benchmarks to prove it.](https://github.com/LegendApp/legend-state#2-%EF%B8%8F-the-fastest-react-state-library) Whatever the case, this thorough intro is worth a look. [GitHub repo.](https://github.com/LegendApp/legend-state) 

Moo․do   

[Starry Night: GitHub-Like Syntax Highlighting](https://github.com/wooorm/starry-night) — Apparently, GitHub’s own syntax highlighting approach isn’t open source, but this takes a similar approach and _is._ It’s admittedly quite 'heavy' (due to using a WASM build of the Oniguruma regex engine) but that’s the price of quality. 

Titus Wormer   

[Garph 0.5: A Fullstack GraphQL Framework for TypeScript](https://garph.dev/) — Full-stack ‘batteries included’ GraphQL APIs without codegen. [GitHub repo.](https://github.com/stepci/garph) 

Step CI   

[headless-qr: A Simple, Modern QR Code Library](https://github.com/Rich-Harris/headless-qr) — A slimmer adaptation of an older project without the extra code that isn’t necessary today. Turning the binary into an image is your job, or use something like [QRCode.js](https://davidshimjs.github.io/qrcodejs/) if you want a canvas-rendered QR code out of the box. 

Rich Harris   

[Scroll Btween: Use Scroll Position to Tween CSS Values on DOM Elements](https://olivier3lanc.github.io/Scroll-Btween/) — Scrolling/parallax libraries tend to feel the same but this one demonstrates some diverse examples with colors, images, and text — all with no dependencies. 

Olivier Blanc   

[eslint-plugin-check-file: Rules for Consistent Filename and Folder Names](https://github.com/DukeLuo/eslint-plugin-check-file) — Allows you to enforce a consistent naming pattern for file and directory names in projects. 

Huan   

- [Transformers.js 2.0](https://github.com/xenova/transformers.js/releases/tag/2.0.0) – Run Hugging Face transformers directly in browser.
- [PrimeReact 9.4](https://github.com/primefaces/primereact) – Extensive UI component library.
- [The Lounge 4.4](https://github.com/thelounge/thelounge) – Cross-platform, self-hosted web IRC client.
- [Faast.js 8.0](https://github.com/faastjs/faast.js) – Serverless batch computing made simple.     

💻 Jobs  

[Find JavaScript Jobs with Hired](https://hired.com/join/?utm_source=newsletter&utm_medium=sponsor&utm_campaign=%28b2c%29%28l-all%29%28r-all%29%28cooper-javascriptweekly%29&utm_content=find-your-next-job) — Hired makes job hunting easy-instead of chasing recruiters, companies approach you with salary details up front. Create a free profile now. 
Hired   

[Fullstack Engineer at Everfund.com](https://everfund.notion.site/Fullstack-Engineer-Everfund-com-59115d2975b84fdd97c03d1b8a5a578e) — Push code, change lives! Help us become the center for good causes on the modern web with our dev tools. 
Everfund   

🧑‍💻 Got a job listing to share? _[Here's how](https://booking.cooperpress.com/jobs)_.   

😎 Go with the flow.. 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/gewdi0xnzullnpdyfjl7.jpg)](https://bogdan-lyashenko.github.io/js-code-to-svg-flowchart/docs/live-editor/index.html)  

[js2flowchart.js](https://github.com/Bogdan-Lyashenko/js-code-to-svg-flowchart) — A visualization library to convert JavaScript code into attractive SVG flowcharts. Luckily, there’s a [live online version](https://bogdan-lyashenko.github.io/js-code-to-svg-flowchart/docs/live-editor/index.html) if you want to play without having to install anything. 

Bohdan Liashenko         

Published by [Cooperpress](https://cooperpress.com/) and edited by [Peter Cooper](https://twitter.com/cooperx86) 

'JavaScript' is a trademark of Oracle Corporation in the US
We are not endorsed by or affiliated with Oracle. 

[Change your email address](https://javascriptweekly.com/edit_subscription/*|UID|*) or [stop getting this newsletter](https://javascriptweekly.com/leave/*|UID|*). 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom
