.bashrc/.zshrc for Flutter Tools:alias flutter_tools='/YOUR_PATH/flutter/bin/dart --observe /YOUR_PATH/flutter/packages/flutter_tools/bin/flutter_tools.dart'
Explanation:
/PATH_TO_YOUR_FLUTTER_REPO/bin/dart: This is the path to the Dart SDK that Flutter Tools uses--observe: This flag specifies we want a Dart DevTools URL for debugging/PATH_TO_YOUR_FLUTTER_REPO/packages/flutter_tools/bin/flutter_tools.dart: This is the path to Flutter Tools itselfMore details can be found at the Flutter Tools README.
pubspec.yaml, change the DWDS dependency to point to your local DWDS: dwds:
path: /YOUR_PATH/dwds
flutter_tools run -d chrome
... The Dart VM service is listening on http://127.0.0.1:8181/ajXIPMLq6iI=/ The Dart DevTools debugger and profiler is available at: http://127.0.0.1:8181/ajXIPMLq6iI=/devtools/#/?uri=ws%3A%2F%2F127.0.0.1%3A8181%2FajXIPMLq6iI%3D%2Fws <== THIS ONE! Launching lib/main.dart on Chrome in debug mode... ...
Follow instructions in the webdev/example README to run the example app and connect to DWDS.
CHANGELOG.md with a description of the changeCHANGELOG, and the pubspec.yaml file as well (eg, https://github.com/dart-lang/webdev/pull/1462)run dart run build_runner build to check in the any file that should be built. This will make sure the integration tests are run against the built files.NOTE: You must be a Googler to do this step. If you are not, please ask someone for help.
dart --version)/dwds, /frontend_server_client, /frontend_server_common, and /webdev) update dependencies with dart pub upgradedwds/pubspec.yaml and dwds/CHANGELOG.md/dwds run dart run build_runner build, this will build and update the version in /dwds/lib/src/version.dartrun dart pub publishNote: To have the right permissions for publishing, you need to be invited to the tools.dart.dev. A member of the Dart team should be able to add you at https://pub.dev/publishers/tools.dart.dev/admin.
Note: DWDS is a dependency of Webdev, which is why DWDS must be published before Webdev can be published.
Follow instructions in the webdev/webdev CONTRIBUTING to release Webdev.
Whenever Dart SDK is updated to a new major or minor version (~every 2 weeks), any PR submissions to Webdev are blocked by the min_sdk_test until the Dart min SDK constraint is updated. Therefore, whenever your PR gets blocked by the test, you need to:
/dwds, /frontend_server_client, /frontend_server_common, and /webdev) update dependencies with dart pub upgradeCHANGELOG to include the new version numberWhy is this necessary?
This is so that we don’t need to support older versions of the SDK and test against them, therefore every time the Dart SDK is bumped to a new major or minor version, DWDS and Webdev’s min Dart SDK constraint needs to to be changed and DWDS and Webdev have to be released. Since DWDS is dependent on DDC and the runtime API, if we had a looser min constraint we would need to run tests for all earlier stable releases of the SDK that match the constraint, which would have differences in functionality and therefore need different tests.