Reenable Code based profiling when VM Developer Mode is enabled  (#8832)

* Reenable Code based profiling when VM Developer Mode is enabled

Fixes https://github.com/flutter/devtools/issues/8567

* Prepare for releases of devtools_app_shared and devtools_extensions
diff --git a/flutter-candidate.txt b/flutter-candidate.txt
index 97032a5..0da4fc5 100644
--- a/flutter-candidate.txt
+++ b/flutter-candidate.txt
@@ -1 +1 @@
-7313c873463d2a20a7ec1047d7b8b9146dd2a39b
+de872dd864518d436062354052ea8604c38e8c94
diff --git a/packages/devtools_app/lib/src/screens/debugger/program_explorer_controller.dart b/packages/devtools_app/lib/src/screens/debugger/program_explorer_controller.dart
index 632df8d..2e512c5 100644
--- a/packages/devtools_app/lib/src/screens/debugger/program_explorer_controller.dart
+++ b/packages/devtools_app/lib/src/screens/debugger/program_explorer_controller.dart
@@ -353,7 +353,8 @@
       ClassRef(:final location?) ||
       FieldRef(:final location?) ||
       FuncRef(:final location?) => location.script,
-      Code(:final function?) => function.location?.script,
+      Code(:final function?) when function is FuncRef =>
+        function.location?.script,
       ScriptRef() => object,
       _ => null,
     };
diff --git a/packages/devtools_app/lib/src/service/vm_service_wrapper.dart b/packages/devtools_app/lib/src/service/vm_service_wrapper.dart
index 114eca2..04d44be 100644
--- a/packages/devtools_app/lib/src/service/vm_service_wrapper.dart
+++ b/packages/devtools_app/lib/src/service/vm_service_wrapper.dart
@@ -20,6 +20,7 @@
 
 import '../screens/vm_developer/vm_service_private_extensions.dart';
 import '../shared/feature_flags.dart';
+import '../shared/globals.dart';
 import '../shared/primitives/utils.dart';
 import 'json_to_service_cache.dart';
 
@@ -142,9 +143,7 @@
         // running with VM developer mode enabled. This data isn't accessible
         // in non-VM developer mode, so not requesting the code profile will
         // save on space and network usage.
-        // TODO(bkonyi): re-enable when package:vm_service 15.0.0 is rolled
-        // into Flutter. See https://github.com/flutter/devtools/issues/8567.
-        // '_code': preferences.vmDeveloperModeEnabled.value,
+        '_code': preferences.vmDeveloperModeEnabled.value,
       },
     ).then((e) => e as CpuSamples);
   }
diff --git a/packages/devtools_app/pubspec.yaml b/packages/devtools_app/pubspec.yaml
index 960957b..aae784e 100644
--- a/packages/devtools_app/pubspec.yaml
+++ b/packages/devtools_app/pubspec.yaml
@@ -52,7 +52,7 @@
   stack_trace: ^1.12.0
   string_scanner: ^1.1.0
   unified_analytics: ^7.0.0
-  vm_service: '>=13.0.0 <16.0.0'
+  vm_service: '>=15.0.0 <16.0.0'
   vm_service_protos: ^1.0.0
   vm_snapshot_analysis: ^0.7.6
   web: ^1.0.0
diff --git a/packages/devtools_app_shared/CHANGELOG.md b/packages/devtools_app_shared/CHANGELOG.md
index fe2a5f4..94821ab 100644
--- a/packages/devtools_app_shared/CHANGELOG.md
+++ b/packages/devtools_app_shared/CHANGELOG.md
@@ -3,6 +3,9 @@
 Use of this source code is governed by a BSD-style license that can be
 found in the LICENSE file or at https://developers.google.com/open-source/licenses/bsd.
 -->
+## 0.3.1
+* Bump `vm_service` dependency to `>=13.0.0 <16.0.0`.
+
 ## 0.3.0
 * Bump minimum Dart SDK version to `3.6.0`.
 * Bump minimum Flutter SDK version to `3.27.1`.
@@ -11,7 +14,6 @@
 * Add `iconAsset` and `iconSize` fields to the `ButtonGroupItemData` class.
 * Add `iconAsset` and `iconSize` fields to the `MaterialIconLabel` class.
 * Add "Supported Flutter versions" policy to the README.
-* Bump `vm_service` dependency to `>=13.0.0 <16.0.0`.
 
 ## 0.2.4
 * Add `updateQueryParameter` utility method.
diff --git a/packages/devtools_app_shared/pubspec.yaml b/packages/devtools_app_shared/pubspec.yaml
index 573868e..8b53601 100644
--- a/packages/devtools_app_shared/pubspec.yaml
+++ b/packages/devtools_app_shared/pubspec.yaml
@@ -3,7 +3,7 @@
 # found in the LICENSE file or at https://developers.google.com/open-source/licenses/bsd.
 name: devtools_app_shared
 description: Package of Dart & Flutter structures shared between devtools_app and devtools extensions.
-version: 0.3.0
+version: 0.3.1
 repository: https://github.com/flutter/devtools/tree/master/packages/devtools_app_shared
 
 environment:
diff --git a/packages/devtools_extensions/CHANGELOG.md b/packages/devtools_extensions/CHANGELOG.md
index 509f94a..c51cab2 100644
--- a/packages/devtools_extensions/CHANGELOG.md
+++ b/packages/devtools_extensions/CHANGELOG.md
@@ -3,13 +3,15 @@
 Use of this source code is governed by a BSD-style license that can be
 found in the LICENSE file or at https://developers.google.com/open-source/licenses/bsd.
 -->
+## 0.3.1
+* Bump `vm_service` dependency to `>=13.0.0 <16.0.0`.
+
 ## 0.3.0
 * Fix `build_and_copy` command by removing deprecated `--web-renderer` option.
 * Bump minimum Dart SDK version to `3.6.0` and minimum Flutter SDK version
 to `3.27.1`.
 * Bump `devtools_app_shared` dependency to `0.3.0`.
 * Bump `devtools_shared` dependency to `11.1.0`.
-* Bump `vm_service` dependency to `>=13.0.0 <16.0.0`.
 * Clarify VS Code configuration in `README.md`.
 * Add "Supported Flutter versions" policy to the README.
 
diff --git a/packages/devtools_extensions/pubspec.yaml b/packages/devtools_extensions/pubspec.yaml
index 3501750..555a471 100644
--- a/packages/devtools_extensions/pubspec.yaml
+++ b/packages/devtools_extensions/pubspec.yaml
@@ -3,7 +3,7 @@
 # found in the LICENSE file or at https://developers.google.com/open-source/licenses/bsd.
 name: devtools_extensions
 description: A package for building and supporting extensions for Dart DevTools.
-version: 0.3.0
+version: 0.3.1
 
 repository: https://github.com/flutter/devtools/tree/master/packages/devtools_extensions