-
Notifications
You must be signed in to change notification settings - Fork 29.7k
[flutter_tool] remove no-op iOS folder when creating plugins. #61561
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
[flutter_tool] remove no-op iOS folder when creating plugins. #61561
Conversation
jonahwilliams
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
|
@pcsosinski fyi |
|
I don't see any technical harm other than people might get confused with the no-op iOS folders. What do you think of pushing this change (along with the new |
|
the reason for this change is that this release marks the first time we've updated the client-side pub tool to disable the use of the old pubspec.yaml. the new pubspec format requires a pluging to be explicit about what platforms it supports. we can hardly ask them to do that and then require them to leave in an empty ios folder, too, regardless of whether they're targeting ios. |
|
We can't break add2app |
|
@csells That makes sense. My concern is more around the stability/crashiness of the tool around this change. We might not have good test coverage in this area, so some manual testing might be needed for the scenario that @jmagman is worried about. Just want to get confirmation that that scenario has been tried, and the tool does not have any unexpected behavior. |
|
For a pure flutter apps, the current stable (1.17) user will not be able to build the app if it depends on the plugin at all, because the plugin has a min flutter sdk requirement of 1.20.0. They will see an error when they depend on a plugin created using the 1.20.0 command like: Note that this PR only adds the constraint to the newly created plugins. For example, an existing web only plugin author wants to remove the no-op ios folder, they can do that by manually removing the folder and set the min sdk version to 1.20.0, which also blocks their plugin to be used by people who are on 1.17 I'm not sure about the Add to app cases that @jmagman mentioned |
|
Add-to-app at least isn't fixed in 1.20. It's parsing the old |
|
lgtm after #61269 lands. |
|
#61269 has landed. |
The commit needed on the 1.20 branch is #62372. That includes #61269 (with merge conflicts resolved) and this PR, #61561.
I think it needs to be included in the 1.20.0 stable. If a plugin says its minimum is 1.20 (the new default) and is missing the |
This reverts commit 004f90f.
This reverts commit 004f90f.
Description
Removes the no-op iOS folder in newly created plugin.
Also sets the newly created plugin's min flutter version to 1.20.0. (I haven't added this change to this PR, so the tests can pass)
This PR is for reviewing purpose. We will try to land this as a hot-fix when 1.20.0 is released.
TODO: update min flutter sdk constraint to 1.20.0
Related Issues
#60215
Tests
plugin does not support any platform by defaultis updated to reflect the change.Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes (
[x]). This will ensure a smooth and quick review process.///).flutter analyze --flutter-repo) does not report any problems on my PR.Breaking Change
Did any tests fail when you ran them? Please read Handling breaking changes.