Fix bug in `build_and_copy` executable (#6478)
diff --git a/packages/devtools_app/pubspec.yaml b/packages/devtools_app/pubspec.yaml index f315f46..8550a84 100644 --- a/packages/devtools_app/pubspec.yaml +++ b/packages/devtools_app/pubspec.yaml
@@ -26,7 +26,7 @@ dap: ^1.1.0 dds_service_extensions: ^1.6.0 devtools_app_shared: ^0.0.5 - devtools_extensions: ^0.0.7 + devtools_extensions: ^0.0.8 devtools_shared: ^4.0.1 file: ^6.0.0 file_selector: ^0.8.0
diff --git a/packages/devtools_extensions/CHANGELOG.md b/packages/devtools_extensions/CHANGELOG.md index ed399db..53344ad 100644 --- a/packages/devtools_extensions/CHANGELOG.md +++ b/packages/devtools_extensions/CHANGELOG.md
@@ -1,3 +1,7 @@ +## 0.0.8 +* Fix the `build_and_copy` command so that it succeeds when there is not +an existing `extension/devtools/build` directory. + ## 0.0.7 * Update the `build_and_copy` command to stop copying unnecessary files. * Add `ExtensionManager.unregisterEventHandler` method.
diff --git a/packages/devtools_extensions/README.md b/packages/devtools_extensions/README.md index 909c80f..272a815 100644 --- a/packages/devtools_extensions/README.md +++ b/packages/devtools_extensions/README.md
@@ -86,7 +86,7 @@ In `foo_package_devtools_extension/pubspec.yaml`, add a dependency on `devtools_extensions`: ```yaml -devtools_extensions: ^0.0.7 +devtools_extensions: ^0.0.8 ``` In `lib/main.dart`, place a `DevToolsExtension` widget at the root of your app:
diff --git a/packages/devtools_extensions/bin/_build_and_copy.dart b/packages/devtools_extensions/bin/_build_and_copy.dart index 1dbb1a6..d4c3ff5 100644 --- a/packages/devtools_extensions/bin/_build_and_copy.dart +++ b/packages/devtools_extensions/bin/_build_and_copy.dart
@@ -96,8 +96,13 @@ _log('Replacing the existing extension build with the new one...'); final sourceBuildPath = path.join(source, 'build', 'web'); final destinationBuildPath = path.join(dest, 'build'); - Directory(destinationBuildPath)..deleteSync(recursive: true); + + final destinationDirectory = Directory(destinationBuildPath); + if (destinationDirectory.existsSync()) { + destinationDirectory.deleteSync(recursive: true); + } Directory(destinationBuildPath)..createSync(recursive: true); + await copyPath( sourceBuildPath, destinationBuildPath,
diff --git a/packages/devtools_extensions/pubspec.yaml b/packages/devtools_extensions/pubspec.yaml index 031c883..095d0ec 100644 --- a/packages/devtools_extensions/pubspec.yaml +++ b/packages/devtools_extensions/pubspec.yaml
@@ -1,6 +1,6 @@ name: devtools_extensions description: A package for building and supporting extensions for Dart DevTools. -version: 0.0.7 +version: 0.0.8 repository: https://github.com/flutter/devtools/tree/master/packages/devtools_extensions