sl/plan9


vim: tw=80

Commands used to generate these stats:

LoC per author: git ls-tree -r -z –name-only HEAD – /.c | xargs -0 -n1 git blame –line-porcelain HEAD |grep “^author ”|sort|uniq -c|sort -nr

Commits per author: git shortlog

date: 2016-04-20 title: State of Sway - April 2016 layout: post

tags: [sway]

Since the previous State of Sway, we have accomplished quite a bit. We are now shipping versioned releases of sway, which include support for window borders, input device configuration, more new features, and many bug fixes and stability improvements. I’m also happy to say that Sway 0.5 has landed in the Arch Linux community repository and I’m starting to hear rumors of it landing in other Linux distros as well. Here’s a quick rundown of what’s happened in the past four months:

I’m a particularly big fan of the new include command, which allows me to add this to my config file:

include ~/.config/sway/config.d/`hostname`/*

The net of this is that it includes a set of configs specific to each machine I run Sway on, which each have a unique output device & input device configuration and several other details, but I can include them all under version control to keep my dotfiles synced between computers.

Today, sway looks like this:

We’re now making our way towards Sway 1.0. I have put together a roadmap of the things we have done and the things that remain to do for Sway 1.0, which is available on the improved website here. We are still now moving forward on many of these features, including the most asked for feature: the stacked & tabbed window layouts, which is under development from Mikkel Oscar Lyderik. He’s given me this screenshot to tease you with:

All of this is only possible thanks to the hard work of dozens of contributors. Here’s the breakdown of lines of code per author for the top ten authors (with the difference from the previous State of Sway in parenthesis):

4307 (+3180)Mikkel Oscar Lyderik
3059 (-457)Drew DeVault
2285 (+115)taiyu
1826 (+40)S. Christoffer Eliesen
682 (-38)Luminarys
544 (+544)Cole Mickens
515 (-19)minus
385 (+185)Christoph Gysin
345 (+266)Kevin Hamacher
166 (+45)crondog

Once again, I’m no longer the author of the most lines of code. Sway now has a grand total of 15,422 lines of C and 2,787 lines of headers. Here’s the total number of commits per author for each of the top 10 committers:

688 Drew DeVault
212 Mikkel Oscar Lyderik
191 taiyu
109 S. Christoffer Eliesen
97 Luminarys
58 Christoph Gysin
34 minus
18 crondog
13 Yacine Hmito
12 progandy

As the maintainer of sway, a lot of what I do is reviewing and merging contributions from others. So these statistics change a bit if we use number of commits per author, excluding merge commits:

343 Drew DeVault
201 Mikkel Oscar Lyderik
175 taiyu
109 S. Christoffer Eliesen
96 Luminarys
58 Christoph Gysin
34 minus
18 crondog
13 Yacine Hmito
12 progandy

These stats only cover the top ten in each, but there are more - check out the full list. Hopefully next time I write a blog post like this, we’ll be well into the lifetime of Sway 1.0!