|  | 
|  | 1 | +Like the previous month was the first in 2025 with plenty of news to share, this month is a first as well: I seem to have nothing to write about. | 
|  | 2 | + | 
|  | 3 | +Sure, there were a couple of smaller API improvements, but nothing that would inspire me to write home about. | 
|  | 4 | +So what did I do all this time? Probably this is the moment where there really is no other way but to talk about GitButler, something I avoided last month just because it doesn't seem to belong into the `gitoxide` newsletter. | 
|  | 5 | + | 
|  | 6 | +## GitButler | 
|  | 7 | + | 
|  | 8 | +[GitButler](https://gitbutler.com) is what I have been working on intensely for the last two months effectively, in a push to help it to unfold its true potential. Thus far it was mostly powered by `git2`, with `gitoxide` sprinkled in there, but the next iteration will be the inverse with `git2` only being used where `gitoxide` is lacking a feature. That way, along with massive architectural changes, it will be able to cope with large repositories and be more compatible with various Git features, too. | 
|  | 9 | + | 
|  | 10 | +I cannot wait to see all this work to finally come to fruition, and of course, to also see myself being pulled to a user interface that truly elevates my workflow, and the workflow of other devs just like me who thus far preferred to stay on the command-line. | 
|  | 11 | + | 
|  | 12 | +## Community | 
|  | 13 | + | 
|  | 14 | +### Faster `gix blame` | 
|  | 15 | + | 
|  | 16 | +Christoph Rüßler kept working and managed to greatly improve the `gix blame` performance while increasing its conformance to Git at the same time. This means that now, depending on the sample, `gix blame` *can* be a bit faster than Git, but it typically is still up to 30% slower when commitgraph caches are used. Overall though, the performance is nothing to sneeze at, and it competes quite well except for in pathological cases. | 
|  | 17 | +Admittedly, I am quite blown away by the performance and have a feeling that last time I checked, I didn't use the latest version of the `gix` binary. | 
|  | 18 | +It's worth noting that rename-tracking still isn't support, but I also see no reason why it shouldn't be eventually, a feature that would make `gix blame` so much more useful in practice. | 
|  | 19 | + | 
|  | 20 | +### `gix blame` with experimental cache | 
|  | 21 | + | 
|  | 22 | +A pretty [slim PR](https://github.com/GitoxideLabs/gitoxide/pull/1852) shows how to use a special cache to greatly speedup blames, from ~300ms down to just ~4ms, a massive 75x speedup that would be very useful for editors and IDEs, or forges, I am sure! | 
|  | 23 | +Of course, one first has to build such cache, and probably do so per file, but I am sure there are plenty of use-cases for it when it's driven by dev tooling. | 
|  | 24 | + | 
|  | 25 | +### Gix in Cargo | 
|  | 26 | + | 
|  | 27 | +With `gix status` now available I am planning to integrate it as soon as possible! That didn't happen yet, but… it will, the stack to work off before I can start this is pretty high though so it's unlikely to happen anytime soon. | 
|  | 28 | + | 
|  | 29 | +Cheers | 
|  | 30 | +Sebastian | 
|  | 31 | + | 
|  | 32 | +PS: The latest timesheets can be found [here (2025)](https://github.com/Byron/byron/blob/main/timesheets/2025.csv).  | 
0 commit comments