@prologic@twtxt.net Haha oh my gosh. It’s about 12C outside here and raining sideways.
**
🧮 USERS:3 FEEDS:6 TWTS:232 BLOGS:0 ARCHIVED:56318 CACHE:2033 FOLLOWERS:7 FOLLOWING:23
**
🧮 USERS:3 FEEDS:6 TWTS:232 BLOGS:0 ARCHIVED:56318 CACHE:2033 FOLLOWERS:7 FOLLOWING:23 ⌘ Read more
@prologic@twtxt.net Why not @timeline
@darch@twtxt.net
I replied to the issue.
@movq@www.uninformativ.de I don’t by your example (rebasing behaviour), sorry.
Writing a twt is more similiar to writing a commit message. Git does quite some checks to detect that nothing new was written and happily discards a commit if you just leave the editor. You don’t need any special action, just quit your editor. Git will take care for the rest.
But it’s OK as it is. I just didn’t expect that I have to select and delete all to discard a twt. So it’s C-x h C-w C-x C-c for me.
@darch@twtxt.net
Getting this when trying to use it:
error executing template timeline: template: timeline:131:43: executing "twt" at <formatForDateTime>: wrong number of args for formatForDateTime: want 2 got 1
@darch@twtxt.net
Cool! Will give it a try tonight. Thanks for all the work.
@movq@www.uninformativ.de love having fresh changes coming down with a git pull with my tea in the morning. Thank you much!
**
🧮 USERS:3 FEEDS:6 TWTS:231 BLOGS:0 ARCHIVED:56056 CACHE:2038 FOLLOWERS:7 FOLLOWING:23
**
🧮 USERS:3 FEEDS:6 TWTS:231 BLOGS:0 ARCHIVED:56056 CACHE:2038 FOLLOWERS:7 FOLLOWING:23 ⌘ Read more
@movq@www.uninformativ.de Yes, this may be enough to check.
I only know this “feature” from my revision control software where I get “abort: empty Commit message” or “Aborting commit due to empty commit message” when I do not change whatever is already in there. Can be quite some text about which files changed and so on.
@movq@www.uninformativ.de My workflow is as follows.
I hit “reply” hotkey and my editor comes up.
With or without writing something I close my editor without saving the content.
Of course I close it by C-x C-c, not by :q! ;-)
Jenny finds the temp file unchanged, e.g. it’s content is the same as it was when my editor was started. I would like that jenny discards the reply then.
Autosaving is no problem either. Real editors do this to a temporary (kind of backup) file. Only in case of a crash that file is consulted and the user is asked if she would like to continue with that stored content.
**
🧮 USERS:3 FEEDS:6 TWTS:230 BLOGS:0 ARCHIVED:55821 CACHE:2086 FOLLOWERS:7 FOLLOWING:23
**
🧮 USERS:3 FEEDS:6 TWTS:230 BLOGS:0 ARCHIVED:55821 CACHE:2086 FOLLOWERS:7 FOLLOWING:23 ⌘ Read more
@prologic@twtxt.net
Yup, hmmm indeed! 🤔
I think something has caused my feed to be in a bad state and is now unpardable😥
I can read this on jenny, but the twt isn’t making it to my own pod. Something has gone really wrong, me thinks.
@fastidious@arrakis.netbros.com fixed this one yesterday. https://git.mills.io/yarnsocial/yarn/pulls/502
**
🧮 USERS:3 FEEDS:6 TWTS:229 BLOGS:0 ARCHIVED:55620 CACHE:2133 FOLLOWERS:7 FOLLOWING:23
**
🧮 USERS:3 FEEDS:6 TWTS:229 BLOGS:0 ARCHIVED:55620 CACHE:2133 FOLLOWERS:7 FOLLOWING:23 ⌘ Read more
**
🧮 USERS:3 FEEDS:6 TWTS:228 BLOGS:0 ARCHIVED:55428 CACHE:2134 FOLLOWERS:7 FOLLOWING:23
**
🧮 USERS:3 FEEDS:6 TWTS:228 BLOGS:0 ARCHIVED:55428 CACHE:2134 FOLLOWERS:7 FOLLOWING:23 ⌘ Read more
@prologic@twtxt.net Its not FormatText stripping out the lines. That formats with \n newlines so when unmarshalling it tries to parse the text and sees that as the end of twt. LiteralText keeps the newlines as \u2028
@prologic@twtxt.net make the text field twt.LiteralText() instead of twt.FormatText() and you should be good. 
jenny -f. Have now jennys cache under revision control, automatically commiting changes after each fetch. Let's see if this helps finding a (possible) bug.
@movq@www.uninformativ.de Your scenario would produce observed behaviour, agreed. On the other side I’m sure I’ve set very URL in lasttwt > 1630000000.0 (manually, in my editor).
But I can’t reproduce any weird behaviour right now. I’ve tried to “blackhole” twt.nfld.uk temporarily. That does not have any effect.
I’ve also tried to force twt.nfld.uk to deliver an empty twtxt. That does not have any effect either.
So I guess everything is fine with jenny.
I have wrapped jenny into some shell script to versionize ~/.cache/jenney. This way I have better data if anything unexprected is showing again.
**
🧮 USERS:3 FEEDS:6 TWTS:227 BLOGS:0 ARCHIVED:55228 CACHE:2173 FOLLOWERS:7 FOLLOWING:23
**
🧮 USERS:3 FEEDS:6 TWTS:227 BLOGS:0 ARCHIVED:55228 CACHE:2173 FOLLOWERS:7 FOLLOWING:23 ⌘ Read more
@prologic@twtxt.net I’ve deleted eleven and utf8test, https://search.twtxt.net is the only follower. Maybe you can stop it to follow those twtxts? They were meant for testing purposes only.
jenny -f. Have now jennys cache under revision control, automatically commiting changes after each fetch. Let's see if this helps finding a (possible) bug.
@movq@www.uninformativ.de Yes, it was exactly those twts. I don’t think I’ve managed to “match” the downtime while fetching twts. But even if I had, how can this lead to inserting old twts?
@movq@www.uninformativ.de Another feature request: sometimes I start writing a twt but then would like to discard it. It would be great if jeny could detect that I did not wrote (or saved) anything and then discards the twt instead of creating an “empty” one.
@movq@www.uninformativ.de Today I had unexpected old twts after jenny -f. Have now jennys cache under revision control, automatically commiting changes after each fetch. Let’s see if this helps finding a (possible) bug.
@fastidious@arrakis.netbros.com
I hit RETURN after the subject, and nick […]
I shows fine on jenny. Let’s see how Yarn renders mine above.
@fastidious@arrakis.netbros.com will reply to this twt, quoting something in it. I will do that same afterwards on his reply.
**
🧮 USERS:3 FEEDS:6 TWTS:226 BLOGS:0 ARCHIVED:54944 CACHE:2124 FOLLOWERS:7 FOLLOWING:23
**
🧮 USERS:3 FEEDS:6 TWTS:226 BLOGS:0 ARCHIVED:54944 CACHE:2124 FOLLOWERS:7 FOLLOWING:23 ⌘ Read more
Not to boast, but jenny has never failed me 😂. It is so neat, powerful, and streamlined, not even funny! Thank you very much, @movq@www.uninformativ.de for it! 💛
@fastidious@arrakis.netbros.com
I see it, but can you see my reply? Let’s find out!
@fastidious@arrakis.netbros.com HAHA! tis the same!
@prologic@twtxt.net like parsing HTML with regex.
@prologic@twtxt.net i do not. i made my own version of TikTok feed. (with custom timezone!)
@prologic@twtxt.net lol. just testing some Unicode.
**
🧮 USERS:3 FEEDS:6 TWTS:225 BLOGS:0 ARCHIVED:54681 CACHE:2086 FOLLOWERS:7 FOLLOWING:23
**
🧮 USERS:3 FEEDS:6 TWTS:225 BLOGS:0 ARCHIVED:54681 CACHE:2086 FOLLOWERS:7 FOLLOWING:23 ⌘ Read more
@movq@www.uninformativ.de What do you think about this?
diff –git a/jenny b/jenny
index b47c78e..20cf659 100755
— a/jenny
+++ b/jenny
@@ -278,7 +278,8 @@ def prefill_for(email, reply_to_this, self_mentions):
def process_feed(config, nick, url, content, lasttwt):
nick_address, nick_desc = decide_nick(content, nick)
url_for_hash = decide_url_for_hash(content, url)
new_lasttwt = parse(‘1800-01-01T12:00:00+00:00’).timestamp()
# new_lasttwt = parse(‘1800-01-01T12:00:00+00:00’).timestamp()
new_lasttwt = None
for line in twt_lines_from_content(content):
res = twt_line_to_mail(@@ -296,7 +297,7 @@ def process_feed(config, nick, url, content, lasttwt):
twt_stamp = twt_date.timestamp() if lasttwt is not None and lasttwt >= twt_stamp: continueif twt_stamp > new_lasttwt:
if not new_lasttwt or twt_stamp > new_lasttwt:
new_lasttwt = twt_stamp mailname_new = join(config['maildir_target'], 'new', twt_hash)
@movq@www.uninformativ.de I just observed unexpected old twts coming back.
It looks like lasttwts is reset to -5364619200.0 every time no new content wasfetched for example if if-modified-since did not produce new twts?
@lyse@lyse.isobeef.org I’m seeing your response as reply to #p522joq, where it doesn’t seem to belong to. Did this happen by accident or is there a bug hiding somewhere?
@prologic@twtxt.net I’m seeing your response as reply to #p522joq, where it doesn’t seem to belong to. Did this happen by accident or is there a bug hiding somewhere?
@movq@www.uninformativ.de Ha, but when you control lastmods, lastseen and lasttwts it’s easy to test.
Works like a charm!
@movq@www.uninformativ.de Not that easy to test when pods honor if-modified-since ;-)
I’ve almost only timestamps -5364619200.0…
Diff looks good to me!
**
🧮 USERS:3 FEEDS:6 TWTS:224 BLOGS:0 ARCHIVED:54447 CACHE:2059 FOLLOWERS:7 FOLLOWING:23
**
🧮 USERS:3 FEEDS:6 TWTS:224 BLOGS:0 ARCHIVED:54447 CACHE:2059 FOLLOWERS:7 FOLLOWING:23 ⌘ Read more
@movq@www.uninformativ.de
I’ll test it tomorrow. Thank’s for starting this feature!
F in their name.
() I believe
glob ()is anO(n)algorithm
Yes, I see. But don’t underestimate OS caching for files and directories!
If you look up files in the same directory many times then OS may use cached results from earlier lookups.
I’m not totally sure but I believe this is how things work for both, Windows and Linux at least.
@movq@www.uninformativ.de
When I look in my twtxt maildir for duplicated messages they all have F in their name.
I see that in mail_file_exists jenny does not consider flagged messages when testing if a message already exists.
I understand that looking up only 12 combinations is faster than reading huge directories. I’m astonished that globbing would be slower. Learning something new every day…
@movq@www.uninformativ.de
I just pulled it, works like a charm (as expected) ;-)
@movq@www.uninformativ.de
Updated. Will it be possible for the subject be moved at the begining instead (like Yarn and tt do)?
@movq@www.uninformativ.de
I’m not a Python programmer, so please bear with me.
The doc about encodings does also mention:
If you require a different encoding, you can manually set the Response.encoding property
Wouldn’t that be a one liner like (Ruby example)?
'some text'.force_encoding('utf-8')
I understand that you do not want to interfere with requests. On the other hand we know that received data must be utf-8 (by twtxt spec) and it does burden “publishers” to somehow add charset property to content-type header. But again I’m not sure what “the right thing to do” ™ is.
**
🧮 USERS:3 FEEDS:6 TWTS:223 BLOGS:0 ARCHIVED:54236 CACHE:2108 FOLLOWERS:7 FOLLOWING:23
**
🧮 USERS:3 FEEDS:6 TWTS:223 BLOGS:0 ARCHIVED:54236 CACHE:2108 FOLLOWERS:7 FOLLOWING:23 ⌘ Read more
@prologic@twtxt.net @movq@www.uninformativ.de
Exactly, you see correct UTF-8 encoded version (even with content-type: text/plain leaving out charset declaration).
After following utf8test twtxt myself I now see that jenny does not handle it as UTF-8 when charset is missing from HTTP header, just like @quark@ferengi.one has observed.
So should jenny treat twtxt files always as UTF-8 encoded? I’m not sure about this.