flutteractionsbot 082bd44a7c
[CP-beta]Configure FfiNative resolver on dart:io (#177308)
This pull request is created by [automatic cherry pick workflow](https://github.com/flutter/flutter/blob/main/docs/releases/Flutter-Cherrypick-Process.md#automatically-creates-a-cherry-pick-request)
Please fill in the form below, and a flutter domain expert will evaluate this cherry pick request.

### Issue Link:

None

### Changelog Description:

Calling `FileSystemEntity.watch(...)` will throw on Mac OS and Windows.

### Impact Description:

Calling `FileSystemEntity.watch(...)` will throw on Mac OS and Windows, instead of correctly watching the path.

### Workaround:

No user level work-around. `dart:io` is broken.

### Risk:

What is the risk level of this cherry-pick?

### Test Coverage:

Are you confident that your fix is well-tested by automated tests?

It's tested by tests in Dart SDK

### Validation Steps:

Run a Mac OS or Windows app with the following `main`. It should do nothing - rather than throw an exception.

```dart
import 'dart:async';
import 'dart:io';

void main() async {
  final sub = Directory.systemTemp.watch(recursive: true).listen((_) {});
  await Future.delayed(Duration(seconds: 1));
  sub.cancel();
}
```
2025-10-27 22:53:59 +00:00
..

Flutter Engine

Setting up the Engine development environment

See here

gclient bootstrap

Flutter engine uses gclient to manage dependencies.

If you've already cloned the flutter repository:

  1. Copy one of the engine/scripts/*.gclient to the root folder as .gclient:
    1. Googlers: copy rbe.gclient to enable faster builds with RBE
    2. Everyone else: copy standard.gclient
  2. run gclient sync from the root folder