Skip to content

v0.3.0

Compare
Choose a tag to compare
@sminez sminez released this 12 Nov 07:20
· 126 commits to develop since this release

📦 🦀 V0.3.0 is now live on crates.io 🦀 📦

2022-11-12_1668238509

This is a near total rewrite of the previous design to provide a nicer API to work with going forward. An overview of the new design is published to GitHub pages here and the new crate docs are now live on docs.rs.

NOTE: Some (but not all) of the functionality from the old contrib module has been ported over to the new API. If something you were using is not there yet please raise an issue and I can take a look at getting it re-implemented. I didn't make use of everything that was available in my day-to-day set up so I'll need some help verifying that the behaviour is as people expect!

Highlights

  • A new "diff" based approach to rendering window state that provides a clean split between pure logic and side effect filled X logic
  • Smarter internal data structures that allow for much simpler implementations of extensions to the core behaviour
  • A base layer for extending the UI that is actually usable as opposed to being all kinds of scary! (Currently there is a status bar but a native dmenu replacement is in the works as well)
  • A richer API for layouts that solves a lot of the issues that the pervious release had around implementing more complicated layouts and sharing common functionality (like gaps).