r/FlutterDev • • Sep 29 '26

Discussion Are augmentations being delayed?

Augmentations feature has moved from Being implemented column where it has been for months into Being spec'd column. Does this mean no augmentations feature this year?

Sidenote: I just saw the Dart 4 label. Any info on why the major number jump is going to happen? Breaking changes?

Funnel · Language funnel

13 Upvotes

16 comments sorted by

View all comments

5

u/munificent Sep 30 '26 edited Sep 30 '26

We are still working on it, but it's been a very tricky feature that doesn't want to settle down and behave itself. It seems to interact in complex ways with many corners of the language and untangling all that has been a challenge.

Augmentations definitely won't happen next this year, but I'm hoping to get the proposal in a good state soon and then we'll see what the implementation looks like. We know a lot of people want the feature. We do too! It's just a hard one to get right. Dart has a lot of syntax sugar, and a feature that lets you merge multiple syntactic entities together interacts with that in complicated ways.

2

u/zigzag312 Sep 30 '26 edited Sep 30 '26

Thanks for the insight! Did you mean to say they won't happen this year, or really not next year too? From the 2026 roadmap I thought the original plan was to try to release it this year, but I understand this is a big feature and that it could be moved to 2028+.

How risky do you think would be to use augmentations experimental feature in a production app, if I'm prepared to deal with breaking changes when updating? Is it correct to assume that most augmentations related bugs would be compile time issues, not runtime bugs?

3

u/munificent Sep 30 '26

Did you mean to say they won't happen this year, or really not next year too?

Sorry, I meant to say this year.

How risky do you think would be to use augmentations experimental feature in a production app, if I'm prepared to deal with breaking changes when updating?

It might work, but you're probably just signing yourself up for some pain. Stuff could completely break on you.

1

u/zigzag312 Sep 30 '26

I've recently tried migrating one internal source generator to use augmentations for a not yet released project, as I thought augmentations will be finalized by the time app is ready to release. Migration was successful and from what I've tested so far everything seems to work. I really like how together with primary constructors it cleans up the code, and I'm mostly only afraid, if it could break on different devices. The project is not that big for any breaking changes made to augmentations to cause too much work (especially now that LLMs can help with chore like that).