- CTRL ALT News
- Posts
- Updates, updates, updates, aaand a bit more updates. This week in web dev (February 2nd, 2024)
Updates, updates, updates, aaand a bit more updates. This week in web dev (February 2nd, 2024)
Hello friend 👋! Before getting into this week’s newsletter, I would like to give a big welcome to all the new members of this community! We have seen a lot of growth over the last few weeks, and I just wanted to welcome all of you! This week’s web-dev news has been a bit slow. Therefore this week’s newsletter will be focused on updates to technologies you might be using every day!

To support me:
Share the newsletter with your friends, it helps more than you think!
Please share your feedback with me!

The Typescript team recently announced the beta release of Typescript 5.4. Some of the key features coming in this next version include:
Preserved narrowing in closures - This makes narrowed types within functions behave more intuitively in more cases.
The NoInfer utility type - NoInfer prevents unwanted type widening during type inference. This helps avoid questionable calls being allowed at compile time.
Object.groupBy and Map.groupBy - Adds support for these new static methods on Object and Map.
Require support with moduleResolution bundler - Importing using require() syntax is now allowed with the bundler moduleResolution, better matching runtime behavior.
Checked import assertions - Import assertions are now checked against the ImportAttributes global type for runtime compatibility.
Quick fix for missing parameters - The editor now suggests adding missing parameters when functions are called with too many arguments.

The Turborepo team recently announced the release of Turborepo 1.12. Some highlights in this version include:
Color logs - Task logs now show underlying shell colors by default on macOS and Linux. This helps quickly identify warnings and errors.
Errors overhaul - Error messages have been improved for configuration problems to clearly explain issues and link to relevant documentation.
Inputs ergonomics - A new
$TURBO_DEFAULT$
value can be used to include Turborepo's default input behavior while customizing globs.Telemetry - Anonymous, opt-in telemetry has been added to better guide Turborepo's direction based on real-world usage. Disable via
turbo telemetry disable
if desired.Rust cleanup - The
--go-fallback
flag was removed and the turbo binary was shrunk by 58% compared to the previous version.
Additional changes include Yarn 4 support, pty usage, and lots of smaller improvements and bug fixes.

The Prisma team recently announced the release of Prisma ORM 5.9.0. Highlights include:
Performance improvements - Additional use of SQL
RETURNING
statements optimizes result sets for faster queries.SQL Server error handling - Unreachable SQL Server instances now correctly return a P1001 error.
Edge functions support - Prisma is working on native edge functions support, outside of Prisma Accelerate. Sign up to beta test.
IPv6 migration - Prisma Accelerate quietly transitioned to IPv6 to avoid upcoming IPv4 address charges on AWS.
Other changes include fixes for Prisma Client, Migrate, and language tooling around VS Code.

The Nuxt team recently released version 3.10 with several new features:
Shared asyncData - New experimental support to deduplicate and cache asyncData/fetch calls during prerendering.
useId composable - Generates accessible unique IDs on both client and server.
Extending routerOptions - Modules can now inject custom router options.
Node.js support - Can now directly import Node.js built-ins like
Buffer
on the client.Cookie reactivity - Opt-into using
CookieStore
API for better cookie reactivity.Anti-patterns warnings - Warnings added for setInterval on server, misusing data fetch composables, and missing
<NuxtPage>
.Route meta at build time - Access route metadata defined in
definePageMeta
during build.Bundler resolution - Opted into TypeScript bundler resolution for subpath imports.

The Astro team recently announced the release of Astro 4.3 with several new features:
Experimental i18n domains - Map locales to different domains and subdomains. Requires a fully server-rendered site.
Preserve HTML output - New
preserve
build format keeps your site structure mirrored in production.ComponentProps utility - Get the props type of any Astro component with
astro/types
.Markdown images - No longer need relative specifiers for images in the same folder.
Other changes include better TypeScript types for components and fixing issues with dynamic imports.