Dimillian / IceCubesApp

A SwiftUI Mastodon client
https://apps.apple.com/us/app/ice-cubes-for-mastodon/id6444915884
GNU Affero General Public License v3.0
4.89k stars 461 forks source link

Bug: Hangs while scrolling #2008

Open steveriggins opened 3 months ago

steveriggins commented 3 months ago

Environment:

1.10.33

Description

Unlike macOS and iOS, Ice Cubes on Vision OS hitches a lot while scrolling the timeline.

I have forked and built Ice Cubes locally and there are several issues.

The first is related to LazyImage in AvatarView.swift. Removing this view and replacing it with Image(systemName: "square.and.arrow.up.on.square.fill") resolves most, but not all of the hangs on the main thread in instruments. I have not had time to investigate others.

I also did not have time to localize Nuke so that I could modify the source locally.

I did see some conversations on the Nuke repo related to worse caching and performance as of the most recent version due to the removal of optimizations in order to address some bugs.

I'll keep investigating as I have time.

Related Issues

Dimillian commented 3 months ago

Interesting! I did the same experiment a while back as I saw LazyImage reported in instruments but it was not conclusive, I still had micro stutters and it seems that also the Button layout for the post actions is slowing things down.

Dimillian commented 3 months ago

It one of the most painful issue, I've spent countless of hours on it and I still can't isolate where the stutter is.