- 28 Sep, 2023 1 commit
-
-
Yegor authored
This implements https://github.com/flutter/flutter/issues/132654#issuecomment-1738221257, namely: Make `Chromium.close` more robust: * Send `SIGTERM` and wait up to 5 seconds, if the process exited, great! Return from the function. * If the process has not exited, then send a `SIGKILL`, which is a much firmer way to exit a process. Same as before, wait up to 5 seconds, if the process exited, great! Return from the function. * If it still hasn't exited then give up trying to exit Chromium, just print a warning to the console and return from the function. Bonus: a few nullability fixes and extra `-v` logging. Fixes https://github.com/flutter/flutter/issues/132654
-
- 12 Sep, 2023 1 commit
-
-
Michael Goderbauer authored
New feature in upcoming Dart 3.2. See https://github.com/dart-lang/language/issues/2020. Feature is enabled by bumping the min SDK version to 3.2. Part of https://github.com/flutter/flutter/issues/134476.
-
- 13 Jun, 2023 1 commit
-
-
- 01 May, 2023 1 commit
-
-
Andrew Kolos authored
Fixes #125782. Would be nice to figure out a way to put this under test.
-
- 23 Jan, 2023 1 commit
-
-
Michael Goderbauer authored
* dart fix --apply * manual fixes * fix after merge conflicts * review
-
- 10 Jan, 2023 1 commit
-
-
Sigurd Meldgaard authored
* Align `flutter pub get/upgrade/add/remove/downgrade` * Add final . to command description * Remove trailing whitespace * Don't print message that command is being run * Update expectations * Use relative path * Remove duplicated line * Improve function dartdoc
-
- 06 Dec, 2022 1 commit
-
-
file:///Jackson Gardner authored
* Use file:/// style uris when passing platform to the compiler. * License header. * Use BufferLogger. * Don't unadvertently convert strings to regexes for matching purposes. * Fix formatting. * More formatting.
-
- 18 Jul, 2022 1 commit
-
-
Alexandre Ardhuin authored
-
- 24 May, 2022 1 commit
-
-
Chris Bracken authored
Adds a bit more clarifying documentation to the implementation of the outputFollowsExit case, and adds tests that verify the behaviour of stderr, stdout of processes launched via FakeProcessManager. Specifically: * Verifies that stderr, stdout are not emitted immediately after process exit if outputFollowsExit is true. They must be emitted at least one turn through the event loop later. * Verifies that ProcessResult.stderr, stdout have the type documented according to the encoding passted to Process.run/runSync: * List<int> if null is passed as the encoding. * String (in the default system encoding) if no encoding is specified. * String (in the specified encoding) if an encoding is specified. This is additional testing relating to refactoring landed in: https://github.com/flutter/flutter/pull/103947 Issue: https://github.com/flutter/flutter/issues/102451
-
- 17 May, 2022 2 commits
-
-
Chris Bracken authored
Because this class has some subtle behaviour with regards to control of exit timing and when and how it streams data to stderr and stdout, it's worth adding unit tests for this class directly, as well as (in a followup patch) for FakeProcessManager. This is additional testing relating to refactoring landed in: https://github.com/flutter/flutter/pull/103947 Issue: https://github.com/flutter/flutter/issues/102451
-
Chris Bracken authored
`FakeProcessManager` is a test-oriented implementation of `ProcessManager` that simulates launching processes and returning `ProcessResult` objects whose `exitCode`, `stdout`, `stderr` can be used to write platform-portable, hermetic tests that don't rely on actually launching processes from executables on disk. Its `run` and `runSync` methods provide asynchronous and synchronous variants of this functionality. Previously, the behaviour of `run` and `runSync` were inconsistent with regards to the treatment of the `stdoutEncoding` (similarly, `stderrEncoding`) parameters: `run`: * if the encoding was null, `ProcessResult.stdout` was returned as a String in UTF-8 encoding. This was incorrect. The behaviour as specified in `ProcessResult.stdout` is that in this case, a raw `List<int>` should be returned. * If the encoding was unspecified, `ProcessResult.stdout` was returned as a `String` in the `io.systemEncoding` encoding. This was correct. * If the encoding was non-null, `ProcessResult.stdout` was returned as a `String` in the specified encoding. This was correct. `runSync`: * if the encoding was null, `ProcessResult.stdout` was returned as a `List<int>` in UTF-8 encoding. This was incorrect. The behaviour as specified in `ProcessResult.stdout` is that in this case, a raw `List<int>` should be returned. * If the encoding was unspecified, `ProcessResult.stdout` was returned as `List<int>` in UTF-8 encoding. This was incorrect. The behaviour as specified in `ProcessResult.stdout` is that in this case, a String a `String` in the `io.systemEncoding` encoding should be returned. * if the encoding was non-null, `ProcessResult.stdout` was returned as a `String` in unknown (but probably UTF-8) encoding. This was incorrect. The behaviour as specified in `ProcessResult.stdout` is that in this case, a `String` in the specified encoding should be returned. `_FakeProcess`, from which we obtain the fake stdout and stderr values now holds these fields as raw `List<int>` of bytes rather than as `String`s. It is up to the user to supply values that can be decoded with the encoding passed to `run`/`runAsync`. `run` and `runAsync` have been updated to set stdout (likewise, stderr) as specified in the `ProcessResult` documentation. This is pre-factoring for #102451, in which the tool throws an exception when processing the JSON output from stdout of the `vswhere.exe` tool, whose output was found to include the `U+FFFD` Unicode replacement character during UTF-8 decoding, which triggers a `toolExit` exception when decoded using our [Utf8Decoder][decoder] configured with `reportErrors` = true. Because `FakeProcessManager.runAsync` did not previously invoke `utf8.decode` on its output (behaviour which differs from the non-fake implementation), it was impossible to write tests to verify the fix. Ref: https://api.flutter.dev/flutter/dart-io/ProcessResult/stdout.html Issue: https://github.com/flutter/flutter/issues/102451 [decoder]: https://github.com/flutter/flutter/blob/fd312f1ccff909fde28d2247a489bf210bbc6c48/packages/flutter_tools/lib/src/convert.dart#L51-L60
-
- 02 Feb, 2022 1 commit
-
-
Lau Ching Jun authored
-
- 01 Dec, 2021 1 commit
-
-
Chris Wong authored
-
- 08 Oct, 2021 3 commits
-
-
Ian Hickson authored
-
Zachary Anderson authored
This reverts commit 5fd259be.
-
Ian Hickson authored
-
- 12 Aug, 2021 1 commit
-
-
Zachary Anderson authored
-
- 13 Apr, 2021 1 commit
-
-
Jenn Magder authored
-
- 08 Apr, 2021 1 commit
-
-
Jenn Magder authored
-
- 13 Mar, 2021 1 commit
-
-
Jenn Magder authored
-
- 09 Mar, 2021 1 commit
-
-
Jonah Williams authored
-
- 09 Feb, 2021 1 commit
-
-
Jenn Magder 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
-
- 29 Jan, 2021 1 commit
-
-
Jenn Magder authored
-
- 27 Jan, 2021 2 commits
-
-
Jonah Williams authored
* opt out the flutter tool * oops EOF * fix import * Update tool_backend.dart * Update daemon_client.dart * fix more
-
Alexandre Ardhuin authored
-
- 14 Dec, 2020 1 commit
-
-
Kenzie Schmoll authored
* Launch DevTools from pub instead of devtools_server
-
- 03 Oct, 2020 1 commit
-
-
Jonah Williams authored
Refactors the desktop devices and workflow to remove unnecessary usage of global variables. This should make it easier to test and continue enhancing the desktop functionality of the tooling #47161
-
- 13 Aug, 2020 1 commit
-
-
Jonah Williams authored
Remove globals and testbed to simplify test cases, using the existing environment configuration. This is some pre-factoring work to make landing #63610 easier
-
- 18 Jun, 2020 1 commit
-
-
stuartmorgan authored
On Windows, Process.run assumes the output uses the system codepage by default. This allows specifying it in our wrapper, and sets the encoding for vswhere to UTF-8 since we're passing a flag that forces it to use UTF-8 output. Fixes #53515
-
- 13 Apr, 2020 1 commit
-
-
Jonah Williams authored
-
- 19 Mar, 2020 1 commit
-
-
Jonah Williams authored
-
- 18 Mar, 2020 1 commit
-
-
Jonah Williams authored
[flutter_tools] refactor the IOSDevicePortForwarder and move tests out of devices_test.dart (#52772) Updates the IOSDevicePortForwarder to no longer depend on context, or on an IOSDevice instance. Instead, it receives all necessary configuration through the constructor. Moves the IOSDevicePortForwarder to a separate file.
-
- 10 Mar, 2020 1 commit
-
-
Jonah Williams authored
Previously the AdbLogReader did async setup in the StreamController.onListen callback, specifically it would query the api version and start the adb process. If the log subscription was cancelled before this setup completed, then the log output could (haven't confirmed) get added to a closed controller, causing the above state error.
-
- 06 Mar, 2020 1 commit
-
-
Jonah Williams authored
-
- 27 Feb, 2020 1 commit
-
-
Jonah Williams authored
-
- 20 Feb, 2020 1 commit
-
-
Jonah Williams authored
-
- 07 Jan, 2020 1 commit
-
-
Alexandre Ardhuin authored
-
- 06 Dec, 2019 1 commit
-
-
Jonah Williams authored
-