Status update, July 2020 July 15, 2020 on Drew DeVault's blog

Hello again! Another month of FOSS development behind us, and we’re back again to share the results. I took a week off at the end of June, so my progress this month is somewhat less than usual. Regardless, I have some updates for you, mainly in the domain of SourceHut work.

But before we get to that, let’s go over this month’s small victories. One was the invention of the BARE message format, which I wrote a blog post about if you want to learn more. Since that article, five new implementations have appeared from various authors: Rust, Python, JavaScript, D, and Zig.

I also wrote a couple of not-blogposts for this site (drewdevault.com), including a page dispelling misconceptions about static linking, and a page (that I hope you’ll contribute to!) with videos of people editing text. Just dropping a link here in case you missed them; they didn’t appear in RSS and aren’t blog posts. To help find random stuff like that on this site, I’ve also established a misc page.

Okay, on to SourceHut. Perhaps the most exciting development is the addition of continuous integration to the mailing lists. I’ve been working towards this for some time now, and it’s the first of many features which are now possible thanks to the addition of the project hub. I intend to complete some follow-up work improving the CI feature further still in the coming weeks. I’m also planning an upgrade for the hardware that runs hg.sr.ht during the same timeframe.

That’s all the news I have for now, somewhat less than usual. Some time off was much-needed, though. Thanks for your continued support, and I hope you continue to enjoy using my software!

...
$ cat main.$ext
use io;
use strings;
use sys;

export fn main void = { for (let i = 0; sys::envp[i] != null; i += 1) { let s = strings::from_c(sys::envp[i]); io::println(s); }; }; $ $redacted run main.$ext error: main.$ext:8:41: incorrect type (&char) for parameter 1 (&char) let s = strings::from_c(sys::envp[i]); ^— here $ vim main.$ext $ cat main.$ext use io; use strings; use sys;

export fn main void = { for (let i = 0; sys::envp[i] != null; i += 1) { let s = strings::from_c(sys::envp[i]); io::println(s); free(s); }; }; $ $redacted run main.$ext DISPLAY=:0 EDITOR=vim

Articles from blogs I read Generated by openring

hare-update assists in addressing breaking changes in your code

We’re working on a new tool to release along the next upcoming stable release of Hare (likely Hare 0.25.2, or 0.25.3, following our release policy) – hare-update. The coming Hare release includes a number of small breaking changes, as per usual during Hare’s…

via Blogs on The Hare programming language June 11, 2025

Open Source: Deceptive Power or Collective Governance?

In October 2024, it emerged that WordPress co-founder Matt Mullenweg has extensive power over the entire WordPress ecosystem, which 43% of all websites on the internet run on. When he exercised this power by seizing control of code that runs on tens of thou…

via Vlad's Website June 6, 2025

Summary of changes for May 2025

Hey everyone!This is the list of all the changes we've done to our projects during the month of May. 100r.co, updated Oquonie and water. Modal, the interpreter was ported to Uxn! Uxntal, the documentation has been completely redone! Hakum, added p…

via Hundred Rabbits May 31, 2025