dart-sdk-changelog
Installation
SKILL.md
Dart SDK Changelog & Version Feature Guide (Dart 1.x to Modern Dart 3.x)
This skill provides an authoritative, structured guide to Dart language features, core library APIs, tooling changes, version requirements, experimental feature flags (--enable-experiment), static metaprogramming (Macros & Augmentations), and legacy modernization runbooks sourced directly from the official Dart SDK CHANGELOG.
🎯 Parent Guide: How to Find the minSdk for Any Dart Feature or API
When writing or reviewing Dart code, selecting the correct minimum SDK lower bound (minSdk) in pubspec.yaml is essential to ensure syntax and core APIs compile across target environments.
1. Language Version vs. SDK Version
- Language Version (
major.minor): Inpubspec.yaml, the lower bound ofenvironment.sdk(for example^3.13.0or>=3.12.0 <4.0.0) dictates which language grammar and compiler semantics are enabled.- Patch numbers (
.1,.2) do not affect language grammar. - Using a Dart 3.13 feature (like Primary Constructors) requires
sdk: '^3.13.0'.
- Patch numbers (
- Core Library APIs: Methods and classes (for example
Future.pause,List.unmodifiableOf) are added in specific SDK versions. - Per-file override: A file can specify
// @dart = 3.12on line 1 to force an earlier language version.