Npm 2023 retrospective; Prettier 3.2; Rspack 0.5; Bun v1.0.23; library for immutable updaes; Bun

npm in review: a 2023 retrospective on growth, security, and quirky facts

socket.dev github.com/Planeshifter @SocketSecurity@fosstodon.org

“It’s a new year! So let’s look back at how npm, the most popular package manager in the world, fared in 2023. We will look at some of the major trends in the ecosystem and investigate what the data reveal about how npm grew over the past year.”

“We’ll also take a deeper dive into some of the malware and spam issues npm faced over the course of the year, and answer questions you didn’t knew you wanted to know the answers to (such as which package has the longest name or is biggest in size).”

Prettier 3.2: Support JSONC and Angular’s ICU expression

prettier.io github.com/sosukesuzuki github.com/prettier

Highlights:
  • CLI performance improvements (as figured out by Fabio Spampinato) are slated for version 4.0.
  • Support for `.jsonc` files (JSON with comments and optional trailing commas)
  • Angular: Support formatting for Angular ICU expression
  • JavaScript:
    • Avoid introducing linebreaks in template interpolations
    • Preserve empty lines in multi-line method chains
    • Fix inconsistencies for optional chaining
    • Fix comments in if
  • TypeScript: Improve conditional type alias layout
  • Ember/Handlebars: Preserve path literal segments
  • GraphQL: Improve GraphQL union types formatting

Rspack 0.5: module federation and more

www.rspack.dev github.com/web-infra-dev

Most important new feature: module federation. Details are described in another blog post.

Bun v1.0.23: importing & embedding SQLite databases and more

bun.sh github.com/oven-sh

Highlights:
  • Importing SQLite databases:
    
    import db from './my.db' with {type: "sqlite"};
    
    const {id} = db
      .query("SELECT id FROM users LIMIT 1")
      .get();
    
    console.log(id); // 1
    
    You can also embed such a database in a single-file executable built by Bun.
  • Support for resource management (a stage 3 ECMAScript proposal)
  • Support for import.meta.dirname and import.meta.filename

Mutative: efficient immutable updates, faster than Immer

github.com github.com/unadlib github.com/exuanbo

Same basic API as Immer.

Bun Shell: Bun’s built-in library for cross-platform shell scripting

bun.sh github.com/oven-sh

“The Bun Shell is a new experimental embedded language and interpreter in Bun that allows you to run cross-platform shell scripts in JavaScript & TypeScript.”

import { $ } from "bun";

// to stdout:
await $`ls *.js`;

// to string:
const text = await $`ls *.js`.text();

This email was sent to you. You can unsubscribe from this list here or update your preferences.

Older messages

JavaScript’s birthday; TC39 FAQ; ESLint v8.55.0; Bun v1.0.15; Socket CLI v0.9.0; Turborepo 1.11

Tuesday, December 12, 2023

Dear readers! We are taking our end-of-the-year break and will be back on 23 January 2024. Be well and see you soon! Axel and Jowe 28 years ago (1995-12-04): “Netscape and Sun announce JavaScript, the

Prettier in Rust; Prettier performance improvements; Node v21.3.0; TC39 meeting November; esbuild...

Tuesday, December 5, 2023

Biome formatter wins the Prettier challenge (USD 22500) biomejs.dev @ematipico@fosstodon.org @biomejs@fosstodon.org Prettier challenge – “write a Prettier-compliant pretty printer in Rust”: USD 22500:

“State of JavaScript 2023” survey; QuickJS-ng v0.1.0; esbuild 0.19.7; show package version downloads

Tuesday, November 28, 2023

The “State of JavaScript 2023” survey is open stateofjs.com @sachagreif@hachyderm.io Quoting the frequently asked questions: When will the results be released? The survey will run from November 22 to

Vite 5.0; Prettier 3.1; Node v21.2.0; Bun v1.0.12; explicit resource management; JS strings in V8

Tuesday, November 21, 2023

Vite 5.0: Rollup 4, API cleanups and more vitejs.dev @vite@webtoo.ls “Vite is now using Rollup 4, which already represents a big boost in build performance. And there are also new options to improve

Pacquet package manager; WebGPU; test automation; NodeConf EU 2023 videos

Tuesday, November 14, 2023

pacquet: experimental Node.js package manager written in Rust [rewrite of pnpm] github.com github.com/pnpm Quoting the pnpm team: “Our Rust rewrite of pnpm is close to being ready for experimental

You Might Also Like

💻 Issue 444 - Check Out My New CV as a Full Stack .NET Developer!

Thursday, January 9, 2025

This week's Awesome .NET Weekly Read this email on the Web The Awesome .NET Weekly Issue » 444 Release Date Jan 09, 2025 Your weekly report of the most popular .NET news, articles and projects

💎 Issue 451 - Useful things you can do with Rails console

Thursday, January 9, 2025

This week's Awesome Ruby Newsletter Read this email on the Web The Awesome Ruby Newsletter Issue » 451 Release Date Jan 09, 2025 Your weekly report of the most popular Ruby news, articles and

💻 Issue 451 - The best way to iterate over a large array without blocking the main thread

Thursday, January 9, 2025

This week's Awesome JavaScript Weekly Read this email on the Web The Awesome JavaScript Weekly Issue » 451 Release Date Jan 09, 2025 Your weekly report of the most popular JavaScript news, articles

📱 Issue 445 - 🚀 Your Go-To List of 25 Swift Tools and Libraries for Any Project

Thursday, January 9, 2025

This week's Awesome iOS Weekly Read this email on the Web The Awesome iOS Weekly Issue » 445 Release Date Jan 09, 2025 Your weekly report of the most popular iOS news, articles and projects Popular

💻 Issue 369 - 17 Tips from a Senior React Developer

Thursday, January 9, 2025

This week's Awesome React Weekly Read this email on the Web The Awesome React Weekly Issue » 369 Release Date Jan 09, 2025 Your weekly report of the most popular React news, articles and projects

💻 Issue 451 - Mastering Express.js: A Deep Dive

Thursday, January 9, 2025

This week's Awesome Node.js Weekly Read this email on the Web The Awesome Node.js Weekly Issue » 451 Release Date Jan 09, 2025 Your weekly report of the most popular Node.js news, articles and

📱 Issue 448 - The Swift Runtime: Your Silent Partner

Thursday, January 9, 2025

This week's Awesome Swift Weekly Read this email on the Web The Awesome Swift Weekly Issue » 448 Release Date Jan 09, 2025 Your weekly report of the most popular Swift news, articles and projects

💻 Issue 446 - Great things about Rust that aren't just performance

Thursday, January 9, 2025

This week's Awesome Rust Weekly Read this email on the Web The Awesome Rust Weekly Issue » 446 Release Date Jan 09, 2025 Your weekly report of the most popular Rust news, articles and projects

JSK Daily for Jan 9, 2025

Thursday, January 9, 2025

JSK Daily for Jan 9, 2025 View this email in your browser A community curated daily e-mail of JavaScript news Advanced Query Building Techniques in Angular: Queries with Different Connectors The Query

📲 Make Your iPhone Action Button Do Different Things in Each App — How Web Apps Make Switching to Linux Easier

Thursday, January 9, 2025

Also: You'll Love This Microsoft Word Repeating Trick, and More! How-To Geek Logo January 9, 2025 Did You Know Despite the tight association between sweet tea and the American South, sweet tea was