New versions of tools
Babel 7.21.0: inline RegExp modifiers, TypeScript 5.0, and decorators updates
babeljs.io
@babel
Highlights (quoting the blog post):
- Inline RegExp modifiers (Stage 3 proposal)
- TC39, the committee that standardizes JavaScript, recently approved some changes to the Decorators proposal based on feedback from the TypeScript team. These are now supported by Babel.
- TypeScript 5.0:
const modifiers for type parameters
export type * declarations
- Experimental support for
.cts configuration files
- Source maps improvements
ESLint v8.35.0 released
eslint.org
@btmills,
@eslint
Highlights (quoting the blog post):
- ESLint’s predefined
recommended and all configs are now exported from a new @eslint/js package.
- The
no-constant-binary-expression rule now catches more cases involving the nullish coalescing operator (?? ).
- A new version of the
esquery selector engine includes performance improvements covered in a blog post by Marvin Hagemeister.
Time for a change? Emerging cybersecurity startup seeks JavaScript talent
defendify.breezy.hr
Sponsor
Defendify is an award-winning, all-in-one cybersecurity platform developer, looking for a senior full stack engineer to join full-time. This is a unique and exciting opportunity as Defendify continues to rapidly expand its groundbreaking platform, especially designed for the non-enterprise.
esbuild v0.17.10
github.com
@evanw
Highlights (quoting the release notes):
- Update esbuild's handling of CSS nesting to match the latest specification changes
- Fix cross-file CSS rule deduplication involving
url() tokens
What’s new with Lerna 6.5?
blog.nrwl.io
@ZackDeRose,
@nrwl
Highlights of Lerna 6.5:
- Idempotency added to the
lerna publish from-git command
lerna run can run multiple scripts in a single command
- New
--include-private option added to lerna publish
The article also covers how to get started with Lerna and the future of Lerna.
Turborepo 1.8: workspace configurations, automatic workspace scoping, easier migrations
turbo.build
@vercel
[Quoting the blog post:]
Turborepo 1.8 brings better flexibility and more control to your codebase by improving turbo ’s understanding of your workspaces.
- Workspace Configurations: You can now add a
turbo.json configuration file in a workspace to override the root configuration in your repository.
- Automatic Workspace Scoping: Global
turbo now automatically infers your current workspace so that it only runs that workspace’s tasks.
- Easier Migrations: Automatically migrate to new versions of
turbo with npx @turbo/codemod migrate .
New versions of platforms
Node.js v19.7.0 (current): initial support for single executable applications
nodejs.org
@MylesBorins,
@nodejs
Highlight: initial support for compiling a Node.js module into a stand-alone executable (that contains both the Node.js executable and the module).
Deno 1.31: package.json support
deno.com
@bartlomieju,
@dsherret,
@kt3k,
@denoland
Highlights (quoting the blog post):
package.json support
- Stabilization of Node-API
- Node.js compatibility layer is now part of the runtime
- npm specifiers are supported in remote modules
Libraries and technologies
Devalue: (de)serialization beyond JSON.stringify/parse
www.npmjs.com
@Rich-Harris
[Quoting the readme:] Like JSON.stringify , but handles:
- cyclical references (
obj.self = obj )
- repeated references (
[value, value] )
-
undefined , Infinity , NaN , -0
- regular expressions
- dates
-
Map and Set
BigInt
- custom types via replacers, reducers and revivers
JavaScript import maps, part 1: introduction
spidermonkey.dev
@mozilla-spidermonkey
Quote: “In this first article, we will go through the background and basics of import maps and follow up with a second article explaining more details of import maps.”
|