README.md 1.72 KB
Newer Older
1
# Flutter Tools
2

3
Command line developer tools for building Flutter applications.
Devon Carew's avatar
Devon Carew committed
4

5
## Working on Flutter Tools
Luan Nico's avatar
Luan Nico committed
6

7 8
Be sure to follow the instructions on [CONTRIBUTING.md](../../CONTRIBUTING.md)
to set up your development environment.
Devon Carew's avatar
Devon Carew committed
9

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
### Setup

First, ensure that the Dart SDK and other necessary artifacts are available by
invoking the Flutter Tools wrapper script. In this directory run:
```shell
$ ../../bin/flutter --version
```

### Running

To run Flutter Tools from source, in this directory run:
```shell
$ ../../bin/cache/dart-sdk/bin/dart bin/flutter_tools.dart
```
followed by command line arguments, as usual.

### Analyzing

To run the analyzer on Flutter Tools, in this directory run:
```shell
$ ../../bin/flutter analyze
```

### Testing

To run the tests in the `test/` directory, first ensure that there are no
connected devices. Then, in this directory run:
```shell
$ ../../bin/cache/dart-sdk/bin/pub run test
```

The tests in `test/integration.shard` are slower to run than the tests in
`test/general.shard`. To run only the tests in `test/general.shard`, in this
directory run:
```shell
$ ../../bin/cache/dart-sdk/bin/pub run test test/general.shard
```

To run the tests in a specific file, run:
```shell
$ ../../bin/cache/dart-sdk/bin/pub run test test/general.shard/utils_test.dart
```

When running all of the tests, it is a bit faster to use `build_runner`. First,
set `FLUTTER_ROOT` to the root of your Flutter checkout. Then, in this directory
run:
```shell
$ ../../bin/cache/dart-sdk/bin/pub run build_runner test
```

### Forcing snapshot regeneration

To force the Flutter Tools snapshot to be regenerated, delete the following
files:
64
```shell
65
$ rm ../../bin/cache/flutter_tools.stamp ../../bin/cache/flutter_tools.snapshot
66
```