-
Notifications
You must be signed in to change notification settings - Fork 28.6k
Prefer TabBarTheme
normalization migration guide
#160018
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
Comments
Reproducible using the steps outlined above. cc @QuncCccccc flutter doctor -v
|
cc @QuncCccccc |
This undocumented none-compiling breaking change is now live. As expected it broke the build after upgrading to 3.27.0. It is still also not mentioned in the released breaking changes. |
This is not the case @rydmike please review our breaking change policy. https://github.com/flutter/flutter/blob/master/docs/contributing/Tree-hygiene.md#handling-breaking-changes This change was found to be non breaking, and is part of ongoing work to normalize material themes. |
TabBarTheme
in beta and master channelsTabBarTheme
normalization migration guide
If a past existing Flutter API does not even compile after upgrading, it is pretty hard broken, regardless of what the policy definition of a breaking change says. Sure it is an easy fix, and yes it is part of the normalization, I'm well aware, but it still breaks the build. Thus API is hard broken 🤷🏻♂️ 😃 |
This comment was marked as resolved.
This comment was marked as resolved.
@Piinks in the link you referenced, I read:
so by this definition if I have in the SDK:
and then it gets changed to:
but if it's not tested, you wouldn't call this a breaking change. Right? |
In this case two test files and 86 lines with the breaking change API were modified to keep the existing tests working. Many of the these test changes use and modify the exact explicit typing I used in this report to demo the broken API. See https://github.com/flutter/flutter/pull/156253/files It is a needed breaking change to achieve the targeted API consistence for component themes. |
We understand the current policy is not satisfying to all users’ expectations. We’ve actually been working on drafting new policies for breaking changes, deprecations and flutter/tests over the last few months. Until those updates roll out though, I am not going to fault any contributor for following our policies as they are currently documented and enforced. As for this particular issue, it was in fact documented in the release blog, please see the section on “Normalizing Material Theming”. OP also consulted on the issue. I can’t help but wonder why DialogTheme and CardTheme, which were also changed in the same way, have not been subjected to the same level of scrutiny. Regardless, we have created a migration guide for this change in flutter/website#11489, which should soon be available on the breaking change section of the website. Please see that guide for help in updating your code. PS - I did not write our current policy on breaking changes, I’d ask that folks not attack the messenger here and refer to our code of conduct. Thnx!
Closing as resolved by flutter/website#11489. |
Uh oh!
There was an error while loading. Please reload this page.
Steps to reproduce
Create a
TabBarTheme
instance with type declaration.Expected results
Expect the current API usage to compile on beta/master channels OR expect the API to be documented as a totally breaking none compiling change in the coming breaking not-yet-released changes lists here: https://docs.flutter.dev/release/breaking-changes#not-yet-released-to-stable
Actual results
Using
on beta channel version 3.27.0-0.2.pre or master 3.27.0-1.0.pre.763 the line does not compile.
There is no documentation (yet) about the coming breaking changes that causes this API to break in a manner that does not even compile.
Related PR #156253
To compile the line on beta channel version 3.27.0-0.2.pre or master 3.27.0-1.0.pre.763 you have to use:
The change is a part of "normalizing" component theme efforts, but the none compiling breaking change needs to be documented before it is released, which is expected to happen soon. This is just a friendly reminder to document the breaking change! 😃
Code sample
Code sample
Flutter Doctor output
Doctor output
The text was updated successfully, but these errors were encountered: