@lyse@lyse.isobeef.org Ahh, I see. So it’s not really a drama. 😅
(When the spec says “content is UTF-8”, then it kind of follows for me that I should set Content-Type: text/plain; charset=utf-8
. Lots of feeds don’t do that, though, which is why jenny ignores the header altogether and always decodes as UTF-8.)
@anth@a.9srv.net (I’m also a bit confused by the UTF-8 topic. I thought that the original twtxt spec has always mandated UTF-8 for the content. Why’s that an issue now? 😅 Granted, my client also got this wrong in the past, but it has been fixed ~3 years ago.)
@lyse@lyse.isobeef.org That looks like lovely weather. We had nothing but rain. 🥴
@bender@twtxt.net So you stayed? Fingers crossed 🤞😵
@lyse@lyse.isobeef.org lol indeed 😆
I hope you guys in the US get safely through the next storm. 😳
That is a fun little rabbit hole: https://rodarmor.com/blog/whence-newline/
Going through some old CDs.
Jam & Spoon - Angel (DJ Misjah Remix)
I’ve always liked this track, but ~30 years ago I didn’t have good headphones. Now I do and only now do I realize how “dense” the atmosphere of this track is. 😳 Guess my speakers back then simply didn’t render most of the bass … 🤦
Open(…)
being successful and only executing the first command giving me that error. Meh.
@lyse@lyse.isobeef.org Did someone call perror()
after something that does not change errno
? 🥴
@3r1c@3r1c.net I think I’m gonna like that blog. 😅 https://unixdigest.com/articles/is-the-madness-ever-going-to-end.html
What’s going on with the timestamps on HackerNews articles? 🤔 A lot of them are off: https://movq.de/v/1341904fa5/s.png
@bender@twtxt.net As for stability, yes. As for “easy to understand”: Probably depends on how well you hide things like lists or hash maps behind library functions. 🥴
@xuu@txt.sour.is Yes, of course. This has been blown out of proportion anyway. All I originally wanted to say is that the b2sum
program isn’t very widely available.
It would help to know how many different clients there actually are. I suspect that number is very close to 3.
@quark@ferengi.one This message of yours was another reason for writing 2hex
and 2bin
. It made me realize my existing hex2bin
script was buggy. So now I have that portable version in C which runs pretty much everywhere: https://movq.de/v/31843f7317/s.png 🥳
@bender@twtxt.net Yup, that’s where my web search ended up as well. 🥴
@cuaxolotl@sunshinegardens.org Ah, I see. Thanks for the explanation. 👌
@cuaxolotl@sunshinegardens.org What’s “the gemini tx model”? 🤔
There’s a lot more activity in Geminispace than I realized: gemini://warmedal.se/~antenna/
@xuu@txt.sour.is @prologic@twtxt.net You clearly have very different goals for twtxt and view it from a very different perspective. I don’t have the mental energy for these discussions. I’m gonna take a break.
@bender@twtxt.net The example @prologic@twtxt.net posted is missing the base32 dance and the length should be 256 instead of 32. This thing prints the correct hash:
printf '%s\n%s\n%s' 'https://example.com/twtxt.txt' '2020-12-09T15:38:42Z' 'The twt hash now uses the RFC 3339 timestamp format.' | b2sum -l 256 | awk '{ print $1 }' | xxd -r -p | base32 | sed -E 's/=//g; s/.*(.{7})$/\1/' | tr '[A-Z][A-Z=]' '[a-z][a-z=]'
(xxd
is part of Vim.)
@prologic@twtxt.net I’m sure you can somehow install something that calculates blake2b on OpenBSD. But it’s not part of the base system as a standalone CLI tool, there only appear to be Perl modules for it. The other SHA tools do exist.
@prologic@twtxt.net I was about to post the same a few days ago, but b2sum is a GNU thing and not available on OpenBSD, for example.
@prologic@twtxt.net I wanted to wait for things to settle down. It’s still unclear to me in which direction we’re going – and if that new/different stuff is even possible to implement in jenny. That said, I’ve been really busy with private stuff these last few days, I’ve lost track of most of what you’re discussing. 🥴
@prologic@twtxt.net If I understand correctly, then this means that twt hashes no longer uniquely refer to one specific twt. When someone talks about #1234567
, it could refer to the original or some edit of it. It is up to clients to find out what this hash could mean (by keeping a historical database of all feed versions, basically).
Isn’t this essentially the same as only including url
and timestamp
in the hash?
@lyse@lyse.isobeef.org The view from the top of the “mountains” never gets old. 😊
@prologic@twtxt.net So this hinges on clients keeping a history of the twt hashes. Clients that clean their cache or simply start following a feed later on have no way of reconstructing older twt hash versions and thus no way of reconstructing existing threads. Right?
@prologic@twtxt.net Okay. So it goes like this:
My client fetches a feed. It builds a map/hashmap/dictionary of all twts: Timestamps map to twt hashes. It then stores/shows the twts. It also stores the hashmap.
On the next fetch operation, the client re-processes all twts in the feed. It must now compare each timestamp to the previously built hashmap: Aha, timestamp T
has now a twt hash of B
instead of A
, so this is an edited twt.
Did I understand that correctly so far? 🤔
@prologic@twtxt.net Any more details on the edit stuff? 🤔
Had to build a list of all feeds (that I follow) and all twts in them and there are two collisions already:
$ ./stats
Saw 58263 hashes
7fqcxaa
https://twtxt.net/user/justamoment/twtxt.txt
https://twtxt.net/user/prologic/twtxt.txt
ntnakqa
https://twtxt.net/user/prologic/twtxt.txt
https://twtxt.net/user/thecanine/twtxt.txt
Namely:
$ jenny -D https://twtxt.net/user/justamoment/twtxt.txt | grep 7fqcxaa
[7fqcxaa][7fqcxaa=] [2022-12-28 04:53:30+00:00][2022-12-28 04:53:30+00:00=] [(#pmuqoca) @prologic@twtxt.net I checked the GitHub discussion, it became a request to join forces.
Do you plan on having them join?
Also for the name, how about:
- “progit” or “prologit” (prologic official hard fork)
- “git-stance” (git instance)
- “GitTree” (Gitea inspired, maybe to related)
- “Gitomata” (git automata)
- “Git.Source”
- “Forgor” (forgit is taken so I forgor) 🤣
- “SweetGit” (as salty chat)
- “Pepper Git” (other ingredients) 😉
- “GitHeart” (core of git with a GitHub sounding name)
- “GitTaka” (With music in mind)
Ok, enough fun… Hope this helps sprout some ideas from others if nothing is to your taste.]
$ jenny -D https://twtxt.net/user/prologic/twtxt.txt/5 | grep 7fqcxaa
[7fqcxaa][7fqcxaa=] [2022-02-25 21:14:45+00:00][2022-02-25 21:14:45+00:00=] [(#bqq6fxq) It’s handled by blue Monday]
And:
$ jenny -D https://twtxt.net/user/thecanine/twtxt.txt | grep ntnakqa
[ntnakqa][ntnakqa=] [2022-01-23 10:24:09+00:00][2022-01-23 10:24:09+00:00=] [(#2wh7r4q) <a href="https://yarn.stigatle.no/external?uri=https://twtxt.net/user/prologic/twtxt.txt&nick=prologic">@prologic<em>@twtxt.net</em></a> I know, I was just hoping it might have also gotten fixed by that change, by some kind of backend miracles. 😂]
$ jenny -D https://twtxt.net/user/prologic/twtxt.txt/1 | grep ntnakqa
[ntnakqa][ntnakqa=] [2024-02-27 05:51:50+00:00][2024-02-27 05:51:50+00:00=] [(#otuupfq) <a href="https://yarn.stigatle.no/external?uri=https://twtxt.net/user/shreyan/twtxt.txt&nick=shreyan">@shreyan<em>@twtxt.net</em></a> Ahh 👌]