Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 01 Feb 2021 02:02:21 +0000
From:      bugzilla-noreply@freebsd.org
To:        ports-bugs@FreeBSD.org
Subject:   [Bug 253145] shells/elvish: Update Elvish to v0.15.0
Message-ID:  <bug-253145-7788-srla9CJb4M@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-253145-7788@https.bugs.freebsd.org/bugzilla/>
References:  <bug-253145-7788@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D253145

--- Comment #1 from Adam Jimerson <vendion@gmail.com> ---
Full release notes (copied from the given URL):

# Breaking changes

-   Builtin functions and subnamespaces of `edit:` are now read-only.

-   Introspection for rest arguments has changed:

    -   The rest argument is now contained in the `arg-names` field of a
        closure.

    -   The `rest-arg` field now contains the index of the rest argument,
        instead of the name.

-   The `-source` command now runs in a temporary namespace and can no long=
er
    affect the local scope of its caller.

-   Key modifiers are no longer case insensitive. For example, `Alt` is sti=
ll
    recognized but `alt` is not. This makes key modifier parsing consistent
with
    key names. See [#1163](https://b.elv.sh/1163).

# Deprecated features

Deprecated features will be removed in 0.16.0.

The following deprecated features trigger a warning whenever the code is pa=
rsed
or compiled, even if it is not executed:

-   Using the syntax of temporary assignment (`var=3Dvalue`) for non-tempor=
ary
    assignment is now deprecated. The syntax is still valid for temporary
    assignment. For example, using `foo=3Dbar` as a standalone command is
    deprecated, but using it as part of command, like `foo=3Dbar ls`, is not
    deprecated.

-   The `chr` command is now deprecated. Use `str:from-codepoints` instead.

-   The `ord` command is now deprecated. Use `str:to-codepoints` instead.

-   The `has-prefix` command is now deprecated. Use `str:has-prefix` instea=
d.

-   The `has-suffix` command is now deprecated. Use `str:has-suffix` instea=
d.

-   The `-source` command is now deprecated. Use `eval` instead.

-   The undocumented `esleep` command is now deprecated. Use `sleep` instea=
d.

-   The `eval-symlinks` command is deprecated. Use `path:eval-symlinks`
instead.

-   The `path-abs` command is deprecated. Use `path:abs` instead.

-   The `path-base` command is deprecated. Use `path:base` instead.

-   The `path-clean` command is deprecated. Use `path:clean` instead.

-   The `path-dir` command is deprecated. Use `path:dir` instead.

-   The `path-ext` command is deprecated. Use `path:ext` instead.

-   The `-is-dir` command is deprecated. Use `path:is-dir` instead.

The following deprecated features trigger a warning when the code is evalua=
ted:

-   Using `:` in slice indices is deprecated. Use `..` instead.

-   The mechanism of assigning to `$-exports-` in `rc.elv` to export variab=
les
    to the REPL namespace is deprecated. Use `edit:add-vars` instead.

# Notable new features

New features in the language:

-   A new `var` special command can be used to explicitly declare variables,
and
    optionally assign them initial values.

-   A new `set` special command can be used to set the values of variables =
or
    elements.

-   Slice indices can now use `..` for left-closed, right-open ranges, and
`..=3D`
    for closed ranges.

-   Rest variables and rest arguments are no longer restricted to the last
    variable.

-   Variables containing any character can now be assigned and used by quot=
ing
    their name, for example `'name!' =3D foo; put $'name!'`.

New features in the standard library:

-   A new `eval` command supports evaluating a dynamic piece of code in a
    restricted namespace.

-   A new `sleep` command.

-   A new `path:` module has been introduced for manipulating and testing
    filesystem paths.

-   A new `deprecate` command.

New features in the interactive editor:

-   The new commands `edit:add-var` and `edit:add-vars` provide an API for
    manipulating the REPL's namespace from anywhere.

-   SGR escape sequences written from the prompt callback are now supported.

New features in the main program:

-   When using `-compileonly` to check Elvish sources that contain parse
errors,
    Elvish will still try to compile the source code and print out compilat=
ion
    errors.

# Notable bugfixes

-   Using large lists that contain `$nil` no longer crashes Elvish.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-253145-7788-srla9CJb4M>