This Week in Dart - Issue 12
Hello fellow Dartisans! Welcome to the twelfth 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
Two breaking change requests have been made this week and are open for review and feedback:
Head to those linked issues to learn more about the breaking changes, the reasoning behind them, their impact, and potential mitigations. Feel free to leave comments or concerns.
Generally the Dart team strives to not make breaking changes, and to preserve compatibility of all Dart programs across stable Dart SDK releases, but sometimes breaking changes are needed or justified. To learn more about this process, see Dart SDK breaking change process.
Community updates
Discussions
- Code Golf now supports Dart
- OpenSearch for pub.dev
- Dawn 6.0 was released
- Suggest supporting algebraic effects
- Future.wait should support Flutter's SynchronousFuture
Learning materials
Project releases
- package:markdown_prettier was released
A Markdown prettier library written in Dart. - package:shelf_session was released
An implementation ofcookiesMiddleware
andsessionMiddleware
forpackage:shelf
. - package:axiom was released
A CLI tool that converts JSON into gorgeous, typesafe code in Dart. - package:github_contrib_exporter was released
Exports the contributor insights data seen in GitHub to CSV, so it can be further processed externally. - package:tgtg_client was released
An unofficial Dart client to access the Too Good To Go service, that connects customers to restaurants and stores that have surplus unsold food.
Project updates
- package:fpdart v0.3.0 was released
- package:freezed v2.2.0 was released
- package:collection v1.17.0 was released
- package:dart_frog v0.2.0 was released
- package:stormberry v0.9.0 was released
- package:sass_builder v2.2.0 was released
- package:scope v3.0.0 was released
- package:dart_markdown v3.1.0 was released
Dart SDK updates
19 unique authors have contributed 58 commits to the Dart SDK in the past week.
The following are some handpicked, interesting changes:
- [vm,corelib] Restrict Expando/WeakReference usage for records
- [dds/dap] Optimise computing line/col for stack frames
- [observatory] Dramatically reduce timeline loading time
- [analysis_server] Trigger reanalysis when LSP TODO settings change
- [analysis_server] Fix renaming of enum constants
- [analysis_server] Add LSP Type Hierarchy
- [vm] Extend string optimizations to UnmodifiableUint8List
- Parser: add support for wildcard patterns
Keep in mind, none of these changes are guaranteed to eventually land in a stable release.
Language updates and discussion
Records and patterns have been seeing extensive implementation work across all parts of the SDK over the past month, and final touches around their language specifications alongside fixes and improvements have been made as well.
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 patterns, see the Patterns feature specification and to contribute to the surrounding discussion check out issues with the Patterns 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 ngdart and the other surrounding packages supported by the Angular Dart Community.
package:ngdart
and its surrounding packages and website is a community maintained fork of the original AngularDart ecosystem.
Originally developed by Google as one of the primary uses of Dart, AngularDart has powered sophisticated, mission-critical apps that serve millions of users.
AngularDart is built on the Dart Web platform. By leveraging Dart's concise type system, sound null safety, and other useful development tools, AngularDart helps you build beautiful websites productively with an elegant and maintainable codebase, without all the complicated hassle of a JavaScript library.
It's super exciting to see the community continue the ecosystem that was core to Dart development for so long, bringing it and its surrounding packages and documentation into the modern era of Dart. Many projects were built with AngularDart and this works gives them the opportunity to stay within the ecosystem they learned to love over many years.
While it's easy to forget these days, Dart's journey began in the web space, and it's still a strong contender. This community-maintained fork of AngularDart showcases that well!
To learn more about the community maintained AngularDart, visit its GitHub organization, its list of packages, and its website.
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.
United States and Remote
Firebase Summit 2022 | New York City, NY | 2022-10-18
Join us on Tuesday, October 18 for the seventh annual Firebase Summit! We will be hosting a hybrid event consisting of both an in-person and virtual experience. If you're able to travel, join us at Pier 57 in New York City, which will include a keynote full of product updates, expert-led classes, interactive demos, networking opportunities, and exciting conversations with the community. Or, tune in online from wherever you are!Flutter Silicon Valley Meetup #4 | Mountain View, CA | 2022-10-26
RSVP needed to attend. Flutter Developer Community for all developers based in Bay Area/Silicon Valley, California, and Flutter Enthusiasts from the world over. Being so close to Google and Flutter's home base, our goal is to bring Flutter & Dart Developers together to meet, learn, grow and help each other.
Quotes and notes
Share quotes and comments you see and hear about Dart on our quotes discussion board for future inclusion!
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.
- The Dart and Flutter teams have job openings across a wide variety of roles. See Flutter and Dart team job openings for more information.
Reflectly
Nubank
Embrace
Superlist
Very Good Ventures
- Mid-Level Flutter Engineer (Remote, Spain)
- Mid-Level Flutter Engineer (Remote, US)
- Senior Flutter Engineer (Remote, Poland)
- Senior Flutter Engineer (Remote, Spain)
- Senior Flutter Engineer (Remote, US)