Skip to content
Commits on Source (13)
Jürg Billeter <j@bitron.ch>
Raffaele Sandrini <raffaele@sandrini.ch>
Rico Tzschichholz <ricotz@ubuntu.com>
2021-10-04 Rico Tzschichholz <ricotz@ubuntu.com>
Release 0.54.2
vala: Set source references of created DataType instances in OCE
This improves error message for expected type arguments.
2021-09-29 Rico Tzschichholz <ricotz@ubuntu.com>
glib-2.0: Update 2.70 symbols
gtk4: Update to 4.5.0~da5efea6
gio-2.0: Update to 2.71.0~a0d2efdc
tests: Add "integer/float literal" tests to increase coverage
tests: Add missing generics/null-type.c-expected
2021-09-27 Rico Tzschichholz <ricotz@ubuntu.com>
vala: Accept NullType as generic type argument
2021-09-25 Rico Tzschichholz <ricotz@ubuntu.com>
docs: Add myself to AUTHORS
docs: Bump vala version references in README.md
build: At least valac 0.16.1 is required
2021-09-22 Rico Tzschichholz <ricotz@ubuntu.com>
vala: Multi-dimensional params-array not allowed
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1230
2021-09-21 Rico Tzschichholz <ricotz@ubuntu.com>
 
Release 0.54.1
......
Vala 0.54.2
===========
* Various improvements and bug fixes:
- vala:
+ Multi-dimensional params-array not allowed [#1230]
+ Accept NullType as generic type argument
+ Set source references of created DataType instances in OCE
* Bindings:
- gio-2.0: Update to 2.71.0~a0d2efdc
- glib-2.0: Update 2.70 symbols
- gtk4: Update to 4.5.0~da5efea6
Vala 0.54.1
===========
* Regression and bug fixes:
......
......@@ -92,10 +92,10 @@ https://gitlab.gnome.org/Archive/vala-bootstrap
Here is an example on how to download and compile from a Vala release tarball.
In this example it is release version 0.42.3:
In this example it is release version 0.48.19:
```sh
curl --silent --show-error --location https://download.gnome.org/sources/vala/0.42/vala-0.42.3.tar.xz --output vala-bootstrap.tar.xz
curl --silent --show-error --location https://download.gnome.org/sources/vala/0.48/vala-0.48.19.tar.xz --output vala-bootstrap.tar.xz
tar --extract --file vala-bootstrap.tar.xz
cd vala-bootstrap
./configure --prefix=/opt/vala-bootstrap
......@@ -149,10 +149,10 @@ git clean -dfx
make && sudo make install
```
If you wish to build a specific release, for example 0.40.11:
If you wish to build a specific release, for example 0.54.1:
```sh
git checkout 0.40.11
git checkout 0.54.1
git clean -dfx
./autogen.sh
make && sudo make install
......
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.71 for vala 0.54.1.
# Generated by GNU Autoconf 2.71 for vala 0.54.2.
#
# Report bugs to <https://gitlab.gnome.org/GNOME/vala/issues>.
#
......@@ -681,8 +681,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='vala'
PACKAGE_TARNAME='vala'
PACKAGE_VERSION='0.54.1'
PACKAGE_STRING='vala 0.54.1'
PACKAGE_VERSION='0.54.2'
PACKAGE_STRING='vala 0.54.2'
PACKAGE_BUGREPORT='https://gitlab.gnome.org/GNOME/vala/issues'
PACKAGE_URL='https://wiki.gnome.org/Projects/Vala'
......@@ -1487,7 +1487,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures vala 0.54.1 to adapt to many kinds of systems.
\`configure' configures vala 0.54.2 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
......@@ -1558,7 +1558,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of vala 0.54.1:";;
short | recursive ) echo "Configuration of vala 0.54.2:";;
esac
cat <<\_ACEOF
......@@ -1695,7 +1695,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
vala configure 0.54.1
vala configure 0.54.2
generated by GNU Autoconf 2.71
Copyright (C) 2021 Free Software Foundation, Inc.
......@@ -1956,7 +1956,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by vala $as_me 0.54.1, which was
It was created by vala $as_me 0.54.2, which was
generated by GNU Autoconf 2.71. Invocation command line was
$ $0$ac_configure_args_raw
......@@ -3230,7 +3230,7 @@ fi
# Define the identity of the package.
PACKAGE='vala'
VERSION='0.54.1'
VERSION='0.54.2'
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
......@@ -14706,7 +14706,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by vala $as_me 0.54.1, which was
This file was extended by vala $as_me 0.54.2, which was
generated by GNU Autoconf 2.71. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
......@@ -14775,7 +14775,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config='$ac_cs_config_escaped'
ac_cs_version="\\
vala config.status 0.54.1
vala config.status 0.54.2
configured by $0, generated by GNU Autoconf 2.71,
with options \\"\$ac_cs_config\\"
......
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.48.4.
.TH VALA-GEN-INTROSPECT "1" "September 2021" "gen-introspect 0.54.1" "User Commands"
.TH VALA-GEN-INTROSPECT "1" "October 2021" "gen-introspect 0.54.2" "User Commands"
.SH NAME
vala-gen-introspect \- generate a GI file for GObject and glib based packages
.SH SYNOPSIS
......
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.48.4.
.TH VALAC "1" "September 2021" "Vala 0.54.1" "User Commands"
.TH VALAC "1" "October 2021" "Vala 0.54.2" "User Commands"
.SH NAME
valac \- compiler that translates Vala source code into C source and header files
.SH SYNOPSIS
......
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.48.4.
.TH VALADOC "1" "September 2021" "Valadoc 0.54.1" "User Commands"
.TH VALADOC "1" "October 2021" "Valadoc 0.54.2" "User Commands"
.SH NAME
valadoc \- Vala Documentation Tool
.SH SYNOPSIS
......
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.48.4.
.TH VAPIGEN "1" "September 2021" "Vala API Generator 0.54.1" "User Commands"
.TH VAPIGEN "1" "October 2021" "Vala API Generator 0.54.2" "User Commands"
.SH NAME
vapigen \- generate a Vala API
.SH SYNOPSIS
......
......@@ -40,9 +40,11 @@ AM_TESTS_ENVIRONMENT = \
TESTS = \
basic-types/gassert.vala \
basic-types/integer-literals.vala \
basic-types/integers.vala \
basic-types/integers-boxed-cast.vala \
basic-types/escape-chars.vala \
basic-types/float-literals.vala \
basic-types/floats.vala \
basic-types/floats-boxed-cast.vala \
basic-types/boolean.vala \
......@@ -232,6 +234,7 @@ TESTS = \
methods/nowrapper-no-vfunc.test \
methods/params-array.vala \
methods/params-array-abstract.test \
methods/params-array-multi-dimensional.test \
methods/params-array-preceding.test \
methods/params-array-with-throws.vala \
methods/print-attribute.vala \
......@@ -708,6 +711,7 @@ TESTS = \
generics/parameter-invalid-initializer.test \
generics/parameter-sizeof-initializer.vala \
generics/member-dup-destroy.vala \
generics/null-type.vala \
generics/property-int-cast.vala \
generics/reference-transfer.vala \
generics/string-literal-comparison.vala \
......
......@@ -87,13 +87,13 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
noinst_PROGRAMS = $(am__EXEEXT_1)
TESTS = basic-types/gassert.vala basic-types/integers.vala \
basic-types/integers-boxed-cast.vala \
basic-types/escape-chars.vala basic-types/floats.vala \
basic-types/floats-boxed-cast.vala basic-types/boolean.vala \
basic-types/custom-types.vala basic-types/default-gtype.vala \
basic-types/strings.vala basic-types/arrays.vala \
basic-types/arrays-generics.vala \
TESTS = basic-types/gassert.vala basic-types/integer-literals.vala \
basic-types/integers.vala basic-types/integers-boxed-cast.vala \
basic-types/escape-chars.vala basic-types/float-literals.vala \
basic-types/floats.vala basic-types/floats-boxed-cast.vala \
basic-types/boolean.vala basic-types/custom-types.vala \
basic-types/default-gtype.vala basic-types/strings.vala \
basic-types/arrays.vala basic-types/arrays-generics.vala \
basic-types/arrays-fixed-assignment.vala \
basic-types/array-uint8-uchar-compat.vala \
basic-types/pointers.vala basic-types/pointers-arithmetic.vala \
......@@ -207,6 +207,7 @@ TESTS = basic-types/gassert.vala basic-types/integers.vala \
methods/generics.vala methods/nowrapper-interface.vala \
methods/nowrapper-no-vfunc.test methods/params-array.vala \
methods/params-array-abstract.test \
methods/params-array-multi-dimensional.test \
methods/params-array-preceding.test \
methods/params-array-with-throws.vala \
methods/print-attribute.vala \
......@@ -535,7 +536,7 @@ TESTS = basic-types/gassert.vala basic-types/integers.vala \
generics/integer-type-cast-return.vala \
generics/parameter-invalid-initializer.test \
generics/parameter-sizeof-initializer.vala \
generics/member-dup-destroy.vala \
generics/member-dup-destroy.vala generics/null-type.vala \
generics/property-int-cast.vala \
generics/reference-transfer.vala \
generics/string-literal-comparison.vala \
......
/* basic_types_float_literals.c generated by valac, the Vala compiler
* generated from basic_types_float_literals.vala, do not modify */
#include <glib.h>
#include <float.h>
#include <math.h>
static void _vala_main (void);
static void
_vala_main (void)
{
{
gfloat foo = 0.0F;
gfloat bar = 0.0F;
foo = 23.42F;
bar = 47.11f;
}
{
gdouble foo = 0.0;
gdouble bar = 0.0;
foo = 23.42;
bar = 47.11;
}
{
gdouble foo = 0.0;
gdouble bar = 0.0;
foo = 23.42;
bar = 47.11;
}
}
int
main (int argc,
char ** argv)
{
_vala_main ();
return 0;
}
void main () {
{
float foo = 23.42F;
float bar = 47.11f;
}
{
double foo = 23.42D;
double bar = 47.11d;
}
{
double foo = 23.42;
double bar = 47.11;
}
}
/* basic_types_integer_literals.c generated by valac, the Vala compiler
* generated from basic_types_integer_literals.vala, do not modify */
#include <glib.h>
static void _vala_main (void);
static void
_vala_main (void)
{
{
guint foo = 0U;
guint bar = 0U;
foo = 23U;
bar = 42U;
}
{
gint foo = 0;
gint bar = 0;
foo = 23;
bar = 42;
}
{
gulong foo = 0UL;
gulong bar = 0UL;
foo = 23UL;
bar = 42UL;
}
{
glong foo = 0L;
glong bar = 0L;
foo = 23L;
bar = 42L;
}
{
guint64 foo = 0ULL;
guint64 bar = 0ULL;
foo = 23ULL;
bar = 42ULL;
}
{
gint64 foo = 0LL;
gint64 bar = 0LL;
foo = 23LL;
bar = 42LL;
}
}
int
main (int argc,
char ** argv)
{
_vala_main ();
return 0;
}
void main () {
{
uint foo = 23U;
uint bar = 42u;
}
{
int foo = 23;
int bar = 42;
}
{
ulong foo = 23UL;
ulong bar = 42ul;
}
{
long foo = 23L;
long bar = 42l;
}
{
uint64 foo = 23ULL;
uint64 bar = 42ull;
}
{
int64 foo = 23LL;
int64 bar = 42ll;
}
}
/* generics_null_type.c generated by valac, the Vala compiler
* generated from generics_null_type.vala, do not modify */
#include <glib-object.h>
#include <glib.h>
#if !defined(VALA_EXTERN)
#if defined(_MSC_VER)
#define VALA_EXTERN __declspec(dllexport) extern
#elif __GNUC__ >= 4
#define VALA_EXTERN __attribute__((visibility("default"))) extern
#else
#define VALA_EXTERN extern
#endif
#endif
#define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
#define _vala_return_if_fail(expr, msg) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return; }
#define _vala_return_val_if_fail(expr, msg, val) if G_LIKELY (expr) ; else { g_return_if_fail_warning (G_LOG_DOMAIN, G_STRFUNC, msg); return val; }
#define _vala_warn_if_fail(expr, msg) if G_LIKELY (expr) ; else g_warn_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
VALA_EXTERN void foo (GType t_type,
GBoxedCopyFunc t_dup_func,
GDestroyNotify t_destroy_func,
gconstpointer t);
static void _vala_main (void);
void
foo (GType t_type,
GBoxedCopyFunc t_dup_func,
GDestroyNotify t_destroy_func,
gconstpointer t)
{
_vala_assert (t == NULL, "t == null");
_vala_assert (t_type == G_TYPE_INVALID, "typeof (T) == Type.INVALID");
_vala_assert (t_dup_func == NULL, "T.dup == null");
_vala_assert (t_destroy_func == NULL, "T.destroy == null");
}
static void
_vala_main (void)
{
foo (G_TYPE_INVALID, NULL, NULL, NULL);
}
int
main (int argc,
char ** argv)
{
_vala_main ();
return 0;
}
void foo<T> (T t) {
assert (t == null);
assert (typeof (T) == Type.INVALID);
assert (T.dup == null);
assert (T.destroy == null);
}
void main () {
foo (null);
}
Invalid Code
void foo (params string[,] strvv) {
}
void main () {
}