GyaanSetu WebDev

Frontend, backend and devops for the modern web.

230 articlesDeep, practical knowledge

מיגרציות PostgreSQL נכשלות עם שגיאת "Read-Only Transaction" כאשר הן נשלחות ל-Replica

השגיאה נובעת בדרך כלל מניסיון כתיבה ל-read replica — לעיתים קרובות בגלל ש-PgBouncer מנתב את החיבור, תפקיד (role) מוגדר כברירת מחדל לקריאה בלבד, או שסביבת ענן משתמשת ב-reader endpoint. המאמר מציג כיצד לעקוף את הדגל עבור הטרנזקציה הנוכחית וכיצד להתגונן מפני השגיאה.

WebDev · 3 min read

צוות הפרונטנד מקצץ את גודל ה-bundle לאפס באמצעות tree-shaking של API mocks בטוחים מבחינת טיפוסים

הצוות בנה שכבת mock המיועדת לסביבת פיתוח בלבד באמצעות Axios interceptors ו-tree-shaking של Vite. על ידי הגבלת ה-interceptor באמצעות import.meta.env.DEV, דגל VITE_ENABLE_MSW מותאם אישית ומשתנה ה-MODE, כל קוד ה-mock מוסר מ-bundles של הייצור, מה ששומר על גודל ה-bundle ללא שינוי.

WebDev · 3 min read

Fable 5 מכפילה את המחיר של Opus 4.8, ומאלצת מפתחים לחשוב מחדש על מחסניות פרומפטים

Claude Fable 5 מגיע עם חלון הקשר של מיליון טוקנים ומגבלת פלט של 128K, אך במחיר של 10$ למיליון טוקנים של קלט ו-50$ למיליון טוקנים של פלט, הוא עולה פי שניים מ-Opus 4.8, מה שהופך אותו למודל ייעודי למקרי שימוש שאינם סובלים טעויות.

WebDev · 1 min read

הצוות אוטומטי את יצירת ה-VPAT ב-CI וחוסם Pull Requests שאינם נגישים

באמצעות הטמעת סריקות axe-core, עזרי מקלדת מותאמים אישית של Vitest ותוצאות של קוראי מסך המאוחסנות ב-JSON בתוך תהליך הבנייה, ה-pipeline מכשיל כל Pull Request שמכניס רגרסיה בנגישות ומפיק באופן אוטומטי קובץ PDF VPAT בכל גרסה מוצלחת.

WebDev · 3 min read

Auto-Animate משיקה מתאם ל-Marko 6, ומנפישה רשימות באמצעות תגית אחת

המתאם החדש מתחבר למחזור החיים onMount של Marko, יוצר MutationObserver ומפעיל את המנוע של auto-animate, כך שמפתחים יכולים להגדיר <auto-animate> סביב רשימה ולקבל אפקטים חלקים של כניסה, יציאה ושינוי סדר ללא צורך ב-JavaScript נוסף.

WebDev · 3 min read