Skip to content

Commit 5a44711

Browse files
committed
Add other debug args for dap
1 parent 8d66e07 commit 5a44711

File tree

3 files changed

+22
-2
lines changed

3 files changed

+22
-2
lines changed

lsp-dart-dap.el

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff 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

lsp-dart-test-support.el

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff 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)

lsp-dart-utils.el

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff 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

0 commit comments

Comments
 (0)