Skip to content

Conversation

@SalehTZ
Copy link
Contributor

@SalehTZ SalehTZ commented Jul 14, 2025

Replaces the generic assertion in _MixedBorderRadius.resolve with debugCheckCanResolveTextDirection.

This change provides a more helpful and descriptive error message when the TextDirection is null, improving the developer experience by clearly stating why the resolution failed and how to fix it.

Fixes: #171815, also fixes: #171812

Pre-launch Checklist

SalehTZ added 2 commits July 14, 2025 13:45
Replaces the generic assertion in `_MixedBorderRadius.resolve` with `debugCheckCanResolveTextDirection`.

This change provides a more helpful and descriptive error message when the `TextDirection` is null, improving the developer
experience by clearly stating why the resolution failed and how to fix it.

Fixes: flutter#171815
…esolve

Adds a test case that uses `add()` and `subtract()` methods to ensure that calling `_MixedBorderRadius.resolve` with a null `TextDirection` throws a `FlutterError`
with the expected improved message.
@github-actions github-actions bot added the framework flutter/packages/flutter repository. See also f: labels. label Jul 14, 2025
@nt4f04uNd nt4f04uNd self-requested a review July 20, 2025 10:56
@justinmc justinmc requested a review from victorsanni July 22, 2025 22:13
Copy link
Contributor

@victorsanni victorsanni left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Thanks for the PR.

@nt4f04uNd nt4f04uNd added the autosubmit Merge PR when tree becomes green via auto submit App label Jul 24, 2025
@auto-submit auto-submit bot added this pull request to the merge queue Jul 24, 2025
Merged via the queue into flutter:master with commit 9f90740 Jul 24, 2025
72 checks passed
@flutter-dashboard flutter-dashboard bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Jul 24, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jul 25, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jul 25, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jul 25, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jul 25, 2025
@SalehTZ SalehTZ deleted the add-detailed-error-message-for-_MixedBorderRadius.resolve branch July 26, 2025 05:03
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jul 26, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jul 26, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jul 26, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jul 27, 2025
azatech pushed a commit to azatech/flutter that referenced this pull request Jul 28, 2025
…172100)

Replaces the generic assertion in `_MixedBorderRadius.resolve` with
`debugCheckCanResolveTextDirection`.

This change provides a more helpful and descriptive error message when
the `TextDirection` is null, improving the developer experience by
clearly stating why the resolution failed and how to fix it.


Fixes: flutter#171815, also fixes: flutter#171812

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.


<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jul 28, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jul 28, 2025
auto-submit bot pushed a commit to flutter/packages that referenced this pull request Jul 28, 2025
Roll Flutter from 20788c0 to cfbaa18 (43 revisions)

flutter/flutter@20788c0...cfbaa18

2025-07-28 git@reki.re Remove shortner (flutter/flutter#172844)
2025-07-28 matanlurey@users.noreply.github.com Update `flutter pub get` to use `flutter.version.json` (instead of `version`) (flutter/flutter#172798)
2025-07-27 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from i7RS-4iBtdndwa3Jy... to tK_PAaLeo0pUxi8hv... (flutter/flutter#172827)
2025-07-26 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from 4IewCwqcEm7r4QsXd... to i7RS-4iBtdndwa3Jy... (flutter/flutter#172808)
2025-07-26 98614782+auto-submit[bot]@users.noreply.github.com Reverts "fix: get content hash for master on local engine branches (#172792)" (flutter/flutter#172805)
2025-07-26 codefu@google.com fix: build size_exp artifacts in post (flutter/flutter#172802)
2025-07-26 codefu@google.com fix: get content hash for master on local engine branches (flutter/flutter#172792)
2025-07-25 matanlurey@users.noreply.github.com Update `main`/`master` repoExceptions analysis set (flutter/flutter#172796)
2025-07-25 matanlurey@users.noreply.github.com Remove deprecated `--[no-]-disable-dds` (flutter/flutter#172791)
2025-07-25 matanlurey@users.noreply.github.com `last_engine_commit.ps1`: Use `$flutterRoot` instead of `$gitTopLevel` (flutter/flutter#172786)
2025-07-25 matanlurey@users.noreply.github.com Check file contents, remove tests that are now invalid (`: 'none'`) (flutter/flutter#172788)
2025-07-25 loic.peron@inetum.com windows: allow pwsh.bat wrapper (flutter/flutter#171778)
2025-07-25 bdero@google.com [Impeller] Log glCheckFrameBufferStatus output when it fails in blit pass. (flutter/flutter#172592)
2025-07-25 matanlurey@users.noreply.github.com Remove deprecated `AssetManifest.json` file (flutter/flutter#172594)
2025-07-25 matanlurey@users.noreply.github.com Refactor `verifyVersion` into typed `Version` object, use it (flutter/flutter#172780)
2025-07-25 jmccandless@google.com Bump the customer tests to pick up an update to Zulip's tests, for th… (flutter/flutter#172733)
2025-07-25 matanlurey@users.noreply.github.com Rename `AppRunLogger`, stop writing status messages that break JSON (flutter/flutter#172591)
2025-07-25 matanlurey@users.noreply.github.com Add `--dart-define`, `-D` to `assemble`, deprecate `--define`, `-d`. (flutter/flutter#172510)
2025-07-25 rmolivares@renzo-olivares.dev Fix previous text input connection interrupts enter/space (flutter/flutter#171973)
2025-07-25 1063596+reidbaker@users.noreply.github.com Update CHANGELOG.md for 3.32.8 (flutter/flutter#172779)
2025-07-25 matanlurey@users.noreply.github.com Fix an `omit-type` lint that is breaking the tree (flutter/flutter#172776)
2025-07-25 reynaldots@gmail.com feat(tool): Respect user-data-dir flag from web-browser-flag (flutter/flutter#169445)
2025-07-25 mdebbar@google.com [web] Fix empty first frame in multiview mode (flutter/flutter#172493)
2025-07-25 jssaadeh@outlook.com Migrate to null aware elements - Part 3 (flutter/flutter#172307)
2025-07-25 mdebbar@google.com Update few links in docs (flutter/flutter#172166)
2025-07-25 engine-flutter-autoroll@skia.org Roll Skia from 768ace3fd144 to 409e1c7ba09b (1 revision) (flutter/flutter#172745)
2025-07-25 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from a_55b5hqpRnigzuNC... to 4IewCwqcEm7r4QsXd... (flutter/flutter#172742)
2025-07-25 engine-flutter-autoroll@skia.org Roll Skia from 094ac350125f to 768ace3fd144 (18 revisions) (flutter/flutter#172735)
2025-07-25 matanlurey@users.noreply.github.com Remove 2023 deprecated `'platforms'` key from daemon output (flutter/flutter#172593)
2025-07-24 a-siva@users.noreply.github.com Manual roll of Dart from 26dece893751 to 5ede85aff798 (flutter/flutter#172731)
2025-07-24 ievdokdm@gmail.com 169108 ci debug (flutter/flutter#172589)
2025-07-24 31685655+SalehTZ@users.noreply.github.com Improve assertion message in `_MixedBorderRadius.resolve()` (flutter/flutter#172100)
2025-07-24 ahmedsameha1@gmail.com Make sure that a BottomAppBar doesn't crash in 0x0 environment (flutter/flutter#172097)
2025-07-24 ahmedsameha1@gmail.com Handle#6537 bottom navigation bar (flutter/flutter#172404)
2025-07-24 ahmedsameha1@gmail.com Make sure that a MaterialBanner doesn't crash in 0x0 environment (flutter/flutter#172074)
2025-07-24 matanlurey@users.noreply.github.com Remove support for `pluginClass: none` (on `master`; `> 3.35.0`) (flutter/flutter#172579)
2025-07-24 ahmedsameha1@gmail.com Make sure that a Card doesn't crash in 0x0 environment (flutter/flutter#172373)
2025-07-24 ahmedsameha1@gmail.com Make sure that an AboutDialog doesn't crash in 0x0 environment (flutter/flutter#172444)
2025-07-24 ahmedsameha1@gmail.com Make sure that an ActionChip doesn't crash in 0x0 environment (flutter/flutter#172684)
2025-07-24 matanlurey@users.noreply.github.com Delete (unused) `dev/checks_tool` directory (flutter/flutter#172715)
2025-07-24 34871572+gmackall@users.noreply.github.com [Android] Add missing ci configuration for `Linux android_java17_tool_integration_tests` (flutter/flutter#172702)
2025-07-24 srawlins@google.com Flutter-Cherrypick-Process.md - Spell cherry-pick consistently (flutter/flutter#172697)
2025-07-24 matanlurey@users.noreply.github.com Bringup `linux_web_engine_tests`; failing 4+ times in a row (flutter/flutter#172714)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
...
vashworth pushed a commit to vashworth/packages that referenced this pull request Jul 30, 2025
Roll Flutter from 20788c0 to cfbaa18 (43 revisions)

flutter/flutter@20788c0...cfbaa18

2025-07-28 git@reki.re Remove shortner (flutter/flutter#172844)
2025-07-28 matanlurey@users.noreply.github.com Update `flutter pub get` to use `flutter.version.json` (instead of `version`) (flutter/flutter#172798)
2025-07-27 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from i7RS-4iBtdndwa3Jy... to tK_PAaLeo0pUxi8hv... (flutter/flutter#172827)
2025-07-26 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from 4IewCwqcEm7r4QsXd... to i7RS-4iBtdndwa3Jy... (flutter/flutter#172808)
2025-07-26 98614782+auto-submit[bot]@users.noreply.github.com Reverts "fix: get content hash for master on local engine branches (#172792)" (flutter/flutter#172805)
2025-07-26 codefu@google.com fix: build size_exp artifacts in post (flutter/flutter#172802)
2025-07-26 codefu@google.com fix: get content hash for master on local engine branches (flutter/flutter#172792)
2025-07-25 matanlurey@users.noreply.github.com Update `main`/`master` repoExceptions analysis set (flutter/flutter#172796)
2025-07-25 matanlurey@users.noreply.github.com Remove deprecated `--[no-]-disable-dds` (flutter/flutter#172791)
2025-07-25 matanlurey@users.noreply.github.com `last_engine_commit.ps1`: Use `$flutterRoot` instead of `$gitTopLevel` (flutter/flutter#172786)
2025-07-25 matanlurey@users.noreply.github.com Check file contents, remove tests that are now invalid (`: 'none'`) (flutter/flutter#172788)
2025-07-25 loic.peron@inetum.com windows: allow pwsh.bat wrapper (flutter/flutter#171778)
2025-07-25 bdero@google.com [Impeller] Log glCheckFrameBufferStatus output when it fails in blit pass. (flutter/flutter#172592)
2025-07-25 matanlurey@users.noreply.github.com Remove deprecated `AssetManifest.json` file (flutter/flutter#172594)
2025-07-25 matanlurey@users.noreply.github.com Refactor `verifyVersion` into typed `Version` object, use it (flutter/flutter#172780)
2025-07-25 jmccandless@google.com Bump the customer tests to pick up an update to Zulip's tests, for th… (flutter/flutter#172733)
2025-07-25 matanlurey@users.noreply.github.com Rename `AppRunLogger`, stop writing status messages that break JSON (flutter/flutter#172591)
2025-07-25 matanlurey@users.noreply.github.com Add `--dart-define`, `-D` to `assemble`, deprecate `--define`, `-d`. (flutter/flutter#172510)
2025-07-25 rmolivares@renzo-olivares.dev Fix previous text input connection interrupts enter/space (flutter/flutter#171973)
2025-07-25 1063596+reidbaker@users.noreply.github.com Update CHANGELOG.md for 3.32.8 (flutter/flutter#172779)
2025-07-25 matanlurey@users.noreply.github.com Fix an `omit-type` lint that is breaking the tree (flutter/flutter#172776)
2025-07-25 reynaldots@gmail.com feat(tool): Respect user-data-dir flag from web-browser-flag (flutter/flutter#169445)
2025-07-25 mdebbar@google.com [web] Fix empty first frame in multiview mode (flutter/flutter#172493)
2025-07-25 jssaadeh@outlook.com Migrate to null aware elements - Part 3 (flutter/flutter#172307)
2025-07-25 mdebbar@google.com Update few links in docs (flutter/flutter#172166)
2025-07-25 engine-flutter-autoroll@skia.org Roll Skia from 768ace3fd144 to 409e1c7ba09b (1 revision) (flutter/flutter#172745)
2025-07-25 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from a_55b5hqpRnigzuNC... to 4IewCwqcEm7r4QsXd... (flutter/flutter#172742)
2025-07-25 engine-flutter-autoroll@skia.org Roll Skia from 094ac350125f to 768ace3fd144 (18 revisions) (flutter/flutter#172735)
2025-07-25 matanlurey@users.noreply.github.com Remove 2023 deprecated `'platforms'` key from daemon output (flutter/flutter#172593)
2025-07-24 a-siva@users.noreply.github.com Manual roll of Dart from 26dece893751 to 5ede85aff798 (flutter/flutter#172731)
2025-07-24 ievdokdm@gmail.com 169108 ci debug (flutter/flutter#172589)
2025-07-24 31685655+SalehTZ@users.noreply.github.com Improve assertion message in `_MixedBorderRadius.resolve()` (flutter/flutter#172100)
2025-07-24 ahmedsameha1@gmail.com Make sure that a BottomAppBar doesn't crash in 0x0 environment (flutter/flutter#172097)
2025-07-24 ahmedsameha1@gmail.com Handle#6537 bottom navigation bar (flutter/flutter#172404)
2025-07-24 ahmedsameha1@gmail.com Make sure that a MaterialBanner doesn't crash in 0x0 environment (flutter/flutter#172074)
2025-07-24 matanlurey@users.noreply.github.com Remove support for `pluginClass: none` (on `master`; `> 3.35.0`) (flutter/flutter#172579)
2025-07-24 ahmedsameha1@gmail.com Make sure that a Card doesn't crash in 0x0 environment (flutter/flutter#172373)
2025-07-24 ahmedsameha1@gmail.com Make sure that an AboutDialog doesn't crash in 0x0 environment (flutter/flutter#172444)
2025-07-24 ahmedsameha1@gmail.com Make sure that an ActionChip doesn't crash in 0x0 environment (flutter/flutter#172684)
2025-07-24 matanlurey@users.noreply.github.com Delete (unused) `dev/checks_tool` directory (flutter/flutter#172715)
2025-07-24 34871572+gmackall@users.noreply.github.com [Android] Add missing ci configuration for `Linux android_java17_tool_integration_tests` (flutter/flutter#172702)
2025-07-24 srawlins@google.com Flutter-Cherrypick-Process.md - Spell cherry-pick consistently (flutter/flutter#172697)
2025-07-24 matanlurey@users.noreply.github.com Bringup `linux_web_engine_tests`; failing 4+ times in a row (flutter/flutter#172714)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
...
ksokolovskyi pushed a commit to ksokolovskyi/flutter that referenced this pull request Aug 19, 2025
…172100)

Replaces the generic assertion in `_MixedBorderRadius.resolve` with
`debugCheckCanResolveTextDirection`.

This change provides a more helpful and descriptive error message when
the `TextDirection` is null, improving the developer experience by
clearly stating why the resolution failed and how to fix it.


Fixes: flutter#171815, also fixes: flutter#171812

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.


<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
mboetger pushed a commit to mboetger/flutter that referenced this pull request Sep 18, 2025
…172100)

Replaces the generic assertion in `_MixedBorderRadius.resolve` with
`debugCheckCanResolveTextDirection`.

This change provides a more helpful and descriptive error message when
the `TextDirection` is null, improving the developer experience by
clearly stating why the resolution failed and how to fix it.


Fixes: flutter#171815, also fixes: flutter#171812

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.


<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
korca0220 pushed a commit to korca0220/flutter that referenced this pull request Sep 22, 2025
…172100)

Replaces the generic assertion in `_MixedBorderRadius.resolve` with
`debugCheckCanResolveTextDirection`.

This change provides a more helpful and descriptive error message when
the `TextDirection` is null, improving the developer experience by
clearly stating why the resolution failed and how to fix it.


Fixes: flutter#171815, also fixes: flutter#171812

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.


<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Nov 12, 2025
lucaantonelli pushed a commit to lucaantonelli/flutter that referenced this pull request Nov 21, 2025
…172100)

Replaces the generic assertion in `_MixedBorderRadius.resolve` with
`debugCheckCanResolveTextDirection`.

This change provides a more helpful and descriptive error message when
the `TextDirection` is null, improving the developer experience by
clearly stating why the resolution failed and how to fix it.


Fixes: flutter#171815, also fixes: flutter#171812

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.


<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

framework flutter/packages/flutter repository. See also f: labels.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

_MixedBorderRadius.resolve - better directionality message Better directionality error messages for painting library

3 participants