- Update to version 0.92.1:
* The configured hooks should again properly affect the scope
(e.g. virtualenv integrations using a hook to activate
as an overlay).
* mkdir/touch did not correctly resolve relative paths after
using cd.
* The default config file created by 0.92.0 assumed
that you built with the default feature set including
the system-clipboard. This is not working on platforms like
Android/Termux (termux builds with default-no-clipboard).
Now we only create keybindings in config.nu that are supported
on all platforms and provide suggestions as comments.
* The timing of drop notifications sent to plugins has been
corrected.
OBS-URL: https://build.opensuse.org/request/show/1165001
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=53
- Update to version 0.92.0:
* External command output changes.
* Scoped file redirections.
* Tilde expansion.
* Support for XDG_CONFIG_HOME.
* Incorporating the extra feature by default.
* Persistent plugins.
* Plugin API overhaul.
* Plugin engine calls.
* Improved plugin custom values.
* Plugin test support crate.
* Official plugin template.
* Debugging support and proof-of-concept profiler.
* Support for binary data in explore.
* Performance improvements.
* Bug fixes:
- Make autocd return exit code 0.
- into sqlite: Fix insertion of null values.
- Fix return in filter closure eval.
- fix: use environment variables to prevent command_not_found
from recursing.
- Fix: missing parse error when extra tokens are given to
let bindings.
- to json -r not removing whitespaces fix.
- Fix usage of --tabs flag while converting to json.
- Fix inaccurate sleep duration.
- Use rest argument in export use to match use.
- Adjust permissions using umask in mkdir.
- fix ls with empty string.
- Fix up ctrl+C handling in into sqlite.
- Fix unexpected sqlite insert behaviour (attempt 2).
- Fix: lex now throws error on unbalanced closing parentheses
(issue #11982).
- Fix: Convert help example results to text.
- Remove unused/incorrect input type from start.
- fix du --exclude globbing bug.
* New commands:
- plugin list.
- plugin stop.
- debug profile.
- uname.
- query db --params.
- detect columns --guess.
* Changes to existing commands:
- echo.
- table.
- into bits.
- nu-check.
- mkdir.
- ls.
- version.
- filter.
- insert.
- do.
- complete.
- ignore.
- export use.
- sleep.
- into sqlite.
- to json.
- du.
- histogram.
- into string.
* Deprecated commands:
- run-external flags.
* Removed commands:
- str escape-glob.
OBS-URL: https://build.opensuse.org/request/show/1164255
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=52
- Update to version 0.91.0:
* Handling globs for variables.
* Plugin protocol overhaul.
* Stderr pipeling support.
* REPL stability and panic recovery.
* ur set of commands is evolving.
* New commands:
- 'tee'
- 'interleave'
- 'is-not-empty'
- 'commandline'
* Changes to existing commands:
- 'zip' supports closures.
- 'bits' supports binary values.
- 'into int --signed'
* Migrating more commands to use 'uutils'
* List spreading for filesystem commands.
* Duplicate record keys now error.
* Removing list of cell path support.
* Deprecated commands:
- 'str escape-glob'
- Certain flags for 'commandline'.
* Removed command:
- 'umv' has been renamed to 'mv'.
- 'umkdir' has been renamed to 'mkdir'.
OBS-URL: https://build.opensuse.org/request/show/1155406
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=51
- Update to version 0.90.1:
* New Reedline coolness.
* From this release, we unified glob rules for the following
commands: open, rm, cp, umv, mv, du, ls.
* Parse-time evaluation.
* Integration of more uutils commands.
* Dataframes: allow specifying schema.
* New CLI flag: --no-history.
* Strict JSON parsing.
* Our set of commands is evolving.
* New commands:
- Apart from commands already mentioned above, into cell-path
can now be used to create cell paths dynamically.
* Breaking changes:
- 'query web --query' should return 'list<list<string>>'
like the scraper crate's 'ElementRef::text()'
- Fix precedence of 'not' operator.
- hide std testing.
- Remove '--flag: bool' support.
- Plugin explicit flags.
- Fix parsing of strings with special characters.
- Allow plugins to receive configuration from the nushell
configuration.
* Full changelog:
- https://www.nushell.sh/blog/2024-02-06-nushell_0_90_0.html
OBS-URL: https://build.opensuse.org/request/show/1144980
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=50
- Update to version 0.88.0:
* Bug fixes:
- into binary -c: return 0 as single byte.
- Fix table nested list indices are off after 1 "chunk".
- tweak table example/parameter text.
- add "default" table theme.
- correct table example syntax.
- optimize/clean up a few of the table changes.
- Fix the output type for 'view files'.
- Fix toolkit to run workspace.
- fix the link to the nu_scripts in std clip deprecation.
- cp target expansion.
- Add metadata to some filters.
- Revert "Adding support for Polars structs".
- Fix spans passed to external_completer.
- Add boundary check for str index-of.
- When using redirection, if a command generates non-zero exit
code, the script should stop running.
- Fix span of invalid range.
- Fix capacity overflow caused by large range of ports.
- Fix get -i ignoring errors for only the first cellpath.
- Fix Option<&str> == Option<&String> build error when using
rust_decimal/rkyv feature.
- Add checks for ports.
- Fix highlighting of spread subexpressions in records.
- Fix overlay_use_main_not_exported hanging when an external
spam command exists.
- Fixes markdown formatting on LSP hover.
- Add more descriptive error message when passing list to from_csv.
- Respect non-zero exit code in subexpressions and blocks.
- Error on use path item1 item2, if item1 is not a module.
- Match ++= capabilities with ++.
* New spread operator for list and record literals.
* Passing boolean switches dynamically.
* Redirection to standard streams is getting better.
* One-time theming of tables is there.
* Exposing name of script to the wild.
* Parsing human-friendly dates into Nushell values.
* Show found externals via syntax highlighting in the REPL.
* New "out of bound" error.
* In the previous release, the extern-wrapped command has been
deprecated and it is now being removed. An issue did persist
though, making def --wrapped not a suitable replacement for
the old command... which was fixed.
* Restricting use of internal variables.
* A small update on the LSP.
* New commands:
- is-terminal.
- std null-device.
- mktemp.
- stor.
* Removed commands:
- 'extern-wrapped' and 'export extern-wrapped' in favor of 'def --wrapped'.
- '--not' from 'glob' in favor of '--exclude'.
- 'size' in favor of 'str stats'.
- 'unfold' in favor of 'generate'.
- 'def-env' and 'export def-env' in favor of 'def --env'.
* Breaking changes:
- Respect non-zero exit code in subexpressions and blocks
Starting with this release, if a subexpression (eg (echo foo.txt))
or block (eg if true { echo foo.txt } evaluated to a non-zero
exit code, it will no longer be lost and instead will be
the exit code of that expression. This allows them to act
more naturally when an external command fails.
- No longer allow '{a: 1, a: 2}'.
- remove 'def-env' and 'export def-env'.
- remove 'extern-wrapped' and 'export extern-wrapped'.
- remove the 'unfold' command.
- remove 'size' command in favor of 'str stats'.
- remove '--not' from 'glob'.
- nu-table/ Add '-t/theme' argument && Replace '-n/start-number'
with '-i/index' To make how to update the table numbering
more clear, we've replaced 'table -n' with 'table -i/table --index'.
* Full changelog:
- https://www.nushell.sh/blog/2023-12-12-nushell_0_88_0.html.
OBS-URL: https://build.opensuse.org/request/show/1132788
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=47
- Update to version 0.87.1:
* Nushell's cp command in 0.87.0 did not correctly handle
changes to the directory by the Nushell internal cd when
invoked inside a block. Furthermore the rm command was not
able to correctly handle paths requiring expansion.
* Removed Source2: cargo_config, cargo_config is no longer
created - it's part of the vendor.tar
OBS-URL: https://build.opensuse.org/request/show/1127807
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=46
- Update to version 0.87.0:
* Bug fixes:
- fix the flag type on release-pkg.nu
- update release-pkg.nu with updated manual instructions.
- remove the last mention to let-env
- Do not use white text in the default light theme.
- fix: Ensure consistent vals and cols when parsing
with --flexible.
- Fix describe -d for lazy records.
- updated NU_LIB_DIRS delimiter for command line.
- redirection: fix internal commands error with o+e> redirection.
- sync $env.config.filesize.metric.
- use to_lowercase in str downcase.
- fix: preserve path when completing intermediate directory.
- Improve case insensitivity consistency.
- Add "shape_keyword" to default config.
- Fix issues with error make refactor.
- Fix (http) get HTTP_PROXY from $env.
- allow items to properly evaluate block settings.
- fix custom command's default value.
* Enhancing the documentation.
* Changes to the internals of Nushell.
* LSP is coming to Nushell.
* Living in the terminal: completions and hints.
* Handling exotic paths.
* Improving the match command.
* Pipeline redirections.
* Some work on the standard library.
* New allowed operands to the modulo operator.
* Disallowing invalid table definitions and manipulations.
* The documentation becomes better.
* Some progress in the "dataframe" department.
* Our set of commands is evolving.
* Changes to existing commands.
* Deprecated commands:
- extern-wrapped in favor of def --wrapped.
- def-env in favor of def --env.
- unfold in favor of generate.
- size in favor of str stats.
- glob --not in favor of glob --exclude.
* Removed commands:
- the $nothing variable.
- random integer in favor of random int.
- profile.
* Breaking changes:
- Improve case insensitivity consistency.
- Refactor error make.
- Change input list to return null.
- Disallow duplicated columns in table literals.
- Improve registry value return types.
- Finish removing profile command and related data.
- remove random integer in favor of random int.
- Remove to xml --pretty.
- remove the $nothing variable
* Full changelog:
- https://www.nushell.sh/blog/2023-11-14-nushell_0_87_0.html
OBS-URL: https://build.opensuse.org/request/show/1126838
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=45
- Update to version 0.86.0:
* Bug fixes:
- Fix exponential parser time on sequence of [[[[.
- Fix tilde-expansion for multi-byte unicode chars.
- Improve select row perf for large N.
- Prevent cubic time on nested parentheses.
- fix public boolean switches in the standard library.
- std dt datetime-diff: fix uninitialized field ref when
borrowing.
- Fix default argument value type checking.
- fix magenta_reverse and friends.
- nu-table: Fix failing test (relied on termwidth assumptions).
- Fix editor config for reedline and config nu/env.
- Fix Default Prompt Tilde Insertion Logic.
- fix windows default prompt slash direction.
- fix: complete paths surrounded by quotes or backticks.
- ucp: Change error when directory is specified
but not recursive.
- nu-explore: Try to fix a truncation issue in expand view.
- Fix wrong parsing of signatures in predecl scan.
- Fix parsing of signature inp/out types in predecls.
- fix labelled error from shell error.
- Fix registry query flag validation.
- Fix clippy in registry_query.rs.
- fix clippy.
- Fix output types of math commands to be narrower.
- nu-table: Use config color scheme in kv tables and table -e.
- fix: only escape path containing numbers if they can
be valid floating points.
- evaluate $nu during --ide-check.
- allow early return outside of main.
- Preserve relative paths for local files.
- glob with ../ prefix now works;.
- Add support for HTTP proxy in network commands.
* Enhancing the documentation.
* Improving the completions in the REPL.
* The type system.
* Unified command definitions.
* Some news with the standard library.
* Nushell now supports the keyboard enhancement protocol from
Kitty with the work of @Abdillah in #10540. This feature is off
by default but can be turned on in config.nu with
the $env.use_kitty_protocol config option.
* New commands.
* Changes to existing commands.
* Deprecated commands:
- random int in favor of random integer.
- the $nothing built-in variable in favor of the null.
- to xml --pretty {int} in favor of to xml --indent {int}.
* Removed commands:
- random decimal in favor of random float.
- into decimal in favor of into float.
* Breaking changes:
- differentiating between --x and --x: bool.
- Use heck for string casing (again)
- remove into decimal.
- remove random decimal.
- Remove cd w/ abbreviations.
- Rename: change the SyntaxShape of -c flag from list to record.
* Full changelog:
- https://www.nushell.sh/blog/2023-10-17-nushell_0_86.html
OBS-URL: https://build.opensuse.org/request/show/1118397
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=44
- Update to version 0.85.0:
* Bug fixes:
- Fix tab completion order of directories to consistent with
order of files.
- Fix 9156 endian consistency.
- fixed usages of deprecated chrono DateTime::from_utc.
- Fix inspect output header may be misaligned.
- Fix example history command pipeline.
- fix default after an empty where.
- handle empty pipeline while parsing let.
- Fix variables not allowed in ucp.
- fix#10319: allow json request of value type list.
- fix 'let' to properly redirect.
- fix the pretty printing of failing tests in std.
- fix input --until-bytes: now stops at any of given bytes.
- nu-table: Fix expand table unnessary color in trail head
config when wrap is used.
- fix some new chrono warnings.
- prevent crash when use redirection with let/mut.
- Allow operator in constants.
- nu-table: Patch restore lead trail space bg color.
- nu-table: Strip custom color in the header when used on border.
* Consistent use of float for our floating point type.
* Some updates on explore.
* Improvements to parse-time evaluation.
* Improving accessibility.
* Improved history isolation.
* Full changelog
https://www.nushell.sh/blog/2023-09-19-nushell_0_85_0.html
OBS-URL: https://build.opensuse.org/request/show/1112668
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=43
- Update to version 0.84.0:
* New features:
- str replace matches substring by default.
- Constants from modules.
- New options for more compact table display.
- More consistent format ... commands.
- scope commands enhancements.
- http commands now handle headers better.
- Work on the optional dataframe features.
- Changes to other commands.
- Command organization.
- Deprecation and removal of commands.
- A panic when parsing the context of let assignments has
been fixed.
- Invoking --help on a script with a def main command will now
report the script's name instead of a more confusing main.
- Serious bugs in parse that produced incorrect output when
given a long input stream have been fixed.
* Bugfixes:
- Fix ~ | path type returning empty string.
- Fix the panic when type a statement similar
to let f = 'f' $ in the nushell.
- Revert #9693 to prevent CPU hangs.
- Nothing has the correct return type.
- Force version to update when installing with toolkit.nu
- Fix panic with lines on an error.
- Fix watch not handling all file changes.
- Fix a crash when moving the cursor after accepting
a suggestion from the help menu.
- Fix parser to not update plugin.nu file on nu startup.
- nu-table: Fix padding 0 width issues.
- Remove potential panic from path join.
- Fix wrong path expansion in save.
- nu-table: Fix issue with truncation and text border.
- Fix default_env.nu after latest changes to str replace.
- Allow return to return any nushell value.
- Fix into datetime to accept more date/time formats.
* Full changelog
https://www.nushell.sh/blog/2023-08-22-nushell_0_84_0.html
OBS-URL: https://build.opensuse.org/request/show/1105343
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=41
- Update to version 0.83.0:
* Fixes, stabilization and shoutouts:
- Redirection: make o>, e>, o+e>'s target support variables
and string interpolation.
- Fix broken constants in scopes.
- Fix: return all headers with the same name from http <method>.
- make the behaviours of last and first more consistent.
- Fix explore crashes on {}.
- Fix: update engine_state when history.isolation is true (#9268).
- Fix headers command handling of missing values.
- fixes which showing aliases as built-in nushell commands.
- fix the command cp -u src dst/mv -u src dst doesn't work when the…
* Changes to commands:
- which returns the type of the command instead of only whether
it is builtin or not and uses more explicit column names.
- str expand now allows empty member in brace expansion, e.g.
A{,B,C} would expand to [A, AB, AC].
- keybinding listen gives more information about keys like
home and end, namely their kind and state.
- input listen allows to query for a single key press, e.g.
the following will take a 4-char input 1..4 | each
{ input listen } | where key_type == char | get code | str join.
_ path commands lose the -c flag; instead, use update
to update table columns.
* Until now, declaration keywords such as let and mut have
required the use of parentheses around pipelines to assign
the output of a chain of command to a variable. this syntax
has been relaxed for let and mut. Let's give some examples!
* Input / output type checking and annotations.
* Configuration tweaks.
* The standard library.
* Breaking changes:
- Removal of let-env (now use the $env.FOO = "BAR" form instead).
- Stricter checking of input/output types.
OBS-URL: https://build.opensuse.org/request/show/1100970
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=39
- Update to version 0.82.0:
* Custom datetime format.
* Support for comments in multiline pipes.
* Continuing cratification effort.
* Splitting the $nu variable.
* Entering Linguist support.
* REPL: Mark line entries as excluded from the history
by leading with a space.
* New commands:
- http options.
- scope aliases.
- scope commands.
- scope engine-stats.
- scope modules.
- scope variables.
- scope.
* Breaking changes:
- Clean up config by removing legacy options that were
previously deprecated.
- Split $nu variable into scope commands and simpler $nu.
- The filesize prefixes Z/Zi have been removed as their
underlying values where not correctly representable.
- In the ls --long output the uid column has been renamed
to user to be consistent with group.
- Don't allow save command to save both stdout and stderr to
the same file.
OBS-URL: https://build.opensuse.org/request/show/1096449
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=38
- Update to version 0.79.0:
* Standard library.
* enhanced IDE support in our VS code extension.
* atuin now supports Nushell.
* Relaxed parsing rules.
* Removed old alias implementation.
* Changes to default files locations.
* Breaking changes:
- old-alias is no longer available.
- str index-of -r now uses ranges.
- config nu and config env now open $nu.config-path and
$nu.env-path, respectively.
- Aliasing math expressions now shows error immediately instead
of failing silently and showing a confusing error later.
- exec inherits Nushell's environment variables.
- NU_LIB_DIRS definition in env.nu changed.
OBS-URL: https://build.opensuse.org/request/show/1082849
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=35
- Update to version 0.78.0:
* Pattern matching.
* Aliases now can shadow.
* Old alias still keeps working.
* Speed improvements.
* Optional cell path members.
* better error handling in error make.
* Support for pretty output format in to nuon.
* Breaking changes:
- let requires surrounding parentheses for saving command output.
- || now required in closures.
- We no longer automatically print values as part of a script.
- Bare words can't start with a number.
- Fields can only be defined once.
- Thread configuration moves to par-each.
- Ranges become the standard range specifier.
- Alias recursion has been disabled.
- Empty lists handled more consistently.
- Comparison operators now allow null.
OBS-URL: https://build.opensuse.org/request/show/1077554
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=34
- Update to version 0.77.0:
* Reworked aliases (Breaking changes!).
* More consistent timestamp handling.
* New XML format.
* New additions to $nu.
* Reworked http subcommands.
* Breaking changes:
- Alias changes, see above.
- env command has been removed, use $env instead
(https://github.com/nushell/nushell/pull/8185).
- str trim no longer has --all, --both, and --format flags.
str replace should be an adequate replacement; please
let us know if it is not (#8205).
+ The changes to timestamp handling noted above (#8244)
can require code changes to existing scripts:
- Saved data containing the results of an old
datetime-to-timestamp conversion will not deserialize
correctly when read back by the current version of Nushell.
In general, Nushell will produce incorrect datetime
values without noting an error.
- <int> | into datetime now assumes nanosecond scaling
for all timestamps. You must ensure all timestamps computed
by your script or retrieved from external sources
are scaled appropriately.
- <date> | into int can now fail, as noted above. You cannot
rely on this operation to persist a arbitrary date.
- The change to from xml and to xml commands noted above (#7947)
will require to update scripts relying on old
output/input format.
- mkdir, cp, mv and rm return nothing. Errors and actions with
--verbose flag are printed to stderr instead (#8014).
- Plugin authors relying on nu_protocol::Value may need to
update their code to account for a change
to Value::Error (#8375).
- Different types of lists can now be appended.
This can break scripts that were relying on the stricter
bhavior (https://github.com/nushell/nushell/pull/8157).
OBS-URL: https://build.opensuse.org/request/show/1071901
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=32
- Add constraints. Make 12GB of physical memory.
- Update to version 0.76.0:
* Fix PATH vs Path for command completions
* New debugging commands
- ast
- debug
- explain
* BREAKING CHANGES:
- load-env can not accidentally set $env.PWD anymore
- The --numbered flag to enumerate entries has been removed from each, par-each,
each while, and reduce. Use the enumerate command added in 0.75 instead.
- Plugin system: nu_plugin::Plugin::signature has changed from
fn signature(&self) -> Vec<Signature> to fn signature(&self) -> Vec<PluginSignature>
to support examples on plugin commands. Plugin authors have to update
the relative structure to apply these changes. Normally you just need to
perform a global search/replace from Signature to PluginSignature,
then rebuild and run with the latest nushell version.
- benchmark renamed to timeit.
- dataframe commands renamed with a prefix of dfr
- view-source renamed to view source
- Plugin commands can now include examples, which necessitated a change to
the plugin signature, which causes all plugins to need to be recompiled for use
- from ini, from vcf, from ics, from eml commands are moved to
plugin called nu_plugin_formats to reduce the number of commands in nushell
core, you need to install and register the plugin manually to use these command
- str lpad and str rpad have been superceeded by fill in order to provide alignment
- http get -t,--timeout parameter is now -m,--max-time.
- Filesystem commands now print to stderr when using --verbose flag
- The parse command will now create 0 indexed columns instead of 1 indexed
- Use zstd compression for vendored tarball
This SR is to address redundant changelog
OBS-URL: https://build.opensuse.org/request/show/1067092
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=31
- Update to version 0.74.0:
* Known externals commands and exec now have "fall-through"
signatures.
* help is now more helpful.
* Initial support for parse-time constants.
* New url encode command to percent-encode URLs.
* values command to programmatically interact with records.
* get, select, cell path access on tables will now error when
encountering a hole.
* Behavior of -i/--ignore-errors flag for get and select when
the entire column is absent has changed.
* Certain misused punctuation in def definitions are now errors.
* $in now works in catch closures.
* MIME-types are supported in ls with an additional flag.
* Regular expression queries are cached for performance.
* All built-in commands now declare their pipeline input
and output types.
* get and select now error when encountering a hole.
* the behaviour of -i on get and select has changed.
* columns will now error for data that is not a table or a record.
* The dataframe specific command fill-na has been renamed to
fill-nan to better represent its capabilities.
* The requirements for the names of a nu command and a command
alias have been tightened to avoid some problems.
* to toml will only produce output for records now as the output
for tables is ambiguous and may be invalid to parse.
* exec and known externals don't throw errors when unknowns
parameters are passed to them.
* help command has been thoroughly refactored and includes
several more subcommands. help <word> now matches commands,
aliases, and modules.
* command names in help commands and $nu.scope.commands are
displayed correctly if they were imported from a module
with a prefix.
* hide command no longer hides environment variables.
Use hide-env instead.
* math eval has been removed in favour of the direct math
commands and expressions (see help operators as well).
* last, skip, drop, take until, take while, skip until,
skip while, where, reverse, shuffle, and sort-by are now
stricter about which types of data they accept.
OBS-URL: https://build.opensuse.org/request/show/1057754
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=29
- Update to version 0.73.0:
* The boolean && is now and and the boolean || is now or.
These were deprecated in the 0.72 release and have now been
removed. Existing scripts will need to be updated to the
new syntax to run in 0.73.
* Experimental interactive explore command.
* New math commands.
* Changes to commands with predicates:
any, all, skip until, skip while, take until, and take while
now accept a closure instead of a row condition.
* New filter command and simpler where.
* New command uniq-by.
* Mutable data structures can now have their inner values mutated
using =.
* More sophisticated coloring of data values using closures.
* save no longer overwrites files by default, you must use the
new -f/--force flag to overwrite an existing file.
* split row command will retain an empty string if splitted
string is empty.
* split list now properly removes the separator in all positions.
* The --show-created-paths flag has been replaced by --verbose
from mkdir.
* fetch removes --output, --bin, --append flags, use fetch with
save to save fetched page to a file.
* changes to how get works with deep cell paths.
* mkdir's -s/--show-created-paths has been renamed to
-v/--verbose for better consistency.
* && is now and and || is now or.
* any, all, skip until, skip while, take until, take while
now take only a closure as an argument.
* where now takes only row condition argument, -b flag removed.
- Update to version 0.72.1:
* With this release, we have also statically linked OpenSSL
into the binary to make it easier to use across a larger range
of platforms.
OBS-URL: https://build.opensuse.org/request/show/1044002
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=28
- Update to version 0.72.0:
* Try/catch. Starting with 0.72, it's now much easier to run
a command that might fail and then handle the failure
if it happens.
* Auto-expanding data views. With the new default config,
we now also detect the terminal width and will automatically
expand the data view to include more information
if it's available.
* Redirection. This release also includes a new way
of redirecting the stdout and/or stderr of external commands.
This gives easier access to the output streams than was
previously possible.
* Closures/blocks. We have now split closures and blocks into
two separate value types. A closure can have parameters,
can close over variables outside of its scope,
and can be passed as a value.
* Mutation. Starting in this release, you can create local
mutable variables. You can create mutable variables using
the mut keyword.
* Loop/while. The 0.72 release also includes a few new
looping commands: loop and while.
* Break/continue. Loops can now also use the break and continue
feature common in many programming languages. break will break
out of the current loop. And continue will continue the loop
at the next iteration.
* Return. The 0.72 release also includes the ability to return
early from a closure or command.
* Command refinement, simplification, and elimination.
* Dataframes no longer included by default - smaller binaries.
* Allow reloading overlay definitions.
* virtualenv activation changes.
* Nu's SQLite DSL commands have been removed.
open foo.db and open foo.db | query db "SELECT * ..." still work,
but the commands which mapped 1-to-1 with SQL clauses
(ex: open foo.db | into db | select * | from table some_table
| order-by some_column) have been removed. These commands were
an interesting experiment but they didn't work out,
and we're removing them to simplify database access in Nu.
* The is_plugin, is_custom, and is_keyword columns in
help commands have been replaced with a single
command_type column.
* date format now returns an error if not given an input.
Previously it would default to the current time.
* first and last will now return an error if given a negative index.
Previously the behavior was undefined and may have returned
entries due to an underflow.
* The --predicate flag has been removed from find. where can be
used in all situations where find --predicate was previously used.
* sort-by now requires a column name to sort by.
To sort lists without specifying a column name, sort can be used.
* seq, seq char, and seq date no longer have --separator and
--terminator flags (#7045, #7054, #7096). This helps ensure
that the return type for those commands is consistent,
and str join can be used to accomplish the same effect.
* The build-string command has been removed. To concatenate strings,
use the + operator, string interpolation, or str join.
* wrap now expands ranges. It works the same as with lists or seq.
* url parse url scheme, url host, url path, and url query
commands have been removed. We added the command url parse.
This new command returns a Record with scheme, username,
password, host, path, query, params (as a Record) and fragment.
* sort, sort-by, str contains and find have had their
--insensitive flags renamed to --ignore-case.
--ignore-case is used by uniq, as well as popular external
commands like less, grep and wget, so it could be considered
a standard flag name.
* New boolean operator xor - Planned operator simplification.
To complement our logical boolean operators and/&& and or/||
we added boolean xor. This is consistent with bit-and, bit-xor,
and bit-or. We are currently considering to deprecate the
C-style symbols &&/|| in favor of the spelled out and/or to
increase consistency and provide more actionable error
messages when trying to use &&/|| in a similar fashion to bash.
* Config options have been grouped together.
The structure of $env.config (and thus the record used with
let-env config = statements in config.nu and other places) has
been reorganised. Various options are now grouped into subrecords
(similar to table_trim) and had their names shortened.
This allows config.nu files to be better structured,
and thus easier to edit and read.
OBS-URL: https://build.opensuse.org/request/show/1039217
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=27
- Update to version 0.71.0:
* New ++ operator.
* Improved consistency across commands and types.
* Right prompts can now be on the last line.
* Configuring the default value viewer via display_output hook.
* Completion actions now more familiar.
* New --force (-f) flag for the mv command. This change alters mv
default behavior. By default overwriting existing files is now
prevented (You can use alias mv = mv -f in you config to get
the old defaults back).
* The column name for the command name in $nu.scope.commands
has been changed from command to name. Thus,
$nu.scope.commands | where name =~ zip would give you
specific command info.
* The str distance command now directly returns an Int instead
of a record {"distance": <Int>}.
* The argument order of format filesize was made consistent
with other commands that accept a CellPath to specify fields
that should be affected by it. Now the string specifying
the format is the first positional argument and the cell
path is specified in the following positional argument(s).
* The --perf flag for Nu was removed as part of an effort to
simplify diagnostics logging.
OBS-URL: https://build.opensuse.org/request/show/1034703
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=26
- Update to version 0.69.1:
+ Summary of deprecations
- source.
- source-env.
- use.
- hide.
- hide-env.
- export env.
- export-env.
- export ...
- config.nu.
- env.nu.
- login.nu.
* Upcoming virtualenv activation changes.
* Grammar Experiments.
+ Breaking changes
- We found a regression in the correctness of the -d and -t
flags of touch. To get the release out, we've removed these
flags, but hope to replace them with correct implementations
in the future. We also removed support for duration literals
above weeks, including month, year, and decade literals.
These were found to be confusing as it's unclear what a
duration of a month is (30 days? 31 days?) The str collect
command is now str join.
OBS-URL: https://build.opensuse.org/request/show/1006616
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=24
- Update to version 0.68.0:
* source becomes source-env.
* Module envrionment changes.
* Syntax unification.
* Overlay changes.
* Allow parentheses around command signatures.
* We added a new command str distance which implements the
Levenshtein alorithm.
* We added string duration conversion to named durations.
* External Completions (experimental).
* Renaming of all? to all, any? to any, and empty? to is-empty.
* Renaming overlay commands.
OBS-URL: https://build.opensuse.org/request/show/1001791
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=22
- Update to version 0.67.0:
* We have a new welcome banner.
* WARNING! Breaking change!
* Relative paths in scripts are file-relative.
* Writing SQLite files.
* Shell integration (Visual Studio Code).
* The error message when an external command is not found has
been improved.
* Nushell now has a full array of bits and bytes commands for
working with binary data.
* A new hide-env command is added that can hide environmnet
variables in the current scope.
* The overlay add spam command would take all commands and aliases
from the module and put them directly into the current namespace.
* You can now change the name of the added overlay using the
new as keyword.
- Update to version 0.66.2:
* Fix for a crash when using ls on an unknown directory.
OBS-URL: https://build.opensuse.org/request/show/997493
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=21
- Update to version 0.66.0:
* New table output.
* Exit codes:
- We've done work in this release that will cause pipelines
and commands to stop a script from continuing if they hit
a non-zero exit case, much in the same way as a && b in bash
does not run b if a returns with a non-zero exit code.
- This has been extended to also work when running the full
script, so that nu itself will return an non-zero exit code
matching the error the script saw when it stopped.
OBS-URL: https://build.opensuse.org/request/show/991320
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=19
- Update to version 0.65.0:
* Better support for binary data:
- New operators bit-and, bit-or, bit-xor, as well as
renamed bit-shl and bit-shr. These correspond to bitwise and,
or, exclusive or, shift left, and shift right.
- A new encode command as well as binary support for hash.
- Improved binary support for skip and take.
* Nu-check:
- Starting with this release, Nushell now provides a
nu-check command which can do a check over a source file
for potential parsing and typechecking errors.
* Unification continues:
- In this release, db and mysql support has simplified,
bringing it closer to the already existing dataframe support.
* Additional new commands:
- You can now use the port command to find the next available port.
OBS-URL: https://build.opensuse.org/request/show/986961
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=18
- Update to version 0.64.0:
* Add --values flag to sort record by values,
by default, sort record by keys, and sort not change shape,
and path join support multi path, and fix arg parse, and While
starting nu, force PWD to be current working directory,
and handle SIGQUIT, and add as record tag to transfer
result to record, and print warning message if meet non
utf-8 path, and fix argument type, and expand env for path,
and make ls works better with glob, and base64 command more
friendly, and make cp can copy folders contains dangling symbolic
link, and make sure no duplicate column exists during
eval and merge.
* Pin reedline v0.7.0 for the nushell v0.64.0 release, and
Address lints from clippy for beta/nightly, and Use search
terms in the help menu search, and Update nu-ansi-term to remove
Deref impl, and Improve internal documentation of save command,
and Update reedline, and Clarify error message for let in pipeline,
and Update reedline: Support more bindings in vi mode, and Improve
test coverage of command examples, and Add search terms for
describe, and Unpin reedline for regular development.
* Bool type for binary operations, and each while command,
and filesize conversion, and expression to literal, and Remove
dfr from dataframe commands, and input and output types,
and Lazy dataframes.
* Add option to sort-by naturally, and Attempts to add // math operator,
and add search terms to alias, and Improves help str substring,
and Attempts to add a command that checks if nushell is running
with admin priveleges, and Make range require its positional
argument, and Small typo fix in signature.rs, and prevent panic
with let alone in pipeline, and Add '-o'/--output flag to fetch
to download to file, and Add search terms to error make.
* Add NU config to allow user be able to turn off external completion,
and Support completion for alias and sub-command, and Fix cp bug.
* More verbose error handling, and make to text work more
intuitively, and add case_sensitive_completions config option.
* Add $nu.scope.engine_state, and Fix wrong path help message,
and Shorten the links of parser keywords help msgs,
and Add 'overlay new' command.
* feat: add search terms to category of strings.
* SQLite History MVP with timestamp, duration, working directory,
exit status metadata.
* Added loginshell config file.
* fix[table]: Panic when passthru small number of table -w.,
and feat[table]: Allow specific table width with -w,
like command grid.
* Minor fixes to shell integation in repl.,
and Improve table output of 'to html'.
* Add completions for nu.
* Add search terms for all?, any?, length, and keybindings.
* feat: add search terms to random & typo fix.
* Fix drop nth bug
OBS-URL: https://build.opensuse.org/request/show/982744
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=17
- Update to version 0.62.0:
* added open editor event in config parsing (#5426)
* Fix coloring when string has spaces (#5425)
* Update path completions to handle spaces (#5419)
* Database commands (#5417)
* Fix erroneous removal of "./" folder prefix (#5416)
* remove ctrl-l from config.nu (#5415)
* Don't resuggest accepted completions (#5369)
* Fixed ctrl-c in recursion loop bug #5362 (#5409)
* Add ends-with operator and fix dataframe operator behavior (#5395)
* Fixed interrupting a for-loop over a list bug #5378 (#5408)
* event ClearScrollback is now working in reedline / update default config.nu (#5405)
* Rename =^ to 'starts-with' (#5407)
* More escaping/unescaping fixes (#5403)
* Update reedline to use partial completion changes (#5401)
* Adds error printing back in a couple places (#5400)
* Add unescaping to external command parsing (#5399)
* Move uses of trim_quotes to unescape for filenames (#5398)
* a little database cleanup (#5394)
* Fix PATH update example (#5393)
* Line buffer keybinding (#5390)
* Error printing changes for `watch` (#5389)
* Remove 'empty' block support reminders, for now. (#5214)
* Remove "./" prefix for file path completions (#5387)
* Make if else more lazy (#5386)
* nu-cli/completions: complete external args as filepath (#5385)
* nu-cli/completions: apply correctly nesting for env vars (#5382)
* Fix quoting for command line args (#5384)
* Line buffer editor (#5381)
* allows for nushell to have tables without the index column (#5380)
* Revert "nu-cli/completions: better fix for files with special characters (#5254)" (#5372)
* Avoid using time conversion methods that may panic (#5365)
* Change description of `sort` (#5355)
* Add watch command (#5331)
* nu-cli/completions: better fix for files with special characters (#5254)
* Openssl feature (#5352)
* mute false import warning for nu-command test where_ (#5350)
* Statically link OpenSSL (#5349)
* improve inc plugin docs (#5346)
* fixes an issue with an empty selector panic (#5345)
* Database commands (#5343)
* `db info` tweaks (#5338)
* `db info` command (#5335)
* Fix 'range' range exclusive (#5334)
* Fix use of `export/alias --help` bug (#5332)
* Move print_pipeline_data to nu-protocol (#5328)
* Allow bare words to interpolate (#5327)
* activates optional trim in 'from csv' and 'from tsv' (#5326)
* Allows cd (and other commands that depend on current working directory) to use path of type '~user' (#5323)
* add database feature to extra (#5322)
* Adding ~user tilde recognition in file paths (#5251)
* Fuzzy completion matching (#5320)
* update build status badge (#5321)
* Warn if we see let config = ../.. (#5318)
* nu-command/filesystem: clean whitespaces from paths in cd and open (#5310)
* update contrib to max=500 (#5317)
* Database commands (#5307)
* fix: remove `println!()` from `exec` builtin (#5311)
* consolidate shell integration behind config setting (#5302)
* update sys with new items, add kernel version to os-info (#5308)
* Add MatchAlgorithm for completion suggestions (#5244)
* feat: add search terms to date (#5306)
* nu-cli/completions: added completion for $nu (#5303)
* Fix cd - (#5301)
* nu-cli: directory syntax shape + completions (#5299)
* nu-cli/completions: support record for custom completions (#5298)
* Add 'and' and 'or' operators (#5297)
* add virtualenv to integrations (#5280)
* Clean up tests and unused documentation code (#5273)
* Delete obsolete+unused files (#5272)
* Use better quoting for commandline args (#5271)
* Some cleanups for clippy (#5266)
* update os-info os to name (#5265)
* git completion: 'git fetch' for remotes (#5253)
* typo: seach -> search (#5264)
* feat: add search terms for conversions (#5259)
* add newlines to end of the default configs (#5256)
* refactor html module (#5246)
* Set to reedline main branch for development cycle (#5249)
* Handle custom values in describe command (#5248)
* SQLite overhaul: custom value, `query db` command (#5247)
* nu-cli/completions: fix file completions with quotes (#5242)
* nu-cli: added tests for file completions (#5232)
* add os to $nu based on rust's understanding (#5243)
* Feature/refactor completion options (#5228)
* move config back to config.nu (#5237)
* Move config to be an env var (#5230)
* allow par-each to receive $in (#5229)
* add custom_completion field to .scope command (#5227)
* Added search terms to math commands (#5224)
* nu-cli/completions: completion for use and source (#5210)
* update miette and switch to GenericErrors (#5222)
* Simplify known external tests (#5219)
* `nth` -> `select` command (#5217)
* Add known external tests (#5216)
* Simplify known external name recovery (#5213)
* Shell Integration (#5162)
* [ls, path relative-to] Fix use of `ls ~ | path relative-to ~` (#5212)
* add hex color parsing to ansi (#5209)
* cleanup nu-command, remove redundant code (#5208)
* nu-cli/completions: removed unnecessary bool (#5207)
* Fix env capture (#5205)
* nu-cli/completions: add completion for record vars (#5204)
* nu-cli/completions: add completion for $env. (#5199)
* fix: reduce command have not redirected block's evaluation output (#5193)
* fix timestamp parsing on 32-bit platforms (#5192)
* Add `char -i` for chars from integers (#5183)
* Fix completions for `git push` and `git checkout` close: #5021 and #4599 (#5188)
* documented ShellError errors. (#5172)
* update crate chrono-tz to its latest version (#5184)
* Initial SQLite functionality (#5182)
* don't join paths to cwd ever in calls to external functions (#5180)
* allow default color shortcut names (#5177)
* Add a dockerfile example based on debian bullseye-slim (#5176)
* Allow integer to `char -u` (#5174)
- Update to version 0.61.0:
* Fix typo in link (#5168)
* Fix failing unit tests on Windows (#5142) (#5143)
* Support binary literals with binary format (#5149)
* Support unbinding a particular key event (#5152)
* Allow overriding of menu keybindings (#5148)
* Allows aliases in use lists (#5150)
* enable `ls` to output datetime in local time vs utc (#5141)
* Fix known externals, fix operator spans (#5140)
* Track call arguments in a single list (#5125)
* rename menu/fix type-o (#5139)
* Improve `$in` handling (#5137)
* Let 'each' also send input to block (#5136)
* Soften the block arity checking (#5135)
* doc change from engine-q to nushell (#5134)
* added ability to opt in to normal string replacement in `replace` cmd (#5133)
* Update LICENSE
* Revert "nu-cli/completions: cache layer for fetching (#5114)" (#5132)
* Include license text in all crates (#5094)
* Fix command descriptions+examples (#5129)
* nu-cli/completions: removed default filter for command (#5126)
* add keep deprecated commands (#5124)
* Move 'keep' to 'take' (#5123)
* nu-cli/completions: cache layer for fetching (#5114)
* nu-cli/completions: fix file completions filtering (#5122)
* Implement rest of `touch` flags (#5119)
* Change string contains operators to regex (#5117)
* Add datetime to math-like (#5118)
* Improve describe to be more accurate (#5116)
* Remove external name exceptions (#5115)
* Add unary not (#5111)
* Add env.nu file for environment config (#5099)
* nu-cli/completions: prioritize non hidden folders (#5108)
* use arc to avoid cloning entire engine for menus (#5104)
* nu-cli: refactor completions (#5102)
* Load plugins for scripts and commands, too (#5105)
* Trim newline from `input` results (#5097)
* enables find to search records with regex (#5100)
* Fix Format for non-basic data types (#5095)
* Add search terms to many commands (#5096)
* allow record as text style (#5092)
* Update reedline to mut Completer API
* new `glob` command (#5087)
* Add raw strings, use raw strings for env (#5090)
* feature: Add some context to completions (#5078)
* Add quiet and feedback to mv command (#5073)
* Generic menus (#5085)
* Set LAST_EXIT_CODE on parse error (#5084)
* Fix Python plugin (missing search terms) (#5083)
* Tweak append+prepend help (#5080)
* Fix for search terms in `help --find` (#5081)
* Add support for single value row conditions (#5072)
* Add command descriptions to completions (#5063)
* Allow open to work with 'from ...' block commands (#5049)
* Add starts with operator (#5061)
* let a simple last be a single value (#5060)
* Add 'date to-record' (#5058)
* Fix sort signature (#5055)
* Allow strings for prompt env vars (#5052)
* Sort command (#5054)
* Update reedline to new constructor API (#5051)
* Fix load-env unsupported input error message (#5039)
* Lift line editor construction out of loop (#5041)
* feat: add --suppress-output (-s) to input command (#5017)
* finish hooking up completion descriptions (#5047)
* Add record, list, and table to signature types (#5040)
* evaluate indicators as commands (#5026)
* Fix which-support feature (#5038)
* update nu-glob README (#5037)
* Fix env var shorthand when value contains `=` (#5022)
* Clean up which/which-support Cargo feature (#5019)
* Strip '+ ' decoration in git branch list (#5016)
* Use real stack during custom completion (#5010)
* fix: pass metadata to more filter commands for `ls_colors` (#5009)
* corrects menu selection (#5004)
* Fix for loop ctrlc not terminating (#5003)
* See if levenshtein sorting feels goofor completions (#5001)
* Add a README about changing capnp schema (#4998)
* did_you_mean: case-insensitive edit distance, tests (#4999)
* Help menu improvements (#4997)
* Add search terms to Command and Signature (#4980)
* Help menu (#4992)
* Check same-string-different-case in did_you_mean (#4991)
* Nu ansi term update (#4988)
* Add streaming support to save for ExternalStream data (#4985)
* Support binary data to stdin of run-external (#4984)
* Limit mem usage + back-pressure via bounded channels (#4986)
* fix ls when file is a socket on mac (#4983)
* Improve escaping in string interpolation (#4982)
* Add parser keyword note to help and $nu.scope (#4978)
* Remove is_private from $nu.scope.commands (#4979)
* Termux/Android target support for v0.60.0 (#4956)
* Don't include trailing separator when expanding tilde (#4974)
* Fix alias import (#4968)
* Improve the 'use' and 'source' errors (#4966)
* Fix single quote environment values (#4960)
* Add escapes to 'to nuon' (#4964)
* Fix path join on streams (#4959)
* align all of the serde_json crates to the same version (#4949)
* Fix operator precedence parser (#4947)
* Fix#4942, and add a table sorting example for `sort-by` command (#4948)
* add .mailmap to .gitignore
* Set the minimum Rust version to 1.59 (#4940)
* bump csv crate to the latest 1.1.6 (#4939)
* Fix parse_string_strict() to detect unbalanced quotes properly (#4928)
* CantConvert improvements (#4926)
* Don't assume external `ls` (#4925)
* added missing metadata for drop and uniq #4763 (#4908)
* rename export def to export alias (#4912)
* update link (#4915)
* chore: Update default register examples (#4904)
* Pass `/D` flag to `cmd.exe` to disable AutoRun (#4903)
* add ability to execute on demand (#4896)
OBS-URL: https://build.opensuse.org/request/show/974797
OBS-URL: https://build.opensuse.org/package/show/shells/nushell?expand=0&rev=16