‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ 

Issue 16 (12/09/2021)

Open the newsletter in your browser

arrow

๐Ÿ’™๏ธ Support the newsletter ๐Ÿ’™๏ธ

arrow

Flutter 2.8: a lot of Dart, little Flutter

Yesterday evening, the Flutter team released a new stable version: 2.8. Opensource obligates, this release was highly predictable, since the 2.5 was born on September 08 and the publication pace is quarterly. On the whole, if we had to summarize: mainly, new features for Dart and few changes for Flutter.

What's new?

Image Figures, figures!

In September, Google had announced few new numbers, but they are catching up in this edition: 375,000 Flutter apps are available on the Google Play (up from 200,000 in May) 20 000 issues have been closed in 2021

Image Dart 2.15

When you say a new version of Flutter, you mean a new version of Dart! This version brings a lot of new features, which are explained below. In the less visible ones, some of them stand out however, with the unawaited keyword that manages the null, the enums that have a name getter or functions to compare by index or name.

My personal opinion if I may: it's a pity to synchronize the two outputs, because it combines the two technologies, although Dart is cross-platform.

Image Dart 2.15 : The use of self-hosted

Already mentioned in a previous issue, the integration of self-hosted servers for Pub is now made easier with the token authentication. You have to use the dart pub token command and use add/list/remove as argument.

For self-hosted "Pub" you can either, start on an installation in Google cloud flag_lng or, use a Docker image via unpubd flag_lng.

Image Pub : Deleting a version is now possible

You have published a new version of a package or a plugin on Pub.dev, but whammo, you published it too early or you left your tests in the middle? From now on, you will have 7 days within which to " retract ".

Be careful, "retracting" does not mean deleting. If a developer wants to use this version "by force", he can. More information is available in the documentation flag_lng.

Image Dart 2.15 : The arrival of Isolate groups

This is a feature that dates back a long time (I talked about it in a March newsletter flag_lng): Isolate groups. Basically, performance will be significantly boosted: more than 100x faster, memory usage reduced by 10 to 100%, more efficient garbage collection managementโ€ฆ thanks to the pooling of data within the same heap. And the good news is you don't have to do anything, except use the Isolate.spawn() API or the compute() method in Flutter.

The documentation has been updated to better understand the mechanism flag_lng; examples of GITHUB code flag_lng are available.

Image Dart 2.15 :

Already presented in detail in the early November newsletter, pardon the self-quotation:
Let's say you have the following class:

class A {
   String a;
   A(this.x);
}

To create a new object, you would logically specify A("A value"). Thanks to the tear-offs, you can now write :

List<String> list = ["1", "2", "3"];
for (String e in list.map(A.new)) {}


The A.new is equivalent to calling the constructor, but without having to write the callback (String val) => A(val). Note that for named constructors, you only need to change the new to the correct name.

Image Dart 2.15 : Generics

Three main features have been added: Generic type literals flag_lng, Explicit generic method instantiations flag_lng ahd Generic instantiation of function objects flag_lng. The most recommended is to consult the changelog to have examples of code and to understand the changes.

Image Flutter 2.8

When reading the article on Medium flag_lng, one immediately thinks that version 2.8 is essentially there for the usual: performance improvements and bug fixes. In practice, Tim Sneath talks about performance at launch, memory usage and graphics rendering. The release notes flag_lng are available at this link (link KO'd at the time of writing the newsletter).

Somewhat more arcane, the Google product manager mentions improvements for developers' productivity. Apparently he is referring to plugins/packages whose use has allegedly been simplified, taking as an example Firebase Auth, which handles error cases for you.

Image Flutter 2.8 : breaking changes

The Flutter site has started to list the "breaking changes" that will occur in the versions "not yet released in stable version" ( to wit 2.8). First, the version of Kotlin is at least the 1.5.31 flag_lng and then a number of classes and attributes will be deprecated flag_lng.

Image Flame goes to 1.0

Flame is a game engine especially dedicated to Flutter. Its team has recently announced to focus only on the development of the technology, which is probably the reason why Google has put it in the spotlight.

Concretely, you have access to demos directly from your browser, tutorials flag_lng or a list of games already published flag_lng.

Image Desktop in stable: foiled again!

When Dart 2.0 was released last March, Google said: "In this version [Editor's note: 2.0], we are pleased to announce that desktop support is available on the stable channel via a dedicated flag. This means we're ready for you to test" โ€ฆ "You can think of this as a beta snapshot that predates the final stable release that will arrive later this year".

The 2.8 marks this year' last major stable release. So this is a broken promise: I'd rather have nothing than use a totally buggy product.

Your opinion on this issue
๐Ÿ˜๐Ÿ˜†๐Ÿ™„๐Ÿ˜ก๐Ÿ‘๐Ÿ‘Ž