Hilbish/website/content/blog/v2.1-release.md

2.2 KiB

title date draft
v2.1 Release 2023-02-07T18:25:38-04:00 false

Oh look! A new release of Hilbish! This time is the v2.1 release, with a small amount of features and mainly documentation changes and bug fixes.

Documentation

There have been a few documentation enhancements for this release. This includes:

  • Adding the return types for all functions that need them
  • Documenting Hilbish types like job objects and timers properly. They now have a separate heading and listing of properties and methods.
  • Fixing outdated documentation

Features

Sinks

A major addition is the new "sink" type for commanders to write their output to. This was the solution to pipes and other shell operators not working with builtins. If you wrote a commander and made it print, use sinks.out:write instead.

This is also documented at the commander docs.

doc command

Since API documentation has been moved to an API folder and also includes interfaces, a change has been made to get the module name from the passed from the requested page. This means that doc api hilbish hilbish.jobs is now shortened to doc api hilbish.jobs

Bug Fixes

Small release, small amount of bug fixes. Even though, this is the main part of this release.

Previously Hilbish completions did not work with symlinks properly. This can be tested in the previous 2.0 release by attempting to path complete to /bin. Since this is (or can be?) a symlink to /usr/bin, it was not marked as a directory and therefore did not automatically add the ending slash. This has been fixed.

Segfaults

I found that when I updated my terminal of choice (Tym) for the new daemon feature, Hilbish would sometimes segfault on startup. This is due to it getting a resize event on startup while bait was not initialized yet.

API Fixes

  • The hilbish.which function works with aliases.
  • hilbish.completion.files and hilbish.completion.bins will no longer cause a panic with all empty arguments passed.

Next Release

Stay tuned for the v2.2 release, which will have a bigger set of features and maybe some more bug fixes!