This Week in Dart - Issue 11

Hello fellow Dartisans! Welcome to the eleventh issue of This Week in Dart! This Week in Dart's aim is to be a useful collection of changes and news from across the Dart ecosystem and its surrounding community.

To contribute to this and future issues, feel free to contribute on GitHub or suggest content for next week on GitHub discussions.

To discuss this week's issue, feel free to join us on the Unofficial Dart Community Discord in the #this-week-in-dart channel.

Announcements

GitHub now supports Dart in its Advisory Database, dependency graph, as well as Dependabot alerts and Dependabot security updates. This means GitHub now has comprehensive support for monitoring and maintaining supply chain security for Dart and Flutter apps.

Supply chain security has been a recent focus of the Dart and Flutter teams, you can read more about their use of Allstar and Security scorecards and some of Flutter's work towards improving their Supply Chain Levels for Software Artifacts (SLSA).

Community updates

Official updates

Discussions

Learning materials

Project releases

Project updates

Dart SDK updates

33 unique authors have contributed 129 commits to the Dart SDK in the past week.

The following are some handpicked, interesting changes:

Keep in mind, none of these changes are guaranteed to eventually land in a stable release.

Language updates and discussion

Records have been seeing extensive implementation work across all parts of the SDK over the past month, and some final touches of its language specification alongside fixes and improvements have been made as well.

One large change from the past week was the specification of how type inference and static semantics work for records, paving the way for the Dart front-end to implement type inference. You can find these changes and related feedback for the v1.14 version of the feature specification in the Static semantics for records pull request.

To learn more about records, see the Records feature specification and to contribute to the surrounding discussion check out issues with the Records tag.

To learn more about and contribute to discussion of these and other potential changes to the Dart language, visit the Dart language repository.

Package of the week

The package of the week is petitparser!

package:petitparser is a "dynamic parser framework to build efficient grammars and parsers quickly". The package aims to include ideas and techniques from scannerless parsing, parser combinators, parsing expression grammars, and packrat parsers to allow developers to model and builder grammars and parsers as objects that can be updated dynamically.

PetitParser is a great way for both beginners and experts to build grammars and parsers for any type of project, with a great and fast development cycle due to its dynamically configurable nature. Many popular projects on pub.dev use the package for their parsing needs, such as package:xml, package:toml, package:equations, and many more!

To learn more about PetitParser and utilizing it to build your first parser, see it's extensive tutorial and its collection of examples.

Thanks to @felixalguzman for the suggestion!

Dart's package ecosystem is growing fast, and we want to help foster that growth. If you know of any great open source projects, let us know by suggesting a package on GitHub discussions.

Upcoming events

Check the Flutter Meetup Network and the Dart Language tag on Meetup to find an event near you or online and connect with other Dart developers!

Let us know about other future events on the events discussion board.

Europe

Quotes and notes

Share quotes and comments you see and hear about Dart on our quotes discussion board for future inclusion!

#Dart is an incredible programming language and should be considered for more backend projects!

—@flutter_exp (Max Weber) on Twitter

The patterns proposal (also from @munificentbob, he's on a tear) is also looking fantastic: Patterns features specification. I'm pretty excited about this one.

—@LeafPetersen (Leaf Petersen) on Twitter

Dart jobs

The following are some jobs that will provide you the opportunity to use or even build Dart.

If you know of any jobs which use or are related to Dart, let us know in the Job postings for Dart discussion board.

Google

Embrace

Superlist

Very Good Ventures

Superformula

Invertase

Deloitte

Swiss Aviation Software