Previously. Historically if you wanted to do asynchronous work in GObject-based applications you would use GAsyncReadyCallback and GAsyncResult. There are two ways to integrate with this form of asynchronous API. In one direction, you can consume this historical API and provide the result as a DexFuture. In the other direction, you can provide this API … Continue reading Integrating Libdex and GAsyncResult| Happenings in GNOME
A couple years ago I spent a great deal of time in the waiting room of an allergy clinic. So much that I finally found the time to write a library that was meant to be a followup to libgtask/libiris libraries I wrote nearly two decades ago. A lot has changed in Linux since then … Continue reading Libdex 1.0| Happenings in GNOME
Foundry Spent a bit of time working out how we can enable selection of app patterns in Foundry. The goal here would be to have some very common libadwaita usage patterns available for selection in the new-project guide. Ultimately it will rely on FoundryInputCombo/FoundryInputChoice but we’ll have to beef it up to support iconography. Finish … Continue reading Status Week 34| Happenings in GNOME
This week is still largely focused on finalizing API/ABI for the 1.0 of Foundry in a few weeks. Foundry Did a bunch of work on LLM completion and and conversation APIs. They are not focused on supporting everything possible but instead making some of the common stuff extremely simple. That goes for both the model...| Happenings in GNOME
Foundry This week was largely around getting the new template engine landed so it can be part of the 1.0 ABI. Basically just racing to get everything landed in time to commit to the API/ABI contract. FoundryTextBuffer gained some new type prerequisites to make it easier for writing applications against them. Since Foundry is a … Continue reading Week 32 Status| Happenings in GNOME
Foundry Added a new gutter renderer for diagnostics using the FoundryOnTypeDiagnostics described last week. Write another new gutter renderer for "line changes". I'm really happy with how I can use fibers w/ GWeakRef to do worker loops but not keep the "owner object" alive. As long as you have a nice way to break out...| Happenings in GNOME
My approach to engineering involves an engineers notebook and pen at my side almost all the time. My ADHD is so bad that without writing things down I would very much not remember what I did.| Happenings in GNOME
My approach to engineering involves an engineers notebook and pen at my side almost all the time. My ADHD is so bad that without writing things down I would very much not remember what I did. Working at large companies can have a silencing effect on engineers in the community because all our communication energy … Continue reading Week 30 Status| Happenings in GNOME
I won't be traveling this summer for GUADEC, so here is a quick rundown of what I would talk about if I were there. Personally, I feel like Foundry has the potential to be far more useful than Builder alone. This is probably a good time to write about how it got here and where...| Happenings in GNOME
Thanks to the work of Christian Gmeiner, support for annotating time regions using Sysprof marks has landed in Mesa. That means you’ll be able to open captures with Sysprof and see the data along other useful information including callgraphs and flamegraphs. I do think there is a lot more we can do around better visualizations … Continue reading Sysprof in your Mesa| Happenings in GNOME
With Foundry I want to make LSP management much easier than it currently is in Builder. We have the foundry lsp run python3 command where python3 can be replaced with any language for which there is an installed LSP plugin. This will start an LSP using all the abstractions (including cross-container execution) and provide it … Continue reading Simplifying LSP Selection| Happenings in GNOME
With GNOME 48 I released libdex 0.10 on the march towards a 1.0. One of the major improved features there was around fiber cancellation. I'm not going to go into detail about the differences between threads and fibers as wikipedia or your local CS department can probably help you there. But what I will say...| Happenings in GNOME
The upcoming systemd v257 release will have support for a feature originating from ConEmu (a terminal emulator for Windows) which was eventually adopted by Windows Terminal. Specifically, it is an OSC (Operating System Command) escape sequence which defines progress state. Various systemd tools will natively support this. Terminal emulators which do not support it simply...| Happenings in GNOME