Skip to content

Releases: hpjansson/chafa

Chafa 1.14.5

03 Nov 02:31
1.14.5
Compare
Choose a tag to compare

This release addresses a handful of medium-severity bugs.

  • Bug fixes:
    #217 Improve sixel and general terminal support inside tmux (found by @stevenwalton).
    #221 Support JPEGs with CMYK color space (found by @ploum).
    #225 Fix --font-ratio doing nothing (found by @johnd0e).
    [unfiled] Ensure CLI tool gets linked with libm.

Chafa 1.14.4

09 Sep 23:53
1.14.4
Compare
Choose a tag to compare

This quick follow-up release corrects the incomplete fix for the CLI argument fraction parsing. It now accepts C locale formatting in addition to that of the current locale.

  • Bug fixes:
    #216 Dither intensity does not work properly (found by @veltza).

Chafa 1.14.3

09 Sep 02:06
1.14.3
Compare
Choose a tag to compare

This release brings important fixes for sixel rendering and Windows Terminal, plus a few other odds and ends.

  • Sixel transparency has been reenabled for still frames. Animations will be pre-composited on an opaque background to prevent flicker/glitchiness (discussed in #211, big thanks to @j4james).

  • Now supports the Ghostty terminal, defaulting to the Kitty graphics protocol there.

  • Bug fixes:
    #185 Chafa version 1.14 breaks image preview on lf (found by @Steven79203).
    #210 Crash with -f sixels (found by @chrisant996).
    #211 Sixels are too small in Windows Terminal (found by @veltza).
    #212 Aspect-preserving calculations are off in some cases.
    [unfiled] Inconsistent fraction parsing in CLI arguments.
    [unfiled] A few small memory leaks in the JPEG XL loader.

Chafa 1.14.2

25 Jul 23:44
1.14.2
Compare
Choose a tag to compare

This is a bugfix release. #205 is particularly serious, since it affects many users on distributions that build with LTO enabled.

  • Bug fixes:
    #203 Chafa 1.14.1 fails to build on i686 (reported by @tranzystorekk).
    #205 Symbols mode not working since 1.14.1 (reported by @folke).
    #206 Crash when importing more than 32767 glyphs (reported by @stgiga).
    [unfiled] Fix erroneous base64 encoding of final byte in some circumstances.

Chafa 1.14.1

17 Jun 20:18
1.14.1
Compare
Choose a tag to compare

This release brings bug fixes, compatibility improvements and some performance enhancements.

  • A JPEG XL (.jxl) loader was added using libjxl (#188, @oupson).

  • Added detection of the Eat "Emulate a Terminal" Emacs terminal (@sfllaw).

  • Symbols mode was sped up significantly on AVX2-capable platforms.

  • Tests: A new test driver was added. It will log the specifics of any failures, which aids debugging of CI builds (issue found by @cdluminate).

  • Bug fixes:
    #189 Fix installation of zsh completions (@felixonmars).
    #190 Fix a small memory leak in ChafaCanvas (found by @jstkdng).
    #192 Wrong sixel padding in some circumstances (found by @dnkl).
    #195 tmux passthrough enabled when already set (found by @ronyclau).
    #196 iTerm mode not enabled automatically (found by @sudo-burger).

Chafa 1.14.0

08 Jan 20:08
1.14.0
Compare
Choose a tag to compare

This is a feature release with mostly practical improvements and bug fixes. It also adds a modest amount of new API in preparation for things to come.

  • Removed ImageMagick loader support. Packagers can now remove this dependency (#157).

  • Polite mode is now off by default. The new default eliminates cursor flicker and makes the output more robust against unusual terminal settings. The old behavior can be restored with --polite on.

  • Added image loaders for the AVIF and QOI formats. Thanks to @jerch for suggesting the latter.

  • sRGB gamma is now handled correctly in scaling operations.

  • New option: --passthrough=<auto|none|screen|tmux>. This allows passing graphics protocols like Sixels, iTerm and Kitty through a terminal multiplexer. It will be enabled automatically for Kitty, and can be enabled manually for other protocols with more limited support (#116, #162, thanks to @newyorkthink and @m040601).

  • New option: --view-size=<WxH>. Specifies width and height of the viewport, overriding the detected terminal size (#140, reported by @jaminthorns).

  • New option: --fit-width. Fits images to the width of the viewport, allowing them to be taller than the viewport's height (#115, thanks to @SuperDuperDeou).

  • New option: --relative=<bool>. Enables relative cursor positioning. Useful if you've pre-positioned the cursor at a particular offset where you want frames to appear, but tends to make the output illegible in pagers, e.g. less -R (#146, thanks to @Delgan and @AnonymouX47).

  • New option: --exact-size=<auto|on|off>. Preserves the input pixel size when possible. Useful to avoid artifacts caused by resampling (#119, reported by @ErrorNoInternet).

  • New symbol selector: imported. This selects glyphs loaded with --glyph-file (#124, reported by @clort81).

  • MS Windows: Experimental support for ConHost output (-f conhost). This allows direct output on older versions of MS Windows (#170, @oshaboy).

  • Fontgen: Added a BDF font writer (@cdluminate).

  • Fontgen: Cleanup and modernization (@cdluminate).

  • The help text and manual page were overhauled for readability, and the API documentation now includes symbol indexes by version and deprecation status.

  • Added a zsh completion script (@Freed-Wu).

  • Installation methods added: Scoop (@LaunchLee) and Winget (@sitiom).

  • CI: Ported to GitHub actions (@GuardKenzie).

  • Bug fixes:
    #107 "Unknown file format" when using AVIF on stdin (found by @ndren).
    #152 Broken linking with libwebp-1.3.1 (found by @vcunat).
    [unfiled] Fix make check with --without-tools (@sthibaul).
    [unfiled] Fix --duration not working well with still images (@Delgan).
    [unfiled] Fix sixel rendering of animations (@Delgan).
    [unfiled] Fix operator precedence in geometry calculation (@mjunix).

Chafa 1.12.5

21 May 17:00
1.12.5
Compare
Choose a tag to compare

This is a bugfix release.

  • Bug fixes:
    #123 Crash on canvas created with chafa_canvas_new_similar() (reported by @GuardKenzie).
    #141 Distortion when rowstride is not a multiple of 4 (reported by @jstkdng).
    [unfiled] Missing comma in --help output (reported by @Freed-Wu).

Chafa 1.12.4

13 Nov 00:01
1.12.4
Compare
Choose a tag to compare

This release improves support for Microsoft Windows and fixes several bugs.

  • MS Windows: Added support for Unicode command-line arguments.

  • MS Windows: Enabled support for building a DLL.

  • Improved quality of accelerated symbol picking (the default with -w 6 and lower), especially along sharp edges.

  • The XWD loader now supports unaligned image data, which can occur when the header is of an uneven length. Such images will no longer be rejected.

  • Bug fixes:
    #100 Reading image data from stdin fails on Windows (reported by @TransparentLC).
    #104 Artifacts with transparent animations on Kitty (reported by @acxz).
    #108 Bad interaction with lolcat (reported by @eMPee584).
    #112 Bad documentation for -c default (reported by @jwilk).
    #113 Autogen/build fails on CentOS 7 (partial solution) (reported by @ivanshatsky).
    huntr.dev: Uncontrolled memory allocation in lodepng (reported by @JieyongMa).
    [unfiled] -lm should not be in pkg-config Libs: list (@kloczek).
    [unfiled] The --watch switch was broken with the introduction of --animate.

Chafa 1.12.3

30 Jun 23:59
1.12.3
Compare
Choose a tag to compare

A bug crept into the previous release that prevented successful package builds in some environments. This has been fixed.

  • Increased GLib minimum version to 2.26.
  • Enabled a few compiler warnings not included in -Wall -Wextra in order to catch more potential issues early. Also started using -Werror selectively.
  • Silenced deprecation warnings for older GLib APIs that we would like to keep using a bit longer.
  • Bug fixes:
    #96 Regression: Fails to build on Linux/Debian (reported by @cdluminate).

Chafa 1.12.2

28 Jun 01:04
1.12.2
Compare
Choose a tag to compare

This release adds basic support for Microsoft Windows.

  • Made everything compile for the x86_64-w64-mingw32 target using gcc.
  • Added support for the Windows 10 Command Prompt.
  • Improved error reporting.