Vala is a new programming language that aims to bring modern programming language features to GNOME developers without imposing any additional runtime requirements and without using a different ABI compared to applications and libraries written in C.
valac, the Vala compiler, is a self-hosting compiler that translates Vala source code into C source and header files. It uses the GObject type system to create classes and interfaces declared in the Vala source code. It's also planned to generate GIDL files when gobject- introspection is ready.
The syntax of Vala is similar to C#, modified to better fit the GObject type system.
valac, the Vala compiler, is a self-hosting compiler that translates Vala source code into C source and header files. It uses the GObject type system to create classes and interfaces declared in the Vala source code. It's also planned to generate GIDL files when gobject- introspection is ready.
The syntax of Vala is similar to C#, modified to better fit the GObject type system.
0.48.2


0.46.6


0.46.3

0.44.3


0.44.2

0.42.2

0.42.0

0.40.8

0.40.3

0.38.8


0.32.1

Distribution | Version | Since | Package | Installed | Packager | |
---|---|---|---|---|---|---|
![]() | zst | 0.48.2-1 | Mar 26 | 2.19 MiB | 13 MiB | Jan Alexander Steffens (heftig) |
![]() | rpm | 0.40.8-1.el7 | 2020-01-07 | 1.88 MiB | 10.8 MiB | CentOS BuildSystem |
![]() | rpm | 0.40.3-1.fc28 | 2019-01-14 | 1.91 MiB | 10.9 MiB | Fedora Project |
![]() | rpm | 0.42.2-1.fc29 | 2019-01-14 | 1.81 MiB | 10.5 MiB | Fedora Project |
![]() | rpm | 0.42.0-1.fc29 | 2019-01-14 | 1.82 MiB | 10.5 MiB | Fedora Project |
![]() | rpm | 0.44.3-1.fc30 | 2019-06-17 | 1.35 MiB | 9 MiB | Fedora Project |
![]() | rpm | 0.46.3-1.fc31 | 2020-01-07 | 1.25 MiB | 8.89 MiB | Fedora Project |
![]() | rpm | 0.48.2-1.fc33 | Mar 25 | 1.28 MiB | 9.03 MiB | Fedora Project |
![]() | xz | 0.44.2-1 | 2019-04-03 | 2.01 MiB | 12.8 MiB | Jan Alexander Steffens (heftig) |
![]() | xz | 0.44.2-1 | 2019-04-02 | 2.01 MiB | 12.8 MiB | Jan Alexander Steffens (heftig) |
![]() | xz | 0.44.3-1 | 2019-04-09 | 2.01 MiB | 12.8 MiB | Jan Alexander Steffens (heftig) |
![]() | rpm | 0.38.8-lp150.1.2 | 2019-01-17 | 1.42 MiB | 9.67 MiB | https://bugs.opensuse.org |
![]() | rpm | 0.38.8-lp151.2.3 | 2019-01-23 | 1.42 MiB | 9.67 MiB | https://bugs.opensuse.org |
![]() | rpm | 0.46.6-lp152.1.1 | Mar 19 | 1.54 MiB | 9.94 MiB | https://bugs.opensuse.org |
![]() | rpm | 0.32.1-3.3 | 2019-01-17 | 1010 kiB | 7.62 MiB | http://bugs.opensuse.org |
![]() | rpm | 0.46.6-1.1 | Feb 16 | 1.53 MiB | 9.94 MiB | https://bugs.opensuse.org |
Manual pages
vala-gen-introspect-0.32(1)
vala-gen-introspect - generate a GI file for GObject and glib based packages
vala-gen-introspect-0.34(1)
vala-gen-introspect - generate a GI file for GObject and glib based packages
vala-gen-introspect-0.36(1)
vala-gen-introspect - generate a GI file for GObject and glib based packages
vala-gen-introspect-0.38(1)
vala-gen-introspect - generate a GI file for GObject and glib based packages
vala-gen-introspect-0.40(1)
vala-gen-introspect - generate a GI file for GObject and glib based packages
vala-gen-introspect-0.42(1)
vala-gen-introspect - generate a GI file for GObject and glib based packages
vala-gen-introspect-0.44(1)
vala-gen-introspect - generate a GI file for GObject and glib based packages
vala-gen-introspect-0.46(1)
vala-gen-introspect - generate a GI file for GObject and glib based packages
vala-gen-introspect-0.48(1)
vala-gen-introspect - generate a GI file for GObject and glib based packages
valac-0.32(1)
valac - compiler that translates Vala source code into C source and header files
valac-0.34(1)
valac - compiler that translates Vala source code into C source and header files
valac-0.36(1)
valac - compiler that translates Vala source code into C source and header files
valac-0.38(1)
valac - compiler that translates Vala source code into C source and header files
valac-0.40(1)
valac - compiler that translates Vala source code into C source and header files
valac-0.42(1)
valac - compiler that translates Vala source code into C source and header files
valac-0.44(1)
valac - compiler that translates Vala source code into C source and header files
valac-0.46(1)
valac - compiler that translates Vala source code into C source and header files
valac-0.48(1)
valac - compiler that translates Vala source code into C source and header files
valadoc-0.38(1)
valadoc - Vala Documentation Tool
valadoc-0.42(1)
valadoc - Vala Documentation Tool
valadoc-0.44(1)
valadoc - Vala Documentation Tool
vapigen-0.32(1)
vapigen - generate a Vala API
vapigen-0.34(1)
vapigen - generate a Vala API
vapigen-0.36(1)
vapigen - generate a Vala API
vapigen-0.38(1)
vapigen - generate a Vala API
vapigen-0.40(1)
vapigen - generate a Vala API
vapigen-0.42(1)
vapigen - generate a Vala API
vapigen-0.44(1)
vapigen - generate a Vala API
vapigen-0.46(1)
vapigen - generate a Vala API
vapigen-0.48(1)
vapigen - generate a Vala API
Latest updates

Arch rolling extra/os: Updated from 0.48.1-1 to 0.48.2-1
Mar 26

Fedora rawhide development/Everything-os: Updated from 0.48.1-1.fc33 to 0.48.2-1.fc33
Mar 25
- Update to 0.48.2

OpenSUSE Leap 15.2 oss: Updated from 0.46.5-lp152.1.3 to 0.46.6-lp152.1.1
Mar 19
- Update to version 0.46.6:
- Various improvements and bug fixes:
- codegen:
. Fix precondition in creation method of structs
. Don't set implemenation of interface property to its own . Use result value of assignment rather than its computation . Cast instance parameter in member-initializer for base-properties
. Skip StructRegisterFunction for boolean/integer/floating types
. Handle different type-symbols in visit_base_access()
. Explicitly include header for length-type of arrays
. Explicitly include <glib.h> as needed for null-literal - vala:
. VoidType is actually compatible with itself
. Keep formal_target_type on transform of
method-call/object-creation
. Add a basic parameter check for [Print] methods
. Don't ignore inner errors in Block and acknowledge them further
. Don't report further errors if MemberInitializer.check() failed
. Improve error message for unsupported inner types and declarations
. Don't allow "va_list" as return-type or type of fields
. Check before accessing "name" of parent_symbol which might be null
. Allow to override base interface properties explicitly
. Always bail if there are semantic errors
. Fix base-access check for compact classes
. Improve detection of recursive struct declarations
. Inline allocated arrays require length or initializer
. Don't ignore errors in Parameter and acknowledge them further - parser: Implicit "main" method of main-block is public and static
- genie: Fix parser's inner state when a struct is declared after a class
- girparser: Apply explicitly given ctype metadata attributes on callables
- testrunner: Invalid tests and therefore expected failures must return 1
- Bindings:
- glib-2.0: Add to_string() for GLib.PollFd and GLib.Pid
- gstreamer: Update from 1.17.0+ git master
- gtk+-3.0: Update to 3.24.13+3822ac74
- gtk4: Update to 3.96.0+4ab12ab7
- webkit2gtk-4.0: Update to 2.27.4

Fedora rawhide development/Everything-os: Updated from 0.48.0-1.fc33 to 0.48.1-1.fc33
Mar 12
- Update to 0.48.1

Arch rolling extra/os: Updated from 0.48.0-1 to 0.48.1-1
Mar 11

Fedora rawhide development/Everything-os: Updated from 0.47.92-1.fc33 to 0.48.0-1.fc33
Mar 05
- Update to 0.48.0

Arch rolling extra/os: Updated from 0.46.6-1 to 0.48.0-1
Mar 03

Fedora rawhide development/Everything-os: Updated from 0.47.91-1.fc33 to 0.47.92-1.fc33
Feb 25
- Update to 0.47.92

Fedora rawhide development/Everything-os: Updated from 0.47.4-1.fc32 to 0.47.91-1.fc33
Feb 19
- Update to 0.47.91

OpenSUSE Tumbleweed oss: Updated from 0.46.5-1.1 to 0.46.6-1.1
Feb 16
- Update to version 0.46.6:
- Various improvements and bug fixes:
- codegen:
. Fix precondition in creation method of structs
. Don't set implemenation of interface property to its own . Use result value of assignment rather than its computation . Cast instance parameter in member-initializer for base-properties
. Skip StructRegisterFunction for boolean/integer/floating types
. Handle different type-symbols in visit_base_access()
. Explicitly include header for length-type of arrays
. Explicitly include <glib.h> as needed for null-literal - vala:
. VoidType is actually compatible with itself
. Keep formal_target_type on transform of
method-call/object-creation
. Add a basic parameter check for [Print] methods
. Don't ignore inner errors in Block and acknowledge them further
. Don't report further errors if MemberInitializer.check() failed
. Improve error message for unsupported inner types and declarations
. Don't allow "va_list" as return-type or type of fields
. Check before accessing "name" of parent_symbol which might be null
. Allow to override base interface properties explicitly
. Always bail if there are semantic errors
. Fix base-access check for compact classes
. Improve detection of recursive struct declarations
. Inline allocated arrays require length or initializer
. Don't ignore errors in Parameter and acknowledge them further - parser: Implicit "main" method of main-block is public and static
- genie: Fix parser's inner state when a struct is declared after a class
- girparser: Apply explicitly given ctype metadata attributes on callables
- testrunner: Invalid tests and therefore expected failures must return 1
- Bindings:
- glib-2.0: Add to_string() for GLib.PollFd and GLib.Pid
- gstreamer: Update from 1.17.0+ git master
- gtk+-3.0: Update to 3.24.13+3822ac74
- gtk4: Update to 3.96.0+4ab12ab7
- webkit2gtk-4.0: Update to 2.27.4

Arch rolling extra/os: Updated from 0.46.5-1 to 0.46.6-1
Feb 10

Fedora rawhide development/Everything-os: Updated from 0.47.3-1.fc32 to 0.47.4-1.fc32
Feb 08
- Update to 0.47.4

OpenSUSE Leap 15.2 oss: Updated from 0.38.8-lp152.3.5 to 0.46.5-lp152.1.3
Feb 04
- Update to version 0.46.5:
- Regression and bug fixes:
- codegen:
. Fix vfunc signature of delegate-typed property in interface . Fix support of dynamic DBus methods - vala:
. Don't require constant initializer in fast-vapi
. Report error for async creation expression without yield - Bindings: glib-2.0: Add "has_typedef = false" to custom MarkupParser*Func delegates

Fedora rawhide development/Everything-os: Updated from 0.46.5-1.fc32 to 0.47.3-1.fc32
Jan 25
- Update to 0.47.3

Fedora 31 releases/Everything-os: Version 0.46.3-1.fc31 introduced
2020-01-07
- Update to 0.46.3

OpenSUSE Leap 15.2 oss: Version 0.38.8-lp152.3.5 introduced
2020-01-07
- Update to version 0.38.8:
- Various bug fixes:
- Fix GDestroyNotify of delegate parameters in delegate declaration (bgo#639059).
- Avoid critical when connecting dynamic signals.
- compiler: Prefix headers for set_cheader_override() if includedir is given (bgo#793299).
- Don't warn about unused internal methods which are meant to be visible on DBus (bgo#593902).
- libvaladoc: Prevent WITH_CGRAPH conditional having an impact on generated sources.
- Bindings:
- gio-2.0: Cherry-pick some DBusProxy fixes from 0.40.
- gstreamer-1.0: Update from 1.13+ git master.
- gdk-3.0,gtk+-3.0: Update to 3.22.27.
- Update vala_priority define to 38, something we should have done when stable 0.38.0 was released.

CentOS 7.7.1908 os: Version 0.40.8-1.el7 introduced
2020-01-07
- Update to 0.40.8
- Resolves: #1569794

OpenSUSE Tumbleweed oss: Updated from 0.46.4-1.1 to 0.46.5-1.1
2019-11-25
- Update to version 0.46.5:
- Regression and bug fixes:
- codegen:
. Fix vfunc signature of delegate-typed property in interface . Fix support of dynamic DBus methods - vala:
. Don't require constant initializer in fast-vapi
. Report error for async creation expression without yield - Bindings: glib-2.0: Add "has_typedef = false" to custom MarkupParser*Func delegates

Fedora rawhide development/Everything-os: Updated from 0.46.3-1.fc32 to 0.46.5-1.fc32
2019-11-20
- Update to 0.46.5

OpenSUSE Tumbleweed oss: Updated from 0.46.3-1.1 to 0.46.4-1.1
2019-11-18
- Update to version 0.46.4:
- Various improvements and bug fixes:
- codegen:
. Use G_TYPE_INSTANCE_GET_INTERFACE to get vtable for base-access
. Fix setting of generic-type properties for gobject chain up . Make type-parameter properties readable
. Reduce code duplications when generation base-access - vala:
. Warn when passing arrays to typeof(), except for "string[]" . Don't falsely resolve binary-expression to bool
. Do not allow += for arrays with fixed length
. Infer array length of inline allocated arrays for fields . Do not allow to .resize() on arrays with fixed length
. Do not allow to change .length of arrays with fixed length . Improve error message for arrays as type arguments
. Improve error reporting for invalid interface prerequisites . Write value of constants/enums in fast-vapi if constant only
. Restore DestroysInstance behaviour for non-compact classes - parser: `owned` is not allowed on Constants
- girparser: Detect and replace "-" in parameter names
- girwriter: Add readable="0"/private="1" attribute to type-specific fields
- gidl:
. Calculate size correctly, avoid use-after-free
. Avoid use of uninitialized "markup" warning
. Ignore flags like -mfpmath=sse, -msse or -msse2 - valadoc:
. libvaladoc: Fix parameter and property ownership declarations
. Fix ownership declarations of Constants - pkg-config:
. vala: Add missing gmodule-2.0 to Requires.private of pkg-config file
. libvaladoc: Move gmodule-2.0 to Requires.private of pkg-config file - Bindings:
- glib-2.0: Guard against passing null source to
GLib.Memory.copy() - gio-2.0: Use custom TaskReadyCallback delegate in
Task.report*_error() - gstreamer: Update from 1.17.0+ git master
- gtk+-3.0: Skip _MountOperationHandler* symbols
- gtk4,gtk4-unix-print: Update to 3.96.0+ab407ba5
- libusb-1.0: Don't depend on glib-2.0
- libusb-1.0: Remove unused private "malloc" binding
- linux: Add memfd_create(2)
- posix: Bind some essential memory allocation functions
- webkit2gtk-4.0: Update to 2.27.2
Related packages
vala-0.30-doc - C# like language for the GObject system - documentation
vala-0.34-doc - C# like language for the GObject system - documentation
vala-0.36-doc - C# like language for the GObject system - documentation
vala-0.40-doc - C# like language for the GObject system - documentation
vala-0.42-doc - C# like language for the GObject system - documentation
vala-0.44-doc - C# like language for the GObject system - documentation
vala-0.46-doc - C# like language for the GObject system - documentation
vala-0.48-doc - C# like language for the GObject system - documentation
vala-cmake-modules - Vala CMake modules
vala-compat - A modern programming language for GNOME
vala-compat-debuginfo - Debug information for package vala-compat
vala-compat-debugsource - Debug sources for package vala-compat
vala-compat-devel - Development files for vala-compat
vala-compat-doc - Documentation for vala-compat
vala-compat-tools - Tools for creating projects and bindings for vala-compat
vala-compat-tools-debuginfo - Debug information for package vala-compat-tools
vala-dbus-binding-tool - Vala binding-generator for xml introspection files
vala-debuginfo - Debug information for package vala
vala-debugsource - Debug sources for package vala
vala-devel - Development files for vala
vala-doc - Documentation for vala
vala-mode-el - Transition Package, vala-mode-el to elpa-vala-mode
vala-panel - Gtk3 panel for compositing window managers
vala-panel-appmenu - Application Menu plugin for vala-panel
vala-panel-appmenu-budgie - AppMenu (Global Menu) plugin for budgie-panel
vala-panel-appmenu-common - Common files for Application Menu plugins
vala-panel-appmenu-debuginfo - Debug information for package vala-panel-appmenu
vala-panel-appmenu-debugsource - Debug sources for package vala-panel-appmenu
vala-panel-appmenu-lang - Languages for package vala-panel-appmenu
vala-panel-appmenu-mate - AppMenu (Global Menu) plugin for mate-panel
vala-panel-appmenu-registrar - DBusMenu registrar for vala-panel
vala-panel-appmenu-translations - Translations for Global Menu
vala-panel-appmenu-valapanel - AppMenu (Global Menu) plugin for vala-panel
vala-panel-appmenu-xfce - AppMenu (Global Menu) plugin for xfce4-panel
vala-panel-appmenu-xfce-gtk3 - AppMenu (Global Menu) plugin for xfce4-panel-gtk3
vala-panel-common - Vala Panel - common files
vala-panel-debuginfo - Debug information for package vala-panel
vala-panel-debugsource - Debug sources for package vala-panel
vala-panel-devel - Development files for vala-panel
vala-panel-extras-battery - Vala Panel Extras -- Battery plugin
vala-panel-extras-battery-debuginfo - Debug information for package vala-panel-extras-battery
vala-panel-extras-debuginfo - Debug information for package vala-panel-extras
vala-panel-extras-debugsource - Debug sources for package vala-panel-extras
vala-panel-extras-gtop - Vala Panel Extras -- Network speed plugin
vala-panel-extras-gtop-debuginfo - Debug information for package vala-panel-extras-gtop
vala-panel-extras-lang - Languages for vala-panel extras
vala-panel-extras-volume - Vala Panel Extras -- Volume plugin
vala-panel-extras-volume-debuginfo - Debug information for package vala-panel-extras-volume
vala-panel-extras-weather - Vala Panel Extras -- Weather plugin
vala-panel-extras-weather-debuginfo - Debug information for package vala-panel-extras-weather
vala-panel-extras-xkb - Vala Panel Extras -- Keyboard layout plugin
vala-panel-extras-xkb-debuginfo - Debug information for package vala-panel-extras-xkb
vala-panel-extras-xkb-flags - Flags for vala-panel-extras-xkb
vala-panel-lang - Translations for package vala-panel
vala-panel-plugin-appmenu - AppMenu (Global Menu) plugin for vala-panel
vala-panel-plugin-appmenu-debuginfo - Debug information for package vala-panel-plugin-appmenu
vala-panel-plugin-sntray - StatusNotifierItem (appindicator) plugin for vala-panel
vala-panel-plugin-sntray-debuginfo - Debug information for package vala-panel-plugin-sntray
vala-panel-plugin-sntray-debugsource - Debug sources for package vala-panel-plugin-sntray
vala-panel-plugin-sntray-lang - Languages for package vala-panel-plugin-sntray
vala-panel-plugins-base - Plugins for vala-panel - non X11 plugins
vala-panel-plugins-base-debuginfo - Debug information for package vala-panel-plugins-base
vala-panel-plugins-wnck - Plugins for vala-panel - X11 plugins
vala-panel-plugins-wnck-debuginfo - Debug information for package vala-panel-plugins-wnck
vala-panel-runner - Commands runner for vala-panel
vala-panel-runner-debuginfo - Debug information for package vala-panel-runner
vala-sntray-plugin - plugin for xfce4-panel to show StatusNotifierItems - Vala
vala-terminal - Terminal emulator for mobile devices