Skip to content

Conversation

@chingjun
Copy link
Contributor

Retry binding on ipv6 if binding on ipv4 failed.

Pre-launch Checklist

If you need help, consider asking for advice on the #hackers-new channel on Discord.

@flutter-dashboard
Copy link

It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption to this rule, contact "@test-exemption-reviewer" in the #hackers channel in Chat (don't just cc them here, they won't see it! Use Discord!).

If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix?

Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing.

@github-actions github-actions bot added the tool Affects the "flutter" command-line tool. See also t: labels. label Feb 29, 2024
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. can you add a test for this? I would:

  1. Mark _DaemonServer visibleForTesting
  2. Rather than directly calling ServerSocket.bind(), instead add a @visibleForTesting bind property on the class, that defaults to ServerSocket.bind()
  3. Add a test to https://github.com/flutter/flutter/blob/master/packages/flutter_tools/test/general.shard/daemon_test.dart injecting a stateful bind callback that throw a SocketException if passed the ipv4 loopback, and then respond with a FakeServerSocket if passed the ipv6 loopback.
  4. Have the test assert that we try first with the ipv4 loopback, then fall back to ipv6 after the exception.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

I've added the test in a new file test/general.shard/commands/daemon_test.dart instead, because test/general.shard/commands/daemon_test.dart is tests for lib/src/daemon.dart

PTAL, thanks!

Copy link
Contributor

@christopherfujino christopherfujino left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

Retry binding on ipv6 if binding on ipv4 failed.
@chingjun chingjun added the autosubmit Merge PR when tree becomes green via auto submit App label Feb 29, 2024
@auto-submit auto-submit bot merged commit f3ce9d2 into flutter:master Feb 29, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Mar 1, 2024
auto-submit bot pushed a commit to flutter/packages that referenced this pull request Mar 1, 2024
Roll Flutter from e92bca3 to ba719bc (37 revisions)

flutter/flutter@e92bca3...ba719bc

2024-03-01 [email protected] Fix `CalendarDatePicker` day selection shape and overlay (flutter/flutter#144317)
2024-03-01 [email protected] Fix chips use square delete button `InkWell` shape instead of circular (flutter/flutter#144319)
2024-03-01 [email protected] InputDecorator M3 tests migration - Step4 - Hint tests (flutter/flutter#144169)
2024-03-01 [email protected] Roll Flutter Engine from f0037d4fbd67 to 2a5a9a6dead0 (1 revision) (flutter/flutter#144468)
2024-03-01 [email protected] Roll Flutter Engine from 16e04d264145 to f0037d4fbd67 (1 revision) (flutter/flutter#144464)
2024-03-01 [email protected] Roll Flutter Engine from 1dff89788b18 to 16e04d264145 (1 revision) (flutter/flutter#144459)
2024-03-01 [email protected] Horizontally expand text selection toolbar buttons in overflow menu (flutter/flutter#144391)
2024-03-01 [email protected] Roll Flutter Engine from f68cc57cbe12 to 1dff89788b18 (2 revisions) (flutter/flutter#144457)
2024-03-01 [email protected] Roll Flutter Engine from 76140bc9cec9 to f68cc57cbe12 (2 revisions) (flutter/flutter#144455)
2024-03-01 [email protected] Roll Flutter Engine from f300ced56a4e to 76140bc9cec9 (1 revision) (flutter/flutter#144453)
2024-03-01 [email protected] Roll Flutter Engine from 34cf95c7bd82 to f300ced56a4e (1 revision) (flutter/flutter#144452)
2024-03-01 [email protected] Roll Flutter Engine from 0db468f7bae5 to 34cf95c7bd82 (1 revision) (flutter/flutter#144450)
2024-03-01 [email protected] Roll Flutter Engine from 6f8044436eb3 to 0db468f7bae5 (3 revisions) (flutter/flutter#144448)
2024-03-01 [email protected] Remove master from API docs (flutter/flutter#144425)
2024-03-01 [email protected] Enable missing-code-block-language (flutter/flutter#144443)
2024-03-01 [email protected] Roll Flutter Engine from 7e8fefe4a084 to 6f8044436eb3 (5 revisions) (flutter/flutter#144436)
2024-02-29 49699333+dependabot[bot]@users.noreply.github.com Bump github/codeql-action from 3.24.5 to 3.24.6 (flutter/flutter#144424)
2024-02-29 [email protected] Reland [a11y] Fix date picker cannot focus on the edit field  (flutter/flutter#144198)
2024-02-29 [email protected] Reland "Use dartpad's main channel for master/main docs (#144329)" (flutter/flutter#144431)
2024-02-29 [email protected] Make daemon server work on ipv6-only machines. (flutter/flutter#144359)
2024-02-29 [email protected] Remove deprecated `backgroundColor` from `ThemeData` (flutter/flutter#144079)
2024-02-29 [email protected] Add stateful reordering test for TwoDimensionalViewport (flutter/flutter#142375)
2024-02-29 [email protected] Always use local CanvasKit/Skwasm in benchmarks for better hermeticity. (flutter/flutter#144423)
2024-02-29 [email protected] Roll Flutter Engine from bb6c6a01000f to 7e8fefe4a084 (2 revisions) (flutter/flutter#144419)
2024-02-29 [email protected] Fix a crash in remote device daemon. (flutter/flutter#144358)
2024-02-29 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Use dartpad's main channel for master/main docs (#144329)" (flutter/flutter#144429)
2024-02-29 [email protected] Remove `toggleableActiveColor` from `ThemeData` (flutter/flutter#144178)
2024-02-29 [email protected] Add `FocusNode.focusabilityListenable` (flutter/flutter#144280)
2024-02-29 [email protected] Roll Flutter Engine from 1f24eaa4979d to bb6c6a01000f (2 revisions) (flutter/flutter#144416)
2024-02-29 [email protected] [devicelab] fix motog4 tests and update comment. (flutter/flutter#144410)
2024-02-29 [email protected] Bump dartdocs to 8.0.6 (flutter/flutter#144413)
2024-02-29 [email protected] Use dartpad's main channel for master/main docs (flutter/flutter#144329)
2024-02-29 [email protected] Roll Flutter Engine from 7b3ef43fa7e6 to 1f24eaa4979d (2 revisions) (flutter/flutter#144405)
2024-02-29 [email protected] Roll Flutter Engine from 7dd404724c50 to 7b3ef43fa7e6 (1 revision) (flutter/flutter#144399)
2024-02-29 [email protected] Roll Flutter Engine from 8179b0ed778e to 7dd404724c50 (3 revisions) (flutter/flutter#144395)
2024-02-29 [email protected] Roll Packages from 353086c to 6d02f03 (14 revisions) (flutter/flutter#144393)
2024-02-29 [email protected] Roll Flutter Engine from d068d980f952 to 8179b0ed778e (1 revision) (flutter/flutter#144378)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages
Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose

...
LouiseHsu pushed a commit to LouiseHsu/packages that referenced this pull request Mar 7, 2024
Roll Flutter from e92bca3 to ba719bc (37 revisions)

flutter/flutter@e92bca3...ba719bc

2024-03-01 [email protected] Fix `CalendarDatePicker` day selection shape and overlay (flutter/flutter#144317)
2024-03-01 [email protected] Fix chips use square delete button `InkWell` shape instead of circular (flutter/flutter#144319)
2024-03-01 [email protected] InputDecorator M3 tests migration - Step4 - Hint tests (flutter/flutter#144169)
2024-03-01 [email protected] Roll Flutter Engine from f0037d4fbd67 to 2a5a9a6dead0 (1 revision) (flutter/flutter#144468)
2024-03-01 [email protected] Roll Flutter Engine from 16e04d264145 to f0037d4fbd67 (1 revision) (flutter/flutter#144464)
2024-03-01 [email protected] Roll Flutter Engine from 1dff89788b18 to 16e04d264145 (1 revision) (flutter/flutter#144459)
2024-03-01 [email protected] Horizontally expand text selection toolbar buttons in overflow menu (flutter/flutter#144391)
2024-03-01 [email protected] Roll Flutter Engine from f68cc57cbe12 to 1dff89788b18 (2 revisions) (flutter/flutter#144457)
2024-03-01 [email protected] Roll Flutter Engine from 76140bc9cec9 to f68cc57cbe12 (2 revisions) (flutter/flutter#144455)
2024-03-01 [email protected] Roll Flutter Engine from f300ced56a4e to 76140bc9cec9 (1 revision) (flutter/flutter#144453)
2024-03-01 [email protected] Roll Flutter Engine from 34cf95c7bd82 to f300ced56a4e (1 revision) (flutter/flutter#144452)
2024-03-01 [email protected] Roll Flutter Engine from 0db468f7bae5 to 34cf95c7bd82 (1 revision) (flutter/flutter#144450)
2024-03-01 [email protected] Roll Flutter Engine from 6f8044436eb3 to 0db468f7bae5 (3 revisions) (flutter/flutter#144448)
2024-03-01 [email protected] Remove master from API docs (flutter/flutter#144425)
2024-03-01 [email protected] Enable missing-code-block-language (flutter/flutter#144443)
2024-03-01 [email protected] Roll Flutter Engine from 7e8fefe4a084 to 6f8044436eb3 (5 revisions) (flutter/flutter#144436)
2024-02-29 49699333+dependabot[bot]@users.noreply.github.com Bump github/codeql-action from 3.24.5 to 3.24.6 (flutter/flutter#144424)
2024-02-29 [email protected] Reland [a11y] Fix date picker cannot focus on the edit field  (flutter/flutter#144198)
2024-02-29 [email protected] Reland "Use dartpad's main channel for master/main docs (#144329)" (flutter/flutter#144431)
2024-02-29 [email protected] Make daemon server work on ipv6-only machines. (flutter/flutter#144359)
2024-02-29 [email protected] Remove deprecated `backgroundColor` from `ThemeData` (flutter/flutter#144079)
2024-02-29 [email protected] Add stateful reordering test for TwoDimensionalViewport (flutter/flutter#142375)
2024-02-29 [email protected] Always use local CanvasKit/Skwasm in benchmarks for better hermeticity. (flutter/flutter#144423)
2024-02-29 [email protected] Roll Flutter Engine from bb6c6a01000f to 7e8fefe4a084 (2 revisions) (flutter/flutter#144419)
2024-02-29 [email protected] Fix a crash in remote device daemon. (flutter/flutter#144358)
2024-02-29 98614782+auto-submit[bot]@users.noreply.github.com Reverts "Use dartpad's main channel for master/main docs (#144329)" (flutter/flutter#144429)
2024-02-29 [email protected] Remove `toggleableActiveColor` from `ThemeData` (flutter/flutter#144178)
2024-02-29 [email protected] Add `FocusNode.focusabilityListenable` (flutter/flutter#144280)
2024-02-29 [email protected] Roll Flutter Engine from 1f24eaa4979d to bb6c6a01000f (2 revisions) (flutter/flutter#144416)
2024-02-29 [email protected] [devicelab] fix motog4 tests and update comment. (flutter/flutter#144410)
2024-02-29 [email protected] Bump dartdocs to 8.0.6 (flutter/flutter#144413)
2024-02-29 [email protected] Use dartpad's main channel for master/main docs (flutter/flutter#144329)
2024-02-29 [email protected] Roll Flutter Engine from 7b3ef43fa7e6 to 1f24eaa4979d (2 revisions) (flutter/flutter#144405)
2024-02-29 [email protected] Roll Flutter Engine from 7dd404724c50 to 7b3ef43fa7e6 (1 revision) (flutter/flutter#144399)
2024-02-29 [email protected] Roll Flutter Engine from 8179b0ed778e to 7dd404724c50 (3 revisions) (flutter/flutter#144395)
2024-02-29 [email protected] Roll Packages from 353086c to 6d02f03 (14 revisions) (flutter/flutter#144393)
2024-02-29 [email protected] Roll Flutter Engine from d068d980f952 to 8179b0ed778e (1 revision) (flutter/flutter#144378)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages
Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose

...
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

autosubmit Merge PR when tree becomes green via auto submit App tool Affects the "flutter" command-line tool. See also t: labels.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants