Releases: volution/z-run
Preview build based on the developmet branch
As the title says, this build is made directly from the development branch, as such it is meant mainly for testing.
v0.20.1
v0.19.2
v0.19.1
If you just want to test z-run
, then all you need to do is choose one of the z-run
executables matching your platform (Linux, OSX, OpenBSD or FreeBSD), download and make it executable.
- https://github.com/volution/z-run/releases/download/v0.19.1/z-run--linux--v0.19.1
- https://github.com/volution/z-run/releases/download/v0.19.1/z-run--darwin--v0.19.1
- https://github.com/volution/z-run/releases/download/v0.19.1/z-run--openbsd--v0.19.1
- https://github.com/volution/z-run/releases/download/v0.19.1/z-run--freebsd--v0.19.1
For more details about installing see the install section in the readme.
If you want to send feedback about this release, please do so on the announcement post.
Thanks, and have fun!
The good news is that there are no backward incompatible changes! As with the previous release, I use it everyday, thus it can't be that broken... Also, I've been using this build for almost 4 months without any issues!
The other good news is that some bugs were fixed, z-run --input
has been improved (a lot, just run z-run --input --help
).
Of major importance is the refactoring of the source code, by splitting it into smaller packages, allowing one to have independent reusable executables like z-input
, z-select
, z-fzf
, that use just portions of z-run
. Thus if one doesn't like z-run
itself, it could still use parts of it.
Unfortunately, there still isn't much documentation or proper error messages... There are however:
- the
z-run --help
,z-run --manual
andz-run --readme
embedded files; - examples section of the readme that adds a range of snippets that showcase what
z-run
can do.
Also, under the hood some things have changed:
- the cache directory layout; previously everything was thrown together in a flat structure; now there are sub-folders, mainly to ease (manual) cleaning-up;
- internally there is now a difference between a library "identifier" (as identified by the workspace) and library "instance" (as identified by the source code hashes); one can now use
ZRUN_LIBRARY_IDENTIFIER
for the first (for example in caches) andZRUN_LIBRARY_FINGERPRINT
in the other; - the store interface was updated to some-day support a more optimized storing backend (that employs deduplication);
- some little attention was given to performance (while compiling the library);
- dependencies have been updated (including the custom patched
fzf
);
v0.18.1
Not much has changed since the last release, which means things are stabilizing...
Documentation is still missing, errors are still criptic, but I use it every day! (This is why I still mark this release as "pre-release".)
The highlights are using Go 1.17, updating dependencies, refactoring z-run
scripts used to build and test z-run
itself.
A non-essential, but in my view very interesting feature is embedding the sources within the executable itself. Trully open-source...
v0.17.1
There have been quite a few (including backward incompatible changes) since the first "public" release.
Among a few important changes:
- preliminary support for OpenBSD and FreeBSD; (on FreeBSD one requires
fdescfs
mounted on/dev/fd
;) - improve support for Python3+ scriptlets;
- add support for custom
z-run
executable for a particular library; - add support for
z-run --shell
(that runsbash
with a custombashrc
), as well asz-run --export=shell-rc
orz-run --export=shell-functions
, plus the few embedded prologs;) - add support for embedded
--help
manual;
Plus many other smaller fxups, updates, features or improvements.
This release requires Go 16.1 as it uses the newly introduced embedding facility.
v0.16.1
This is the first "tagged release". It's no much better (or worse) than previous "untagged" releases.
Why this version, and what happened with 0.15
and previous? I figured I should start somewhere, and given I've done quite a few "internal" releases so far, 16 is a good approximation.
Although I use this tool for all my work and personal projects, I still consider it somewhat "experimental", thus use with care.
As important features, that were not present until now:
- added
--version
flag that prints build related information; - added
--help
flag that prints an initial (unfinished) manual;
In addition to that, incremental enhancements, and various minor fixes.