For general contributing information, see Dart-wide CONTRIBUTING.md.
leak_tracker to FlutterTo upgrade version of leak tracking packages used by Flutter and thus used by all applications that depend on Flutter:
Publish new version of the packages by running sh tool/lt_publish.sh.
If the changes affect APIs used by Flutter, ask a googler to refresh the packages with copybara in G3.
Upgrade Flutter:
If leak_tracker* is pinned in update_packages_pins.dart, update the versions.
In packages/flutter run ../../bin/flutter update-packages --force-upgrade
If upgrade for all packages causes complicated failure of bots, cherry pick upgrade for just leak tracker:
../../bin/flutter update-packages --cherry-pick-package leak_tracker --cherry-pick-version <version of leak_tracker> ../../bin/flutter update-packages --cherry-pick-package leak_tracker_flutter_testing --cherry-pick-version <version of leak_tracker_flutter_testing>
To regenerate diagrams, run in the root of packages:
sh tool/diagrams.sh
leak_trackerWhen you reference leak_tracker from your application, version should be any, because the version is pinned by Flutter.
If you want to use a different version of leak_tracker in your Flutter application, you can reference a local renamed leak tracker package:
Clone it: git clone git@github.com:dart-lang/leak_tracker.git
Make global replacements:
In all ‘*.dart’ files: replace ‘package:leak_tracker’ with ‘package:new_leak_tracker’
In all files ‘pubspec.yaml, pubspec_overrides.yaml’: replace ' leak_tracker' with ' new_leak_tracker'
Follow steps in DETECT to enable leak tracking, referencing the local new_leak_tracker*, instead of what is instructed:
new_leak_tracker...: path: <local path to leak tracker>