1. 11 Feb, 2021 2 commits
  2. 27 Jan, 2021 1 commit
  3. 22 Jan, 2021 2 commits
  4. 20 Nov, 2020 1 commit
  5. 29 Oct, 2020 1 commit
  6. 09 Oct, 2020 1 commit
    • James D. Lin's avatar
      [flutter tools] Add a DelegatingLogger class (#67581) · e4206ac5
      James D. Lin authored
      [flutter tools] Add a DelegatingLogger class
      
      Move most of `DelegateLogger` `from test/src/testbed.dart` to
      `lib/src/base/logger.dart` to better formalize the common practice of
      chaining `Logger`s together.  I renamed the class since it isn't
      itself the delegate and to better match the `Delegating...` classes
      from `package:collection`.
      
      Additionally, add a freestanding `asLogger<T>` function to "cast" a
      `Logger` into a matching delegate if possible.  This will allow
      `Logger` chains to be ordered a *bit* more freely (e.g.
      `NotifyingLogger` and `AppRunLogger` will no longer required to be
      at the end of the chain, an unwritten rule that has led to breakage in
      google3).  Chain order still matters since lack of virtual dispatch
      means that parent `Logger`s can never invoke child methods, however.
      
      I made `asLogger<T>` a freestanding function because I didn't want to
      make it part of the `Logger` interface (and I thought that making it
      an extension method might be weird).
      
      Bonus cleanup:
      There no longer appears to be a way to construct an `AppRunLogger`
      with a null parent, so remove all of code paths for that case and
      make the `parent` construction parameter required.
      e4206ac5
  7. 30 Sep, 2020 1 commit
  8. 21 Sep, 2020 1 commit
  9. 17 Sep, 2020 1 commit
    • Jonah Williams's avatar
      [flutter_tools] use flutter tool handler for dwds resources and precache tool... · 3e838da9
      Jonah Williams authored
      [flutter_tools] use flutter tool handler for dwds resources and precache tool pub dependencies (#65814)
      
      If the tool is downloaded from a precompiled snapshot, or if the backing source files in the pub cache are deleted, the dwds debugging functionality will break as the client.js file cannot be located. Instead use the PackageConfig to verify that package location, downloading if it is missing.
      
      Override the dwds middleware to avoid Isolate.resolvePackageUri
      
      Fixes #53644
      Fixes #65475
      3e838da9
  10. 20 Jul, 2020 1 commit
    • Jonah Williams's avatar
      [flutter_tools] Add plumbing for widget cache (#61766) · 07caa0fb
      Jonah Williams authored
      To support #61407 , the tool needs to check if a single widget reload is feasible, and then conditionally perform a fast reassemble.
      
      To accomplish this, the FlutterDevice class will have a WidgetCache injected. This will eventually contain the logic for parsing the invalidated dart script. Concurrent with the devFS update, the widget cache will be updated/checked if a single widget reload is feasible. If so, an expression evaluation with the target type is performed and the success is communicated through the devFS result. An integration test which demonstrates that this works is already present in https://github.com/flutter/flutter/blob/master/packages/flutter_tools/test/integration.shard/hot_reload_test.dart#L86
      
      Finally, when actually performing the reassemble the tool simply checks if this flag has been set and calls the alternative reassemble method.
      
      Cleanups:
      
      Remove modules, as this is unused now.
      07caa0fb
  11. 15 Jul, 2020 1 commit
    • Jonah Williams's avatar
      [flutter_tools] generate a synthetic flutter_gen package on pub get (#61261) · d8b6fa15
      Jonah Williams authored
      Allow configuring the flutter_manifest to support a synthetic package, this is done through flutter: generate: true.
      
      When running pub get, insert a flutter_gen entry into the packages if it does not already exist. This points to .dart_tool/flutter_gen, which can be updated to contain the generated intl sources (But doesn't currently)
      
      Adds an integration test that verifies this code can be run and imported when enabled.
      
      Part of #60914
      d8b6fa15
  12. 13 Jul, 2020 1 commit
  13. 10 Jul, 2020 1 commit
  14. 30 Jun, 2020 2 commits
    • Jonah Williams's avatar
      [flutter_tools] support sound null-safety mode for the web (#60570) · 7ca324ac
      Jonah Williams authored
      In web debug mode, infer sound null safety by default. When sound null safety is enabled, provide a separate dill and precompiled Dart SDK. Release builds do not need this setting since we run dart2js from source.
      
      Fixes #59873
      7ca324ac
    • Jonah Williams's avatar
      [flutter_tools] ensure flutter daemon can exit correctly when app fails to start (#60615) · 21881961
      Jonah Williams authored
      The flutter daemon unconditionally waits for the appFinished signal, even if startup failed. Ensure this future is correctly completed if there is a failure in ResidentRunner.run and not just ResidentRunner.attach. Adds regression tests for run release, debug, debug web, and release web. Adds missing try catch in cold runner startup.
      
      Manually tested with release/debug on Android and release/debug on web.
      
      Fixes #60613
      21881961
  15. 26 Jun, 2020 1 commit
  16. 25 Jun, 2020 1 commit
    • Jonah Williams's avatar
      [flutter_tools] remove most use of global packages path (#60231) · 82a6f9bf
      Jonah Williams authored
      The global packages path could cause tests to fail when it would be overriden to unexpected (in test setup) values. Remove most usage and make it a configuration on buildInfo, along with most other build information. Cleanup the asset builder to require the .packages path and the resident runners to no longer require it, since they already have the information in build_info.
      
      It needs to stick around for the fuchsia deps we do not control.
      
      Filled #60232 for remaining work.
      82a6f9bf
  17. 24 Jun, 2020 1 commit
  18. 18 Jun, 2020 1 commit
    • Jonah Williams's avatar
      [flutter_tools] add toggle `b` and service extension to change platform brightness (#59571) · e1f4cfb4
      Jonah Williams authored
      A frequent request from the last Flutter developer survey was for an easier method of testing light/dark mode changes. Currently, a user needs to manually change the theme settings or adjust phone settings to see the difference. Instead we should add a toggle from the CLI, and eventually devtools/Intellij/Vscode that allows developers to override the current setting.
      
      Fixes #59495
      
      Adds flutter.ext.brightnessOverride service protocol which either queries the current platform brightness, or overrides it to a new value. This accepts either Brightness.light or Brightness.dark as a value.
      
      Adds a CLI toggle b which allows the setting to be toggled manually.
      
      Requires an update to the MediaQuery, to conditionally use a debug override when not in release mode
      e1f4cfb4
  19. 09 Jun, 2020 1 commit
  20. 08 Jun, 2020 3 commits
  21. 06 Jun, 2020 2 commits
  22. 04 Jun, 2020 1 commit
  23. 02 Jun, 2020 1 commit
  24. 01 Jun, 2020 1 commit
  25. 08 May, 2020 1 commit
  26. 06 May, 2020 1 commit
  27. 05 May, 2020 3 commits
  28. 01 May, 2020 1 commit
  29. 24 Apr, 2020 1 commit
  30. 22 Apr, 2020 1 commit
  31. 20 Apr, 2020 2 commits