![]() |
VOOZH | about |
We’re so glad you’re here. You can expect all the best TNS content to arrive Monday through Friday to keep you on top of the news and at the top of your game.
Check your inbox for a confirmation email where you can adjust your preferences and even join additional groups.
Follow TNS on your favorite social media networks.
Become a TNS follower on LinkedIn.
Check out the latest featured and trending stories while you wait for your first TNS newsletter.
Frontend cloud provider Vercel acquired AI integration tool ModelFusion this week, which is now available with the release of Vercel’s AI SDK v.3.1. Both the release and acquisition bring the company “one step closer to delivering a complete TypeScript framework for building AI applications,” Vercel noted in a blog post.
ModelFusion.dev will help simplify AI model integration for developers, the team said. The Vercel AI SDK Core contains functions to interact directly with large language models, allowing developers to access LLMs from various providers and choose the best model and provider for each use case.
The release is organized into three main parts, explained Vercel’s Vice President of Product, AI, Jared Palmer, and Software Engineer Lars Grammel.
Rust version 1.78.0 released late last week to stable, with a new diagnostic attribute that can influence compiler error messages.
While compilers are not required to use these, they can serve as a hint to the compiler. “This flexibility allows source code to provide diagnostics even when they’re not supported by all compilers, whether those are different versions or entirely different implementations,” the Rust team wrote.
This update also delays the conditions for asserting unsafe preconditions until the code is generated, so they can be checked depending on the user’s own setting for debut assertions. “This change helps users catch undefined behavior in their code, though the details of how much is checked are generally not stable,” the team stated.
Previously, the assertions for the preconditions of unsafe functions had only been enabled in “#[cfg(debug_assertions)] builds of the standard library to avoid affecting release performance.” That created a problem, however: Because the standard library was usually compiled and distributed in release mode, most Rust developers weren’t checking at all, the team added.
The update also includes deterministic realignment. ”The standard library has a few functions that change the alignment of pointers and slices, but they previously had caveats that made them difficult to rely on in practice, if you followed their documentation precisely,” the team wrote. “Those caveats primarily existed as a hedge against const evaluation, but they’re only stable for non-const use anyway.” Now they are promised to have consistent runtime behavior according to their actual inputs, they added.
Finally, the update stabilizes four APIs, which are listed and linked in the blog post.
Adobe React Spectrum is a collection of React-based libraries and tools for building user interfaces for web applications. Last week, Adobe made several features generally available, including Submenu, unavailable menu items, DropZone and FileTrigger components.
Submenus can be created by wrapping an item and a menu in a SubmenuTrigger. The SubmenuTrigger accepts two children: the item that triggers the opening of the submenu, and the menu itself, according to Adobe’s Submenu documentation.
There’s also a suite of new color components: ColorPicker, ColorArea, ColorField, ColorSlider, ColorSwatch, ColorSwatchPicker, and ColorWheel, currently in beta. “These enable you to build fully customizable color pickers, including accessible color descriptions for screen reader support,” Adobe’s team wrote.
This release also incorporates the first alpha of TreeView, which supports “expanding, collapsing, multi-selection, keyboard navigation, and interactive children.” Also, Adobe improved its integration with client-side routers, which includes “accepting options to control router-specific behavior such as scrolling, replacing instead of pushing to the history, base path, etc.”