1. 03 May, 2023 4 commits
  2. 02 May, 2023 7 commits
  3. 01 May, 2023 6 commits
  4. 29 Apr, 2023 2 commits
  5. 28 Apr, 2023 11 commits
  6. 27 Apr, 2023 8 commits
    • Jenn Magder's avatar
      Increase Xcode minimum version to 14 (#125639) · 6b73885e
      Jenn Magder authored
      Looks like CocoaPods 1.12.1 is incompatible with < Xcode 14 due to https://github.com/CocoaPods/CocoaPods/pull/11828 (see https://github.com/flutter/flutter/issues/123890 for context).
      
      Bump the minimum Xcode version allowed by tooling to 14, released September 2022.
      
      ```
      [!] Xcode - develop for iOS and macOS (Xcode 13.4)
          ✗ Flutter requires Xcode 14 or higher.
            Download the latest version or update via the Mac App Store.
      ```
      
      Fixes https://github.com/flutter/flutter/issues/125286.
      Previous bump at #97746.
      6b73885e
    • gmackall's avatar
      Add migrator to upgrade gradle version when conflict with Android Studio... · eba2a520
      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
      eba2a520
    • Christopher Fujino's avatar
      [flutter_tools] more debugging for timeouts in break_on_framework_exceptions test (#125584) · 4ff505c8
      Christopher Fujino authored
      Better debugging to investigate: https://github.com/flutter/flutter/issues/125241
      
      When the `test/integration.shard/break_on_framework_exceptions_test.dart` test times out, log out verbose logging to give clues as to why it did not complete.
      
      From one local run it looks like the test runner is failing to load a test file (when I checked the path locally, the file was there, and re-running the `flutter test ...` invocation succeeded--in that the app threw an exception):
      
      ```
      14:12 +26 -1: breaks when StatefulWidget.build throws [E]
        Timed out launching `flutter test`
        package:matcher                                                        fail
        test/integration.shard/break_on_framework_exceptions_test.dart 623:11  _timeoutAfter.<fn>
      
      250s            Spawning flutter [test, --disable-service-auth-codes, --machine, --start-paused, test/test.dart] in /tmp/flutter_break_on_framework_exceptions.GUJDAZ
      
      251s <=stdout=  {"protocolVersion":"0.1.1","runnerVersion":null,"pid":25763,"type":"start","time":0}
      
      <=stdout=  {"suite":{"id":0,"platform":"vm","path":"/tmp/flutter_break_on_framework_exceptions.GUJDAZ/test/test.dart"},"type":"suite","time":0}
      
      <=stdout=  {"test":{"id":1,"name":"loading /tmp/flutter_break_on_framework_exceptions.GUJDAZ/test/test.dart","suiteID":0,"groupIDs":[],"metadata":{"skip":false,"skipReason":null},"line":null,"column":null,"url":null},"type":"testStart","time":0}
      
      258s <=stdout=  {"testID":1,"error":"Exception: the Dart compiler exited unexpectedly.","stackTrace":"package:flutter_tools/src/base/common.dart 10:3  throwToolExit\npackage:flutter_tools/src/compile.dart 813:13    DefaultResidentCompiler._compile.<fn>\ndart:async/zone.dart 1391:47                     _rootRun\ndart:async/zone.dart 1301:19                     _CustomZone.run\ndart:async/zone.dart 1209:7                      _CustomZone.runGuarded\ndart:async/stream_impl.dart 392:13               _BufferingStreamSubscription._sendDone.sendDone\ndart:async/stream_impl.dart 402:7                _BufferingStreamSubscription._sendDone\ndart:async/stream_impl.dart 291:7                _BufferingStreamSubscription._close\ndart:async/stream_transformers.dart 87:11        _SinkTransformerStreamSubscription._close\ndart:async/stream_transformers.dart 21:11        _EventSinkWrapper.close\ndart:convert/string_conversion.dart 241:11       _StringAdapterSink.close\ndart:convert/line_splitter.dart 141:11           _LineSplitterSink.close\ndart:async/stream_transformers.dart 132:24       _SinkTransformerStreamSubscription._handleDone\ndart:async/zone.dart 1391:47                     _rootRun\ndart:async/zone.dart 1301:19                     _CustomZone.run\ndart:async/zone.dart 1209:7                      _CustomZone.runGuarded\ndart:async/stream_impl.dart 392:13               _BufferingStreamSubscription._sendDone.sendDone\ndart:async/stream_impl.dart 402:7                _BufferingStreamSubscription._sendDone\ndart:async/stream_impl.dart 291:7                _BufferingStreamSubscription._close\ndart:async/stream_transformers.dart 87:11        _SinkTransformerStreamSubscription._close\ndart:async/stream_transformers.dart 21:11        _EventSinkWrapper.close\ndart:convert/string_conversion.dart 241:11       _StringAdapterSink.close\ndart:convert/string_conversion.dart 295:20       _Utf8ConversionSink.close\ndart:convert/chunked_conversion.dart 78:18       _ConverterStreamEventSink.close\ndart:async/stream_transformers.dart 132:24       _SinkTransformerStreamSubscription._handleDone\ndart:async/zone.dart 1391:47                     _rootRun\ndart:async/zone.dart 1301:19                     _CustomZone.run\ndart:async/zone.dart 1209:7                      _CustomZone.runGuarded\ndart:async/stream_impl.dart 392:13               _BufferingStreamSubscription._sendDone.sendDone\ndart:async/stream_impl.dart 402:7                _BufferingStreamSubscription._sendDone\ndart:async/stream_impl.dart...
      
      <=stdout=  {"testID":1,"error":"Failed to load \"/tmp/flutter_break_on_framework_exceptions.GUJDAZ/test/test.dart\": Compilation failed for testPath=/tmp/flutter_break_on_framework_exceptions.GUJDAZ/test/test.dart","stackTrace":"","isFailure":false,"type":"error","time":7518}
      
      <=stdout=  {"testID":1,"result":"error","skipped":false,"hidden":false,"type":"testDone","time":7521}
      
      <=stdout=  {"count":1,"time":7526,"type":"allSuites"}
      
      <=stdout=  {"success":false,"type":"done","time":7529}
      
      259s            Process exited (1)
      
      371s            Expecting test.startedProcess event
      [+    95] <=stdout=  {"suite":{"id":0,"platform":"vm","path":"/tmp/flutter_break_on_framework_exceptions.GUJDAZ/test/test.dart"},"type":"suite","time":0}
      [+    95] <=stdout=  {"test":{"id":1,"name":"loading /tmp/flutter_break_on_framework_exceptions.GUJDAZ/test/test.dart","suiteID":0,"groupIDs":[],"metadata":{"skip":false,"skipReason":null},"line":null,"column":null,"url":null},"type":"testStart","time":0}
      [+  7600] <=stdout=  {"testID":1,"error":"Exception: the Dart compiler exited unexpectedly.","stackTrace":"package:flutter_tools/src/base/common.dart 10:3  throwToolExit\npackage:flutter_tools/src/compile.dart 813:13    DefaultResidentCompiler._compile.<fn>\ndart:async/zone.dart 1391:47                     _rootRun\ndart:async/zone.dart 1301:19                     _CustomZone.run\ndart:async/zone.dart 1209:7                      _CustomZone.runGuarded\ndart:async/stream_impl.dart 392:13               _BufferingStreamSubscription._sendDone.sendDone\ndart:async/stream_impl.dart 402:7                _BufferingStreamSubscription._sendDone\ndart:async/stream_impl.dart 291:7                _BufferingStreamSubscription._close\ndart:async/stream_transformers.dart 87:11        _SinkTransformerStreamSubscription._close\ndart:async/stream_transformers.dart 21:11        _EventSinkWrapper.close\ndart:convert/string_conversion.dart 241:11       _StringAdapterSink.close\ndart:convert/line_splitter.dart 141:11           _LineSplitterSink.close\ndart:async/stream_transformers.dart 132:24       _SinkTransformerStreamSubscription._handleDone\ndart:async/zone.dart 1391:47                     _rootRun\ndart:async/zone.dart 1301:19                     _CustomZone.run\ndart:async/zone.dart 1209:7                      _CustomZone.runGuarded\ndart:async/stream_impl.dart 392:13               _BufferingStreamSubscription._sendDone.sendDone\ndart:async/stream_impl.dart 402:7                _BufferingStreamSubscription._sendDone\ndart:async/stream_impl.dart 291:7                _BufferingStreamSubscription._close\ndart:async/stream_transformers.dart 87:11        _SinkTransformerStreamSubscription._close\ndart:async/stream_transformers.dart 21:11        _EventSinkWrapper.close\ndart:convert/string_conversion.dart 241:11       _StringAdapterSink.close\ndart:convert/string_conversion.dart 295:20       _Utf8ConversionSink.close\ndart:convert/chunked_conversion.dart 78:18       _ConverterStreamEventSink.close\ndart:async/stream_transformers.dart 132:24...
      
      Expecting test.startedProcess event is taking longer than usual...
      ```
      4ff505c8
    • Dan Field's avatar
      Bump the default minSdkVersion to 19 (#125515) · fc209836
      Dan Field authored
      See https://docs.flutter.dev/reference/supported-platforms
      
      I don't expect this to break anything, but if it does we can revert and figure out what else needs to happen first.
      
      Without this change, engine changes upstream will get flagged in default flutter created apps.
      fc209836
    • Taha Tesser's avatar
    • fzyzcjy's avatar
    • Pierre-Louis's avatar
      Provide default constraints for M3 bottom sheets (#120065) · 1f602cb6
      Pierre-Louis authored
      This PR constrains M3 bottom sheets to 640dp max width by default.
      `constraints` can be used to provide different `minWidth` and
      `maxWidth`.
      
      This is not a breaking change per the breaking change policy.
      
      Part of https://github.com/flutter/flutter/issues/118619
      Part of https://github.com/flutter/flutter/issues/111448
      
      ## 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.
      
      If you need help, consider asking for advice on the #hackers-new channel
      on [Discord].
      
      <!-- Links -->
      [Contributor Guide]:
      https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
      [Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
      [test-exempt]:
      https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
      [Flutter Style Guide]:
      https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
      [Features we expect every widget to implement]:
      https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo#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/wiki/Tree-hygiene#handling-breaking-changes
      [Discord]: https://github.com/flutter/flutter/wiki/Chat
      1f602cb6
    • Kevin Moore's avatar
      tools: Drop unused function (#125590) · 9565892a
      Kevin Moore authored
      Internal usage dropped in http://cl/527348621
      9565892a
  7. 26 Apr, 2023 1 commit
    • Tae Hyung Kim's avatar
      Refactor "gen-l10n" command to use same code path when "l10n.yaml" is present... · 5c44b1df
      Tae Hyung Kim authored
      Refactor "gen-l10n" command to use same code path when "l10n.yaml" is present or not present (#125429)
      
      I think this is a long needed change to the `gen-l10n` command.
      Essentially, the arguments to `flutter gen-l10n` can be provided by two
      different methods: via command line arguments or via the `l10n.yaml`
      file. The existence of a `l10n.yaml` file causes the latter approach to
      take precedence.
      
      However, currently, there's several differences in how the two
      approaches are handled, and most of the default arguments are all over
      the place, causing unexpected issues such as #120457 or #120023.
      
      This PR refactors the command so that
      * `LocalizationOptions` are more consistent with the actual argument
      names/yaml options.
      * All default values are determined in `LocalizationOptions`'s
      constructor (or in `argParser.addOption(...)` in the case a boolean
      value needs to be explicitly true).
      * New `parseLocalizationsOptionsFromCommand` function to parse
      arguments.
      * Parse `LocalizationOptions` at the beginning of `runCommand()` and
      pass it to `generateLocalizations`.
      
      Fixes #120023.
      5c44b1df
  8. 25 Apr, 2023 1 commit
    • Tae Hyung Kim's avatar
      Handle dollar signs properly when generating localizations (#125514) · 8be335f2
      Tae Hyung Kim authored
      Currently, the code doesn't properly handle strings which contain dollar signs. The return expression for the generated localization function is computed by `generateReturnExpr` which concatenates several strings, which are either interpolated placeholders, interpolated function calls, or normal strings, but we didn't properly escape dollar signs before sending normal strings to `generateReturnExpr`.
      
      Fixes #125461.
      8be335f2