debugger: Do not include Rust in default value for sourceLanguages
(CodeLLDB config) (#33670)
- **debugger: Update exception breakpoints list on capability update** - **Do not prefill codelldb sourcelanguages by default** Release Notes: - debugger: CodeLLDB no longer enables pretty-printers for Rust by default. This fixes pretty-printers for C++. This is a breaking change for user-defined debug scenarios from debug.json; in order to enable Rust pretty printing when using CodeLLDB, add `"sourceLanguages": ["rust"]` to your debug configuration. This change does not affect scenarios automatically inferred by Zed. --------- Co-authored-by: Anthony Eid <anthony@zed.dev>
This commit is contained in:
parent
bff5d85ff4
commit
2caa19214b
6 changed files with 90 additions and 21 deletions
|
@ -1479,6 +1479,28 @@ impl Session {
|
|||
}
|
||||
Events::Capabilities(event) => {
|
||||
self.capabilities = self.capabilities.merge(event.capabilities);
|
||||
|
||||
// The adapter might've enabled new exception breakpoints (or disabled existing ones).
|
||||
let recent_filters = self
|
||||
.capabilities
|
||||
.exception_breakpoint_filters
|
||||
.iter()
|
||||
.flatten()
|
||||
.map(|filter| (filter.filter.clone(), filter.clone()))
|
||||
.collect::<BTreeMap<_, _>>();
|
||||
for filter in recent_filters.values() {
|
||||
let default = filter.default.unwrap_or_default();
|
||||
self.exception_breakpoints
|
||||
.entry(filter.filter.clone())
|
||||
.or_insert_with(|| (filter.clone(), default));
|
||||
}
|
||||
self.exception_breakpoints
|
||||
.retain(|k, _| recent_filters.contains_key(k));
|
||||
if self.is_started() {
|
||||
self.send_exception_breakpoints(cx);
|
||||
}
|
||||
|
||||
// Remove the ones that no longer exist.
|
||||
cx.notify();
|
||||
}
|
||||
Events::Memory(_) => {}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue