-
Notifications
You must be signed in to change notification settings - Fork 56
Library Update
palmoni5 edited this page Jul 17, 2026
·
1 revision
lib/library_update/ — עדכון seforim.db לגרסה חדשה, מבוסס החבילה seforim_library_updater.
-
התאוששות — אם עדכון קודם נקטע באמצע, משוחזר בעליית האפליקציה (
_recoverInterruptedLibraryUpdateב־main). -
בדיקת עדכון —
checkForUpdateמשווה את הגרסה המקומית (db_meta) מול הקטלוג ב־GitHub. SeforimLibrary מפרסם דיפים (patches) בין גרסאות. - החלה — באחד משני מסלולים.
- בחירת ה־patch המשתלם ביותר בין הגרסה המקומית לאחרונה (אלגוריתם Dijkstra על גרף ה־patches — מעדיף patch ישיר, לא בהכרח דרך גרסאות ביניים).
- הורדת ה־patch והחלה אטומית ב־isolate (
PatchApplier): אימות hash של כל הטבלאות, טרנזקציה יחידה — קריסה מתגלגלת אחורה. - WAL פעיל בזמן ההחלה כדי שקוראים ימשיכו לעבוד.
- ~1.1GB, דורש אישור משתמש.
- הורדה ← חילוץ zst (streaming) ← אימות (
quick_check+ בדיקת גרסה ב־isolate) ← החלפה אטומית (rename).
שני המסלולים רצים דרך operationQueue עם סגירה/פתיחה מחודשת של חיבור ה־read-only.
-
_operationId— ביטול ועמידות בפני תוצאות מיושנות. - נקודת אל־חזור משלב הכתיבה — ביטול אפשרי רק לפניה.
-
CompanionAssetsService— בסוף העדכון מאומתים/מעודכנים גם קבצי הלוואי: תלמוד PDF, קטלוג חיצוני, מילון lexical. -
LibraryRuntimeRefreshService.refreshAfterDbUpdate— מנקה מטמונים, מאפס providers ופותח את ה־DB מחדש — בלי restart של האפליקציה.
נושא נפרד — ראו עדכון האפליקציה.
📖 מדריך למשתמש
- התחלת העבודה
- הספרייה
- קריאת ספר
- קריאת PDF
- חיפוש
- איתור מקורות
- טאבים ושולחנות
- סימניות והערות
- ספרים אישיים
- הגדרות
- גיבוי ושחזור
- עדכונים
- תוספים
- כלים
- קישורי עומק
🛠️ למפתחים — יסודות
נתונים וספרייה
קריאה
חיפוש
אישי ומערכת
עיצוב ו־UI