# I am the Watcher. I am your guide through this vast new twtiverse.
# 
# Usage:
#     https://watcher.sour.is/api/plain/users              View list of users and latest twt date.
#     https://watcher.sour.is/api/plain/twt                View all twts.
#     https://watcher.sour.is/api/plain/mentions?uri=:uri  View all mentions for uri.
#     https://watcher.sour.is/api/plain/conv/:hash         View all twts for a conversation subject.
# 
# Options:
#     uri     Filter to show a specific users twts.
#     offset  Start index for quey.
#     limit   Count of items to return (going back in time).
# 
# twt range = 1 6523
# self = https://watcher.sour.is?uri=https://lyse.isobeef.org/twtxt.txt&offset=934
# next = https://watcher.sour.is?uri=https://lyse.isobeef.org/twtxt.txt&offset=1034
# prev = https://watcher.sour.is?uri=https://lyse.isobeef.org/twtxt.txt&offset=834
@off_grid_living Nice!
@movq Happy anniversary!
@movq Cool!
@movq I just thought that this would be a plane. I wasn't even considering natural objects. My astronomy knowledge is pretty much non-existent.
@movq Yeah, I was also quite surprised earlier to see this huge shift. Great photo!
We hiked 24 kilometers today: https://lyse.isobeef.org/wanderung-auf-das-fuchseck-2021-10-10/ At 06 we stopped to have our tucker. Freshly baked waffles with this year's applesauce and a few hours old apple cake. Yummy! The destination can be seen in 08 and 15.
@prologic How cute!
@movq Brilliant! Looking forward to see this code. Haven't used Vim Script for a decade or so.
@laz Yes, this is absolutely the case for yarnd (although, this link should probably only be added if there's at least one blog article). However, not everybody maintains a blog (I don't), so links are optional just as any other metadata.
@movq Haha, only the colors reveal autumn. :-) It was really nice and quite windy, so a jumper was absolutely necessary.
@prologic Thanks mate! Did you see 34? Somebody started a rock structure, too.
@prologic @laz Now yarnd needs a new UI to manage these links, doesn't it?
@movq Windows tries to help you getting more important things done!
@prologic @laz # link = My blog https://example.com/blog/ is now possible according to the spec. :-)
@prologic @eldersnake @adi I'm loving it! In fact I had the same idea for months but thought that there was a specific reason that it acted like that, so I didn't bother. Very nice!
Perfect hiking weather today. Been out for over five hours. https://lyse.isobeef.org/wanderung-auf-den-hohenrechberg-2021-10-09/ @movq's moon and venus shot is of course much better than mine.
@movq @jlj Nice! So that was Venus, what I saw. Good to know! I got her, too.
@prologic Yes. Displaying the domain softens the problem, but it doesn't catch the case were one feed is hosted at example.com/twtxt.txt and the other at example.com/blah/twtxt.txt and both claim the same nick. But the yarnd solution is probably good enough.
@prologic Just a number is way good enough. I mean you don't have any possibility to verify these numbers anyway. The author could just provide a forged file at this URL, so just include it in the feed directly, if that's something important. (Personally I don't care about numbers too much.)
@will @prologic @eldersnake @fastidious @kt84 @jlj Split sounds fine to me, although I'm no native speaker. Both links or buttons definitely need a title attribute with a bit more explanation on what they're doing and how they differ.
@prologic Doesn't sound too bad to me. :-)
Alright everybody, please have a look at the draft of the Metadata Extension Specification here: https://git.mills.io/yarnsocial/yarn/pulls/451 For your convenience the rendered version is here: https://lyse.isobeef.org/tmp/twtxt/doc/metadataextension.html
@prologic Very cool! I still have to work on that topic for tt. ;-)
Watch out in the woods! Droughts and tree diseases can cause deadfalls, so stay on the paths. https://lyse.isobeef.org/waldspaziergang-2021-10-08/ In fact yesterday a several meters long branch came crashing down on the trail just 20 meters in front of us.
@prologic Besides a tiny ditch, there's no water. So maybe weather data, yes.
@movq I just carry the paper strip in my wallet. But nobody wanted to see it yet. Admittedly, I haven't been to a restaurant for over a year.
@prologic Up until now I didn't know there is such a thing as profile links. Haven't read this RFC yet. Hmm, not sure if we need that. I certainly don't plan to provide one, on impulse I'm a bit averse. Definitely need to have sleep on it.
@prologic Hm, what would it log? The bridge construction is making progress: https://lyse.isobeef.org/waldspaziergang-2021-10-07/
@prologic I like the idea with the request counter approaching or reaching zero, though. Not sure what time to chose here.
@prologic I mean if the former user decides to leave the twxt world entirely for example. Or just wants to get rid of the forward for whatever reason.
@prologic Oh, right. Mobile doesn't exist in my universe. :-D
@prologic Thanks! I have not the slightest clue what that thing is. It says "Alpha Data Gateway" on it but I can't track down any information with DDG.
@adi Nice! Didn't know tail had an -r option.
Fixed.
@mckinley I didn't know about rev, pretty cool. :-) Ahhh, the quarterly grouping, alright! Some things are just much easier done in languages like Python. However, trying to stick to POSIX shells is always a good challenge. ;-) One addition to sort: That of course only works if the timezones are not all over the place. But for a personal twtxt feed that should be no problem.
I've been in the woods again: https://lyse.isobeef.org/waldspaziergang-2021-10-06/
Waaahhh, now I have over 1.5k unread twts by the new @adi. I probably need to write a script marking everything read from a certain timestamp on.
@off_grid_living Just remembered, that I got a wood technology table book. Turns out there are 20 pages covering plenty standards just for processed woods. More on solid timer.
@off_grid_living Over here we're just having brick and concrete buildings. Only the occasional shed or farm equipment garage is made out of timber studs. Nevertheless, getting any building material here is also really hard these days. Just looked up the timber grades you're having in Australia. Not sure what we have here. But I'm pretty sure there are several DINs (German industry standards) covering that. :-D 70x35 for a meter sounds perfectly fine to me.
@prologic Moved Permanently is HTTP 301. Maybe go for the newer and clearer HTTP 308 Permanent Redirect. If I recall correctly the older status codes have the confusion whether to switch the HTTP verb or not, the new ones clarify that. Although in this case that should not be any problem since we're just GETting anyways. Other than that, your proposal sounds quite nice! The question is, how could one even delete this forward once not needed any more? This migration should obviously also work when not moving to yarnd but some different system (e.g. just an Nginx). So not sure how that would work then with this proposal.
@prologic @eldersnake Gradle, Swift, Kotlin, what the hell!?
@mckinley_tt So I just learned that tac is Linux-specific. And ISO 8601 and RFC 3339 formatted timestamps should be easily sortable with sort (which hopefully is POSIX-compliant). Or where is the matter there?
Holy shit, I didn't know ramp rollover competitions are a thing! https://www.youtube.com/watch?v=-jaVt68K5gw
@off_grid_living I bet this is really hard work, that's for sure! 4mm steel is quite a distance to cover, especially when using a handheld drill. I don't want to miss my drill press. But that won't work on already installed vertical posts. A mag drill comes to mind but I heard they're expensive and also quite heavy, so lifting them in place isn't easy. A much cheaper option would be a ratchet strap to aid in applying pressure. But I didn't try this myself, so can't comment on how well that really works.
@darch When I open the URLs view I can see the feed URL. Regardless of the fold_mentions setting that is. Your twt in the URLs view looks like that: https://lyse.isobeef.org/tmp/urlsview.png
@darch The folded version in tt just shows the nick. That's what I'm using. When disabled the expanded form renderes both nick and URL. Have a look at those two screenshots: https://git.isobeef.org/lyse/tt/#fold-mentions
@prologic Maybe we need a third entity here to reason about nicks and URLs. For now call it the identity. If a nick resolves to multiple URLs, is it the same feed? Same as in by the same author or contentwise. Tricky. That way moves could be handled as moves, backups as backups, different authors as truely different authors and so on.
@prologic If I'm not mistaken the twtxt spec doesn't mention anything that nicks must be unique. It also doesn't claim the oppsite. Only the implemention makes the assumption, that nicks are unique, have a look at the [following] section of the config, mapping nicks to URLs. I think when comparing stuff, only the URL is considered, not the nick. So at least in that regard it's done "correctly".
@prologic The only real stable and unique thing is the feed URL (if we ignore moving to other servers for now). So ideally a URL is mapped to a nick but not the other way around. At least not in a bidirectional sense. When one wants to map a nickt to a URL is needs to be a list of URLs instead. I just think that whenever twtxt started out nobody thought of duplicate nicks, because the twtxt space was just so small.
@movq Nice!
@prologic I just use a different nick for different URLs. :-D The thing is that I'm still using the reference twtxt implementation under the hood, so there's no way around.
@prologic I'm not aware of any. Hmm, not sure about a complete v2. If so, we need to collect stuff for v2.
@eldersnake @prologic Exactly, one TTL per follower and followee (if that is a term). Oh, a traffic light is a thing I never thought of. To make things even harder you could look at the followers feed and scan for mentions of that user… No, let's start very simple!
@fastidious_anb @prologic Thewismit did too, if I'm not mistaken. What happened to him btw? His feed is dead for ages.
@prologic Thanks! The handcut miters of the trim aren't perfect by any means, but they're good enough for a basement door. It's getting painted anyways. Yes, I did not use the mitre saw on the right. It was just good fun with the Japanese hand saw.
@prologic And the avatars spec, too. But ideally we'd start with the meta data spec so the avatars sepc could reference it.
@eldersnake @prologic Great. You could implement some logging when new follower feeds are added and dropped. On TTL reset the debug logs are probably getting too noisy. This way we can get some more heuristics to tweak the duration. To simplify experiments, this duration could be adjustable by experts via the command line and/or settings, too.
@jlj Congratulations!
@prologic Oh yeah, definitely! ;-)
@fastidious Welcome back! :-)
@movq Nice output. ANSII color escapes are directly implemented in your Rust ls or are you still using that wrapper script? Why did you chose the Swiss thousands separator?
Hurray, finally finished! https://lyse.isobeef.org/tmp/glastuer.jpg
@prologic Sure, glad to help out. Still need to find a bit more time to come up with the missing specs.
@prologic Nicely put! They will just also get a new name.
@jlj These must some quite weird movies. ;-)
@off_grid_living @prologic I had to look up liquid nails and it seems to be some kind of construction adhesive. Yes, I've seen the large contact area of the two steels. Personally, I'd just go overkill and put in a second and third on the extending ears. But I'm not a builder by trade. And this adhesive is probably not coming off in centuries. ;-)
@eldersnake @prologic I propose one week. If we spot users in the wild that refresh their feeds less often than that (identified by flickering entries in the following list), we can enlarge that duration. I'd select that fairly high number initially, because people might be in internet free holidays or just have busy lives in general. So maybe once a week is a good start.
@fastidious Absolutely, no worries mate! And it appears that my tt also handles nicks in a case-sensitive manner. Need to fix that, too. :-)
@off_grid_living Looking great!
@prologic There you go! https://git.mills.io/yarnsocial/yarns/pulls/6
@antonio Good luck! Where are you moving to?
@fastidious There are a couple of open merge requests addressing the most obvious ones, you might apply them locally..
@off_grid_living @prologic Haha, I first thought you meant the operating system. Pictures are looking great! A single metal screw is enough? Thinking about long-term corrosion. Are you going to weld it solid later?
@prologic sndkit is his sonic toolkit for everywhere.
Spent two hours sanding the door. Tomorrow, I can install the remaining glued rabbet strips to hold in the glas panel.
@fastidious Oh, that's an interesting take, I need to think about it. The thing is, I just use bookmarks at work on a daily basis but only very rarely for private things (except search engine shortcuts of course).
@movq That seems like a good approach. twtxt also records the last download timestamp in its cache.
@movq Very rigorous argumentation. The original twtxt client offers are following command which then reports 404 alongside, but one has to do than manually. I was also wondering how I'm gonna implement all the subscription management in tt to help catch dead feeds.
@movq I fully agree on that.
@mckinley I just use bookmarks in Firefox (don't use any other browser) and put more frequently used stuff like search engines in my ~/.tridactylrc for quick access. More temporary stuff is just left open in a tab. The same goes for pages, that are always there. Yeah, this results in a mess of tabs, but I got used to that.~
Oh dear, I realized I even put that expired CA additionally at /usr/local/share/ca-certificates, so the Python certificate validation picked it up and rejected requests. Working now. Let's see, what else I will come across the next days.
@movq Looking good.
Turns out, I'm counting before pruning in order to speed things up with a reduced data set.
Hmm, the other day I noticed that my unread counter in tt is showing one too high. It's now even off by two for a couple of days. I need to investigate that.
@movq Your inital link was really helpful, thank you very much! I now just removed the expired DST_Root_CA_X3.pem and everything is working fine. I accidentally included said expired CA in my chain, too. It's quite weird, that an expired CA fails the validation, but omitting it entirely is okay. :-?
@prologic Thanks. Now it's getting very cold really quickly when the sun is setting. Only wore a jumper and nearly couldn't untie my boot laces at home. ;-)
@movq @prologic I got this on an old box, too. curl --cacert chain.pem --capath /tmp/nonexistent still doesn't want to accept the exact same CA chain on that machine. Works fine on others.
Ideally, I'd like to say the squirrel had too much raspberries and just needed to lay down and rest. Poor little friend. :'-( Progress on the bridge was made. https://lyse.isobeef.org/waldspaziergang-2021-09-30/
@prologic I'll have a closer look some day at Gogs.
@movq Exactly.
@movq Uuuhhhh, this sounds really great, I need to have a closer look!
@movq @prologic @adi Interesting, I just knew it as a variant of the metal sign. But according to Wikipedia this is proper American sign language.
@darch @prologic @adi They're all looking really nice!
@darch @prologic @adi They're all looking really nice!
@adi Thanks, the issue with that is, that I don't want to generate tons of pages in advance. Ages ago I had GitWeb. Something even simpler would be really nice.
@movq I use this in my status line. https://lyse.isobeef.org/tmp/vim.png
@prologic It's a GitLab, unfortunately. I'm thinking of switching to something really, really simple. I just need a viewer, no merge requests, bugs, wikis, CI/CD, whatever.
@movq Conclusion: don't do backups anymore. :-P
@prologic Ah!
@prologic Does the wind usually blow from the right?