Dev News: Rust on Android, Flutter’s Release and Rust v1.74
“The Fluent design system is used in modern Windows applications, while the Cupertino style mirrors the look and feel of macOS applications,” the team wrote on Saturday. “Both styles are implemented in pure Slint code.”
Slint 1.3 also uses the napi-rs crate for the Node.js integration, making the UI Slint now compatible with all the latest Node.js releases and allowing developers to integrate into the Node.js event loop.
The new release also comes with the infrastructure to support importing components from external libraries into the code.
Flutter Issues New Stable Release
Flutter released version 3.16, its quarterly stable release, on Thursday. This release includes a preview of Impeller on Android is available for preview feedback.
Impeller is Microsoft’s cloud native rendering engine and is designed for building high performance, cross-platform user interfaces. A deep dive about Impeller as it relates to Flutter can be found on YouTube. Impeller already is used by Flutter, but this will extend that use to Android applications.
“Since early this year, the team has been hard at work on a Vulkan backend for Impeller, and this preview includes gathering feedback about Impeller’s characteristics on Vulkan-capable devices,” Kevin Chisholm, technical program manager for Dart and Flutter at Google, wrote. “Impeller isn’t yet expected to perform well on devices without Vulkan support. As we bring Impeller’s OpenGL backend up to feature completeness in the coming months, we plan to also seek feedback about Impeller’s characteristics on such devices in a future stable release.
The team also wrote that the Material 3 library has been updated to match the latest Material Design specs, which includes new components, component themes, and updated component visuals. Previously, the changes were opt-in, but as of this release, Material 3 is the default. It’s possible to opt out, but the team warned that Material 2 eventually will be depreciated and removed entirely.
The team also noted that it wasn’t possible to update all the widgets, so developers may see a UI change since some widgets required a new UI implementation. Developers will need to manually migrate to the new widgets to fix any wonkiness in the UI, the blog post noted.
The post links to this demo application, which allows developers to try all of the components.
There were also significant updates to the Flutter Casual Games toolkit, the team noted. The toolkit is a collection of templates and developer resources to make game developers more productive with Flutter, wrote Senior Product Manager for Flutter at Google Zoey Fan.
Rust Releases 1.74
The Rust team issued version 1.74.0 of the language on Thursday. Stable features include lint configuration through Cargo, Cargo registry authentication, including support for credential providers and authenticated private registries, the Rust Release Team said.
Credential providers allow configuration of how Cargo gets credentials for a registry, the team wrote. There are built-in providers for OS-specific secure secret storage on Linux, macOS, and Windows. Custom providers can be written to support arbitrary methods of storing or generating tokens as well.
“Registries can now optionally require authentication for all operations, not just publishing,” the team wrote. “This enables private Cargo registries to offer more secure hosting of crates. Use of private registries requires the configuration of a credential provider.”
Rust also has projections in opaque return types, which the release explains have to do with an error that “a return type cannot contain a projection of Self that references lifetimes from a parent scope.” The compiler now allows mentioning Self and associated types in opaque return types, such as
asynchronous fn and –
> impl Trait.
“This is the kind of feature that gets Rust closer to how you might just expect it to work, even if you have no idea about jargon like ‘projection,’” the release notes stated.
There are also a number of APIs stabilized. The new release is available on Github or those with previous versions installed can get the new version by running:
rustup update stable
Notion Adds AI-Powered Q&A
The New Stack recently covered how Notion is upping its game to better serve developers. This week, Notion unveiled a beta question-and-answer function that uses artificial intelligence to query information on the wiki-style platform.
It’s not a chatbot per se, but the Q&A function allows users to ask questions and receive AI-generated answers, with links to relevant Notion pages. Q&A is incorporated into all existing Notion AI subscriptions. There’s currently a waitlist developers can join to gain early access.