Just like my last post, I get to start this one off by saying that it's been a long time since I've done any work on FOSS :) I've been busy traveling and seeing a bunch of old friends - both good problems to have.
That said, I feel obligated to post a little bit about what I've been doing lately.
I've been using uwsgi quite a bit lately, and I've found a few minor issues.
https://github.com/unbit/uwsgi/pull/1229/commits/5b20f8cead01e06fbdf5a950c500f9de17efc441
I added support for statsd and socket metrics to be emitted over a unix socket.
https://github.com/unbit/uwsgi/pull/1336/commits/f6d96c88d2b0022548163feb914d8dbd1b6473b4 https://github.com/unbit/uwsgi/pull/1331/commits/90d9749ae629ad8eeb935088edabb23e8237e173
After working with the codebase a little bit, I got a bit curious and ran clang's static analyzer on it. I fixed two of the more major issues. Luckily, the maintainers started doing the same afterwards, and fixed more of the problems that had cropped up in the results.
pkgsrc / pkgin / libnbcompat
I started using pkgsrc and pkgin on my work laptop + desktop as a replacement for homebrew and installing ancient RHEL packages. I found some features I'd like to add, but before I was able to do that, I found two issues...
https://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=51424
libnbcompat did not properly guard the definition of their strdup replacement, so that if you had a project that tested for strdup presence, the libnbcompat declaration would shadow the system one. Worse, if strdup is a macro (like on Fedora amd64), then compilation blows up.
https://github.com/NetBSDfr/pkgin/pull/72/commits/c111a49f248d9f972c34bdc1e89f44c57c59a651
In pkgin, I found a small misstep that made compilation fail if strsep was defined as a macro. In this case, since there was no check for the function definition, HAVE_STRSEP would be undefined, causing libnbcompat's version to get picked up. Like in the last case, if strsep was a macro, compilation would blow up.