Status update, February 2021 February 15, 2021 on Drew DeVault's blog

Salutations! It's officially a year of pandemic life. I hear the vaccine distribution is going well, so hopefully there won't be another year of this. In the meanwhile, I've been working hard on free software, what with having little else to do. However, I'm afraid I cannot tell you about most of it!

I've been working on todo.sr.ht's GraphQL API, and it's going quite well. I hope to ship a working read-only version later this month. There have been a number of bug fixes and rote maintenance work on sr.ht as well, but nothing particularly exciting. We did upgrade everything for Alpine 3.13, which went off without a hitch. Anyway, I'll go over the minor details in the sr.ht "what's cooking" post later today.

The rest of the progress was made in secret. Secret! You will have to live in ignorance for now. Sorry!

(unless you click this)

Here's a peek at our progress:

use fmt;
use io;
use os;

export fn main() void = {
        if (len(os::args) == 1) match (io::copy(os::stdout, os::stdin)) {
                err: io::error => fmt::fatal("Error copying <stdin>: {}",
                        io::errstr(err)),
                size => return,
        };

        for (let i = 1z; i < len(os::args); i += 1) {
                let f = match (os::open(os::args[i], io::mode::RDONLY)) {
                        s: *io::stream => s,
                        err: io::error => fmt::fatal("Error opening {}: {}",
                                os::args[i], io::errstr(err)),
                };
                defer io::close(f);

                match (io::copy(os::stdout, f)) {
                        err: io::error => fmt::fatal("Error copying {}: {}",
                                os::args[i], io::errstr(err)),
                        size => void,
                };
        };
};

I'm looking for a few volunteers to get involved and help flesh out the standard library. If you are interested, please email sir@cmpwn.com to express your interest, along with your sr.ht username and a few words about your systems programming experience — languages you're comfortable with, projects you've worked on, platforms you grok, etc.

⇒ This article is also available on gemini.

Have a comment on one of my posts? Start a discussion in my public inbox by sending an email to ~sircmpwn/public-inbox@lists.sr.ht [mailing list etiquette]

Articles from blogs I read Generated by openring

Summary of changes for February

Hey everyone! This is the list of all the changes we've done to our projects and apps during the month of February. We'll also be reporting in our on position in the world, and on our future plans. Summary Of Changes Uxn, started working on a fa…

via Hundred Rabbits February 28, 2021

Contexts and structs

Introduction In many Go APIs, especially modern ones, the first argument to functions and methods is often context.Context. Context provides a means of transmitting deadlines, caller cancellations, and other request-scoped values across A…

via The Go Programming Language Blog February 24, 2021

Status update, February 2021

Hi! Once again my focus has been Wayland-related projects this month. A steady stream of improvements made it into wlroots: Xyene made the X11 clipboard code a lot more robust, bl4ckbone has made good progress on the upcoming Pixman-based software renderer, a…

via emersion February 22, 2021