mirror of
https://github.com/nushell/nushell.git
synced 2025-08-09 01:05:01 +02:00
Overlay keep (#5629)
* Allow env vars to be kept from removed overlay * Rename --keep to --keep-custom; Add new test * Rename some symbols * (WIP) Start working on --keep for defs and aliases * Fix decls/aliases not melting properly * Use id instead of the whole cloned overlay * Rewrite overlay remove for no reason Doesn't fix the bug but at least looks better. * Rename variable * Fix adding overlay env vars * Add more tests; Fmt + Clippy
This commit is contained in:
@ -2063,6 +2063,8 @@ pub fn parse_overlay_remove(
|
||||
)
|
||||
};
|
||||
|
||||
let keep_custom = call.has_flag("keep-custom");
|
||||
|
||||
let pipeline = Pipeline::from_vec(vec![Expression {
|
||||
expr: Expr::Call(call),
|
||||
span: span(spans),
|
||||
@ -2097,16 +2099,7 @@ pub fn parse_overlay_remove(
|
||||
);
|
||||
}
|
||||
|
||||
// let original_module = if call.has_flag("discard") {
|
||||
// None
|
||||
// } else if let Some(module_id) = working_set.find_module(overlay_name.as_bytes()) {
|
||||
// // TODO: Remove clone
|
||||
// Some(working_set.get_module(module_id).clone())
|
||||
// } else {
|
||||
// Some(Module::new())
|
||||
// };
|
||||
|
||||
working_set.remove_overlay(overlay_name.as_bytes());
|
||||
working_set.remove_overlay(overlay_name.as_bytes(), keep_custom);
|
||||
|
||||
(pipeline, None)
|
||||
}
|
||||
|
Reference in New Issue
Block a user