]>
git.ipfire.org Git - thirdparty/vala.git/log
Chun-wei Fan [Wed, 25 Aug 2021 09:45:27 +0000 (17:45 +0800)]
build: Add a set of NMake Makefiles
This adds a set of NMake Makefiles that is able to:
* Compile Vala from the generated C sources in a release tarball
* Compile Vala with an existing Vala build/installation from the
original Vala sources.
What is not done currently:
* Generating sources in gobject-introspection/ using Bison/Flex.
* Re-generating the *.vapi files in vapi/ using existing .gir
files.
* Running the tests
* Building vapidocs
* Preparing for the build directly from a GIT checkout.
This is done in a modular fashion so that one may specify the
INCLUDEDIR and LIBDIR if the include and library paths for GLib
are not in the compiler's default paths.
This NMake Makefile set supports Visual Studio 2008 and later-
please note that I did not (and am not intending to) update the
.vala/*.c/*.h files to make the support work.
Chun-wei Fan [Wed, 25 Aug 2021 09:28:40 +0000 (17:28 +0800)]
build: Split out source listings
This is done so that we can share the source listings with other Makefile-based
build systems, such as NMake.
Rico Tzschichholz [Fri, 20 Aug 2021 12:18:38 +0000 (14:18 +0200)]
Release 0.53.1
Princeton Ferro [Thu, 15 Jul 2021 06:32:00 +0000 (02:32 -0400)]
girwriter: Improve struct creation method binding
Struct creation methods are supposed to have `void` return type and take
an implicit `self` as the first instance parameter.
Rico Tzschichholz [Wed, 18 Aug 2021 10:36:04 +0000 (12:36 +0200)]
webkit2gtk-4.0: Update to 2.33.3
Rico Tzschichholz [Tue, 17 Aug 2021 11:26:40 +0000 (13:26 +0200)]
tests: Add more "null-safe access" tests to increase coverage
See https://gitlab.gnome.org/GNOME/vala/issues/1216
Rico Tzschichholz [Tue, 17 Aug 2021 06:42:15 +0000 (08:42 +0200)]
Sync NEWS from 0.52
wxx [Tue, 3 Aug 2021 15:07:49 +0000 (23:07 +0800)]
vala: Disallow resize() for constant arrays
See https://gitlab.gnome.org/GNOME/vala/issues/944
Ole André Vadla Ravnås [Thu, 8 Jul 2021 23:59:07 +0000 (01:59 +0200)]
gobject-2.0: Fix the Closure.invoke() signature
The return value must be initialized by the caller, as is clear from
GLib's internal callers, and e.g. dummy_closure_marshal() on the callee
side. So it appears the GLib type annotation is incorrect, as it
specifies `out` but should be `inout`.
Rico Tzschichholz [Tue, 10 Aug 2021 15:09:06 +0000 (17:09 +0200)]
vapi: Update GIR-based bindings
Rico Tzschichholz [Tue, 10 Aug 2021 15:08:51 +0000 (17:08 +0200)]
gstreamer: Update from 1.19.0+ git master
Rico Tzschichholz [Tue, 10 Aug 2021 15:08:07 +0000 (17:08 +0200)]
gtk4: Update to 4.3.2+
04f3c805
Rico Tzschichholz [Tue, 10 Aug 2021 12:03:08 +0000 (14:03 +0200)]
girwriter: Write missing c:type attribute of compact class record
Thanks to Niels De Graef
Jeremy Philippe [Wed, 18 Dec 2019 15:54:05 +0000 (16:54 +0100)]
vala: Add support for null-safe access operator
This implements support for the "null-safe" operator of C#
(also called "safe navigation" operator).
var foo = bar?.foo;
var foo = bar?.foo();
var foo = bar?[3];
var foo = bar?[1:2];
It applies to plain member access, method calls, element access and
slice expressions (including void method calls, which are simply bypassed
if the inner expression is null).
Fixes https://gitlab.gnome.org/GNOME/vala/issues/522
Rico Tzschichholz [Fri, 6 Aug 2021 06:40:31 +0000 (08:40 +0200)]
Slightly improve source_reference for get_dup_func_expression()
Rico Tzschichholz [Tue, 27 Jul 2021 12:55:22 +0000 (14:55 +0200)]
Add support for sealed classes
Fixes https://gitlab.gnome.org/GNOME/vala/issues/278
Rico Tzschichholz [Tue, 27 Jul 2021 12:34:39 +0000 (14:34 +0200)]
girparser: Add support for "final" class attribute
Rico Tzschichholz [Thu, 5 Aug 2021 15:14:48 +0000 (17:14 +0200)]
girwriter: Fix position of "result" parameter for struct constructor
Thanks to Princeton Ferro
Rico Tzschichholz [Thu, 5 Aug 2021 13:16:50 +0000 (15:16 +0200)]
Regenerate GIR-based bindings for improved instance method detection
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1210
Rico Tzschichholz [Tue, 3 Aug 2021 16:11:06 +0000 (18:11 +0200)]
girparser: Improve instance method detection
See https://gitlab.gnome.org/GNOME/vala/issues/1210
Rico Tzschichholz [Tue, 3 Aug 2021 16:11:06 +0000 (18:11 +0200)]
girparser: Add "move-to" value of functions as Version.replacement
Rico Tzschichholz [Tue, 3 Aug 2021 16:11:06 +0000 (18:11 +0200)]
girparser: Never skip "function" elements
Princeton Ferro [Thu, 15 Jul 2021 03:52:59 +0000 (23:52 -0400)]
girwriter: Add explicit writable attribute to all field elements
This addresses issues with bindings to Vala structs.
Princeton Ferro [Thu, 15 Jul 2021 06:31:32 +0000 (02:31 -0400)]
vala: this_parameter property for subroutines is nullable
Rico Tzschichholz [Sun, 18 Jul 2021 06:28:52 +0000 (08:28 +0200)]
tests: Don't check generated C for conditional glib test
Rico Tzschichholz [Sat, 17 Jul 2021 06:35:06 +0000 (08:35 +0200)]
vala: Rely on DataType.to_qualified_string() implementation for error-types
DataType.type_symbol is properly initialized and can be used.
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1206
Rico Tzschichholz [Sun, 23 May 2021 15:50:12 +0000 (17:50 +0200)]
tests: Add expected generated C sources
Rico Tzschichholz [Sun, 23 May 2021 15:48:49 +0000 (17:48 +0200)]
testrunner: Allow checking generated C sources
satmandu [Thu, 15 Jul 2021 14:55:22 +0000 (14:55 +0000)]
docs: Update bootstrap instructions in README.md
Rico Tzschichholz [Thu, 15 Jul 2021 10:35:41 +0000 (12:35 +0200)]
codegen: Fix params-array in constructor for struct
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1202
Princeton Ferro [Thu, 15 Jul 2021 07:08:11 +0000 (07:08 +0000)]
glib-2.0: Add Uri.to_string/to_string_partial() (since 2.66)
Rico Tzschichholz [Mon, 12 Jul 2021 05:43:32 +0000 (07:43 +0200)]
codegen: Use detroy_value() for delete statement
It is required to deal with special free functions here.
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1201
Rico Tzschichholz [Sun, 11 Jul 2021 10:52:23 +0000 (12:52 +0200)]
gio-2.0,glib-2.0: Add new symbols from 2.69.0
Rico Tzschichholz [Fri, 9 Jul 2021 12:21:37 +0000 (14:21 +0200)]
vapi: Update GIR-based bindings
Rico Tzschichholz [Fri, 9 Jul 2021 12:20:07 +0000 (14:20 +0200)]
gtk4: Update to 4.3.1+
6818eee8
Rico Tzschichholz [Fri, 9 Jul 2021 12:19:34 +0000 (14:19 +0200)]
webkit2gtk-4.0: Update to 2.33.2
Rico Tzschichholz [Fri, 9 Jul 2021 12:19:02 +0000 (14:19 +0200)]
gstreamer: Update from 1.19.0+ git master
Princeton Ferro [Wed, 7 Jul 2021 16:51:42 +0000 (16:51 +0000)]
glib-2.0: expected_type and return value of VariantDict.lookup_value() is nullable
Dr. Michael Lauer [Wed, 30 Jun 2021 11:32:10 +0000 (13:32 +0200)]
linux: Fix i2c-dev constants
This commit enables basic i2c operations (open/read/write/close) from userland.
Further i2c / smbus transfer modes are on the way.
Rico Tzschichholz [Tue, 6 Apr 2021 19:37:31 +0000 (21:37 +0200)]
linux: Fix some bindings errors
Dr. Michael Lauer [Mon, 24 May 2021 14:50:24 +0000 (16:50 +0200)]
linux: Substitute linux/if.h with net/if.h
There is an age-old conflict between linux/if.h (the kernel header) and
net/if.h (the userland header) that leads to compile errors due to
redeclaration of certain network-related structures, see e.g. the following links:
- https://bugs.launchpad.net/ubuntu/+source/eglibc/+bug/673073
- https://lists.debian.org/debian-kernel/2017/06/msg00003.html
- https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=824442
FWIW, it still seems to be a very current problem which I just stumbled over _again_.
By now all the relevant structures should have counterparts in net/if.h, so let's try
to just not include the kernel header, but use the userland header instead.
Dr. Michael Lauer [Fri, 14 May 2021 16:14:50 +0000 (18:14 +0200)]
linux: Add SocketCAN bindings, and ISOTP constants and options
Rico Tzschichholz [Mon, 28 Jun 2021 18:39:09 +0000 (20:39 +0200)]
Recognize multiple valid CCode.gir_namespace/_version attributes in VAPI files
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1189
Rico Tzschichholz [Mon, 28 Jun 2021 18:39:09 +0000 (20:39 +0200)]
testrunner: Add support for girwriter tests
Rico Tzschichholz [Fri, 25 Jun 2021 06:58:12 +0000 (08:58 +0200)]
girwriter: Respect GIR.name for constants, errordomains and delegates
See https://gitlab.gnome.org/GNOME/vala/issues/1196
Rico Tzschichholz [Fri, 25 Jun 2021 07:07:16 +0000 (09:07 +0200)]
tests/girwriter: Add missing [Flags] annotation
Michael James Gratton [Mon, 5 Apr 2021 01:51:50 +0000 (11:51 +1000)]
javascriptcoregtk-4.0: Fix JSC.Class.add_property() binding
Rico Tzschichholz [Wed, 31 Mar 2021 12:36:01 +0000 (14:36 +0200)]
build: Use jing to verify generated GIR file, if available
Rico Tzschichholz [Wed, 31 Mar 2021 12:33:10 +0000 (14:33 +0200)]
girwriter: Use "optional" and "nullable" instead of deprecated "allow-none"
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1131
Rico Tzschichholz [Thu, 24 Jun 2021 06:49:33 +0000 (08:49 +0200)]
ccode: Avoid trailing space after #else of CCodeIfSection
In addition to
994b4cb078643d9bb1842fa60ecb69891e1e7b87
Rico Tzschichholz [Wed, 23 Jun 2021 08:56:01 +0000 (10:56 +0200)]
codegen: Fix variadic constructors for compact classes and structs
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1195
Rico Tzschichholz [Wed, 26 May 2021 16:39:20 +0000 (18:39 +0200)]
codegen: Implementing GLib.Source.prepare/check is optional since 2.36
Rico Tzschichholz [Sun, 6 Jun 2021 16:11:02 +0000 (18:11 +0200)]
codegen: Allow null to initialize non-null struct inside initializer list
Fixes https://gitlab.gnome.org/GNOME/vala/issues/594
Rico Tzschichholz [Fri, 4 Jun 2021 09:36:51 +0000 (11:36 +0200)]
Sync NEWS from 0.52
Rico Tzschichholz [Wed, 26 May 2021 16:21:31 +0000 (18:21 +0200)]
glib-2.0: Add missing has_typedef attributes on SourceFuncs delegates
Rico Tzschichholz [Wed, 26 May 2021 15:21:52 +0000 (17:21 +0200)]
gtk+-3.0: Update to 3.24.29+
f9fe28ce
Rico Tzschichholz [Wed, 26 May 2021 15:20:19 +0000 (17:20 +0200)]
gtk4: Update to 4.3.0+
24f0ae1d
Rico Tzschichholz [Wed, 26 May 2021 15:17:03 +0000 (17:17 +0200)]
pango: Mark language parameter of AttrIterator.get_font() as out
Rico Tzschichholz [Wed, 26 May 2021 15:05:31 +0000 (17:05 +0200)]
webkit2gtk-4.0: Update to 2.33.1
Rico Tzschichholz [Wed, 26 May 2021 15:04:39 +0000 (17:04 +0200)]
gstreamer: Update from 1.19.0+ git master
Rico Tzschichholz [Wed, 26 May 2021 07:02:52 +0000 (09:02 +0200)]
vala: Parameter following params-array parameter is not allowed
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1183
Ole André Vadla Ravnås [Sat, 22 May 2021 21:37:28 +0000 (23:37 +0200)]
codegen: Fix support for public fields on GLib.Source subclasses
Rico Tzschichholz [Sat, 22 May 2021 21:37:28 +0000 (23:37 +0200)]
codegen: Factor out compact_class_has_instance_struct_member()
Ole André Vadla Ravnås [Thu, 20 May 2021 18:03:28 +0000 (20:03 +0200)]
gio-2.0: Improve DatagramBased.create_source() binding
Rico Tzschichholz [Thu, 20 May 2021 19:24:38 +0000 (21:24 +0200)]
codegen/vala: Improve check for GLib.Source derived classes
Princeton Ferro [Sun, 9 May 2021 20:00:11 +0000 (16:00 -0400)]
codegen: Introduce VALA_EXPORT for public symbols to improve portability
Use it as replacement for "extern" and attribute every public symbol.
We want to ensure that public symbols are exported, which isn't the
default when generating a shared library in MSVC, for example.
Princeton Ferro [Sun, 9 May 2021 19:55:37 +0000 (15:55 -0400)]
ccode: Allow appending `#elif`, `#else` cases to CCodeIfSection
Rico Tzschichholz [Thu, 20 May 2021 09:00:37 +0000 (11:00 +0200)]
ccode: Allow to add defines in a special section
Rico Tzschichholz [Wed, 12 May 2021 13:36:33 +0000 (15:36 +0200)]
build: Add --enable-test-ubsan configure option and "test-ubsan" make target
Rico Tzschichholz [Mon, 17 May 2021 16:56:12 +0000 (18:56 +0200)]
tests: Add "no-reply" DBus test to increase coverage
Ole André Vadla Ravnås [Fri, 7 May 2021 12:14:00 +0000 (14:14 +0200)]
codegen: Skip GDBus reply handling when async callback is NULL
To optimize `proxy.method.begin ()` to be a simple fire and forget all
the way down to the protocol level.
Rico Tzschichholz [Sun, 9 May 2021 19:28:25 +0000 (21:28 +0200)]
codegen: Mark entry point method implementation "_vala_main" as static
Thanks to Al Thomas
Alistair Thomas [Sat, 8 May 2021 11:43:43 +0000 (12:43 +0100)]
doc: Update man page to include more information on profiles
Rico Tzschichholz [Fri, 7 May 2021 11:46:28 +0000 (13:46 +0200)]
codegen: Don't add errornous cast for unknown type_symbol
This causes invalid C code for reference transfer of GenericType.
Regression of
7ae2f115a702439bd94bf09867b38019f39d010f
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1180
Rico Tzschichholz [Tue, 2 Mar 2021 16:55:25 +0000 (17:55 +0100)]
Add support for variadic delegates
There can't be a generated wrapper to mitigate possible differences,
therefore the signatures must perfectly match and an explicit cast is
required.
Fixes https://gitlab.gnome.org/GNOME/vala/issues/160
Rico Tzschichholz [Tue, 4 May 2021 12:46:10 +0000 (14:46 +0200)]
gstreamer-rtp-1.0: Move some static functions to matching parent symbols
Rico Tzschichholz [Tue, 4 May 2021 12:46:10 +0000 (14:46 +0200)]
gstreamer-rtp-1.0: Fix some bindings errors
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1177
Rico Tzschichholz [Tue, 4 May 2021 12:46:10 +0000 (14:46 +0200)]
gstreamer-rtp-1.0: Fix typo in re-parenting for RTCP symbols
Errornous introduction of Gst.RTPC instead of Gst.RTCP
Rico Tzschichholz [Tue, 4 May 2021 12:46:10 +0000 (14:46 +0200)]
vapi: Update GIR-based bindings
Rico Tzschichholz [Tue, 4 May 2021 07:21:10 +0000 (09:21 +0200)]
build: Add "test-asan" make target for convenience
Rico Tzschichholz [Tue, 4 May 2021 07:21:10 +0000 (09:21 +0200)]
codegen: More use of get_this_{class|interface}_cexpression()
Rico Tzschichholz [Tue, 4 May 2021 07:21:10 +0000 (09:21 +0200)]
codegen: Always use G_TYPE_INSTANCE_GET_CLASS/INTERFACE for external symbols (2)
and get_ccode_type_get_function() for SourceFileType.SOURCE symbols.
Rico Tzschichholz [Tue, 4 May 2021 07:21:10 +0000 (09:21 +0200)]
codgen: Generalize CCodeBaseModule.get_this_interface_cexpression()
Rico Tzschichholz [Mon, 3 May 2021 19:12:38 +0000 (21:12 +0200)]
codegen: Add CCodeBaseModule.get_this_class_cexpression() and use where possible
Rico Tzschichholz [Mon, 3 May 2021 19:12:38 +0000 (21:12 +0200)]
codegen: Replace wrongly hard coded usage of G_OBJECT_GET_CLASS
This is used by plain GTypeInstance classes as well.
Rico Tzschichholz [Mon, 3 May 2021 19:12:38 +0000 (21:12 +0200)]
codegen: Drop unreachable code handling (Un)LockStatements
Rico Tzschichholz [Mon, 3 May 2021 19:12:38 +0000 (21:12 +0200)]
tests: Refactor "fields" test to increase coverage
Rico Tzschichholz [Mon, 3 May 2021 07:34:13 +0000 (09:34 +0200)]
tests: Add "ThreadPool" test to increase coverage
Corentin Noël [Thu, 15 Oct 2020 08:35:25 +0000 (10:35 +0200)]
vala: Add foreach statement support for GLib.GenericArray
It is now possible to use foreach with a GLib.GenericArray type
Rico Tzschichholz [Mon, 3 May 2021 07:01:04 +0000 (09:01 +0200)]
codegen: GArray, GByteArray and GPtrArray are reference counted
Rico Tzschichholz [Sun, 2 May 2021 07:11:39 +0000 (09:11 +0200)]
Sync NEWS from 0.52
Rico Tzschichholz [Wed, 28 Apr 2021 19:33:10 +0000 (21:33 +0200)]
tests: Add "properties in structs" test to increase coverage
Rico Tzschichholz [Wed, 28 Apr 2021 19:33:10 +0000 (21:33 +0200)]
tests: Extend "array field intializer" test to increase coverage
Rico Tzschichholz [Wed, 28 Apr 2021 19:33:10 +0000 (21:33 +0200)]
tests: Add "generic array" test to increase coverage
Rico Tzschichholz [Wed, 28 Apr 2021 19:33:10 +0000 (21:33 +0200)]
tests: Add "delete" test to increase coverage
Rico Tzschichholz [Tue, 27 Apr 2021 08:24:55 +0000 (10:24 +0200)]
codegen: Don't use G_GNUC_INTERNAL on implicit type specific fields
The actual field was never handled that way, so don't apply it at all
when --hide-internal is passed.
Introduced by
970f58989a2863faca11e30fdbcf4da1273a6acd which claimed to
apply it to methods only.
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1178
Rico Tzschichholz [Sat, 24 Apr 2021 07:11:27 +0000 (09:11 +0200)]
vala: Report a warning for unhandled errors in destructors
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1176
Rico Tzschichholz [Sat, 24 Apr 2021 07:11:27 +0000 (09:11 +0200)]
codegen: Add missing "_return" label and "_inner_error*_" declaration in dtors
Rico Tzschichholz [Tue, 20 Apr 2021 12:05:55 +0000 (14:05 +0200)]
vala: length-type of arrays must not be nullable (2)
Rico Tzschichholz [Wed, 7 Apr 2021 16:14:16 +0000 (18:14 +0200)]
glib-2.0: Wrap TimeZone.identifier() constuctor for proper error support
This allows to handle possible null returned by this constructor.