Vala er et open source, gratis og moderne programmeringsspråk og programvareprosjekt designet fra offset for å gi nye programmeringsfunksjoner til GNOME-utviklere. Det er en kompilator for GObject-typen, slik at GNOME-utviklere kan lage forbløffende apper.
Funksjoner med et blikk
Nøkkelfunksjoner inkluderer grensesnitt, egenskaper, signaler, foreach, lambda-uttrykk, typefaktor for lokale variabler, generikk, ikke-nulltyper, assistert minnehåndtering, unntakshåndtering, samt type moduler a.k.a. plugins.
Skriv uanstrengt kompleks objektorientert kode
Med Vala-kompilatoren kan du som utvikler enkelt skrive komplisert objektorientert kode samtidig som minnekravene er lave, og vedlikeholde en standard C ABI og API.
Tillater tilgang til eksisterende C-biblioteker
Prosjektet er utformet på en slik måte at det tillater tilgang til eksisterende C-biblioteker, spesielt GObject-baserte biblioteker, uten behov for runtime-bindinger.
Det er perfekt for GTK + og GNOME
Vala er en kommandolinje kompilator og programmeringsspråk. Utviklere som arbeider med GTK + og GNOME vil kunne bruke Vala til å skrive koden og kompilere den.
Det er påvirket av C ++, C, C #, Python, D og Java
Vala programmeringsspråket har blitt påvirket av de velkjente og brukte C, C ++, D, Python, C # og Java programmeringsspråkene. Det er en kryssplattform programvare som lett kan portes på andre operativsystemer.
Den støttes av et bredt spekter av IDE-programmer
En annen interessant funksjon er kompatibiliteten med ulike IDE-programmer (Integrated Development Environment), inkludert Anjuta, Valencia, Geany, Emacs, MonoDevelop, NetBeans, Val (a) IDE, Sublime Text, Vim, Vala Toys for Gedit, Euclide, RedCar, TextMate og Valama.
Tilgjengelighet og støttede arkitekturer
Vala er kun distribuert som et kildearkiv. Dette betyr at brukeren må konfigurere og kompilere koden før installasjonen. Selvfølgelig kan det også enkelt installeres på en hvilken som helst GNU / Linux-distribusjon fra standardprogramvarelagerene. Både 32-biters og 64-biters arkitekturer støttes nå.
Hva er nytt i denne versjonen:
- Diverse feilrettinger:
- kodegen: Ring ref_sink på objekter som sendes til generisk type [# 655]
- kodegen: Gratis feil etter at de returneres på GDBusMethodInvocation [# 657]
- girparser: Løs faktisk typeargumenter for å kunne bokse dem om nødvendig
- vala: Legg til consts / metoder for å hente og sjekke bibliotekets versjon [# 304]
- Bindinger:
- glib-2.0: Legg til Array.remove * () wrapper for å unngå å lekke generiske elementer
- glib-2.0: Legg til (u) long.parse / try_parse () [# 649]
- gstreamer: Oppdatering fra 1.15+ git master
- gtk + -3.0: Oppdater til 3.23.2 + 6b6e53fd
- gtk + -4.0: Oppdater til 3.94.0 + 4e868584
Hva er nytt i versjon 0.40.7:
- Forskjellige forbedringer og feilrettinger:
- Oppdater bugtracker-koblinger til https://gitlab.gnome.org/GNOME/vala/issues
- Codegen:
- Hent delegate_target attributt av felt [# 520]
- Gratis generiske elementer av glibsamlinger [# 694765]
- Lag advarsel for source_funcs-parameteren for g_source_new ()
- Egentlig behandle GLib.Source som kompakt klasse
- Tilpassede abstrakte metoder for GLib.Source håndteres annerledes [# 641]
- Bruk konsekvent gpointer for delegerte mål
- Samordne enkelte kontrollmønstre av delegertype
- Bruk default_init i stedet for base_init når du registrerer grensesnitt [# 699550]
- girparser: Legg til støtte for bool delegate_target [# 520]
- girwriter:
- Utdata avviklet = "1"
- Konstruksjonen-bare egenskaper har ingen setter-metode
- Ikke skriv noen egendefinerte attributter [# 608]
- valadoc: Fest TreeBuilder.create_array () for stablede Arrays
- Bindinger:
- glatt-2,0:
- Ikke merk enkle utgangsparametere som nullable [# 634]
- Lag Source.attach () bruk standard MainContext som standard
- Gjør Bytes.slice () bruk de minneeffektive Bytes.from_bytes () [# 638]
- Fix Bytes.with_free_func ()
- gio-2,0:
- Merk ActionEntry.parameter_type / state feltene som nullable [# 632]
- Delegere felt av DBus * VTable har ikke implisitte målfelt
- Bruk delegate_target = false på ActionEntry tilbakeringinger og gjør dem svake [# 630]
- Legg til standard for alle parametrene io_priority
- gstreamer: Kirsebær-velg noen korrigeringer fra 0.42, legg til gst-editing-services-1.0
- gtk + -3.0: Oppdater til 3.22.30 + 9ac7f906
- gtk + -4.0: Oppdater til 3.93.0 + 29fee2e8
- webkit2gtk-4.0: Oppdater til 2.21.4
- Oppdater GIR-baserte bindinger
Hva er nytt i versjon:
- Diverse feilrettinger:
- Løs opp kjettingoppretting med ekte nullstruktureringsparametre [# 791785]
- Slett hentede referanser til CodeContext etter å ha brukt det [# 712694] og hold tilpassede påkallinger av parse_file () mulig [# 791936]
- parser: Godta kommaseparert liste i tilfelle av svitsjer [# 614015]
- Bindinger:
- Fjern bindinger som sendes oppstrøms i noen år
- gedit 3 [# 776021], libgnome-keyring [# 776022],
- gtksourceview-3.0 [# 776023], libgdata [# 776024], librsvg-2.0 [# 776025]
- glib-2.0: Legg til GLib.OPTION_REMAINING og GLib.OptionFlags.NONE
- gstreamer-1.0: Oppdatering fra 1.13+ git master
- gtk + -2.0: Merk MessageDialog constructor parameter, message_format, som nullable [# 791570]
- gtk + -4.0: Oppdater til 3.93.0 + 6aeae2c8
- webkit2gtk-4.0: Oppdater til 2.19.3
Hva er nytt i versjon 0.39.1:
- Punkter
- Rapporter varsel hvis egenskapstypen ikke er kompatibel med GLib.Object [# 693932]
- Tillat å sende kompatible delegater til signal.connect () [# 787521]
- Tillat unscoped enumverdier der det er mulig
- Unngå bruk av temp-var for noen callables som returnerer ValueType og å få tilgang til / ref parametere [# 789071]
- Reformat genererte kildedeklarasjoner og definisjoner for bedre lesbarhet [# 688447]
- Diverse feilrettinger:
- Bruk array_length_cexpr for å støtte faste arrays for returverdier [# 784691]
- Korrekt analysere argumenter for vala interpeter-modus [# 663070]
- Forkort navnlengden & gt; = 3 for strukturer som bruker GType [# 764041]
- Rapportfeil for manglende typeparameter på omsluttende type [# 587905]
- Legg til boolsk "use_inplace" ccode-attributt for metoder [# 750840]
- Forbedre håndtering av ukjente / eide søkeord hendelser
- Metoder må kaste kompatibel feil hvis måldelegator kaster en
- Oppdag ugyldig medlems tilgang til forekomstfelt [# 790903]
- Forbedre feilutgaven av tverrfaglige overordnede metoder
- Valadoc
- Bekreft mulige egenskaper i strukturer [# 784705]
- Løs dødelig skrivefeil i GtkdocRenderer.visit_symbol_link () [# 790266]
- Bindinger:
- glib-2.0: Bruk type-id / marshaller-typen for (u) int16 / (u) kort fra (u) int32 [# 693932]
- glib-2.0: Legg til valgfri 'unparsed' parameter til * .try_parse () [# 774124]
- gobject-2.0: Legg til noen manglende symboler
- gstreamer-1.0: bind GST_TIME_ARGS, GST_STIME_ARGS makroer [# 750840]
- gstreamer-1.0: Bind GST_DEBUG_BIN_TO_DOT_FILE / * _ WITH_TS [# 785215]
- gstreamer-1.0: Oppdatering fra 1.13+ git master
- gtk + -3.0: Oppdater til 3.22.26 + 9ce824d3
- gtk + -4.0: Del Gsk.RenderNode til flere klasser
- gtk + -4.0: Oppdater til 3.93.0 + 2d797dd8
- webkit2gtk-4.0: Oppdater til 2.19.2
Hva er nytt i versjon 0.38.3:
- Diverse feilrettinger:
- kodegen: Prioritere "array_length = true" over "array_null_terminated = true" [# 788775]
- kodegen: Unngå mulige konflikter med intern eiendom / signal definerer [# 788964]
- Bindinger:
- gio-2.0: Exponerer g_task_get_source_object som Task.get_unowned_source_object
- gstreamer-1.0: Oppdatering fra 1.13+ git master
- gtk + -4.0: Oppdater til 3.92.1
- libxml-2.0: Legg til DTD-metoder [# 789442]
Hva er nytt i versjon 0.38.2:
- Forskjellige bindingsoppdateringer:
- gstreamer-1.0, gtk + -3.0, gtk + -4.0: Oppdatering fra git master
- gnutls: Fiks free_function ccode-attributt for sertifikat [# 788181]
Hva er nytt i versjon 0.38.1:
- Diverse feilrettinger:
- valadoc: Ikke bruk 'stderr' som variabelt navn [# 787305]
- kodegen: Prøv å bruke en mer unik intern definisjon for egenskaper [# 787436]
- vala: Oppdater liste over brukte attributter
- metode: Bruk prototype-streng for feilsøking av feiltilpasninger av returtype
- Bindinger:
- glib-2.0: Fix MainContext.check (), OptionEntry [] -parametrene er nullterminert, bind g_convert_with_fallback () og g_convert_with_iconv ()
Hva er nytt i versjon 0.37.1:
- Punkter:
- Ikke advarsel om utdaterte symboler hvis installed_version er eldre
- Legg til -gresourcesdir-alternativet [# 783133]
- Diverse feilrettinger:
- gdbus: Ikke lekk inn nestet HashTable ved deserialisering [# 782719]
- Fest endelig blokker med async-utbytter [# 741929]
- Håndter ikke-null i samlende uttrykk [# 611223]
- Lag oppgaven_complete flagget for & lt; 2,44 mer ligner på & gt; = 2,44 [# 783543]
- Nullable ValueType krever POINTER som marshaller signatur [# 783897]
- NoAccessorMethod attributt er bare tillatt for gobject-egenskaper
- girparser: Løs parsing av delegat-alias uten mål
- kompilator: Bruk API_VERSION i stedet for å strippe PACKAGE_SUFFIX
- girwriter: Skriv lengdeparametere av arrayer med rangering & gt; 1 [# 758019]
- Bindinger:
- gio-2.0: Bruk standard lengde = null for DataInputStream.read_line_utf8 * [# 783351]
- gobject-2.0: Legg til GLib.ParamSpecPointer
- poppler-glib: Oppdater til 0.54.0
- gstreamer-1.0: Ulike bindingsrettigheter
Hva er nytt i versjon 0.36.3:
- Diverse feilrettinger:
- skanner: Fiks beregning av kolonneverdi for tokens etter multiline kommentar [# 652899]
- kodegen: Unref GLib.AsyncResult på uoppdagede feil i coroutines [# 641171]
- Fortsett å initialisere resultatvariabelen for structkonstruktører [# 782056]
Hva er nytt i versjon 0.36.1:
- Diverse feilrettinger:
- Overvei alltid en metode som er kompatibel med seg selv [# 773135]
- Utfør argumenter-sjekk mot egentlig .end () metode-signatur [# 684208]
- Litt forbedret Lamdba-uttrykksfeil på feilmatching av måltype
- Fiks delegeringsinitiator for eksempel felt [# 683925]
- Ikke lekk målreferanse når du støper / tilordner eide delegater [# 780426]
- GIR-parser og forfatter:
- girparser: Legg til ødeleggelsesargument for metadata [# 750838]
- vapigen: Legg til - nostdpkg alternativ som i valac
- Bindinger:
- gstreamer-1.0: Fix Pad.set _ * _ funksjon () bindinger [# 750838]
- glib-2.0: Legg til manglende versjon makro og konstanter, unichar.to_string returnerer ikke null
- gtk + -2.0, gtk + -3.0: Marker "krysset" param av Widget.intersect () som ut
- gtk + -4.0: Oppdater til 3.90.0
Kommentarer ikke funnet