2021-02-12  Rico Tzschichholz  <ricotz@ubuntu.com>

	Release 0.51.1

2021-02-08  Rico Tzschichholz  <ricotz@ubuntu.com>

	sdl2: Fix a couple of binding errors and attribute issues

	codegen: Include <string.h> for memcpy usage in _vala_memdup2()

2021-02-07  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Strip all nested occurances of CCodeCastExpression
	Triggered by 63551acaf0d83fac8b50904c2759c1098fbfaa71

	See https://gitlab.gnome.org/GNOME/vala/issues/1134

	build: Ease source for AC_LANG_SOURCE of CGRAPH check

	libvaladoc: Add wrapper for "agedge" of graphviz

	codegen: Correctly retrieve symbol_reference of nested cast expressions
	Regression of 63551acaf0d83fac8b50904c2759c1098fbfaa71

	Fixes https://gitlab.gnome.org/GNOME/vala/issues/1134

2021-02-06  Rico Tzschichholz  <ricotz@ubuntu.com>

	vapi: Add libunwind-generic binding

	gio-2.0: Update to 2.67.3

	gtk4: Update to 4.1.0+2712f536

	gstreamer: Update from 1.19.0+ git master

2021-02-05  Rico Tzschichholz  <ricotz@ubuntu.com>

	gee: Replace Memory.dup() with GLib.malloc() and Memory.copy()

	gstreamer-1.0: Set CCode.type_id of MiniObject to G_TYPE_BOXED
	Fixed https://gitlab.gnome.org/GNOME/vala/issues/1133

2021-02-04  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Replace "g_memdup" with "_vala_memdup2" for target glib < 2.68
	"_vala_memdup2" is a copy of "g_memdup2" available in glib >= 2.68

	glib-2.0: Add new symbols from 2.68

	codegen: Use g_memdup2 if target glib >= 2.68 is set
	See https://gitlab.gnome.org/GNOME/glib/issues/2319

	testrunner: Add "-Werror=return-stack-address" flag

	vala: Add Block.unreachable_exit and have it set accordingly by FlowAnalyzer
	Use this control flow information in codegen rather than doing an
	educated guess based on occurring ReturnStatement nodes.

	See https://gitlab.gnome.org/GNOME/vala/issues/838

	tests: Don't leak array if length is -1
	Found by -fsanitize=address

	codegen: Chain up to base struct destroy function
	Found by -fsanitize=address

2021-02-03  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Don't leak memory moving heap-allocated struct to stack
	Found by -fsanitize=address

	codegen: Use temp_ref_values list instead of patching the AST
	Simplyfies 5328619a8141aa11341d479428ebfdcec0ff9756

	codegen: Don't leak GLib.Value when implicitly unboxing it
	Found by -fsanitize=address

	vala: Don't allow GLib.Value casting to nullable struct/simple types

	vala: GLib.Value unboxing returns unowned value

	codegen: Use g_boxed_free in free-wrapper for heap-allocated GLib.Value
	dup-wrapper is specifically using g_boxed_copy already

2021-02-02  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Don't leak array memory after it was implicitly copied
	Found by -fsanitize=address

2021-02-01  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Improve handling of recursive DelegateType
	Move dedicated test case into a separate file

	codegen: Make sure types of implicit delegate parameters are declared

	codegen: Use CCodeDeclaratorSuffix to emit array length of constants

	ccode: Minor API cleaning and additions

	vala: Rename Loop to LoopStatement and introduce a common base class

	codegen: Also check array type of variable argument for ref parameters

	codegen: Add get_ccode_no_wrapper() and use it

2021-01-31  Rico Tzschichholz  <ricotz@ubuntu.com>

	girparser: Set CCode.type_cname for classes if it doesn't match our default

	tests/girwriter: Add tests for async methods attributed with NoWrapper

	codegen: Don't emit invoker for async methods attributed with NoWrapper

	libxml-2.0: Fix a few binding errors

	fuse: Fix a few binding errors

2021-01-30  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Always use G_TYPE_INSTANCE_GET_CLASS/INTERFACE for external symbols
	and get_ccode_type_get_function() for SourceFileType.SOURCE symbols.

	codegen: Handle NoWrapper attribute of async methods on caller side

	codegen: Allow CCode.type_cname for classes and use get_ccode_type_name()

	girparser: Apply "type_get_function" metadata for classes and inferfaces

	codegen: Add CCode.type_get_function and get_ccode_type_get_function()
	Allow to overide the macro name, and join get_ccode_class_get_function ()
	and get_ccode_interface_get_function().

	gtk+-2.0,javascriptcoregtk-4.0: Wrong usage of CCode.type_cname attribute

	girwriter: Don't emit invoker for methods attributed with NoWrapper

	codegen: Don't emit invoker for methods attributed with NoWrapper

	codegen: Handle NoWrapper attribute of interface methods on caller side

	vala: NoWrapper methods must be declared abstract or virtual

	gio-2.0: Pick up missing invoker for some AppInfo/File.*() methods

	gdk-pixbuf-2.0: Fix Pixbuf.save_to_streamv_async()

	gobject-2.0: Fix a few binding errors

	gdk-3.0,gdk-x11-3.0,gtk+-3.0,gtk4: Fix a few binding errors

2021-01-28  Rico Tzschichholz  <ricotz@ubuntu.com>

	Add further support for params arrays in constructors
	In addition to 98ab3da89640b8b8a6c67044b4df1194672774bb

	See https://gitlab.gnome.org/GNOME/vala/issues/128

2021-01-27  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Improve support of SimpleType struct constructors
	Additionally stop generating broken and superfluous dup/free functions,
	and don't create not used GType declarations.

	vala: Don't allow disposable SimpleType structs

	gstreamer-1.0: Fix a few binding errors

	posix: Fix a few binding errors

	libgvc: Fix a few binding errors

	sqlite3: Fix a few binding errors

	bzlib: Fix a few binding errors

	alsa: Fix a few binding errors

	curses: Fix a few binding errors

2021-01-26  Rico Tzschichholz  <ricotz@ubuntu.com>

	girparser: Apply "destroy_notify_cname" metadata for fields

	vala: Add CallableExpression interface for MethodCall/ObjectCreationExpression

	goocanvas-2.0: Fix some field types

	pango: Fix a few binding errors

	gobject-2.0: Fix a few binding errors

	gio-2.0,gtk+-3.0,gtk4: Drop explicit c-type attributes of va_list parameters

	gio-2.0: Fix binding of PollableOutputStream.write*_nonblocking()

	cairo: Fix some ctor binding errors

2021-01-25  Rico Tzschichholz  <ricotz@ubuntu.com>

	cairo: Fix a few binding errors

	gtk+-3.0,gtk4: Fix some delegate return values and parameters

	girparser: Apply "delegate_target" metadata for methods and parameters

	vala: Don't prepend "unowned" in VarType and leave that to the CodeWriter

	codewriter: Append new-line for nested block statements

2021-01-23  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Apply stricter condition for lambda to delegate assignment
	This moves an internal codegen error to the semantic-analyzer.

	codegen: Clean up expression casts in CCodeAssignmentModule.visit_assignment()

2021-01-22  Ole André Vadla Ravnås  <oleavr@gmail.com>

	vala: Avoid critical when trying to use symbol_reference of ElementAccess
	Regression of 6e7be51cb5455e9c5c721d4ba5121a6ab04673dd

2021-01-21  Rico Tzschichholz  <ricotz@ubuntu.com>

	tests: Add more "parser" tests to increase coverage

2021-01-20  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Improve prototype-string of CallableType

	Update THANKS from git log

	valadoc: Replace png icons with elementary's svg version
	These match what was introduced by 8af8158c106eaafe12a628514f74e5788274d8d2

	The icons were written by Daniel Foré for valadoc.org. They were taken from
	https://github.com/Valadoc/valadoc-org

	vapi: Update GIR-based bindings

	gstreamer: Update from 1.19.0+ git master

	gtk4: Update to 4.0.2

2021-01-19  Rico Tzschichholz  <ricotz@ubuntu.com>

	girparser: Discover our very own array length fields

	vala: Make Class.is_compat/is_immutable/is_singleton read-only

	libvaladoc: Correctly retrieve value for Api.Class.is_compact

2021-01-19  Simon Werbeck  <simon.werbeck@gmail.com>

	Add support for 'opaque' compact classes
	This change intruduces a new attribute switch [Compact (opaque = true)]
	which allows to completely hide the implementation of a compact class.
	This is especially useful for libraries when maintaining a stable abi.

	An 'opaque' compact class exposes no struct definition in the generated
	c header, only a typedef is provided. As such, certain requirements
	apply for members of such classes:
	- Access to instance fields must be either private or internal.
	- No abstract/virtual methods or properties are allowed.

	Fixes https://gitlab.gnome.org/GNOME/vala/issues/1129

2021-01-18  Rico Tzschichholz  <ricotz@ubuntu.com>

	girwriter: Write instance-parameter elements
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/1128

	tests: Extend "girparser" test and use vapigen to parse generated gir

	vala: Let method representing property accessor inherit GIR.visible attribute

	vala: Set this_parameter of method representing property accessor

2021-01-17  Rico Tzschichholz  <ricotz@ubuntu.com>

	tests: Add more invalid "GtkTemplate" tests to increase coverage

	vala: Don't allow assigning GtkChild fields/properties
	These are handled exclusively by GtkBuilder

	See https://gitlab.gnome.org/GNOME/vala/issues/1121

2021-01-16  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: GtkChild fields/properties must be declared as unowned
	The backing field won't be assigned to hold a dedicated reference.
	gtk_widget_class_bind_template_child_full will make it point to the
	instance owned by GtkBuilder.

	This avoids doing a rogue (but safe) call of _g_object_unref0 on already
	disposed child.

	Fixes https://gitlab.gnome.org/GNOME/vala/issues/1121

2021-01-15  Rico Tzschichholz  <ricotz@ubuntu.com>

	libvaladoc/html: Don't sort struct fields to keep their original order
	This follows their special handling done in Codewriter.visit_struct().

	In addition to a336d75586acb534aff55ca86425eb8f3aa45de4

2021-01-15  Reuben Thomas  <rrt@sc3d.org>

	libvaladoc: Fix typos copyright year

2021-01-14  Reuben Thomas  <rrt@sc3d.org>

	glib-2.0: Improve type of OptionEntry.flags field

2021-01-14  Rico Tzschichholz  <ricotz@ubuntu.com>

	Regenerate GIR-based bindings

	gdk-pixbuf-2.0: Update to 2.42.3~

	girparser: Minor improvement to field getter detection
	Allow DataType.compatible() to be called without initialized SemanticAnalyzer

	Additionally report a warning if field collides with method

	girparser: Handle anonymous delegate not backed by virtual-method or signal

2021-01-12  Rico Tzschichholz  <ricotz@ubuntu.com>

	webkit2gtk-4.0: Update to 2.31.1

	vala: Improve detection of duplicate package source files

2021-01-11  Rico Tzschichholz  <ricotz@ubuntu.com>

	Sync NEWS from 0.50