- 20 Sep, 2023 1 commit
-
-
Camille Simon authored
Adds warning to `flutter create` command that checks if detected Java version is compatible with the template AGP and template Gradle versions. If a developer is building for Android and their Java version is incompatible with either the AGP or Gradle versions that Flutter currently supports by default for new Flutter projects, then - a warning will show noting the incompatibility and - steps will be shown to fix the issue, the recommended option being to configure a new compatible Java version given that Flutter knows we can support the template Gradle/AGP versions and updating them manually may be risky (feedback on this approach would be greatly appreciated!) Given that the template AGP and Gradle versions are compatible, this PR assumes that the detected Java version may only conflict with one of the template AGP or Gradle versions because: - the minimum Java version for a given AGP version is less than the maximum Java version compatible for the minimum Gradle version required for that AGP version (too low a Java version will fail AGP compatibility test, but not Gradle compatibility). - the maximum Java version compatible with minimum Gradle version for a given AGP version is higher than minimum Java version required for that AGP version (too high a Java version will fail Gradle compatibility test, but not AGP compatibility test). Fixes https://github.com/flutter/flutter/issues/130515 in the sense that `flutter create foo`; `cd foo`; `flutter run` should always be successful.
-
- 03 May, 2023 1 commit
-
-
gmackall authored
[Reland] Add migrator to upgrade gradle version when conflict with Android Studio bundled Java version is detected (#125836) This is an attempt to reland https://github.com/flutter/flutter/pull/124085. Differences from this attempt and the last: 1. Adds a check for null android studio versions and a test for this case. 2. Wraps the migrate code in a try-catch [per the suggestion here](https://github.com/flutter/flutter/pull/125728/files#r1181747899). Old PR description: This PR adds an android project migrator that checks the version of android studio and the version of gradle for conflicts, and upgrades to 7.4 if a conflict is detected. For more detail about the particular conflict, see https://github.com/flutter/flutter/issues/122376. The PR also upgrades older gradle versions being used in integration testing to 7.4. Fixes/related to: https://github.com/flutter/flutter/issues/122376 and https://github.com/flutter/flutter/issues/123636
-
- 01 May, 2023 1 commit
-
- 27 Apr, 2023 1 commit
-
-
gmackall authored
Add migrator to upgrade gradle version when conflict with Android Studio bundled Java version is detected (#124085) This PR adds an android project migrator that checks the version of android studio and the version of gradle for conflicts, and upgrades to 7.4 if a conflict is detected. For more detail about the particular conflict, see https://github.com/flutter/flutter/issues/122376. The PR also upgrades older gradle versions being used in integration testing to 7.4. Fixes/related to: https://github.com/flutter/flutter/issues/122376 and https://github.com/flutter/flutter/issues/123636
-
- 13 Apr, 2023 1 commit
-
-
Reid Baker authored
#123643 - Add task to projects evaluated by flutter.gradle that will print the java version. - Add integration test for the existence of javaVersion and the expected format. - Add gradle util to get the gradlew version for a specific platform (gradlew everywhere but windows). Why does this code need to exist? Figuring out what version of java is used by flutter/gradle is done in a few different ways that are not always aligned. See this issue https://github.com/flutter/flutter/issues/122609 , this issue https://github.com/flutter/flutter/issues/121501 this feature request https://github.com/flutter/flutter/issues/106416 As examples of why assuming the java version is dangerous. This task is code flutter can build upon and is the version gradle is using to build no matter how it is configured. ## 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] All existing and new tests are passing. --------- Co-authored-by:
Mitchell Goodwin <58190796+MitchellGoodwin@users.noreply.github.com> Co-authored-by:
Greg Spencer <gspencergoog@users.noreply.github.com> Co-authored-by:
Victoria Ashworth <vashworth@google.com> Co-authored-by:
Christopher Fujino <christopherfujino@gmail.com> Co-authored-by:
Jackson Gardner <jacksongardner@google.com> Co-authored-by:
Rydmike <m.rydstrom@gmail.com> Co-authored-by:
keyonghan <54558023+keyonghan@users.noreply.github.com> Co-authored-by:
chunhtai <47866232+chunhtai@users.noreply.github.com> Co-authored-by:
Taha Tesser <tessertaha@gmail.com> Co-authored-by:
Ben Konyi <bkonyi@google.com> Co-authored-by:
engine-flutter-autoroll <engine-flutter-autoroll@skia.org> Co-authored-by:
hellohuanlin <41930132+hellohuanlin@users.noreply.github.com> Co-authored-by:
Danny Tuppeny <danny@tuppeny.com> Co-authored-by:
Chris Bracken <chris@bracken.jp> Co-authored-by:
Kate Lovett <katelovett@google.com> Co-authored-by:
Michael Goderbauer <goderbauer@google.com> Co-authored-by:
Elias Yishak <42216813+eliasyishak@users.noreply.github.com> Co-authored-by:
Christopher Fujino <fujino@google.com>
-
- 07 Apr, 2023 1 commit
-
-
Reid Baker authored
https://github.com/flutter/flutter/issues/123917 Missed feedback from https://github.com/flutter/flutter/pull/123916 - Handle commented out lines in gradle-wrapper.properties This is 1 of 2 prs to handle missed feedback. Formatting will be done in the second whereas this one captures a weakness missed in the last pr. ## 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] All existing and new tests are passing.
-
- 05 Apr, 2023 1 commit
-
-
Reid Baker authored
https://github.com/flutter/flutter/issues/123917 Doc covering a broad set of issues related to android studio updating. https://docs.google.com/document/d/1hTXkjbUrBnXgu8NQsth1c3aEqo77rWoEj8CcsQ39wwQ/edit?pli=1# Specifically this pr: - Adds new functions to find a projects AGP, Gradle and java versions, and tests. - Adds new functions that take versions and parse if the versions are compatible with each other, and tests. - Adds validator for `flutter analyze --suggestions` that evaluates the java/gradle/agp versions and checks if they are compatible, and integration test. - Updates the version of gradle used by dev/integration_tests/flutter_gallery/ to the minimum supported by java 18 so that the integration tests pass (It is unknown why the java version is 18.9 instead of 11) - Moves `isWithinVersionRange` to version.dart, and tests. - Adds FakeAndroidStudio to fakes to be used in multiple tests but does not remove existing copies. Metrics will be included as part of the definition of done for this bug but not as part of this cl. It is already too big. Known work still left in this pr: * Understand why analyze integration tests are failing. Example output if Java and gradle are not compatible: ``` ┌───────────────────────────────────────────────────────────────────┐ │ General Info │ │ [✓] App Name: espresso_example │ │ [✓] Supported Platforms: android │ │ [✓] Is Flutter Package: yes │ │ [✓] Uses Material Design: yes │ │ [✓] Is Plugin: no │ │ [✗] Java/Gradle/Android Gradle Plugin: │ │ │ │ Incompatible Java/Gradle versions. │ │ │ │ Java Version: 17.0.6, Gradle Version: 7.0.2 │ │ │ │ See the link below for more information. │ │ https://docs.gradle.org/current/userguide/compatibility.html#java │ │ │ └───────────────────────────────────────────────────────────────────┘ ``` Example output if Gradle and AGP are not compatible ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ General Info │ │ [✓] App Name: espresso_example │ │ [✓] Supported Platforms: android │ │ [✓] Is Flutter Package: yes │ │ [✓] Uses Material Design: yes │ │ [✓] Is Plugin: no │ │ [✗] Java/Gradle/Android Gradle Plugin: Incompatible Gradle/AGP versions. │ │ │ │ Gradle Version: 7.0.2, AGP Version: 7.4.2 │ │ │ │ Update gradle to at least "7.5". │ │ See the link below for more information: │ │ https://developer.android.com/studio/releases/gradle-plugin#updating-gradle │ │ │ │ Incompatible Java/Gradle versions. │ │ │ │ Java Version: 17.0.6, Gradle Version: 7.0.2 │ │ │ │ See the link below for more information: │ │ https://docs.gradle.org/current/userguide/compatibility.html#java │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` Example output if Java/Gradle/Agp are not compatible. ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ General Info │ │ [✓] App Name: espresso_example │ │ [✓] Supported Platforms: android │ │ [✓] Is Flutter Package: yes │ │ [✓] Uses Material Design: yes │ │ [✓] Is Plugin: no │ │ [✗] Java/Gradle/Android Gradle Plugin: Incompatible Gradle/AGP versions. │ │ │ │ Gradle Version: 7.0.2, AGP Version: 7.4.2 │ │ │ │ Update gradle to at least "7.5". │ │ See the link below for more information: │ │ https://developer.android.com/studio/releases/gradle-plugin#updating-gradle │ │ │ │ Incompatible Java/Gradle versions. │ │ │ │ Java Version: 17.0.6, Gradle Version: 7.0.2 │ │ │ │ See the link below for more information: │ │ https://docs.gradle.org/current/userguide/compatibility.html#java │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` Commit messages - Add function to gradle_utils.dart that gets the gradle version from wrapper or system and add a test for each situation - Add method to get agp version, add method to validate agp against gradle version, update documentation, add tests for agp validation. - Update dart doc for validateGradleAndAgp to describe where the info came from and corner case behavior, create function to validate java and gradle and hardcode return to false - Fill out and test java gradle compatibility function in gradle_utils - Hook up java gradle evaluateion to hasValidJavaGradleAgpVersions with hardcoded java version - Add java --version output parsing and tests - Add getJavaBinary test - Update comment in android_sdk for mac behavior with java_home -v ## 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]. - [ ] All existing and new tests are passing.
-
- 29 Jul, 2022 1 commit
-
-
Gary Qian authored
Reland "Upgrade Gradle and AGP versions to 7.5/7.2 and migrate benchmarks+examples" #108472 (#108510)
-
- 27 Jul, 2022 3 commits
-
-
Kate Lovett authored
Revert "Reland "Upgrade Gradle and AGP versions to 7.5/7.2 and migrate benchmarks+examples" #108355 (#108472)" (#108488) This reverts commit 1f8c490c.
-
Gary Qian authored
Reland "Upgrade Gradle and AGP versions to 7.5/7.2 and migrate benchmarks+examples" #108355 (#108472)
-
Zachary Anderson authored
Revert "Reland "Upgrade Gradle and AGP versions to 7.5/7.2 and migrate benchmarks+examples" (#108355)" (#108407) This reverts commit c4b3625d.
-
- 26 Jul, 2022 2 commits
-
-
Gary Qian authored
-
Zachary Anderson authored
This reverts commit ca6cecf0.
-
- 25 Jul, 2022 1 commit
-
-
Gary Qian authored
-
- 31 Mar, 2022 1 commit
-
-
Emmanuel Garcia authored
-
- 08 Oct, 2021 4 commits
-
-
Ian Hickson authored
-
Zachary Anderson authored
This reverts commit 5fd259be.
-
Ian Hickson authored
-
Zachary Anderson authored
* Revert "Mark last failing test after gradle update as flaky. (#91423)" This reverts commit 46a52d03. * Revert "fix android template for Gradle 7 (#91411)" This reverts commit 51d06d53. * Revert "Add explicit version for mac and windows openjdk. (#91408)" This reverts commit bf429f27. * Revert "Update the openjdk version used by linux android tests. (#91405)" This reverts commit 2144ab8b. * Revert "Migrate to Gradle 7.0.2 / AGP 7.0.1 (#90642)" This reverts commit b6459f9b.
-
- 07 Oct, 2021 1 commit
-
-
Taha Tesser authored
-
- 03 Jun, 2021 1 commit
-
-
Jenn Magder authored
-
- 27 Apr, 2021 1 commit
-
-
Ian Hickson authored
-
- 22 Apr, 2021 1 commit
-
-
Jenn Magder authored
-
- 17 Feb, 2021 1 commit
-
-
Jonah Williams authored
-
- 08 Feb, 2021 1 commit
-
-
Jonah Williams authored
This reverts commit 8b6baae4.
-
- 04 Feb, 2021 1 commit
-
-
Jonah Williams authored
Our current top crasher is an unclear error when ProcessManager fails to resolve an executable path. To fix this, we'd like to being adjusting the process resolution logic and adding more instrumentation to track failures. In order to begin the process, the ProcessManager has been folded back into the flutter tool
-
- 27 Jan, 2021 1 commit
-
-
Jonah Williams authored
* opt out the flutter tool * oops EOF * fix import * Update tool_backend.dart * Update daemon_client.dart * fix more
-
- 02 Dec, 2020 1 commit
-
-
Emmanuel Garcia authored
-
- 23 Nov, 2020 1 commit
-
-
Amir Hardon authored
This reverts commit 8e73bab9.
-
- 20 Nov, 2020 1 commit
-
-
Emmanuel Garcia authored
-
- 06 Nov, 2020 1 commit
-
-
Jonah Williams authored
-
- 30 Sep, 2020 1 commit
-
-
Jenn Magder authored
-
- 05 Mar, 2020 1 commit
-
-
Alexandre Ardhuin authored
-
- 11 Feb, 2020 1 commit
-
-
Alexandre Ardhuin authored
-
- 06 Jan, 2020 1 commit
-
-
Jonah Williams authored
-
- 18 Dec, 2019 1 commit
-
-
Lau Ching Jun authored
-
- 12 Dec, 2019 1 commit
-
-
Emmanuel Garcia authored
-
- 27 Nov, 2019 1 commit
-
-
Ian Hickson authored
* Update project.pbxproj files to say Flutter rather than Chromium Also, the templates now have an empty organization so that we don't cause people to give their apps a Flutter copyright. * Update the copyright notice checker to require a standard notice on all files * Update copyrights on Dart files. (This was a mechanical commit.) * Fix weird license headers on Dart files that deviate from our conventions; relicense Shrine. Some were already marked "The Flutter Authors", not clear why. Their dates have been normalized. Some were missing the blank line after the license. Some were randomly different in trivial ways for no apparent reason (e.g. missing the trailing period). * Clean up the copyrights in non-Dart files. (Manual edits.) Also, make sure templates don't have copyrights. * Fix some more ORGANIZATIONNAMEs
-
- 31 Oct, 2019 1 commit
-
-
Emmanuel Garcia authored
-