From 8762b31f0d0ffeea6449fd02740e9ce7acb32503 Mon Sep 17 00:00:00 2001 From: Elliott Brooks <21270878+elliette@users.noreply.github.com> Date: Tue, 7 Jan 2025 13:10:08 -0800 Subject: [PATCH] Prepare for release 2.42.0 (#8673) --- flutter-candidate.txt | 2 +- .../benchmark/web_bundle_size_test.dart | 2 +- packages/devtools_app/lib/devtools.dart | 2 +- .../debugger/program_explorer_controller.dart | 3 +- .../debugger/program_explorer_model.dart | 3 +- .../screens/profiler/cpu_profile_model.dart | 11 ++--- .../inbound_references_tree.dart | 5 ++- .../vm_developer_common_widgets.dart | 3 +- .../src/shared/charts/chart_controller.dart | 24 +++++------ .../lib/src/shared/framework/screen.dart | 4 +- .../lib/src/shared/memory/classes.dart | 3 +- .../vs_code/devtools/devtools_view.dart | 10 ++--- packages/devtools_app/pubspec.yaml | 2 +- .../release_notes/NEXT_RELEASE_NOTES.md | 40 ------------------ .../goldens/settings_dialog_default.png | Bin 12485 -> 12488 bytes .../goldens/settings_dialog_modified.png | Bin 12725 -> 12726 bytes .../memory/heap/heap_graph_fakes.dart | 6 +-- .../lib/src/mocks/fake_service_manager.dart | 4 +- tool/lib/commands/run.dart | 2 +- tool/lib/model.dart | 8 ++-- 20 files changed, 42 insertions(+), 92 deletions(-) diff --git a/flutter-candidate.txt b/flutter-candidate.txt index de3483f7a70..6a59b560a2e 100644 --- a/flutter-candidate.txt +++ b/flutter-candidate.txt @@ -1 +1 @@ -2eee054d41f641db335f35797d39fc77ed124430 +434ca754e3b972725938d72b83bfa84f083fb0a7 diff --git a/packages/devtools_app/benchmark/web_bundle_size_test.dart b/packages/devtools_app/benchmark/web_bundle_size_test.dart index 9f8f12a3fe8..933d9f23a90 100644 --- a/packages/devtools_app/benchmark/web_bundle_size_test.dart +++ b/packages/devtools_app/benchmark/web_bundle_size_test.dart @@ -11,7 +11,7 @@ import 'package:path/path.dart' as path; import 'package:test/test.dart'; // Benchmark size in kB. -const bundleSizeBenchmark = 5200; +const bundleSizeBenchmark = 5400; const gzipBundleSizeBenchmark = 1550; void main() { diff --git a/packages/devtools_app/lib/devtools.dart b/packages/devtools_app/lib/devtools.dart index c1d2ce5dd8b..dc1bc0b02be 100644 --- a/packages/devtools_app/lib/devtools.dart +++ b/packages/devtools_app/lib/devtools.dart @@ -10,4 +10,4 @@ /// Note: a regexp in the `dt update-version' command logic matches the constant /// declaration `const version =`. If you change the declaration you must also /// modify the regex in the `dt update-version' command logic. -const version = '2.42.0-dev.1'; +const version = '2.42.0'; 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 99f0ab25d64..2332f1b363b 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 @@ -352,8 +352,7 @@ class ProgramExplorerController extends DisposableController final targetScript = switch (object) { ClassRef(:final location?) || FieldRef(:final location?) || - FuncRef(:final location?) => - location.script, + FuncRef(:final location?) => location.script, Code(:final function?) => function.location?.script, ScriptRef() => object, _ => null, diff --git a/packages/devtools_app/lib/src/screens/debugger/program_explorer_model.dart b/packages/devtools_app/lib/src/screens/debugger/program_explorer_model.dart index 282ddad5751..22571c639ad 100644 --- a/packages/devtools_app/lib/src/screens/debugger/program_explorer_model.dart +++ b/packages/devtools_app/lib/src/screens/debugger/program_explorer_model.dart @@ -333,8 +333,7 @@ class VMServiceObjectNode extends TreeNode<VMServiceObjectNode> { final sourceLocation = switch (object) { FieldRef(:final location) || FuncRef(:final location) || - ClassRef(:final location) => - location, + ClassRef(:final location) => location, _ => null, }; diff --git a/packages/devtools_app/lib/src/screens/profiler/cpu_profile_model.dart b/packages/devtools_app/lib/src/screens/profiler/cpu_profile_model.dart index 93ca122af2d..791cff6cb8c 100644 --- a/packages/devtools_app/lib/src/screens/profiler/cpu_profile_model.dart +++ b/packages/devtools_app/lib/src/screens/profiler/cpu_profile_model.dart @@ -1254,13 +1254,10 @@ class _CpuProfileTimelineTree { String? get resolvedUrl => isCodeTree && _function is vm_service.FuncRef? ? - // TODO(bkonyi): not sure if this is a resolved URL or not, but it's not - // critical since this is only displayed when VM developer mode is - // enabled. - (_function as vm_service.FuncRef?) - ?.location - ?.script - ?.uri + // TODO(bkonyi): not sure if this is a resolved URL or not, but it's not + // critical since this is only displayed when VM developer mode is + // enabled. + (_function as vm_service.FuncRef?)?.location?.script?.uri : samples.functions![index].resolvedUrl; int? get sourceLine { diff --git a/packages/devtools_app/lib/src/screens/vm_developer/object_inspector/inbound_references_tree.dart b/packages/devtools_app/lib/src/screens/vm_developer/object_inspector/inbound_references_tree.dart index cedffd08024..6e52b5a9636 100644 --- a/packages/devtools_app/lib/src/screens/vm_developer/object_inspector/inbound_references_tree.dart +++ b/packages/devtools_app/lib/src/screens/vm_developer/object_inspector/inbound_references_tree.dart @@ -35,8 +35,9 @@ class InboundReferencesTreeNode extends TreeNode<InboundReferencesTreeNode> { } return switch (objectRef) { - ClassRef(:final name) || FuncRef(:final name) || FieldRef(:final name) => - name, + ClassRef(:final name) || + FuncRef(:final name) || + FieldRef(:final name) => name, LibraryRef(:final name, :final uri) => name.isNullOrEmpty ? uri : name, ScriptRef(:final uri) => fileNameFromUri(uri), InstanceRef(:final name, :final classRef) => diff --git a/packages/devtools_app/lib/src/screens/vm_developer/vm_developer_common_widgets.dart b/packages/devtools_app/lib/src/screens/vm_developer/vm_developer_common_widgets.dart index aedee031378..3c0b63e7b35 100644 --- a/packages/devtools_app/lib/src/screens/vm_developer/vm_developer_common_widgets.dart +++ b/packages/devtools_app/lib/src/screens/vm_developer/vm_developer_common_widgets.dart @@ -641,8 +641,7 @@ class VmServiceObjectLink extends StatelessWidget { FieldRef(:final name) || FuncRef(:final name) || CodeRef(:final name) || - TypeArgumentsRef(:final name) => - name, + TypeArgumentsRef(:final name) => name, // If a class has an empty name, it's a special "top level" class. ClassRef(:final name) => name!.isEmpty ? 'top-level-class' : name, LibraryRef(:final uri, :final name) => diff --git a/packages/devtools_app/lib/src/shared/charts/chart_controller.dart b/packages/devtools_app/lib/src/shared/charts/chart_controller.dart index 65078e178ac..603e105d1ed 100644 --- a/packages/devtools_app/lib/src/shared/charts/chart_controller.dart +++ b/packages/devtools_app/lib/src/shared/charts/chart_controller.dart @@ -221,19 +221,17 @@ class ChartController extends DisposableController if (lastDT.difference(firstDT).inMinutes >= duration.inMinutes) { // Grab the duration in minutes passed in. final startOfLastNMinutes = - // We need this cast to be able to return null if nothing is found. - // ignore: unnecessary_cast - timestamps - .reversed - .firstWhereOrNull((timestamp) { - final currentDT = DateTime.fromMillisecondsSinceEpoch(timestamp); - final diff = lastDT.difference(currentDT); - if (diff.inMinutes >= duration.inMinutes) { - return true; - } - - return false; - }); + // We need this cast to be able to return null if nothing is found. + // ignore: unnecessary_cast + timestamps.reversed.firstWhereOrNull((timestamp) { + final currentDT = DateTime.fromMillisecondsSinceEpoch(timestamp); + final diff = lastDT.difference(currentDT); + if (diff.inMinutes >= duration.inMinutes) { + return true; + } + + return false; + }); final ticksVisible = startOfLastNMinutes != null diff --git a/packages/devtools_app/lib/src/shared/framework/screen.dart b/packages/devtools_app/lib/src/shared/framework/screen.dart index 8d5c93ec6fb..e43b1af9953 100644 --- a/packages/devtools_app/lib/src/shared/framework/screen.dart +++ b/packages/devtools_app/lib/src/shared/framework/screen.dart @@ -393,7 +393,9 @@ abstract class Screen { size: iconAsset != null // Add 1.0 to adjust for margins on the screen icon assets. - ? scaleByFontFactor(defaultIconSizeBeforeScaling + 1.0) + ? scaleByFontFactor( + defaultIconSizeBeforeScaling + 1.0, + ) : defaultIconSize, ), if (title.isNotEmpty) diff --git a/packages/devtools_app/lib/src/shared/memory/classes.dart b/packages/devtools_app/lib/src/shared/memory/classes.dart index 5dc0c498eab..f7d4f15d7c5 100644 --- a/packages/devtools_app/lib/src/shared/memory/classes.dart +++ b/packages/devtools_app/lib/src/shared/memory/classes.dart @@ -194,8 +194,7 @@ class SingleClassData extends ClassData { @override // ignore: avoid-explicit-type-declaration, required to override base class. - final ObjectSet - objects = ObjectSet(); + final ObjectSet objects = ObjectSet(); @override final byPath = <PathFromRoot, ObjectSetStats>{}; diff --git a/packages/devtools_app/lib/src/standalone_ui/vs_code/devtools/devtools_view.dart b/packages/devtools_app/lib/src/standalone_ui/vs_code/devtools/devtools_view.dart index fbc62f73524..eff55643700 100644 --- a/packages/devtools_app/lib/src/standalone_ui/vs_code/devtools/devtools_view.dart +++ b/packages/devtools_app/lib/src/standalone_ui/vs_code/devtools/devtools_view.dart @@ -177,12 +177,10 @@ class SidebarDevToolsScreens extends StatelessWidget { ScreenMetaData.debugger || ScreenMetaData.vmTools || // This screen will be removed from the first party DevTools screens soon. - // If the user depends on package:provider, the provider extension should - // show up in the DevTools extensions list instead. - ScreenMetaData - .provider || - ScreenMetaData.simple => - false, + // If the user depends on package:provider, the provider extension should + // show up in the DevTools extensions list instead. + ScreenMetaData.provider || + ScreenMetaData.simple => false, _ => true, }; } diff --git a/packages/devtools_app/pubspec.yaml b/packages/devtools_app/pubspec.yaml index dcae8ce0a42..249e60c13cd 100644 --- a/packages/devtools_app/pubspec.yaml +++ b/packages/devtools_app/pubspec.yaml @@ -4,7 +4,7 @@ publish_to: none # Note: this version should only be updated by running the 'dt update-version' # command that updates the version here and in 'devtools.dart'. -version: 2.42.0-dev.1 +version: 2.42.0 repository: https://github.com/flutter/devtools/tree/master/packages/devtools_app diff --git a/packages/devtools_app/release_notes/NEXT_RELEASE_NOTES.md b/packages/devtools_app/release_notes/NEXT_RELEASE_NOTES.md index 1f9b806720e..19325a0fb58 100644 --- a/packages/devtools_app/release_notes/NEXT_RELEASE_NOTES.md +++ b/packages/devtools_app/release_notes/NEXT_RELEASE_NOTES.md @@ -20,46 +20,6 @@ To learn more about DevTools, check out the * Enabled auto-refreshes of the widget tree on hot-reloads and navigation events by default. This can be disabled in the inspector settings. - [#8646](https://github.com/flutter/devtools/pull/8646)  -## Performance updates - -TODO: Remove this section if there are not any general updates. - -## CPU profiler updates - -TODO: Remove this section if there are not any general updates. - -## Memory updates - -TODO: Remove this section if there are not any general updates. - -## Debugger updates - -TODO: Remove this section if there are not any general updates. - -## Network profiler updates - -TODO: Remove this section if there are not any general updates. - -## Logging updates - -TODO: Remove this section if there are not any general updates. - -## App size tool updates - -TODO: Remove this section if there are not any general updates. - -## Deep links tool updates - -TODO: Remove this section if there are not any general updates. - -## VS Code Sidebar updates - -TODO: Remove this section if there are not any general updates. - -## DevTools Extension updates - -TODO: Remove this section if there are not any general updates. - ## Full commit history To find a complete list of changes in this release, check out the diff --git a/packages/devtools_app/test/test_infra/goldens/settings_dialog_default.png b/packages/devtools_app/test/test_infra/goldens/settings_dialog_default.png index 85eafe962e8931e1adc37a988b8c9adbebc2d446..e394284c04f7979ea057798494420df87d39a50d 100644 GIT binary patch delta 3008 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 delta 4023 zcmcgv2~?9;7LKKbR$K?QIErWuVyCjmQa0JF%A^WtQBm1KK_f_j0YNY%KW>8+lxeVr zJydEykwig*gjJCp5-QLX6O70bS)(iofk67+ADpqL#WU@hGw+;)|9`pf-uvBq-*+!{ zzSX{WqE;Xo6J8pxWNyJE65nKfH(MwBp61@H1b>}#CcYm%KXOCceA857hNEY}<t>`w z+SFTWFMP0%ll7{WQy$=OY~1xdI{wCH|4{dJ^uMt)x0!Q$;jqC+6@ej|!`-?H<BOHy z9MY7Py*KLzrI|!xB_VO;-Q&^>@d6B7S?S9)5%dXs^(Gv8^SGJt_`SJj2dj;%-fTBG z@BbJ)2O4-<reLELuMOml8!eTS-5$?IEm4_JEYyK-%C}W^7f-N5`f5Gc@H6X~sD=tS zHC+4vgQ*c-a=Rw}$)h|qPB$7c(^#_hrCia|<4@^2J5~@QuP66wK<UaT<FA3A1!2{n z9xi@yb>Oe4iiEq-?LdcWRYG;>iVbs)0K(c%M1eQGhcmDaoL3J1lM%pV8G`-pn(yX8 zhx`ZL>brBwFnhUgDc-f^&GuDO=n%THggc-;3?|k>@rth7uowyR%NZ)xoj$&9hK~$h z^{N<o5~G~eusNFJs&F_awUcEQ>+NPFVM)@aQkkC%Jvk+%EF-gmhA?R%hv<0~Q3rB@ zj99}FNDR@C^GYkD0Fkz*jmbpQl$;?S5!ro}k$2mtnix!iuDi+!^_s3KqBuw()%VD! z-751ZMH5LRUCt@sQ<TNKe8!KIy?Ue>-G75-BNj-J&{W2B4Y_5sc3p{Ot<EV=u_CL? zuId@mGI~yWddU%8d2w^1U|KN9(^T?DY)w1L$xc!Uo!ls5O}AAa&B&c-GUfGsldqi3 zEWUa3g4N8pTj9z2@qPUuGi@+|vCGHrv&gm<B850(?8HyE>-`dKKffo>V@}0<PUNtW za7v3e-B)6NT<%D+)yPj&2>WV>XND)l7c90Z6`I8pQX5lNK-jEYe30)Odygm+_BD%e z0=B&DGmF0ST2~~e%t0l`E(fu}U|QUZIw=H0(H+A)o^>{7p<3S$N!NP8C!&EedR?<% zxIQOLpp!PH;WN8kR00y{g!sq?tI=v7KQ7BmF?05-e3X8O{L|_bzF9{Zfx%e_v}&m0 z=^zRcl~);@Pj)-O&rBP3mE<ykit#gokI+&e7b41_h!1up@K%648LBQ09>2wdgQb_g z1S$Q@omqE%r)2QzOkD@zXe3)O>3bTPdfe1BMCJ(#j_yvv^6W}T+;yfnt~dGEF@o$A zH?qC)L`hITm77SC4w#NT*=-cjz@<yvpMd(d88cFcpz-+IM<R}tk2>+Cy>~4<+2uxw zf~B;O<Z0&2X(FFhVm8S4vKA-8;-UZM@}T!WHtgL6qhlGGm7{ogP9x4*`6Axv7@w&e z`c%ZTn;8)ePNRW0UW8u#_nlo_q*s0J;2-W47X^1-(=>c=C!ErpYEB+*mCU+(O~{9y z-Y?7%KhGdOJxN6KgM&tDqei0XO86}o%~F@ZIoQ-HKo0>9=gi+x_`_VdMsg@qj@ zvSP0M1I<2t+>&)MH^x$`<3H~0rO6i0gr`Tn&?pG)dc=(eCL9Tfis}|6#I2j6#Z0xj zpXAcRxlUB92YcI(@+Nb>f)dQ>ca5918YvxHQ`|$1w}I@bo-vnnU~@jUNXs<@zc!UI z0!(aeJFSqRyR}R9Q^LXu!ljoLmJ<P~j2ydZL^^Zom`ox`w->Tg_*LQKHWi_Pe~VvL z#tMJNvne9?oESSNjn=+rH!5NBWf1u-$WxUcT9YOQ6eBBvzpl>Cy=U*A(AZQF)_X}v zmK9lxD@Z)iQ8AZ(<pAAV@%)SiX{4|sPI+?V6s5OerM%r|`a5p4y+kPemW4DgeJb{C znX0QO@fH~Y^|^hK+rb}ny-j%Yg#DeZ0#H$v9?dh|t0Yo76U{82ir@HpEzq3(81gH= zZmso6WHWD=%*@#a?Nw%>1gmXAlG)KpMy3vm6>V+%eWp=gnlAjNcH#c-5dTc1QcanR zJuJH!pO<I+$(1LB0oVv6Vl5yaBL4DMeEz2Y!Cr{k0bl<`E1aiSXsLQr?2qQ=_l=1j zooDyGFa=1n8&&NmwjA=~Sl!0NgM9q?ZHiafhmrdOZLqaD=xVFl4;j$s$t6WZwyk`B z#L8WjY<>Ed0`_5!KSxDH!TRq*KgZh%OkuJ>@^d;#LSBD@XKyi0Amn|v)t|vw)z=lL z+uX%&1`>z7Krel%rQ)J2mWyTAq~}<#kw2h1z-8H-CCC@K#H7n>kj9m;bw8fN<y8Gd zuXPu^iKW@|g#Gs!;}1viP5kG(L~pg+Kdc+Z39NUjR@wjGWdF~E1ls@AkTp+b{Tbcw zP#t`o14DzsAgto4Yx-AS3aQ=tg<`pyEj`VCs}Za8^ki;^&G5PSQC;59pj;?6^hq&w z^%jm<fhu`0SE`FHN))Y#&X2{WF5c-mk!8ZM;@(y_c}LT1c4Tl>^zP9z-Qj+@FvN4x z5f-4f+Fb1dv;T$+@i+W`Fuy(2&0SPX6w++#W2L;vHAuEM((thY5Wa|ex;A`IcpKN* zz;YA4Ea)gte2{#6ACCaYrpr&&E{xZ6JtATvz}1d5`5jQd!BoDS3XU)H!|ia~4-TPA z)!*jo|IafmjGe<}LLOu<Nu4YLgV~ISPMRye0#vI`lMI3zfDX!mlQ+PezKEFtNeaIf zJ-8S_Gvis#Qo}f$VZfqD$YvA8`W-ZXN(319pBs2Po3xuX=e6$yhlCIQ0_?0fp4#^v zR&a|1q(chZV}ZIrSP~8y)3=}-A>AZvAhi`vf7XZ_?8{MWM6C-jS${`gY7Pk4&Qvd) z%dL_30Ddek6F2%jBjD-4Cm4+J70+*gzDuRE@vkfLM?kAB?JrRWl)bkW_Kd(zcT`=H z2bj4WHWX>Shl%}~D0oKep+R>llS^^}Qhii2e-k`#={}L<Lan8)b?XFgHErKxb&08c z-=L=8umS8}GIuW2tM7yVGZ@!=zUB@9Vhe}t*aa=@;kcxr-350z09Hau2bKUt3ps!n z6Kv)r%$i-PF*iAYWfQ(PS`E%t;zRXdv9BizD7N*4Jk+ZPHv&?52WTJ=-e?7>{Xi7R zakCrhFCgsz5B_l{y=RmW;C<5&WUjOZI<CG)z;4A+lKl_BG-&S=B*l~lq<)+i50oey zQHi|*b{<u+xqdpY1lYY8{d!_SqZA^m^k~k5vqz~{tC_3*;mn>h1K`zo`?@^^LYOV} zB-rd0<?@Y)$ZR7n`1S}eyYV>#JJ`7$fK#Wz;ihugae=fbN%*b5BkF;PMv}s%)l9@h zeN^G!&|=o?h2y%6UdFNx%0S3Agl?|4NJ<Z=1PZGj!mfv}yGJA)q1x{$*jm3MLKi?W z28wo4*Q7DzxQNvt{#iC?4SodzW?3Jysd!6$bvqes|Ez`^aUOMdZdKgoECN%wN^Aj9 zP;Osuw5j7?J$|@@dWStb0hFnpUaYHrbk9Ur!_rhnhr1V;+9&0(CMz!n3L*ojZa&Jw zNBMEU`q!*Y@&Kw1F4D}ou!OVh?nCZ}%M`ApPzT^KX8lX$Am#kRyALPTRvE9*qWkGb TyF9%Fe!$>%y6j+X$DjQL2-=`4 diff --git a/packages/devtools_app/test/test_infra/goldens/settings_dialog_modified.png b/packages/devtools_app/test/test_infra/goldens/settings_dialog_modified.png index 2d48e121803b702ee042b2ca9f2acf4f534045bf..5439001a8accb58cf486fc5a3c43652fe2423e6e 100644 GIT binary patch delta 3221 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 delta 3216 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 diff --git a/packages/devtools_app/test/test_infra/test_data/memory/heap/heap_graph_fakes.dart b/packages/devtools_app/test/test_infra/test_data/memory/heap/heap_graph_fakes.dart index d33a587124c..ec6714acba0 100644 --- a/packages/devtools_app/test/test_infra/test_data/memory/heap/heap_graph_fakes.dart +++ b/packages/devtools_app/test/test_infra/test_data/memory/heap/heap_graph_fakes.dart @@ -24,16 +24,14 @@ class FakeHeapSnapshotGraph extends Fake implements HeapSnapshotGraph { @override // ignore: avoid-explicit-type-declaration, required to override base class. - final List<HeapSnapshotClass> - classes = <HeapSnapshotClass>[ + final List<HeapSnapshotClass> classes = <HeapSnapshotClass>[ _FakeHeapSnapshotClass(), _FakeHeapSnapshotClass.weak(), ]; @override // ignore: avoid-explicit-type-declaration, required to override base class. - final List<FakeSnapshotObject> - objects = <FakeSnapshotObject>[ + final List<FakeSnapshotObject> objects = <FakeSnapshotObject>[ _sentinelObject, FakeSnapshotObject(shallowSize: 1), // root ]; diff --git a/packages/devtools_test/lib/src/mocks/fake_service_manager.dart b/packages/devtools_test/lib/src/mocks/fake_service_manager.dart index d430dd1d715..33af9d074d3 100644 --- a/packages/devtools_test/lib/src/mocks/fake_service_manager.dart +++ b/packages/devtools_test/lib/src/mocks/fake_service_manager.dart @@ -180,8 +180,8 @@ class FakeServiceManager extends Fake @override // ignore: avoid-explicit-type-declaration, required to override base class. - final FakeServiceExtensionManager - serviceExtensionManager = FakeServiceExtensionManager(); + final FakeServiceExtensionManager serviceExtensionManager = + FakeServiceExtensionManager(); @override ConnectedApp? connectedApp = MockConnectedApp(); diff --git a/tool/lib/commands/run.dart b/tool/lib/commands/run.dart index 1ceade6b621..e0ecc6f7454 100644 --- a/tool/lib/commands/run.dart +++ b/tool/lib/commands/run.dart @@ -10,7 +10,7 @@ import '../utils.dart'; /// Runs the DevTools web app in debug mode with `flutter run` and connects it /// to a locally running instance of the DevTools server. -/// +/// /// To open a debug connection to the DevTools server, pass the `--debug-server` /// flag to this command. class RunCommand extends Command { diff --git a/tool/lib/model.dart b/tool/lib/model.dart index bfa84cd28f8..8d481e6f8f9 100644 --- a/tool/lib/model.dart +++ b/tool/lib/model.dart @@ -122,10 +122,10 @@ class DevToolsRepo { } else { final ancestor = result.firstWhereOrNull( (p) => - // Remove the last segment of [dir]'s pathSegments to ensure we - // are only checking ancestors and not sibling directories with - // similar names. - (List.from(dir.uri.pathSegments)..safeRemoveLast()) + // Remove the last segment of [dir]'s pathSegments to ensure we + // are only checking ancestors and not sibling directories with + // similar names. + (List.from(dir.uri.pathSegments)..safeRemoveLast()) // TODO(kenz): this may cause issues for Windows paths. .join('/') .startsWith(p.packagePath),