File tree Expand file tree Collapse file tree 3 files changed +22
-2
lines changed Expand file tree Collapse file tree 3 files changed +22
-2
lines changed Original file line number Diff line number Diff line change @@ -115,6 +115,12 @@ Required to support 'Inspect Widget'."
115115 " npm" " install" " --prefix" (f-join lsp-dart-dap-debugger-path " extension" )
116116 " --no-package-lock" " --silent" " --no-save" ))
117117
118+ (defun lsp-dart-dap--capabilities-debugger-args (conf )
119+ " Add capabilities args on CONF checking dart SDK version."
120+ (-> conf
121+ (dap--put-if-absent :useWriteServiceInfo (lsp-dart-version-at-least-p " 2.7.1" ))
122+ (dap--put-if-absent :debuggerHandlesPathsEverywhereForBreakpoints (lsp-dart-version-at-least-p " 2.2.1-edge" ))))
123+
118124(defun lsp-dart-dap--base-debugger-args (conf )
119125 " Return the base args for debugging merged with CONF."
120126 (-> conf
@@ -128,7 +134,8 @@ Required to support 'Inspect Widget'."
128134 (dap--put-if-absent :debugSdkLibraries lsp-dart-dap-debug-sdk-libraries)
129135 (dap--put-if-absent :flutterPath (lsp-dart-flutter-command))
130136 (dap--put-if-absent :flutterTrackWidgetCreation lsp-dart-dap-flutter-track-widget-creation)
131- (dap--put-if-absent :useFlutterStructuredErrors lsp-dart-dap-flutter-structured-errors)))
137+ (dap--put-if-absent :useFlutterStructuredErrors lsp-dart-dap-flutter-structured-errors)
138+ lsp-dart-dap--capabilities-debugger-args))
132139
133140; ; Dart
134141
Original file line number Diff line number Diff line change @@ -167,6 +167,7 @@ TEST-RANGE is the test method range."
167167 (overlay-put overlay 'before-string
168168 (concat spaces
169169 (propertize " Run"
170+ 'pointer 'hand
170171 'help-echo " mouse-1: Run this test"
171172 'mouse-face 'lsp-lens-mouse-face
172173 'local-map (-doto (make-sparse-keymap )
@@ -178,6 +179,7 @@ TEST-RANGE is the test method range."
178179 (propertize " |" 'font-lock-face 'lsp-lens-face )
179180 separator
180181 (propertize " Debug"
182+ 'pointer 'hand
181183 'help-echo " mouse-1: Debug this test"
182184 'mouse-face 'lsp-lens-mouse-face
183185 'local-map (-doto (make-sparse-keymap )
Original file line number Diff line number Diff line change @@ -139,9 +139,20 @@ FLUTTER_ROOT environment variable."
139139 split-string
140140 (nth 3 )))
141141
142+ (defun lsp-dart-version->number (version )
143+ " Transform VERSION into a comparable version number."
144+ (--> version
145+ (replace-regexp-in-string " [[:alpha:]|-]+" " " it nil 'literal )))
146+
147+ (defun lsp-dart-version-at-least-p (version )
148+ " Return non-nil if Dart SDK version is at least VERSION."
149+ (let ((sdk-version (lsp-dart--get-dart-version)))
150+ (version<= (lsp-dart-version->number version)
151+ (lsp-dart-version->number sdk-version))))
152+
142153(defun lsp-dart-assert-sdk-min-version (version )
143154 " Assert dart sdk min version is VERSION."
144- (cl-assert (string< version ( lsp-dart--get-dart- version) )
155+ (cl-assert (lsp-dart-version-at-least-p version)
145156 t
146157 " Feature not supported before dart SDK %s" ))
147158
You can’t perform that action at this time.
0 commit comments