Make sure:
You have a local checkout of the Dart SDK
Ensure your .bashrc sets $LOCAL_DART_SDK
DART_SDK_REPO_DIR=<Path to cloned dart sdk> export LOCAL_DART_SDK=$DART_SDK_REPO_DIR/sdk
The local checkout is at main branch:
git rebase-update.Your Flutter version is equal to latest candidate release branch:
./tool/update_flutter_sdk.sh --local from the main devtools directory.You have goma configured.
tool/release_helper.sh script with minor or major. ./tool/release_helper.sh [minor|major]tool/release_helper.sh script exports the following two variables to the terminal it is run in:$DEVTOOLS_RELEASE_BRANCH$DEVTOOLS_NEXT_BRANCHFor both the
$DEVTOOLS_RELEASE_BRANCHand the$DEVTOOLS_NEXT_BRANCHbranches
Verify the version changes:
packages/devtools_app/lib/devtools.dart was updatedThese packages always have their version numbers updated in lock, so we don't have to worry about versioning.
For both the
$DEVTOOLS_RELEASE_BRANCHand the$DEVTOOLS_NEXT_BRANCHbranches
You only need to do this on the
$DEVTOOLS_RELEASE_BRANCHbranch
Checkout the $DEVTOOLS_RELEASE_BRANCH,
Build the DevTools binary and run it from your local Dart SDK.
dart ./tool/build_e2e.dart
Launch DevTools and verify that everything generally works.
flutter run an applicationOnce the build is in good shape,
git checkout . && \ git clean -f -d;
$DEVTOOLS_RELEASE_BRANCHEnsure you are still on the
$DEVTOOLS_RELEASE_BRANCH
git push -u origin $DEVTOOLS_RELEASE_BRANCH
From the git GUI tool or from github.com directly:
Checkout the commit from which you want to release DevTools
git log -v to see the commits.Run the tag_version.sh script
flutter/devtools repo for this release.packages/devtools/pubspec.yaml so there is no need to manually enter the version.tool/tag_version.sh;
See the release notes README.md for details on where to add DevTools release notes to Flutter website and how to test them.
$DEVTOOLS_RELEASE_BRANCH copy the release notes from NEXT_RELEASE_NOTES.mdUse the update.sh script to build and upload the DevTools binary to CIPD:
TARGET_COMMIT_HASH=<Commit hash for the version bump commit in DevTools>
cd $LOCAL_DART_SDK && \ git rebase-update && \ third_party/devtools/update.sh $TARGET_COMMIT_HASH;
Create new branch for your changes:
cd $LOCAL_DART_SDK && \ git new-branch dt-release;
Update the devtools_rev entry in the Dart SDK DEPS file
devtools_rev entry to the TARGET_COMMIT_HASH.Build the dart sdk locally
cd $LOCAL_DART_SDK && \ gclient sync -D && \ ./tools/build.py -mrelease -ax64 create_sdk;
Verify that running dart devtools launches the version of DevTools you just released.
xcodebuild/ReleaseX64/dart-sdk/bin/dart devtools
out/ReleaseX64/dart-sdk/bin/dart devtools
If the version of DevTools you just published to CIPD loads properly
You may need to hard reload and clear your browser cache in order to see the changes.
git add . && \ git commit -m "Bump DevTools DEP to $NEW_DEVTOOLS_VERSION" && \ git cl upload -s;
package:devtools_shared is the only DevTools package that is published on pub.
devtools/packages/devtools_shared directory, run:flutter pub publish
git checkout $DEVTOOLS_NEXT_BRANCH git push -u origin $DEVTOOLS_NEXT_BRANCH
From the git GUI tool or from github.com directly: