Releases: Edd12321/zrc
Releases · Edd12321/zrc
v2.0
At last, the rewrite is complete! (no binaries as of yet)
- New redirection COMMANDS, with more predictable behaviour
- Use extended regex in switch statements
- Bugfix: Job control
- Bugfix: Very long pipe streams no longer deadlock. The first n-1 chained commands of an n-long pipeline are now always forked off as separate processes.
- Array substitution is now
${name key}
(temporary change, old syntax will return) - New
str
command (replacesstring
) - New
arr
command (replacesarray
) - New BUILT-IN
list
command (no longer part ofstdlib
) - Speaking of
stdlib
, it has been removed (why not just use.
? It's a shell, not C++) - Nicer codebase in general
To-do:
- Re-add
regexp
, mayberegcomp
- Add
unknown
feature, similar to Tcl. - Re-add old array syntax
$...(...)
- Improve performance
v1.0
A very small changelog: I now consider v1.0 to be in a very useable state!
If I feel like it, I might continue working on potential features like the fabled unknown
for v1.1, or maybe even upvar
or uplevel
.
read -d
now supports more than one delimexpr
now has a comma/chaining operator- Directory stack QoL improvements
- Alias substitution bugfixes
- Add max possible long double precision
- Maybe, other bugfixes too.
- Fixed
string range
behaviour
v0.9b
Long time no see, eh? This is the ultimate expr
overhaul, behold:
- Complete
expr
reimplementation from scratch using Flex/Bison instead of S.Y. algorithm - Slight performance increase
- Add
trunc
- Add
sec
,csc
,arcsin
,arccos
,arcsec
,arccsc
and various different aliases for each. - Removed
-r
option from the command (will probably return in the future. Just useinclude mathop
in the meantime) - IMPLICIT EXPR CALLING for all built-in functions
- IMPLICIT 0 RETURN for empty expressions
- General, non-
expr
related QoL improvements - Updated docs
v0.9a
- Deprecated old
>(...)
fd syntax - Add new syntax (
x>
,x>>
,x> &y
,x> &-
,^
,^^
) - Implement process substitution/pipeline branching (
<{...}
) - Prompt is now printed to stderr (so you can now redirect an interactive session to a file)
- Change order of evaluation (pipes first, then redirections)
- Parens are now considered barewords! (you can now glob words like
(*)
) - Same for backslashes
- Bugfixes for very minor issues
- Huge performance increase (more efficient redirection mechanism)
v0.8b
v0.8
Back from a long hiatus. This is also the first time I'm uploading a Windows (cygwin) release :)
- Add
builtin
(functions like the Plan 9 rc's equivalent) switch
pattern matching (regex) now requires full match instead of partial- Fix file descriptor behavior
- Speed up fd syntax parsing
- Add
-f
option forread
- Slight code refactor (not really a feature)
- Better async safety for job control messages
v0.7b
Zrc v0.7b has now been released:
expr
shunting yard speed up, almost 200% faster%include
is nowinclude
- The commands
!
and@
can now also be called by their alt names,not
andfork
ARG_MAX
CLI arguments now supported- General QoL improvements
- Slight code refactoring, including performance boosts
- Early draft of a new library (
ipc
) - Despite all this, somehow the binary is somehow smaller now