מחרוזת גרסה אינה מוכיחה תכונה של תוסף VPN
מספר חבילה אינו רשימת תכונות. פרקו את ה-epoch, ה-upstream והמהדורה, בדקו מה מותקן, ואז הוכיחו את האפשרות במקום שבו היא חיה.
שלוש שאלות מפרידות בין טיעון גרסה לחקירת תכונה: איזה רכיב אמור לספק את האפשרות, איזו גרסה של אותו רכיב מותקנת בפועל, ומה אומר יומן השינויים שלו על כך. מספרו של תוסף לבדו אינו עונה על אף אחת מהן. קיצור הדרך המפתה, השוואת גרסה מקוצרת למינימום מתוך מדריך, נכשל משום שמחרוזות הגרסה של ההפצות אינן מספרים עשרוניים. החליטו מה אתם משווים לפני שאתם משווים.
האפשרות עשויה לחיות ב-NetworkManager, בתוסף ה-VPN שלו, במנוע הבסיסי, או בממשק שולחני נפרד. אלו ארבעה פרויקטים עם ארבעה היסטוריות שחרור.
ארבעה רכיבים, ארבעה היסטוריות שחרור
העורך שאתם רואים הוא בדרך כלל תוסף, והתוסף קורא למנוע כמו הבינארי של OpenVPN או מימוש WireGuard. NetworkManager עצמו מספק את מודל החיבור, וממשק שולחני יכול להוסיף שדות משלו מעל. תכונה יכולה להופיע בכל אחד מהם, ושדרוג של אחד אינו משדרג את האחרים. מנוע חדש יותר אינו הוכחה שהעורך המותקן יכול לייבא אפשרות שהמנוע תומך בה.
התחילו מהתסמין: האם השדה חסר בדיאלוג, נעדר לאחר הייבוא, או קיים אך מתעלמים ממנו? התצפיות האלה מצביעות על רכיבים שונים וזקוקות לראיות שונות.
פרקו את הגרסה לפני שאתם משווים אותה
מדיניות החבילות של דביאן מגדירה את התבנית כ-epoch, גרסת upstream ומהדורת אריזה. תחילה משווים את ה-epoch, אחר כך את חלק ה-upstream, ואחר כך את המהדורה, לפי כללי המיון של מנהל החבילות עצמו ולא לפי אריתמטיקה עשרונית או מיון אלפביתי פשוט. טילדה ממוינת לפני הכול, כולל לפני סוף אותו חלק, וכך מועמד שחרור קודם לשחרור הסופי. קריאת החלקים בנפרד היא מה שהופך השוואה למשמעותית.
אל תמציאו כלל המרה לאיזו סכמה אחרת שבה 0.8.999 נראית קרובה ל-0.9. קרבה של ספרות אינה ראיה לגבי תוכן.
שאלו מה מותקן ומה יהיה
apt-cache policy מדווח את הגרסה המותקנת, המועמד ומאגר המקור של כל אחד מהם, עבור כל חבילה שתזכירו. קראו אותו גם עבור המנוע וגם עבור התוסף, ורשמו מחרוזות מלאות במקום צורות מקוצרות. מטא-נתונים מקומיים עלולים להיות מיושנים, וגרסת מועמד אינה מוכיחה שתהליך פעיל טען את הבנייה הזו. אם שירות לא הופעל מחדש מאז השדרוג, הקובץ בדיסק וההתנהגות שאתם רואים עשויים לסתור זה את זה.
אחר כך קראו את יומן השינויים המתאים. מהדורת אריזה יכולה לשאת טלאים בלי לאמץ מספר upstream חדש, וזה בדיוק המקרה שבו הגרסה נראית ללא שינוי וההתנהגות שונה.
הוכיחו את האפשרות ברכיב הבעלים
לבעיית ייבוא, בדקו את השדות הנתמכים של התוסף המותקן ואת התוצאה השמורה ולא רק את הדיאלוג. תווית, שדה נתונים מקורי וארגומנט מנוע יכולים להיות שלוש ייצוגים של הגדרה אחת, והצלחה בייבוא קובץ אינה אומרת דבר על הישרדות כל הוראה. תנו לתכונה שם מדויק: למשל, קבלת ההוראה הזו תוך שמירה על משמעותה לאימות.
אם הבנייה הנתמכת לאותה מהדורה חסרה את האינטגרציה, בחרו בנתיב עדכון מאושר או בלקוח אחר. ערבוב מאגר של מהדורה אחרת, או החלת טלאי מקור מאורכב כדי להעלות מספר נראה לעין, מחליף טיעון גרסה במערכת לא נתמכת.
דוח מועיל נוקב בשם ההפצה, גרסאות החבילה המלאות, בעל החיבור הפעיל, האפשרות הנדרשת וההתנהגות השמורה שנצפתה. זו שאלה ניתנת לשחזור.