* Change alias shape inference to proposal of RFC#4
* Remove commented code
* Fix typo
* Change comment to be more informative
* Make match statement to lookup in table
* Remove resolved question
https://github.com/nushell/nushell/pull/2685#discussion_r509832054
* Pick ...or_insert_dependency functions into pieces
Previously there was get_shape_of_expr_or_insert dependency, now there is
get_shape_of_expr and get_shape_of_expr_or_insert_dependency
2 new functions have been added: get_result_shape_of_math_expr and
get_result_shape_of_math_expr_or_insert_dependency
* Remove flattening of deep binary expressions
Previously deep binary expressions have been flattened through the insertion of
fake vars. This logic was quite complicated. Now if a variable depends on the
result shape of a binary expression and the result shape can't be computed,
the variable simply depends on the whole binary.
* Change Expression::Variable(Variable::It(...)) to Expression::Variable(...)
* Simplify get_result_shapes_in_math_expr
* Simplify infer_shapes_in_binary_expr
* Clarify comment
* Clarify comment
* Fix clippy lint
* Move check for real var into checked_insert
* Remove comment
* Rename var
* added math round
* added math floor
* added math ceil
* added math.md examples
* moved the detection of nonnumerical values in ceil/floor/round
* math round now works on streams
* math floor now works on streams
* math ceil now works on streams
Continuing on anchoring and improvements on Nu's overall internal commands (#2635).
`move column` sub command has been turned into the command `move` since
we use it to move exclusively columns. Examples added as well.
Fixed it to carry along any anchor locations that might be in place if
table to be moved originates from other sources.
* Add parser improvements
Previously everything starting with "$" was parsed as a column path.
With this commit applied, the lite_arg starting with $ is parsed as
the most appropriate thing
- $true/$false ==> Expression::Boolean
- $(...) ==> Invocation
- $it ==> ColumnPath
- Anything with at least one '.' ==> ColumnPath
- Anything else ==> Variable
* Ignore failing tests
* refactor and cleanup to md
* Add padding around values in each row
* Add padding to test
* Update code to satisfy Clippy and pass other failing tests
* make sort-by fail gracefully if mismatched types are compared
* Added a test to check if sorted-by with invalid types exists gracefully
* Linter changes
* removed redundant pattern matching
* Changed the error message
* Added a comma after every argument
* Changed the test to accomodate the new err messages
* Err message for sort-by invalid types now shows the mismatched types
* Lints problems
* Changed unwrap to expect
* Added the -f flag to rm command
Now when you a use rm -f there will be no error message, even if the
file doesnt actually exist
* Lint problems
* Fixed the wrong line
* Removed println
* Spelling mistake
* Fix problems when you mv a file into itself
* Lint mistakes
* Remove unecessary filtering in most cases
* Allow the removal of sockets
* Conditional compilations to systems without socket
* Add a size-format option to ls command
* Added kib and mib formating
* Make patterns lowercase
* New subcommand to format, filesize
* Forgot the linter once more
* Remove the ls changes since its no longer needed
* CI mistakes
* Lint stuff
* Fix lint
* Added formatting for bytes
* fix lint
* Changed the usage comment
* First draft for adding a `pretty` flag to `to md`
* rustfmt
* Fix Clippy warnings
* rustfmt
* Using Clippy suggestion broken code, reverting and putting in a statement to ignore clippy warning
* Add test for `to md -p`
Multiline pastes wait for the user to hit enter before running,
because they enter a special paste mode in rustyline called
'bracketed paste' by default. This commit disables that mode
by default for nushell, causing multiline pastes to be executed
immediately, treating each new line as a separate command.
* xpath prototype
* new xpath engine is finally working
* nearly there
* closer
* working with list, started to add test, code cleanup
* broken again
* working again - time for some cleanup
* cleaned up code, added error handling and test
* update example, fix clippy
* removed commented char
Nu has many commands that allow the nuño to customize behavior such
as UI and behavior. Today, coloring can be customized, the line editor,
and other things. The more options there are, the higher the complexity
in managing them.
To mitigate this Nu can store configuration options as nested properties.
But to add and edit them can be taxing. With column path support we can
work with them easier.
* [wasi] Update time & instant crates
In https://github.com/nushell/nushell/pull/2643 instant was updated by adding it as a hard dependency in Cargo.toml, but it's better to avoid it and only update in Cargo.lock via `cargo update -p ...`.
Additionally, updated `time` crate so that now some basic commands like `ls` work too, although formatting is pretty bad.
* Update default terminal width to 80
If termsize can't return anything, use 80 chars (e.g. on WASI).