ChangeLog: https://elv.sh/blog/0.19.1-release-notes.html
* A new doc module provides access to the documentation of builtin modules.
* A new conj command “appends” values to a list, and has a guaranteed time
complexity independent of the size of the list.
* A new inexact-num converts its argument to an inexact number.
* It is functionally identical to the now deprecated float64 command since the
Go float64 type is the only underlying inexact number type for now. Its
behavior may change in future if there are more underlying types for inexact
numbers.
* A new type of interactive abbreviation: edit:command-abbr
* The order and compare commands now support boolean values
* A new path:join command and path:separator and path:list-separator variables
* A new runtime: module that contains paths important for the Elvish runtime
* A new compact command that replaces consecutive runs of equal values with a
single copy, similar to the Unix uniq command.
* The order command has a new &key option
* A new benchmark command has been added
* When checking compilation errors, Elvish no longer stops after the first
error found. For example, if $a and $b are both not defined, echo $a $b now
yields two errors. This applies to both the interactive REPL and elvish
-compile-only.
* When using an unimported builtin modules from the REPL, the REPL now shows
the use command needed to import it, which can be executed from a key
binding. This functionality is bound to Ctrl-A by default.
* New variables exposing the terminal and null device in an OS-agnostic
fashion: $path:dev-tty and $path:dev-null. They are /dev/tty and /dev/null on
Unix, and CON and NUL on Windows
PR: 275422
Reported by: vendion@gmail.com (maintainer)
Makeinfo is not actually used because, after patching, it updates the
timestamps of *.info files, preventing doc/Makefile from wanting to
regenerate bash.info.
While here, sort USES.
PR: 275439
Fast, configurable, shell plugin manager
Features
- Plugins from Git repositories.
* Branch / tag / commit support.
* Submodule support.
* First class support for GitHub repositories.
* First class support for Gists.
- Arbitrary remote scripts or binary plugins.
- Local plugins.
- Inline plugins.
- Highly configurable install methods using templates.
- Shell agnostic, with sensible defaults for Zsh.
- Super-fast plugin loading and parallel installation
- Config file using TOML syntax.
- Clean ~/.zshrc or ~/.bashrc (just add 1 line).
WWW: https://sheldon.cli.rs/
- mark as LTO_UNSAFE on armv6/armv7 to avoid address space
exhaustion
- remove custom do-test target to avoid a conflict with cargo.mk's
do-test; cargo.mk's default do-test does the job well enough
Approved by: portmgr (build fix blanket)
MFH: 2023Q4
From the announcement email:
Full changelog at:
https://github.com/ksh93/ksh/compare/v1.0.6...v1.0.7
Main changes between 1.0.6 and 1.0.7:
- Fixed a hang in command substitutions (introduced in 93u+m/1.0.0)
that was triggered when redirecting standard output within a
command substitution, in combination with other factors. E.g.,
the following no longer hangs:
{ v=$(redirect 2>&1 1>&9); } 9>&1
- Fixed a crash on trying to append an indexed array value to an
unset name reference, e.g.: nameref unsetref; unsetref+=(foo
bar). This now produces a "removing nameref attribute" warning
before performing the assignment.
- Fixed: assignments like name=(...) to arrays did not preserve the
array and variable types; similarly, assigning an empty set () to
a compound indexed array caused the -C attribute to be lost.
- Fixed incorrect rejection of the tab key while reading input
using the 'read' built-in command.
- Fixed a bug in printf %T: when using dates and times in the past,
time zones for the present were incorrectly used, ignoring
historical changes.
Replace GL_COMMIT by GL_TAGNAME in all ports. The new GL_TAGNAME is
backwards-compatible (accepting any commit hash as before), but also
understands an actual tag name. Moving to tag names where appropriate is
left to individual ports' maintainers.
Approved by: portmgr (tcberner, mentor)
Differential Revision: https://reviews.freebsd.org/D37077
The logic in USES=python will automatically convert this to 3.8+ by
itself.
Adjust two ports that only had Python 3.7 mentioned but build fine
on Python 3.8 too.
finance/quickfix: mark BROKEN with PYTHON
libtool: compile: c++ -DHAVE_CONFIG_H -I. -I../.. -I -I. -I.. -I../.. -I../C++ -DLIBICONV_PLUG -DPYTHON_MAJOR_VERSION=3 -Wno-unused-variable -Wno-maybe-uninitialized -O2 -pipe -DLIBICONV_PLUG -fstack-protector-strong -fno-strict-aliasing -DLIBICONV_PLUG -Wall -ansi -Wno-unused-command-line-argument -Wpointer-arith -Wwrite-strings -Wno-overloaded-virtual -Wno-deprecated-declarations -Wno-deprecated -std=c++0x -MT _quickfix_la-QuickfixPython.lo -MD -MP -MF .deps/_quickfix_la-QuickfixPython.Tpo -c QuickfixPython.cpp -fPIC -DPIC -o .libs/_quickfix_la-QuickfixPython.o
warning: unknown warning option '-Wno-maybe-uninitialized'; did you mean '-Wno-uninitialized'? [-Wunknown-warning-option]
QuickfixPython.cpp:175:11: fatal error: 'Python.h' file not found
^~~~~~~~~~
1 warning and 1 error generated.
Reviewed by: portmgr, vishwin, yuri
Differential Revision: <https://reviews.freebsd.org/D40568>
Murex is a shell, like bash / zsh / fish / etc however Murex
supports improved features and an enhanced UX.
A non-exhaustive list features would include:
* Support for additional type information in pipelines, which can
be used for complex data formats like JSON or tables. Meaning
all of your existing UNIX tools to work more intelligently and
without any additional configuration.
* Usability improvements such as in-line spell checking, context
sensitive hint text that details a commands behavior before you
hit return, and auto-parsing man pages for auto-completions on
commands that don't have auto-completions already defined.
* Smarter handling of errors and debugging tools. For example
try/catch blocks, line numbers included in error messages,
STDOUT highlighted in red and script testing and debugging
frameworks baked into the language itself.
WWW: https://murex.rocks