Make treshold the 1 day treshold for maxObjects configurable
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 45/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Ambito
- mobile-dev
Direzione di ricerca
Inizia da CacheObjectProvider.getObjectsOverCapacity e traccia il modo in cui l'oggetto Config passa attualmente maxObjects e stalePeriod al provider. Aggiungi l'impostazione opzionale Duration con un valore predefinito di un giorno, falla passare attraverso il provider, documentala insieme alle opzioni di configurazione correlate e verifica che la cache rispetti la soglia di conservazione configurata.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
🏗 Enhancement Proposal
When setting maxNrOfCacheObjects to 100 the cache can still grow above that size. This is caused by logic in the CacheObjectProvider in the getObjectsOverCapacity function.
where: '${CacheObject.columnTouched} < ?',
whereArgs: [
DateTime.now().subtract(const Duration(days: 1)).millisecondsSinceEpoch
],
From an this issue #349 I understand the reasoning behind this default value.
Pitch
For app which are not used very intense I think the default makes sense. However for apps which use a lot of images and are used intensively throughout the day this results in a very big local cache. I've got reports of several GB.
I would argue that the there should be a parameter to override this in the Config object. This would be in line with for example the maxObjects and stalePeriod parameters.
Concretely:
- Add parameter to Config ObjectMinimumRetention (open for better naming)
- Type Duration
- Optional, default value 1 day
- Pass and use this parameter to the CacheObjectProvider
- Document
I'm happy to do a PR on this as you think this makes sense.
Platforms affected (mark all that apply)
- 📱 iOS
- 🤖 Android
- Lingua principale
- Dart
- Stelle
- 810
- Fork
- 510
- Merge medio
- 28m
- PR unite (30g)
- 12
Preparare l'ambiente
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di Baseflow/flutter_cache_manager
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
Baseflow/flutter_cache_manager#450 · 9 commenti · 8 reazioni ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
Baseflow/flutter_cache_manager#535 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 30/100
Baseflow/flutter_cache_manager#508 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 48/100
Baseflow/flutter_cache_manager#507 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
sqflite_android updateAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 30/100
Baseflow/flutter_cache_manager#501 · 1 commento · 3 reazioni ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di Baseflow/flutter_cache_manager
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
genkit-ai/genkit-dart#507 ·
I maintainer di solito rispondono entro 4 giorni
-
infra: device lab team-android
Difficoltà 2/5 1-2 giorni Idoneità per principianti 68/100
I maintainer di solito rispondono entro 1 giorno
-
component: genui P2 status: first-line-handled type: bug
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
a2ui-project/a2ui#2854 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
google/webcrypto.dart#419 ·
I maintainer di solito rispondono entro 4 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
fluttercommunity/chewie#971 ·