(#dgceyaa) @lyse@lyse.isobeef.org

Waste paper, like an opened envelope, suits a shopping list perfectly fine.

Indeed, I’m drowning in this stuff and I throw it away anyway, so I might just use it.

You’ve got a nice handwriting, I like it.

Thanks. šŸ˜… (It used to be horrible. Gosh, the teachers scolding me in school … Bah. šŸ˜‚)


#ksl4yoq

The main feed got quite large again, so it’s time for another rotation into archive feeds. I just noticed that I forgot to upload the archive feeds last time. Whoops. :-)


#enlgvta

(#aorrjza) Okay, they are also offering 2.8x25mm copper nails. Which I actually do have a single one here. :-)

My hardware collection also includes a few brass-like looking screws that I could repurpose into rivets. But I reckon I have to upgrade my burner first. I’m not a metal worker by any means, so I could be totally wrong, but I imagine that some heat is necessary to loosen the work-hardening effect when beating on them. I will do some experiments on Saturday and report back.


#7ahwhrq

(#xrswtvq) @zvava@twtxt.net

(#abcdefghijkl https://example.com/tw.txt#:~:text=2025-10-01T10:28:00Z), because it can be simply hacked in to clients currently on hashv1 and provides an off-ramp to location-based addressing

I like that property (an off-ramp to location-based addressing), so I think I could live with that approach. āœ…

(I’m not sure why we’re using text fragments, though. Wouldn’t that link to the first occurence of 2025-10-01T10:28:00Z? That’s not necessarily correct. And, to be proper URLs that Firefox and Chromium understand, it would also need to be written as 2025%2D10%2D01T10:28:00Z. The dash carries meaning, sadly. I think all this just creates needless complication. How about we just go with https://example.com/tw.txt#2025-10-01T10:28:00Z?)


#lolhvka

(#xrswtvq) @zvava@twtxt.net My clients trusts the first url field it finds. If there is none, it uses the URL that I’m using for fetching the feed.

No validation, no logging.

In practice, I’ve not seen issues with people messing with this field. (What I do see, of course, is broken threads when people do legitimate edits that change the hash.)

I don’t see a way how anyone can impersonate anybody else this way. šŸ¤” Sure, you could use my URL in your url field, but then what? You will still show up as zvava in my client or, if you also change your nick field, as movq (zvava).


#7vuhlna

(#xrswtvq) @zvava@twtxt.net Yes, the specification defines the first url to be used for hashing. No matter if it points to a different feed or whatever. Just unsubscribe from malicious feeds and you’re done.

Since the first url is used for hashing, it must never change. Otherwise, it will break threading, as you already noticed. If your feed moves and you wanna keep the old messages in the same new feed, you still have to point to the old url location and keep that forever. But you can add more urls. As I said several times in the past, in hindsight, using the first url was a big mistake. It would have been much better, if the last encountered url were used for hashing onwards. This way, feed moves would be relatively straightforward. However, that ship has sailed. Luckily, feeds typically don’t relocate.


#qc6fsoq

(#7w2liya) @lyse@lyse.isobeef.org Yeah, those are my bad.

A couple of weeks ago, I added CORS support, which is the source of the OPTIONS call. What I didn’t do was store the result so it stops trying to make further attempts. I’ll get that in tomorrow.

As for the ā€œIf-Modified-Sinceā€ header, the server-based component of TwtStrm should be sending that (along with its user-agent tag and my user info). I wasn’t sure if that could be sent with CORS requests, so I’ll need to look into that a bit more.

Thanks, I appreciate the feedback!


#5ayx72q

Hopefully I can muster up the energy to start this new project:

Put up lots of thermometers and hygrometers in the apartment, have them report their readings wireless to a database.

I suspect that I’ll have to ā€œbuildā€ these myself, because ready-to-use kits most like require some sort of cloud service. Dunno, haven’t checked yet.


#wqxbfea

(#guskv5a) Thank you, @alexonit@twtxt.alessandrocutolo.it! It’s not sealed at all. If you were pouring in a liquid, it would run out on all four corners. It’s just folded over and carefully hammered shut as best as possible. 03 is a bit blurred, but you can see the tab from the right (the short side) tucking in on the left (the long side). The hem on top clamps it in place fairly decently.

I decided against blind rivets, because they leave ugly looking and sharp backsides, which can also interfer with the contents of the box. However, they would be an easy solution to make the corners more rigid and prevent any movement from the short sides.

Unfortunately, I can’t weld or solder, so that’s not an option. It would be the by far best solution. I wanna learn it one day, though.

Yes, Ken is a really great dude. He’s the reason I gave this a shot in the first place. :-)


#jgp3kpq

(#sqsa46q) @itsericwoodward@itsericwoodward.com No worries, all good, mate! We all have to start somewhere. Other software requests my feed several orders of magnitude more often.

I can confirm, the User-Agent header appears to be fixed. \o/

Two other things I noticed, though:

  1. There’s now an OPTIONS request for my feed coming from something that claims to be Firefox, pointing to your feed URL in the query. No clue what this is about. In any case, it’s rejected with a 405 Method Not Allowed.

  2. Not that these few requests bother me at all, but you might wanna implement caching next with either the If-Modified-Since or If-None-Match request headers. This way, if the feed hasn’t changed, the web server can reply with a 304 Not Modified and no body at all, saving unnecessary traffic. But again, this is really not an issue for me at all. I just wanted to make sure you’re aware of it, that’s all. It might be even already on your agenda. Or you might decide to never do anything about it, which is also fine for me. :-)


#7w2liya

(#tjlazxa) It still needs some cleaning (and some slight UX improvements), but overall, I’m happy with it.

BTW - I promise, I intended it to be pronounced like ā€œTweetStreamā€ (or as written, ā€œTwtStrmā€), rather than ā€œTweetStormā€. Sorry again. 😊


#irv5m7a

I finally solved the loading issue in my WIP reader, TwtStrm (and apologies again to anyone that got spammed while I was diagnosing the issue).

After another round of coding this weekend, I’m happy to report that it now renders all the twts (with markdown parsing), complete with localstorage and server-based file caching.


#tjlazxa