Using systems because you know them already
Every so often on the Fediverse, people ask for advice on a monitoringsystem to run on their machine (desktop or server), and some of thetime Prometheus , and when it does Iwind up making awkward noises . On the one hand, we run Prometheus (and Grafana) andare happy with it, and I run separate Prometheus setups on my workand home desktops. On the other hand, I don't feel I can recommendpicking Prometheus for a basic single-machine setup, despite running
Apache .htaccess files are important because they enable delegation
Apache's .htaccess fileshave a generally bad reputation. For example, lots of people willtell you that they can cause performance problems and you shouldmove everything from .htaccess files into your main Apacheconfiguration, using various pieces of Apache syntax to restrictwhat configuration directives apply to. The result can even beclearer, since various things can be confusing in .htaccess files(eg rewrites and redirects ). Despite all of this, .htaccess files areimportant and valuable because of one property, which is that
Readdir()'s inode numbers versus OverlayFS
Recently I re-read Deep Down the Rabbit Hole: Bash, OverlayFS,and a 30-Year-Old Surprise ( via ) and thistime around, I stumbled over a bit in the writeup that made me raisemy eyebrows:
Bash’s fallback getcwd() assumes that the inode [number] from stat()matches one returned by readdir(). OverlayFS breaks that assumption.
I wouldn't call this an 'assumption' so much as 'sane POSIX semantics',although I'
How part of my email handling drifted into convoluted complexity
Once upon a time, my email handling was relativelysimple. I wasn't on any big mailing lists, so I had almost everythingdelivered straight to my inbox (both in the traditional /var/mailmbox sense and then through to MH 'sown inbox folder directory). I did some mail filtering with procmail,but it was all for things that I basically never looked at, so Ihad procmail write them to mbox files under $HOME/.mail . I moved email from my Unix /
More on the tools I use to read email affecting my email reading
About two years ago I wrote an entry about how my switch fromreading email with exmh to reading it in GNU Emacs with MH-E had affected my email reading behaviormore than I expected. As time has passed and I've made moreextensive customizations to my MH-E environment , this has continued.One of the recent ways I've noticed is that I'm slowly making moreand more use of the fact that GNU Emacs is a multi-window editor('multi-frame' in
Syndication feed fetchers, HTTP redirects, and conditional GET
In response to my entry on how ETag values are specific to a URL , a Wandering Thoughts readerasked me in email what a syndication feed reader (fetcher) shoulddo when it encounters a temporary HTTP redirect, in the context of conditional GET .I think this is a good question, especially if we approach itpragmatically.
The specification compliant answer is that every final (non-redirected)URL must have its ETag and Last-Modified values tracked separately. If you make a conditional GET for URL Abecause you
The HTTP Last-Modified value is specific to the URL (technically so is the ETag value)
Last time around I wrote about how If-None-Match values (whichcome from ETag values) must come from the actual URL itself , not (for example) from another URL that youwere at one point redirected to. In practice, this is only an issueof moderate concern for ETag / If-None-Match ;you can usually make a conditional GET using an ETag from another URL and get away with it. This is verymuch an issue if you make the mistake of doing the same thing
Go's builtin 'new()' function will take an expression in Go 1.26
An interesting little change recently landed in the developmentversion of Go, and so will likely appear in Go 1.26 when it'sreleased. The change is that the builtin new() function will be able to take anexpression, not just a type. This change stems from the proposalin issue 45624 , whichdates back to 2021 (and earlier for earlier proposals). The newspecifications language is covered in, for example, this commenton the issue .
The broad state of ZFS on Illumos, Linux, and FreeBSD (as I understand it)
Once upon a time, Sun developed ZFS and put it in Solaris, whichwas good for us . Then Sun open-sourced Solarisas 'OpenSolaris', including ZFS, although not under the GPL (a movethat made people sad and Scott McNealy is on record as regretting).ZFS development continued in Solaris and thus in OpenSolaris untilOracle bought Sun and soon afterward closed Solaris source again(in 2010); while Oracle continued ZFS development in Oracle Solaris,we can ignore that. OpenSolaris was
If-None-Match values must come from the actual URL itself
Because I recently looked at the web server logs for WanderingThoughts , I said something on the Fediverse :
It's impressive how many ways feed readers screw up ETag values. Makeup their own? Insert ETags obtained from the target of a HTTPredirect of another request? Stick suffixes on the end? Add their ownquoting? I've seen them all.
(And these are just the ones that I can readily detect from the ETagformat being wrong for the ETags my techblog generates.)
(Technically these