Skip to content

Releases: GuardKenzie/chafa.py

Version 1.2.0

20 Sep 14:53
f75dbb7
Compare
Choose a tag to compare

Summary

Added bindings for most of the new API introduced in Chafa version 1.14

New stuff

  • 🖼️ Added the Frame, Image and Placement classes which allow you to control how the image is placed on the canvas. Also added the Canvas.placement property to assign a placement to the canvas.
  • 🔢 Added the Tuck and Align enumerators to be used with Placement
  • 🎛️ Added the TermInfo.emit() method which allows you to emit terminal control sequences to do cool stuff like move the cursor around and make animations:

  • 🏗️ Restructured the src/chafa directory and broke the main chafa.py file into multiple different Python files where appropriate.
  • 🔨 Moved MacOS arm builds to GitHub Actions and changed the cibuildwheel Linux image to manylinux_2_28

What's missing

There are no bindings yet for chafa_canvas_print_rows and chafa_canvas_print_rows_strv


Full Changelog: v1.1.0...v1.2.0

If you are having trouble, head over to the discussions and if you find a bug, please open an issue.

Ps:

Sorry this release took such a long time, and for my inactivity. I have been busy with graduating with a bachelor's in mathematics, moving countries, starting my master's program, recovering from surgery and just general life stuff. Hopefully the next release will not take so long, hehe.

Have fun
❤️

Version 1.1.2

07 May 10:33
1bc1dc5
Compare
Choose a tag to compare

Summary

Chafa.py now looks for GLib on Linux more exhaustively, much in the same way it does on other platforms. (Thanks to @twrightsman with #27)

Full Changelog: v1.1.1...v1.1.2

If you are having trouble, head over to the discussions and if you find a bug, please open an issue.

Have fun
❤️

Version 1.1.1

12 Apr 16:12
41d6b52
Compare
Choose a tag to compare

Bugs squashed

  • 🐛 Fixed an issue where using get_device_attributes() threw an error if using the Kitty terminal emulator.

Full Changelog: v1.1.0...v1.1.1

If you are having trouble, head over to the discussions and if you find a bug, please open an issue.

Have fun
❤️

Version 1.1.0

11 Feb 01:57
1dfc763
Compare
Choose a tag to compare

Summary

Added support for raw color values in the canvas and improved detection for Sixels capable terminals.

New stuff

  • 📟 Added a function chafa.get_device_attributes that returns a list of the device attributes returned by the control sequence \e[c on xterm.
  • 🖨️ The TerminalCapabilities class now has a printable representation and can be compared using == with two TerminalCapabilites being equal if both their canvas_mode and pixel_mode attributes match
  • 🎨 Added raw_bg_color and raw_fg_color properties to CanvasInspector. These allow users to specify raw color values, (0xRRGGBB in truecolor mode or e.g. integer from [0-255] in INDEXED_256 mode)
  • 🔨 Building from source is now available again. You just have to make sure glib-2.0 and libchafa are on your path.

Bugs squashed

  • 🐛 The TermInfo.detect_capabilities() funciton now more accurately detects Sixels capable terminals. (specifically it detects those that have a 4 in their device attributes emitted by \e[c)
  • 🐛 The TermSeq, ColorSpace and ColorExtractor enumerators can now be imported properly.
  • 🐛 Indexing the Canvas with negative x or y values is no longer broken.

Full Changelog: v1.0.2...v1.1.0

If you are having trouble, head over to the discussions and if you find a bug, please open an issue.

Have fun
❤️

Version 1.0.2

20 Jan 22:47
8767e51
Compare
Choose a tag to compare

Summary

This release enables Intel MacOS users to enjoy chafa.py!

Changelog

  • 🍎 Added support for intel Macs
  • 🚀 the chafa.loader module now searches the MAGICK_HOME environment variable on mac and linux to locate ImageMagick. This comes with a substantial performance improvement on import.

If you are having trouble, head over to the discussions and if you find a bug, please open an issue.

Have fun
❤️

Version 1.0.1

19 Jan 00:24
84a1c08
Compare
Choose a tag to compare

Summary

This release enables Windows users to enjoy chafa.py!

This release also changes the license from GPL-3.0 to LGPL-3.0. Check out the release announcement to learn why.

Changelog

  • 🪟 Added support for Windows
  • 🚀 Very minor performance improvements

If you are having trouble, head over to the discussions and if you find a bug, please open an issue.

Have fun
❤️

Version 1.0.0

07 Jan 18:47
Compare
Choose a tag to compare

Summary

This is the inital release of chafa.py! Python bindings for chafa.

This module is almost up to feature parity with chafa. The only things missing are

  • Emitting control sequences
  • Adding, getting and using built in glyphs with symbol maps.
  • Setting getting and emitting terminal sequences
  • Using raw color in the canvas

Feel free to submit a PR if you are interested in implementing any of these!

How to get started?

Head over to the docs at chafapy.mage.black. There you will find

If you are having trouble, head over to the discussions and if you find a bug, please open an issue.

Have fun
❤️