From f1f6c94c19c7855838a68c578694ea9dced5acb3 Mon Sep 17 00:00:00 2001 From: Elliott Brooks <21270878+elliette@users.noreply.github.com> Date: Fri, 3 Nov 2023 11:45:08 -0700 Subject: [PATCH 1/5] DCM workflow no longer needs label --- .github/workflows/dcm.yml | 9 +++------ .github/workflows/dcm_label.yml | 20 -------------------- 2 files changed, 3 insertions(+), 26 deletions(-) delete mode 100644 .github/workflows/dcm_label.yml diff --git a/.github/workflows/dcm.yml b/.github/workflows/dcm.yml index ab95dc293..3f837de14 100644 --- a/.github/workflows/dcm.yml +++ b/.github/workflows/dcm.yml @@ -3,16 +3,13 @@ name: Dart Code Metrics on: - pull_request_target: - # labeled and unlabeled are required along with open to re-run - # workflow when the run-dcm-workflow label is added or removed. - types: [opened, labeled, unlabeled] + pull_request: + types: [synchronize, opened, reopened] branches: - master jobs: dcm: - if: contains(github.event.pull_request.labels.*.name, 'run-dcm-workflow') name: Dart Code Metrics runs-on: ubuntu-latest steps: @@ -39,5 +36,5 @@ jobs: if: "always() && steps.checkout.conclusion == 'success'" working-directory: dwds - name: Run DCM on DWDS - run: dcm analyze --ci-key="${{ secrets.DCM_CI_KEY }}" --email="${{ secrets.DCM_EMAIL }}" lib + run: dcm analyze lib working-directory: dwds diff --git a/.github/workflows/dcm_label.yml b/.github/workflows/dcm_label.yml deleted file mode 100644 index 8679c0d43..000000000 --- a/.github/workflows/dcm_label.yml +++ /dev/null @@ -1,20 +0,0 @@ -# A CI workflow to remind the contributor to add the run-dcm-workflow label. - -name: DCM Label Reminder - -on: - pull_request: - types: [synchronize, opened, reopened, labeled, unlabeled] - paths: - - '**/*.dart' - -jobs: - changelog-reminder: - if: ${{ !contains(github.event.*.labels.*.name, 'run-dcm-workflow') }} - name: Prevent submission - runs-on: ubuntu-latest - steps: - - name: Label reminder - run: | - echo "Please add the 'run-dcm-workflow' label to run DCM checks." - exit 1 From 8b422cfd0331ac24f389e8d677bdc9c95f059e96 Mon Sep 17 00:00:00 2001 From: Elliott Brooks <21270878+elliette@users.noreply.github.com> Date: Tue, 7 Nov 2023 11:20:35 -0800 Subject: [PATCH 2/5] Fix DCM error --- dwds/lib/src/handlers/injector.dart | 2 +- dwds/lib/src/loaders/strategy.dart | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dwds/lib/src/handlers/injector.dart b/dwds/lib/src/handlers/injector.dart index d179f977b..b1f6ec2bd 100644 --- a/dwds/lib/src/handlers/injector.dart +++ b/dwds/lib/src/handlers/injector.dart @@ -96,7 +96,7 @@ class DwdsInjector { devHandlerPath = '$requestedUriBase/$devHandlerPath'; _devHandlerPaths.add(devHandlerPath); final entrypoint = request.url.path; - await globalToolConfiguration.loadStrategy + globalToolConfiguration.loadStrategy .trackEntrypoint(entrypoint); body = await _injectClientAndHoistMain( body, diff --git a/dwds/lib/src/loaders/strategy.dart b/dwds/lib/src/loaders/strategy.dart index d12f8e9df..c181d78d9 100644 --- a/dwds/lib/src/loaders/strategy.dart +++ b/dwds/lib/src/loaders/strategy.dart @@ -131,7 +131,7 @@ abstract class LoadStrategy { /// Initializes a [MetadataProvider] for the application located at the /// provided [entrypoint]. - Future trackEntrypoint(String entrypoint) async { + void trackEntrypoint(String entrypoint) { final metadataProvider = MetadataProvider(entrypoint, _assetReader); _providers[metadataProvider.entrypoint] = metadataProvider; } From e2164cad0a2139b5ae7fdfc3bea168a30d8ae7d1 Mon Sep 17 00:00:00 2001 From: Elliott Brooks <21270878+elliette@users.noreply.github.com> Date: Tue, 7 Nov 2023 11:34:19 -0800 Subject: [PATCH 3/5] Fix more DCM errors --- dwds/lib/src/debugging/inspector.dart | 2 +- dwds/lib/src/services/chrome_proxy_service.dart | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dwds/lib/src/debugging/inspector.dart b/dwds/lib/src/debugging/inspector.dart index 744435de7..660ee0dac 100644 --- a/dwds/lib/src/debugging/inspector.dart +++ b/dwds/lib/src/debugging/inspector.dart @@ -366,7 +366,7 @@ class AppInspector implements AppInspectorInterface { Future callFunction( String function, Iterable argumentIds, - ) async { + ) { final arguments = argumentIds.map(remoteObjectFor).toList(); return _jsCallFunction(function, arguments); } diff --git a/dwds/lib/src/services/chrome_proxy_service.dart b/dwds/lib/src/services/chrome_proxy_service.dart index 659232138..913db0f5b 100644 --- a/dwds/lib/src/services/chrome_proxy_service.dart +++ b/dwds/lib/src/services/chrome_proxy_service.dart @@ -392,7 +392,7 @@ class ChromeProxyService implements VmServiceInterface { String scriptId, int line, { int? column, - }) async { + }) { return wrapInErrorHandlerAsync( 'addBreakpoint', () => _addBreakpoint(isolateId, scriptId, line), From fdc2fc196c95dc7059dbaecd9e2d0953b295f87f Mon Sep 17 00:00:00 2001 From: Elliott Brooks <21270878+elliette@users.noreply.github.com> Date: Tue, 7 Nov 2023 11:40:19 -0800 Subject: [PATCH 4/5] Format --- dwds/lib/src/handlers/injector.dart | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/dwds/lib/src/handlers/injector.dart b/dwds/lib/src/handlers/injector.dart index b1f6ec2bd..5b5f14593 100644 --- a/dwds/lib/src/handlers/injector.dart +++ b/dwds/lib/src/handlers/injector.dart @@ -96,8 +96,7 @@ class DwdsInjector { devHandlerPath = '$requestedUriBase/$devHandlerPath'; _devHandlerPaths.add(devHandlerPath); final entrypoint = request.url.path; - globalToolConfiguration.loadStrategy - .trackEntrypoint(entrypoint); + globalToolConfiguration.loadStrategy.trackEntrypoint(entrypoint); body = await _injectClientAndHoistMain( body, appId, From 3426cf9d8a8c6e3db923fec3f509703d60853a70 Mon Sep 17 00:00:00 2001 From: Elliott Brooks <21270878+elliette@users.noreply.github.com> Date: Tue, 7 Nov 2023 13:42:17 -0800 Subject: [PATCH 5/5] Return a future --- dwds/lib/src/handlers/injector.dart | 3 ++- dwds/lib/src/loaders/strategy.dart | 5 ++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/dwds/lib/src/handlers/injector.dart b/dwds/lib/src/handlers/injector.dart index 5b5f14593..d179f977b 100644 --- a/dwds/lib/src/handlers/injector.dart +++ b/dwds/lib/src/handlers/injector.dart @@ -96,7 +96,8 @@ class DwdsInjector { devHandlerPath = '$requestedUriBase/$devHandlerPath'; _devHandlerPaths.add(devHandlerPath); final entrypoint = request.url.path; - globalToolConfiguration.loadStrategy.trackEntrypoint(entrypoint); + await globalToolConfiguration.loadStrategy + .trackEntrypoint(entrypoint); body = await _injectClientAndHoistMain( body, appId, diff --git a/dwds/lib/src/loaders/strategy.dart b/dwds/lib/src/loaders/strategy.dart index c181d78d9..77f43acd8 100644 --- a/dwds/lib/src/loaders/strategy.dart +++ b/dwds/lib/src/loaders/strategy.dart @@ -131,9 +131,12 @@ abstract class LoadStrategy { /// Initializes a [MetadataProvider] for the application located at the /// provided [entrypoint]. - void trackEntrypoint(String entrypoint) { + Future trackEntrypoint(String entrypoint) { final metadataProvider = MetadataProvider(entrypoint, _assetReader); _providers[metadataProvider.entrypoint] = metadataProvider; + // Returns a Future so that the asynchronous g3-implementation can override + // this method: + return Future.value(); } }