Vala היא שפת קוד פתוח, שפת תכנות מודרנית חופשית ותוכנה מתוכננת מתוך הקיזוז כדי להביא תכונות תכנות חדשות למפתחי GNOME. זה מהדר עבור מערכת סוג Gobject, המאפשר למפתחים GNOME ליצור יישומים מדהימים.
תכונות במבט אחד
תכונות עיקריות כוללות ממשקים, מאפיינים, אותות, foreach, ביטויים lambda, סוג ההשוואה עבור משתנים מקומיים, גנריות, סוגי non-null, ניהול זיכרון בסיוע, טיפול חריג, כמו גם מודולים סוג a.k.a. plugins.
ללא מאמץ לכתוב קוד מונחה עצמים מורכבים
עם המהדר של Vala אתה, בתור מפתח, יוכל לכתוב בקלות קוד מונחה עצמים מורכב תוך שמירה על דרישות הזיכרון נמוכות ושמירה על תקן A ABI ו- API.
מאפשר גישה לספריות קיימות של C
הפרויקט תוכנן כך שיאפשר גישה לספריות C הקיימות, ובמיוחד לספריות המבוססות על Gobject, ללא צורך בכריכות זמן ריצה.
זה מושלם עבור GTK + ו GNOME
Vala הוא מהדר שורת הפקודה ושפות תכנות. מפתחים שעובדים עם GTK + ו- GNOME יוכלו להשתמש ב- Vala כדי לכתוב את הקוד ולעבד אותו.
הושפעו מ C + +, C, C #, Python, D ו- Java
שפת התכנות של Vala הושפעה מהשימוש בשפות C, C + +, D, Python, C # ו- Java. זוהי תוכנה בין פלטפורמות שניתן להעביר בקלות על מערכות הפעלה אחרות.
הוא נתמך על ידי מגוון רחב של תוכניות IDE
תכונה מעניינת נוספת היא תאימות עם תוכניות שונות של IDE (Integrated Development Environment), כולל Anjuta, ולנסיה, Geany, Emacs, MonoDevelop, NetBeans, Val (א) IDE, Sublime Text, Vim, וואלה צעצועים עבור Gedit, Euclide, RedCar, TextMate ו ולמה.
זמינות וארכיטקטורות נתמכות
ואלה מופץ רק כארכיון מקור. משמעות הדבר היא כי המשתמש חייב להגדיר ולעבד את הקוד לפני ההתקנה. כמובן, זה יכול גם להיות מותקן בקלות על כל ההפצה גנו / לינוקס מתוך מאגרי תוכנה ברירת המחדל. הן ארכיטקטורות של 32 סיביות והן של 64 סיביות נתמכות בשלב זה.
מה חדש במהדורה זו:
- תיקוני באגים שונים:
- codegen: התקשר ref_sink על אובייקטים שהועברו לסוג כללי [# 655]
- codegen: שגיאות חינם לאחר החזרתן ל- GDBusMethodInvocation [# 657]
- girparser: למעשה לפתור את הטיעונים מסוג כדי להיות מסוגל תיבת אותם אם יש צורך
- vala: הוסף קובצי / שיטות כדי לאחזר ולבדוק את גרסת הספרייה [# 304]
- כריכות:
- glib-2.0: הוסף Array.remove * () מעטפת כדי למנוע דליפה אלמנטים גנריים
- glib-2.0: הוסף (u) long.parse / try_parse () [# 649]
- gstreamer: עדכון מאסטר 1.15+ git
- gtk + -3.0: עדכן 3.23.2 + 6b6e53fd
- gtk + -4.0: עדכן ל- 3.94.0 + 4e868584
מה חדש בגירסה 0.40.7:
- שיפורים ותיקוני באגים שונים:
- עדכן קישורי קוצבי דרך ל https://gitlab.gnome.org/GNOME/vala/issues
- codegen:
- העבר את התכונה delegate_target של שדות [# 520]
- אלמנטים גנריים חופשיים של אוספים תלויים [# 694765]
- תקן אזהרה עבור פרמטר source_funcs של g_source_new ()
- למעשה לטפל Glib.Source כמו בכיתה קומפקטית
- שיטות מופשטות מותאמות אישית של Glib.Source מטופלות בצורה שונה [# 641]
- השתמש בעקביות ב- gpointer עבור יעדי נציג
- לאחד כמה דפוסי בדיקה מסוג 'נציג'
- השתמש במאפיין default_init במקום base_init בעת רישום ממשקים [# 699550]
- girparser: הוסף תמיכה ל- bulate delegate_target [# 520]
- girwriter:
- פלט הוצא משימוש = & quot; 1 & quot;
- מאפיינים של 'בנייה בלבד' אינם כוללים שיטת סטר
- אל תכתוב תכונות מותאמות אישית [# 608]
- valadoc: תקן TreeBuilder.create_array () עבור מערכים מוערמים
- כריכות:
- glib-2.0:
- אל תסמן פרמטרים מחוץ לסוג פשוט כ- nullable [# 634]
- הפוך את Source.attach () לשימוש הראשי כברירת מחדל
- הפוך את Bytes.slice () להשתמש ב- Bytes.from_bytes יעיל הזיכרון () [# 638]
- תקן Bytes.with_free_func ()
- gio-2.0:
- מארק ActionEntry.parameter_type / שדות מדינה כמו nullable [# 632]
- שדות האצלה של DBus * VTable אינם מכילים שדות יעד מרומזים
- החל applicate_target = false על התקשרות ActionEntry והופך אותן חלשות [# 630]
- הוסף ברירת מחדל לכל הפרמטרים io_priority
- gstreamer: דובדבן לבחור כמה תיקונים מ 0.42, להוסיף gst-editing-services-1.0
- gtk + -3.0: עדכן ל- 3.22.30 + 9ac7f906
- gtk + -4.0: עדכן ל- 3.93.0 + 29fee2e8
- webkit2gtk-4.0: עדכן ל 2.21.4
- עדכון איגודים מבוססי GIR
מה חדש בגרסה:
- תיקוני באגים שונים:
- תקן רגרסיה של שרשרת עם פרמטרים אמיתיים של non-null [# 791785]
- שיחרור הפניות לקוד CodeContext לאחר השימוש בו [# 712694] ושמירת הפניות מותאמות אישית של parse_file () אפשרי [# 791936]
- מנתח: קבל רשימה המופרדת באמצעות פסיקים במקרה של מתגים [# 614015]
- כריכות:
- הסר את הכריכות הנשלחות במעלה הזרם במשך כמה שנים
- gedit 3 [# 776021], libgnome-keyring [# 776022],
- gtksourceview-3.0 [# 776023], libgdata [# 776024], librsvg-2.0 [# 776025]
- glib-2.0: הוסף GLib.OPTION_REMAINING ו- GLib.OptionFlags.NONE
- gstreamer-1.0: עדכון מאסטר 1.13 + git
- gtk + -2.0: סמן את פרמטר הבנאי MessageDialog, message_format, כ- nullable [# 791570]
- gtk + -4.0: עדכן 3.93.0 + 6aeae2c8
- webkit2gtk-4.0: עדכן ל 2.19.3
מה חדש בגירסה 0.39.1:
- נקודות עיקריות
- דווח על אזהרה אם סוג הנכס אינו תואם ל- GLib.Object [# 693932]
- אפשר להעביר נציגים תואמים ל- signal.connect () [# 787521]
- אפשר ערכי Enumoped enum במידת האפשר
- הימנע משימוש ב- temp-var עבור חלק מה- callables המחזירים ValueType וכדי לגשת לפרמטרים / ref [# 789071]
- Reformat יצר הצהרות מקור והגדרות לקריאה טובה יותר [# 688447]
- תיקוני באגים שונים:
- השתמש array_length_cexpr כדי לתמוך במערכים קבועים עבור ערכי החזרה [# 784691]
- לנתח טיעונים נכונה למצב vala interpeter [# 663070]
- אכיפת אורך שם & gt; = 3 עבור מבנים המשתמשים ב- GType [# 764041]
- דווח על שגיאת פרמטר סוג חסר בסוג הסוגר [# 587905]
- הוסף בוליאן "use_inplace" ccode-attribute לשיטות [# 750840]
- שיפור הטיפול בתופעות של מילות מפתח שאינן בבעלות / בבעלות
- שיטות צריכות לזרוק שגיאה תואמת אם נציג היעד זורק אחד
- גלו גישה של חבר לא חוקי לשדה לדוגמה [# 790903]
- שפר את שגיאת השגיאה של שיטות שינוי לא תואמות
- Valadoc
- להכיר נכסים אפשריים במבנים [# 784705]
- תיקון שגיאת הקלדה קטלנית ב- GtkdocRenderer.visit_symbol_link () [[790266]
- כריכות:
- glib-2.0: השתמש בסוג id / marshaller-type עבור (u) int16 / (u) קצר מ- (u) int32 [# 693932]
- glib-2.0: הוסף פרמטר "לא מסומן" אופציונלי ל- * .try_parse () [# 774124]
- gobject-2.0: הוסף כמה סמלים חסרים
- gstreamer-1.0: Bind GST_TIME_ARGS, פקודות מאקרו של GST_STIME_ARGS [# 750840]
- gstreamer-1.0: Bind GST_DEBUG_BIN_TO_DOT_FILE / * _ WITH_TS [# 785215]
- gstreamer-1.0: עדכון מאסטר 1.13 + git
- gtk + -3.0: עדכן 3.22.26 + 9ce824d3
- gtk + -4.0: פיצול Gsk.RenderNode למספר שיעורים
- gtk + -4.0: עדכן 3.93.0 + 2d797dd8
- webkit2gtk-4.0: עדכן 2.19.2
מה חדש בגירסה 0.38.3:
- תיקוני באגים שונים:
- codegen: סדר עדיפויות "array_length = true" over "array_null_terminated = true" [# 788775]
- codegen: הימנע מהתנגשויות אפשריות עם הגדרת מאפיינים פנימיים של אות / אות [# 788964]
- כריכות:
- gio-2.0: הצג את g_task_get_source_object כ- Task.get_unowned_source_object
- gstreamer-1.0: עדכון מאסטר 1.13 + git
- gtk + -4.0: עדכן ל- 3.92.1
- libxml-2.0: הוסף שיטות DTD [# 789442]
מה חדש בגירסה 0.38.2:
- עדכוני איגום שונים:
- gstreamer-1.0, gtk + -3.0, gtk + -4.0: עדכון ממנהל git
- gnutls: תקן את התכונה ccode_function free_function של האישור [# 788181]
מה חדש בגירסה 0.38.1:
- תיקוני באגים שונים:
- valadoc: אל תשתמש ב- 'stdr' כשם משתנה [# 787305]
- codegen: נסה להשתמש בהגדרה פנימית ייחודית יותר עבור מאפיינים [# 787436]
- vala: עדכן רשימה של תכונות משומשות
- שיטה: השתמש במחרוזת אב טיפוס עבור דוחות שגיאה של אי התאמות מסוג החזרה
- כריכות:
- glib-2.0: תיקון MainContext.check (), OptionEntry [] params מסתיימות null, Bind g_convert_with_fallback () ו- g_convert_with_iconv ()
מה חדש בגירסה 0.37.1:
- נקודות עיקריות:
- אל תזהיר מפני סמלים שהוצאו משימוש אם האפשרות install_version ישנה יותר
- הוסף - gresourcesdir אפשרות [# 783133]
- תיקוני באגים שונים:
- gdbus: אל תדלף את HashTable המקונן ב- deserialization [# 782719]
- תקן סוף סוף חסימות עם תשואות async [# 741929]
- ידית ללא n בביטוי מתלהב [# 611223]
- צור את הדגל task_complete עבור & lt; 2.44 דומה יותר ל- & gt; = 2.44 [# 783543]
- Nullable ValueType מחייב את POINTER כחתימה מרשלנית [# 783897]
- תכונה NoAccessorMethod מותרת עבור תכונות gobject בלבד
- girparser: תקן ניתוח של כינוי-נציג ללא יעד
- מהדר: השתמש ב- API_VERSION במקום להפשיט את PACKAGE_SUFFIX
- girwriter: כתוב אורך-פרמטרים של מערכים עם דירוג & gt; 1 [# 758019]
- כריכות:
- gio-2.0: השתמש בברירת מחדל 'length = null' עבור DataInputStream.read_line_utf8 * [# 783351]
- gobject-2.0: הוסף את Glib.ParamSpecPointer
- poppler-glib: עד 0.54.0
- gstreamer-1.0: תיקוני מחייב שונים
מה חדש בגירסה 0.36.3:
- תיקוני באגים שונים:
- scanner: תיקון החישוב של ערך עמודה עבור אסימונים לאחר הערה מרובת שורות [# 652899]
- codegen: Unref GLib.AsyncResult על שגיאות uncaught בקוראטינות [# 641171]
- המשך לאתחל את משתנה התוצאה עבור בוני המבנים [# 782056]
מה חדש בגירסה 0.36.1:
- תיקוני באגים שונים:
- שקול תמיד שיטה המתאימה לעצמה [# 773135]
- בצע ארגומנטים - בדוק את החתימה האמיתית .end () [# 684208]
- לשפר מעט את הביטוי lamdba-express על אי-התאמה בין סוג יעד
- תקן את האתחול הנציג עבור שדות לדוגמה [# 683925]
- אל תדלוף התייחסות ליעד בעת שליחה / הקצאה של נציגים בבעלות [# 780426]
- מנתח GIR וסופר:
- girparser: הוסף ארגומנט הרס למטא נתונים [# 750838]
- vapigen: הוסף אפשרות - nostdpkg כמו ב- valac
- כריכות:
- gstreamer-1.0: תיקון Pad.set _ * _ function () bindings [# 750838]
- glib-2.0: הוספת מאקרו חסר גירסה וקבועים, unichar.to_string אינו מחזיר null
- gtk + -2.0, gtk + -3.0: מארק "צומת" פרמטר של Widget.intersect () כמו
- gtk + -4.0: עדכן ל- 3.90.0
תגובות לא נמצא