1
0
mirror of git://jb55.com/damus synced 2024-09-30 00:40:45 +00:00
damus/damus
Daniel D’Aquino ceb6eb03fb Implement cache on MutelistManager
To filter muted events on a timeline, we need to check if an event is
muted. However, we need to do so in a very efficient manner, to avoid performance degradation.

This commit improves performance by caching mute statuses for as long as
the mutelist stays the same.

Testing
--------

PASS

Device: iPhone 13 Mini
iOS: 17.4.1
Damus: This commit
Damus baseline: bb8dba6df6e2534dfb193402399b31a4fae8052d
Steps:
1. Downgrade to baseline version, Run SwiftUI profiler on Xcode instruments
2. Scroll down home feed. Try to notice hangs and microhangs on the UI
3. Upgrade to version under test. Start the same profiler test.
4. Check that hangs/microhangs frequency and severity are roughly the same.

Signed-off-by: Daniel D’Aquino <daniel@daquino.me>
Reviewed-by: William Casarin <jb55@jb55.com>
Signed-off-by: William Casarin <jb55@jb55.com>
2024-05-07 18:05:45 -07:00
..
ar.lproj Update translations 2023-07-09 15:36:35 -04:00
Assets.xcassets ux: Relay Detail Redesign 2024-04-04 10:33:28 -07:00
az.lproj Update translations 2023-07-09 15:36:35 -04:00
bg.lproj Update translations 2023-07-09 15:36:35 -04:00
Components Fix localization issues 2024-04-25 09:30:27 -04:00
cs.lproj Revert "Merge remote-tracking branch 'github/translations'" 2024-03-04 18:31:55 +00:00
de.lproj Translate Localizable.strings in de 2024-04-25 18:13:02 +00:00
el-GR.lproj Update translations 2023-10-02 12:34:08 -07:00
en-US.lproj strings: add pluralized quoted_repost_count string 2024-03-16 11:59:56 +00:00
en-US.xcloc Fix localization issues 2024-04-25 09:30:27 -04:00
es-419.lproj Translate Localizable.strings in es_419 2023-12-17 16:12:23 +00:00
es-ES.lproj Translate Localizable.strings in es_ES 2024-04-25 15:47:20 -04:00
et.lproj Apply translations 2023-05-05 09:01:06 -07:00
fa.lproj Translate Localizable.strings in fa 2024-04-24 23:11:36 -04:00
fi.lproj Translate Localizable.stringsdict in fi 2023-12-10 16:32:31 +00:00
fr.lproj Update translations 2023-07-09 15:36:35 -04:00
hu-HU.lproj Translate Localizable.strings in hu_HU 2024-02-03 18:58:08 -05:00
id.lproj Update translations 2023-07-09 15:36:35 -04:00
it-IT.lproj Update translations 2023-07-09 15:36:35 -04:00
ja.lproj Translate Localizable.strings in ja 2024-02-06 06:28:48 +00:00
ko.lproj Translate Localizable.strings in ko 2024-04-24 23:11:36 -04:00
lv-LV.lproj Translate Localizable.stringsdict in lv_LV 2023-10-11 17:28:36 +00:00
Models Implement cache on MutelistManager 2024-05-07 18:05:45 -07:00
Modifiers Add double tap gesture and fix bugs 2023-01-25 16:10:18 -08:00
nl.lproj Translate Localizable.strings in nl 2024-04-25 16:20:39 +00:00
Nostr contacts: save first list to storage during onboarding 2024-05-01 09:56:44 -07:00
Notify filter: add reposts query filter helper 2024-03-16 12:03:08 +00:00
pl-PL.lproj Translate Localizable.strings in pl_PL 2024-04-24 23:11:35 -04:00
Preview Content/Preview Assets.xcassets add preview content 2022-05-21 11:09:44 -07:00
pt-BR.lproj Update translations 2023-07-09 15:36:35 -04:00
pt-PT.lproj Translate Localizable.strings in pt_PT 2023-10-05 23:18:35 +00:00
ru.lproj Update translations 2023-07-09 15:36:35 -04:00
sv-SE.lproj Translate Localizable.strings in sv_SE 2024-02-03 18:58:07 -05:00
sw.lproj Translate InfoPlist.strings in sw 2023-10-03 13:51:03 +00:00
th.lproj Add Thai as a supported language 2024-05-03 21:02:47 -04:00
tr-TR.lproj Update translations 2023-07-09 15:36:35 -04:00
Types mute: fix issue with not being able to change mute duration 2024-01-27 19:50:38 -08:00
uk.lproj Update translations 2023-07-09 15:36:35 -04:00
Util Merge release branch 'v1.8_relay_fix_and_video_player' 2024-05-03 12:36:58 -07:00
vi.lproj Translate Localizable.stringsdict in vi 2024-04-25 20:05:12 +00:00
Views Apply mute rules to Timeline views by default 2024-05-07 18:05:45 -07:00
zh-CN.lproj Translate Localizable.strings in zh_CN 2024-04-27 09:31:13 +00:00
zh-HK.lproj Translate Localizable.strings in zh_HK 2024-04-27 09:31:21 +00:00
zh-TW.lproj Translate Localizable.strings in zh_TW 2024-04-27 09:31:26 +00:00
ContentParsing.swift nip10: fix mixed nip10 markers 2024-05-07 14:07:47 -07:00
ContentView.swift Mute: Add user_keypair to MutelistManager 2024-05-07 18:05:45 -07:00
damus.entitlements Add experimental push notification support 2023-11-20 10:32:33 -08:00
damusApp.swift nip42: add initial relay auth support 2024-01-05 10:36:03 -08:00
Info.plist Revert "project: add 'updates files in place' to info.plist" 2024-01-24 10:00:51 -08:00
TestData.swift Mute: Add user_keypair to MutelistManager 2024-05-07 18:05:45 -07:00