-
Notifications
You must be signed in to change notification settings - Fork 29.8k
Deprecate invalid InputDecoration.collapsed parameters #152486
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Deprecate invalid InputDecoration.collapsed parameters #152486
Conversation
326091c to
d196823
Compare
65bde4e to
2eee460
Compare
2eee460 to
7e2bf54
Compare
justinmc
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM with one question, probably just me misunderstanding. I'll try to get another review from someone more familiar with dart fix but no need to wait, feel free to merge if there's no follow up.
| 'Invalid parameter because a collapsed decoration has no label. ' | ||
| 'This feature was deprecated after v3.24.0-0.1.pre.', | ||
| ) | ||
| FloatingLabelBehavior? floatingLabelBehavior, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why couldn't this be this.floatingLabelBehavior?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Because when adding @deprecated to this.floatingLabelBehavior the analyzer will ask for the field to be deprecated (see https://dart.dev/tools/linter-rules/deprecated_consistency, especially the third case below).
Details
[#](https://dart.dev/tools/linter-rules/deprecated_consistency#details)
DO apply @Deprecated() consistently:
- if a class is deprecated, its constructors should also be deprecated.
- if a field is deprecated, the constructor parameter pointing to it should also be deprecated.
- if a constructor parameter pointing to a field is deprecated, the field should also be deprecated.
This lint seems too restrictive as one would like to deprecate a parameter in one particular constructor but not in other constructors. This is my first deprecation so maybe I'm missing something? Or maybe the workaround I used is expected?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure if this case has come up yet, as in removing one parameter from one constructor of a class, but not the others. Looks like these parameters were doing nothing before with the collapsed constructor? We often don't directly assign parameters when deprecating them though, so I think this is fine.
justinmc
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That was supposed to be an approve 👍
) Added a migration guide for a deprecation in flutter/flutter#152486. ## Presubmit checklist - [x] This PR doesn’t contain automatically generated corrections (Grammarly or similar). - [x] This PR follows the [Google Developer Documentation Style Guidelines](https://developers.google.com/style) — for example, it doesn’t use _i.e._ or _e.g._, and it avoids _I_ and _we_ (first person). - [x] This PR uses [semantic line breaks](https://github.com/dart-lang/site-shared/blob/main/doc/writing-for-dart-and-flutter-websites.md#semantic-line-breaks) of 80 characters or fewer.
Manual roll Flutter from 85960d2 to 4ff9462 (45 revisions) Manual roll requested by stuartmorgan@google.com flutter/flutter@85960d2...4ff9462 2024-08-01 matanlurey@users.noreply.github.com Fix local testing, gradle XML errors, and enable on CI. (flutter/flutter#152383) 2024-08-01 32538273+ValentinVignal@users.noreply.github.com Fix formatting issues in `search_anchor.0_test.dart` (flutter/flutter#152669) 2024-08-01 32538273+ValentinVignal@users.noreply.github.com Add tests for search anchor examples (flutter/flutter#152659) 2024-08-01 engine-flutter-autoroll@skia.org Roll Flutter Engine from 4dc94d6f88ba to 7c4a44611abe (1 revision) (flutter/flutter#152665) 2024-08-01 engine-flutter-autoroll@skia.org Roll Flutter Engine from f546fef7d7cd to 4dc94d6f88ba (1 revision) (flutter/flutter#152663) 2024-08-01 engine-flutter-autoroll@skia.org Roll Flutter Engine from 0fbff219c498 to f546fef7d7cd (2 revisions) (flutter/flutter#152661) 2024-08-01 engine-flutter-autoroll@skia.org Roll Flutter Engine from 32f788823f43 to 0fbff219c498 (5 revisions) (flutter/flutter#152658) 2024-08-01 engine-flutter-autoroll@skia.org Manual roll Flutter Engine from 32f788823f43 to ed95b491f260 (3 revisions) (flutter/flutter#152654) 2024-08-01 engine-flutter-autoroll@skia.org Manual roll Flutter Engine from 16332725788c to 32f788823f43 (11 revisions) (flutter/flutter#152648) 2024-07-31 dkwingsmt@users.noreply.github.com [CupertinoActionSheet] Make `_ActionSheetButtonBackground` stateless (flutter/flutter#152283) 2024-07-31 nate.w5687@gmail.com Implementing null-aware logic in `/packages/flutter/` (flutter/flutter#152294) 2024-07-31 andrewrkolos@gmail.com Reintroduce verbose logging for hot reload flake (flutter/flutter#152639) 2024-07-31 59215665+davidhicks980@users.noreply.github.com [material/menu_anchor.dart] Remove unused early key event listener (flutter/flutter#150915) 2024-07-31 victorsanniay@gmail.com Improve `CupertinoCheckbox` fidelity (flutter/flutter#151441) 2024-07-31 43054281+camsim99@users.noreply.github.com Update docs to support new Android version (flutter/flutter#152503) 2024-07-31 43054281+camsim99@users.noreply.github.com [Android] Update integration test AVD dependency to use Android 35 emulators (flutter/flutter#152498) 2024-07-31 rmolivares@renzo-olivares.dev Shift + click gesture support for SelectionArea on desktop platforms (flutter/flutter#148574) 2024-07-31 tessertaha@gmail.com Add ability to clip `Stepper` step content (flutter/flutter#152370) 2024-07-31 58190796+MitchellGoodwin@users.noreply.github.com Calendar font factor (flutter/flutter#152341) 2024-07-31 ian@hixie.ch Remove redundant usages of zones in skia_client.dart (flutter/flutter#149366) 2024-07-31 34871572+gmackall@users.noreply.github.com Set up tests that verify we can build a fresh counter app across our Gradle/AGP/Kotlin support range (flutter/flutter#151568) 2024-07-31 andrewrkolos@gmail.com remove bringup from Windows tool_integration_tests_* (flutter/flutter#152599) 2024-07-31 38110731+aliasgar4558@users.noreply.github.com � : Animation controller now has ability to repeat animation 'n' no. of times. (flutter/flutter#150764) 2024-07-31 engine-flutter-autoroll@skia.org Roll Flutter Engine from 3b31b21599d1 to 16332725788c (1 revision) (flutter/flutter#152631) 2024-07-31 engine-flutter-autoroll@skia.org Roll Flutter Engine from b73367a30e9b to 3b31b21599d1 (8 revisions) (flutter/flutter#152625) 2024-07-31 engine-flutter-autoroll@skia.org Roll Packages from 99e8606 to 46a712f (8 revisions) (flutter/flutter#152622) 2024-07-31 32538273+ValentinVignal@users.noreply.github.com Add tests for scaffold messenger examples (flutter/flutter#152536) 2024-07-31 32538273+ValentinVignal@users.noreply.github.com Add test for search_anchor.0.dart (flutter/flutter#152371) 2024-07-31 bruno.leroux@gmail.com Use decoration hint text as the default value for dropdown button hints (flutter/flutter#152474) 2024-07-31 bruno.leroux@gmail.com Deprecate invalid InputDecoration.collapsed parameters (flutter/flutter#152486) 2024-07-31 andrewrkolos@gmail.com increase sharding on Windows tool_integration_tests (flutter/flutter#152582) 2024-07-31 engine-flutter-autoroll@skia.org Roll Flutter Engine from e2ece7e58480 to b73367a30e9b (4 revisions) (flutter/flutter#152592) 2024-07-31 engine-flutter-autoroll@skia.org Roll Flutter Engine from 0b42657a184e to e2ece7e58480 (2 revisions) (flutter/flutter#152589) 2024-07-31 engine-flutter-autoroll@skia.org Roll Flutter Engine from 08f9be3ab284 to 0b42657a184e (2 revisions) (flutter/flutter#152586) 2024-07-30 matanlurey@users.noreply.github.com Clarify and cleanup the test-exemption wording in tree-hygiene. (flutter/flutter#152402) 2024-07-30 ditman@gmail.com [web] Set COEP:credentialless on flutter run/drive. (flutter/flutter#152413) 2024-07-30 engine-flutter-autoroll@skia.org Roll Flutter Engine from a4b88a37d511 to 08f9be3ab284 (5 revisions) (flutter/flutter#152583) 2024-07-30 fluttergithubbot@gmail.com Marks Mac platform_channel_sample_test_macos to be flaky (flutter/flutter#151884) 2024-07-30 engine-flutter-autoroll@skia.org Roll Flutter Engine from a6c5ff26c266 to a4b88a37d511 (2 revisions) (flutter/flutter#152575) 2024-07-30 jhy03261997@gmail.com Reland #151599 (Add button semantics in list tile ) with a flag to control behavior. (flutter/flutter#152526) 2024-07-30 zanderso@users.noreply.github.com Shift macOS/Android tests from Pixel 7 to mokey in staging (flutter/flutter#152571) 2024-07-30 engine-flutter-autoroll@skia.org Roll Flutter Engine from 31bb9f98472a to a6c5ff26c266 (5 revisions) (flutter/flutter#152573) 2024-07-30 engine-flutter-autoroll@skia.org Roll Packages from 247fb5f to 99e8606 (5 revisions) (flutter/flutter#152567) 2024-07-30 tessertaha@gmail.com Fix default avatar icon theme size for Material 2 (flutter/flutter#152307) ...
## Description This PR is a follow up to flutter#152165 (review). It deprecates two parameters that should not have been added (`floatingLabelBehavior` and `floatingLabelAlignment`) to `InputDecoration.collapsed`. Those parameters are related to the floating label but a collapsed input decoration is not supposed to have labels. For the dart_fix, I created a new fix file and moved some previous fixes to it. ## Tests Adds 1 test, updates 1.
## Description This PR is a follow up to flutter#152165 (review). It deprecates two parameters that should not have been added (`floatingLabelBehavior` and `floatingLabelAlignment`) to `InputDecoration.collapsed`. Those parameters are related to the floating label but a collapsed input decoration is not supposed to have labels. For the dart_fix, I created a new fix file and moved some previous fixes to it. ## Tests Adds 1 test, updates 1.
Description
This PR is a follow up to #152165 (review).
It deprecates two parameters that should not have been added (
floatingLabelBehaviorandfloatingLabelAlignment) toInputDecoration.collapsed. Those parameters are related to the floating label but a collapsed input decoration is not supposed to have labels.For the dart_fix, I created a new fix file and moved some previous fixes to it.
Tests
Adds 1 test, updates 1.