Today marks one year since the initial commit of Sway. Over the year since, we’ve written 1,823 commits by 54 authors, totalling 16,601 lines of C (and 1,866 lines of header files). This was written over the course of 515 pull requests and 300 issues. Today, most i3 features are supported. In fact, as of last week, all of the features from the i3 configuration I used before I started working on Sway are now supported by Sway. Today, Sway looks like this (click to expand):
For those who are new to the project, Sway is an i3-compatible Wayland compositor. That is, your existing i3 configuration file will work as-is on Sway, and your keybindings and colors and fonts and for_window rules and so on will all be the same. It’s i3, but for Wayland, plus it’s got some bonus features. Here’s a quick rundown of what’s happened since the previous state of Sway:
- Stacked & tabbed layouts
- Customizable input acceleration
- Mouse support for swaybar
- Experimental HiDPI support
- New features for swaylock and swaybg
- Support for more i3 IPC features
- Tracking of the workspace new windows should arrive on
- Improved compatibility with i3
- Many improvements to the documentation
- Hundreds of bug fixes and small improvements
Since the last State of Sway, we’ve also seen packages land in the official repositories of Gentoo, OpenSUSE Tumbleweed, and NixOS (though the last group warn me that it’s experimental). And now for some updated stats. Here’s the breakdown of lines of code per author for the top ten authors (with the change from the previous state of Sway in parens):
4659 (+352) | Mikkel Oscar Lyderik |
3024 (-35) | Drew DeVault |
2232 (+53) | taiyu |
1786 (-40) | S. Christoffer Eliesen |
1090 (+1090) | Zandr Martin |
619 (-63) | Luminarys |
525 (-19) | Cole Mickens |
461 (-54) | minus |
365 (-20) | Christoph Gysin |
334 (-11) | Kevin Hamacher |
Notably, Zandr Martin has started regular contributions to Sway and brought himself right up to 5th place in a short time, and while he’s still learning C to boot. Not included here are his recent forays into contributing to our dependencies as well. Thanks man! This time around, I also lost a much more respectable line count - only 35 compared to 457 from the last update.
Here’s the total number of commits per author for each of the top ten committers:
842 | Drew DeVault |
239 | Mikkel Oscar Lyderik |
186 | taiyu |
97 | Luminarys |
91 | S. Christoffer Eliesen |
58 | Christoph Gysin |
48 | Zandr Martin |
30 | minus |
25 | David Eklov |
24 | Mykyta Holubakha |
Most of what I do for Sway personally is reviewing and merging pull requests. Here’s the same figures using number of commits per author, excluding merge commits, which changes my stats considerably:
383 | Drew DeVault |
224 | Mikkel Oscar Lyderik |
170 | taiyu |
96 | Luminarys |
91 | S. Christoffer Eliesen |
58 | Christoph Cysin |
38 | Zandr Martin |
30 | minus |
25 | David Eklov |
24 | Mykyta Holubakha |
These stats only cover the top ten in each, but there are more - check out the full list.
Sway is still going very strong, and continues developing at a fast pace. I’ve updated the roadmap with our plans for Sway 1.0. You might notice a few features have been reprioritized here, which increases the scope of Sway 1.0. It’ll be worth it, though, to make sure we have a solid 1.0 release. Hopefully we’ll see that and more within the year ahead!