nushell/crates/nu-command/src
Sigurd afb7e1cf66
Allow tables and records as input to math commands (#11496)
# Description
The math functions `avg`, `max`, `median`, `min`, `product`, `stddev`,
`sum` and `variance` all takes a list as input and return a number.
<https://github.com/nushell/nushell/blob/main/crates/nu-command/src/math/utils.rs>
contains code that makes these functions work for tables (by running the
function on each column), but this functionality has not been accessible
because the input types are too strict. This PR remedies this.

The functions should also work on records, since a record is basically a
one-row table.

Most of these functions also make sense for durations and file sizes,
except `product` of course. There's an implementation issue with
`stddev` and `variance` for durations and file sizes, but they could in
principle support it.

# User-Facing Changes
This PR only adds supported types, and doesn't remove any, so there
should be no breaking changes.
2024-01-17 06:39:50 -06:00
..
bytes adjust some commansd input_output type (#11436) 2024-01-15 16:58:26 +08:00
charting Construct Records only through checked helpers (#11386) 2023-12-21 16:48:15 +01:00
conversions adjust some commansd input_output type (#11436) 2024-01-15 16:58:26 +08:00
database Fix memory consumption of into sqlite (#10232) 2024-01-15 21:41:25 -06:00
date Enforce required, optional, and rest positional arguments start with an uppercase and end with a period. (#11285) 2023-12-15 14:32:37 +08:00
debug adjust some commansd input_output type (#11436) 2024-01-15 16:58:26 +08:00
env adjust some commansd input_output type (#11436) 2024-01-15 16:58:26 +08:00
experimental Bump windows from 0.48.0 to 0.52.0 (#11325) 2023-12-21 18:49:15 +01:00
filesystem Add file attribute handling flag to cp (#11491) 2024-01-12 12:02:55 -06:00
filters adjust some commansd input_output type (#11436) 2024-01-15 16:58:26 +08:00
formats Support for disabling automatic escaping in to xml (#11536) 2024-01-14 07:36:53 -06:00
generators Fix incorrect handling of boolean flags for builtin commands (#11492) 2024-01-11 17:19:48 +02:00
hash adjust some commansd input_output type (#11436) 2024-01-15 16:58:26 +08:00
help adjust some commansd input_output type (#11436) 2024-01-15 16:58:26 +08:00
math Allow tables and records as input to math commands (#11496) 2024-01-17 06:39:50 -06:00
misc Enforce required, optional, and rest positional arguments start with an uppercase and end with a period. (#11285) 2023-12-15 14:32:37 +08:00
network Fix incorrect handling of boolean flags for builtin commands (#11492) 2024-01-11 17:19:48 +02:00
path check existance w/o traversing symlinks (#10872) 2024-01-14 07:33:33 +08:00
platform adjust some commansd input_output type (#11436) 2024-01-15 16:58:26 +08:00
random Enforce required, optional, and rest positional arguments start with an uppercase and end with a period. (#11285) 2023-12-15 14:32:37 +08:00
removed Enforce required, optional, and rest positional arguments start with an uppercase and end with a period. (#11285) 2023-12-15 14:32:37 +08:00
shells Enforce required, optional, and rest positional arguments start with an uppercase and end with a period. (#11285) 2023-12-15 14:32:37 +08:00
stor Simplify the feature gates for stor commands (#11416) 2023-12-24 13:31:46 +01:00
strings adjust some commansd input_output type (#11436) 2024-01-15 16:58:26 +08:00
system Do not block signals for child processes (#11402) 2024-01-15 16:08:21 -06:00
viewers adjust some commansd input_output type (#11436) 2024-01-15 16:58:26 +08:00
default_context.rs Add ulimit command (#11324) 2023-12-15 07:11:17 -06:00
example_test.rs feat: Add unfold command (#10489) 2023-09-30 09:08:06 -05:00
lib.rs Simplify the feature gates for stor commands (#11416) 2023-12-24 13:31:46 +01:00
progress_bar.rs cp progress bar implementation (#8012) 2023-02-22 11:57:38 -08:00
sort_utils.rs Convert Shellerror::GenericError to named fields (#11230) 2023-12-07 00:40:03 +01:00