Tooter Feedback Thread

Hey @molan! I’m still down stream for you. Today I’m releasing a fix for doubled toots in timelines and a login screen bug. So, I think I’ll be 2 releases ahead of you.

I’ve just been pushing to chum. You migh consider pushing to open repos again? Or I’ll take over that if you’d prefer? And thanks for having kept it alive!

2 Likes

Hmmm. If anyone has a bit of time (like hours) I’m a bit stuck. I went of on a tangent doing deduplication which is just ‘wrong’ ™ in worker threads … the problem with tooter as it is now, I believe, is that it’s a slideshow which loads a bunch of views with different models at the same time. and does automatic updates of the model.

Now, my deduping ‘does work’. but that’s not the issue in the first place. the issue is that at some point models are having items appended which should be prepended. And I’m running around in circles.

In any case, I’ve now spent enough hours on it that I’ll kill it if it’s the last thing I do, but maybe someone could think about:

  1. We have a slideshow view
  2. we have a number of objects, each with it’s own model
  3. we have updates on complete and at an interval (prepend)
  4. somehow append updates are being done automatically and I can’t see where!!!
1 Like

Just some food for thought from problems I had in the past (haven’t even checked the tooter code). Is there any chance you have static shared variables that are used to control updates or signalling related to the updates and these static variables get modified from different threads?

I have been burned from this so badly that I still remember it on any threading occasion :smiley:

Yeah, it’s something along those lines. I need to branch the codebase and back up a bit since I’ve added complexity :slight_smile:

Oh, a new version is in the pipe? When you will publish the “double toot” bug fix version on chum?

Ah, the one fix, de-duplication revealed another which I’m still on. But debugging social media apps live is REALLY distracting. I keep getting caught up this thread and that. Almost there!

7 Likes

Argh, it’s been a bit difficult. That’s what happens when you look in the wrong direction. So, I believe I’ve got de-duplication resolved and made certain the models can continue to be updated. This is still a WIP, but it looks usable.

Anyone who has time, I’ve also uploaded an rpm at Release Deduplication Release · poetaster/harbour-tooter · GitHub

I’ve seen that ‘Home’ sometimes, still, get’s stuck when going back in time, though it’s hard to reproduce. I’ll push it to chum as soon as it seems ‘generally usable.’

Sigh, somehow I missed a file in the commit. So, the rpm is down. I fixed the missing bit so a build should work from 1.1.1. But Looks like next week to push it to chum.

Kinda of a train wreck like debugging session.

EDIT: FINALLY found the last issue. Bookmarks and follow requests, among other points in the api do not obey the same logic as timelines. That is, there are no api supplied max_id or since params. Instead, you have to parse the headers for a ‘Link’ with prev and next attributes. Sigh. I don’t think I’ll get it done before 2023 :slight_smile:

EDIT: v 1.1.2 should appear in chum, today. Dupes be gone, bookmark navigation is fixed …
EDIT: v 1.1.3 should appear in chum, today. Fixes search for @persons broken by 1.1.2 :slight_smile:

6 Likes

Yay, the duplicates are history, thank you!
It becomes more apparent now that there’s only about the latest 20 posts in the home feed, with earlier ones not being loaded.

I consider this more of a feature than a bug, as it definitely limits my social media time, but wanted to state it nevertheless.

As always, thank you for your work!

That seems to be intermittent. As you might guess it was driving me nuts because you could sometimes scroll into the hundreds in home and sometimes only 40. I think this has to do with rate limiting, and the automatic background reloads. I added time between the instances (local, home, etc) to try to mitigate that, but need to implement a HEAD check to ensure one doesn’t keep hitting the limits.

There are also, with 1.1.3, some duplicates in search, conversation, and bookmarks, since I hadn’t implemented dedupe with those in mind. But I know the codebase now :slight_smile: Thanks for the feedback!

2 Likes

It also seems that you can’t refresh the home feed anymore. It only refreshes when you close the app and open it again.

It’s intermittent. Sometimes you can scroll along just nicely. I think it has to do with rate limiting. To that end I’m implementing HEAD calls on all api points to see if those limits are being being breached. But it’s a bit flaky ‘seeming’.

On my side, I had to modify the code. But it doesn’t work on local view.

It’s not intermittent on my side. Home feed is never more than 20 posts, never loads older posts when I scroll down, zero new posts when I tap on reload.
Maybe it’s a special situation in my case, but it’s stable and without exceptions.

That will fail under other circumstances ( an additional parameter to local=true). But I’ll follow up to change the numerical to a string reference. That was a bit hacky.

Hmmm. I just tested on 2 phones. One stopped scrolling at 160 posts. The second I stoped scrolling. Reload will yield new results less often than, for instance, federated or local. Which version do you have?

I’m on the latest 1.1.3 version from Chum. Device is XA2. But I’m on a pretty small instance, could that matter…?

Ok. No, small instance shouldn’t matter per se. Large instances are more likely to be an issue. But this is still flakey code. The fixes I got in before Christmas where only a step in the right direction. Thanks for the feedback!

1 Like

I’ve just released 1.1.4 which should deal with home timeline no longer loading and deduping of search. It’s still not in a state I’d like but it’s real improvement :slight_smile: Edit: up on github and coming to chum soom. @molan will probably also push to openrepos. Yeah!

3 Likes

Pushed to openrepos.
Huge thanks to @poetaster for all his work on Tooter and keeping the app alive - fantastic :smiley:

3 Likes