2020-04-06  Rico Tzschichholz  <ricotz@ubuntu.com>

	Release 0.48.3

	gio-2.0: Update to 2.65.0~a136776e
	Preserve signature of DBusSignalCallback

	gstreamer: Update from 1.17.0+ git master

	gtk4: Update to 3.98.2+11495027

	codegen: Don't pass CCodeCastExpression to NULL-aware free macro
	This resulted in invalid C code:
	    error: lvalue required as left operand of assignment

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

2020-04-06  Corentin Noël  <corentin@elementary.io>

	tests: Add "g-interface-info" dbus test to increase coverage

	tests: Extend "DBus signals" test to increase coverage
	This adds code coverage for generating multiple signals, tests for
	arrays and ensures that the private signals are not leaking.

2020-04-06  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Warn about usage of override to implement abstract interface methods
	Fixes criticals in GAsyncModule.visit_method()

	    vala_symbol_get_parent_symbol: assertion 'self != NULL' failed

	which were introduced with 12db9b7eeb1f53975010d89839d554b5fcf99831

	codegen: Correctly handle transformation of translated string-literal constants
	The required header includes were not emited to the correct declaration space.

	codegen: Include "glib.h" for G_BEGIN_DECLS/G_END_DECLS usage

2020-04-04  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Parse standalone integer/real literals as expression statement
	Issue an error in the semantic check to forbid such statements.

	Parsing such an errornous expression-statement failed since
	5464767cfa5a8dbbc5f46293693ca627b8fcc46d

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

	tests: Extend "array foreach" test to increase coverage

	vala: Consider boolean types are compatible with each other

	tests: Add "expression as argument" tests to increase coverage

	codegen: Correct field declaration for captured inline-allocated array
	Also pass proper size to memset for local temp variables of
	inline-allocated arrays in asynchronous context.

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

	codegen: Don't free value if property setter takes ownership
	Correctly handle owned property accessor in object initializer.

	In addition to c0e955db075d3d155782c167a0abb81e0dce5f59

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

	tests: Add "local clash with implicit this" test to increase coverage

	tests: Add "switch enum" test to increase coverage

	codegen: Avoid critical trying to serialize an unsupported type to Variant
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/952

	vala: Handle all ctors and dtors in CodeWriter

	vala: Handle unlock() statement in CodeWriter

2020-04-04  Simon Werbeck  <simon.werbeck@gmail.com>

	vala: Support struct initializer list in non-constant array
	A struct initializer list contained in an array initializer list is now
	transformed to a struct creation expression. The pre-existing logic
	ensures that constant expressions are not transformed.

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

2020-04-04  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Append initializer for "_*_size_" of array field in internal struct
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/914

	tests: Add "throw in loops" tests to increase coverage

2020-03-23  Rico Tzschichholz  <ricotz@ubuntu.com>

	Release 0.48.2

	manual: Update from wiki.gnome.org

	vapi: Update GIR-based bindings

	gstreamer: Update from 1.17.0+ git master

	gtk4: Update to 3.98.1

2020-03-22  Rico Tzschichholz  <ricotz@ubuntu.com>

	tests: Drop usage of "--main main" and avoid ambigious entry-points

2020-03-21  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: IntegerLiteral is a valid constant size for inline-allocated array
	In addition to b95a766454eb914f4eb5a68e9040e03faffabf52

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

	vala: Inline-allocated array can't be instantiated with creation expression
	This generalizes 0554ed7ad9cefe0f56e53dc00be88488dfa788bf

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

2020-03-19  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Include "glib.h" for g_return_*() usage
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/940

	glib-2.0: Add binding for g_win32_ftruncate()

	gio-2.0: Add binding for g_io_error_from_win32_error()

2020-03-19  ZUHONG TAO  <taozuhong@gmail.com>

	glib-2.0: Add missing IOChannel's win32 API

2020-03-19  Rico Tzschichholz  <ricotz@ubuntu.com>

	parser: Improve error message for invalid ArrayCreationExpression
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/939

2020-03-18  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Initialize temp-var for property array length before calling getter
	Regression of d33e9fbca63674b7dfa339c25a9d5e27cce187f3

	codegen: Use memset to initialize inline-allocated array with non-constant size
	In addition to a0bb129e5a2e8580eb272d9a68ba054e7b170dba

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

2020-03-17  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Improve handling of "array_length_type" attribute
	This affects methods, parameters, field and properties.

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

	codegen: Inherit "array_length_type" from (base-/base-interface) parameter/property/method
	See https://gitlab.gnome.org/GNOME/vala/issues/938

	codegen: Use correctly typed array-length variable for delegate invocation

	codegen: Use correctly typed array-length variable for property-getter

	vala: Inherit lambda parameter attributes from delegate
	... by setting base_parameter accordingly

	vala: Improve copy of required attributes from delegate to lamdba method

2020-03-17  Corentin Noël  <corentin@elementary.io>

	posix: Add pathconf and fpathconf bindings
	Also bind the named constants to use them.

2020-03-14  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Accept enum-values as length for inline allocated arrays
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/935

2020-03-13  Rico Tzschichholz  <ricotz@ubuntu.com>

	valadoc: Create and register current Vala.CodeContext properly

	vala: Use error() instead of Report.error() inside of CodeContext.get()
	This is a bad thing while Report.error() actually uses CodeContext.get()

	Regression of e436f2833dc332e3fd728fe6f6b2cd7f224dcf33

	vapi: Add cairo-gobject binding
	and update reverse depends if appropriate

2020-03-13  Corentin Noël  <corentin@elementary.io>

	cairo: Add missing type_id attributes guarded by GOBJECT define
	When Cairo is built with GObject support wrapper, it provides
	cairo-gobject.h that defines GType and GBoxed structures and enums.

2020-03-13  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Correctly access captured parameter in precondition of method
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/144

	codegen: Emit postconditions before free'ing local variables
	It was possible to cause segmentation-faults or use-after-free errors.

2020-03-12  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Reset outdated array _size_ variable after use as ref parameter
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/929

	vapigen: Define "GOBJECT" corresponding to set profile of CodeContext
	This is required to evaluate pre-processor directives correctly in
	sourced bindings.

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

2020-03-11  ZUHONG TAO  <taozuhong@gmail.com>

	glib-2.0: Add binding for g_poll()
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/924

2020-03-11  Rico Tzschichholz  <ricotz@ubuntu.com>

	Release 0.48.1

	codegen: Avoid symbol clashes with "va_*" from "stdarg.h"
	Make a better choice for naming the local variables in
	CCodeArrayModule.append_params_array()

	In addition to 98ab3da89640b8b8a6c67044b4df1194672774bb

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

2020-03-10  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Move ObjectTypeSymbol casting to GTypeModule

	codegen: Factor out GValueModule

	codegen: Move GLibValue into a separate source-file

	codegen: Cleanup GLibValue helper functions

	tests: Extend "GLib.Value (un-)boxing" test to increase coverage

2020-03-09  Rico Tzschichholz  <ricotz@ubuntu.com>

	gtk4: Update to 3.98+2da445f9

	vapi: Update GIR-based bindings

2020-03-08  Rico Tzschichholz  <ricotz@ubuntu.com>

	poppler-glib: Update to 0.85
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/922

	vala: Real struct-type without type_id can't be used for GObject property
	It caused an invalid usage of G_TYPE_POINTER with g_param_spec_boxed().

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

	glib-2.0: Add missing "type_id" or "has_type_id" attributes to structs
	See https://gitlab.gnome.org/GNOME/vala/issues/921

	codegen: Actually respect "delegate_target" attribute of method/parameter

	codegen: Inherit "delegate_target" from (base-/base-interface) parameter/property/method

	codegen: Inherit "array" attributes from (base/base-interface) property

	codegen: Don't re-evaluate "itype" when "deleg" variable is already available

	vala: Fix search for Parameter.base_parameter

	glib-2.0: Memory profiling ("g_mem_*") is deprecated since 2.46

2020-03-07  Rico Tzschichholz  <ricotz@ubuntu.com>

	test: Fix "GenericAccessors" test

	tests: Extend "GenericAccessors" test to increase coverage

	codegen: Add destroy of parameter in vfunc of delegate property setter
	The vfunc of an owned setter requires a destroy parameter. Support for
	this was introduced with 1e90d53dba0eff6ec2babd8292676099308dd4f6

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

2020-03-06  Rico Tzschichholz  <ricotz@ubuntu.com>

	tests: Rerun a few tests with POSIX profile to increase coverage

	tests: Split array tests to provide a GLib-independent test

	codegen: Replace hard-coded "gsize" with resolved "size_t"

	linux: Don't depend on GLib.Time when using POSIX profile

	codewriter: Output inner interface declarations
	Missing in d79401ad13a4bc5121f5ae187547c53b6a0a7701

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

2020-03-03  Rico Tzschichholz  <ricotz@ubuntu.com>

	Release 0.48.0

	manual: Update from wiki.gnome.org

2020-03-03  Princeton Ferro  <princetonferro@gmail.com>

	vala: Prevent possible stack-overflow in Class.is_subtype_of()

	girparser: Delay adding of "GLib.Object" prerequisite to interfaces

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

	girparser: Decrease return_array_length_idx for transformed function

	vala: Don't create temp-variable for array concatenation expression
	Found by scan-build

	codegen: Don't emit error-variable of CatchClause if not used
	Found by scan-build

	codegen: g_clear_error() sets pointer target to NULL already

	codegen: Add more "low-level" includes of "glib.h"

2020-03-01  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Report an internal error for unavailable context and bail
	If calling CodeContext.get/pop() with an empty stack present then there is
	no way to recover so bail.

2020-03-01  Princeton Ferro  <princetonferro@gmail.com>

	vala: Fix circular reference in EnumValueType

	vala: Fix circular reference in Property

	Add missing CodeContext.pop() calls
	Release previously pushed CodeContext instances from static list.

2020-03-01  Rico Tzschichholz  <ricotz@ubuntu.com>

	vapi: Update GIR-based bindings

2020-02-24  Rico Tzschichholz  <ricotz@ubuntu.com>

	Release 0.47.92

2020-02-22  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Add local-variables to current scope regardless its error state
	This avoids subsequent errors which are not useful to report when the user
	actually defined it.

2020-02-20  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Skip UsingDirective if error is set

2020-02-20  Princeton Ferro  <princetonferro@gmail.com>

	vala: Handle unavailable type-symbol in Constant.check_const_type()
	This caused criticals like:

	  vala_typesymbol_is_subtype_of: assertion 'self != NULL' failed

2020-02-20  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Don't analyze error-type of errornous catch-clauses

	vala: Properly set CodeNode.error when reporting an error (2)

	vala: Don't check for unhandled error if error is set on body
	This is how Method and CreationMethod behave already.

	vala: Bail ThrowStatement.get_error_types() if error is set
	This caused criticals when error_expression is not correct.

	vala: Rely on more implementations of Block in SwitchSection
	It was possible that statements in switch-sections were not processed
	by the semantic-analyzer. Therefore they were not checked for errors
	and marked as such.

	vala: Rework ReturnStatement.check to handle "current_return_type == null"
	Thanks to Daniel Espinosa Ortiz.

	tests: Add invalid "return" tests to increase coverage

	vapi: Add some fundamental deps files
	When using --nostdpkg those are important to have.

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

2020-02-19  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Prevent possible stack-overflow in Class.is_compact/is_immutable
	Guard recursive call on base_class in is_compact and is_immutable by
	checking for cyclic class declaration.

2020-02-19  Princeton Ferro  <princetonferro@gmail.com>

	vala: Method representing a LambdaExpression might be null on an error
	This caused criticals like:

	  vala_method_get_closure: assertion 'self != NULL' failed

2020-02-19  Rico Tzschichholz  <ricotz@ubuntu.com>

	Add support for sealed classes in bindings
	The "sealed" keyword was available and parsed for a long time. So simply
	pick it up information and expose it in the AST.

	Issue an error when it is used in vala source.

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

	vala: Never add "null" in ForeachStatement.get_defined_variables()
	See https://gitlab.gnome.org/GNOME/vala/issues/911

2020-02-18  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Don't process arguments of MethodCall if error is set
	This caused criticals like:

	  vala_method_get_closure: assertion 'self != NULL' failed

	vala: Set error and return early on invalid index in ElementAccess
	This caused criticals like:

	  vala_code_node_check: assertion 'self != NULL' failed

	vala: Don't process initializer of parameter if error is set
	This caused criticals like:

	  vala_data_type_compatible: assertion 'self != NULL' failed
	  vala_code_node_to_string: assertion 'self != NULL' failed

	tests: Add "GObject and GType class lifetime" tests to increase coverage

	vala: Handle PointerType and VoidType in Constant.check_const_type()
	This caused criticals like:

	  vala_typesymbol_is_subtype_of: assertion 'self != NULL' failed

	testrunner: Pass G_DEBUG=fatal-warnings to invalid test

2020-02-17  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Don't initialize stack-allocated array with local-constant length
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/910

	Release 0.47.91

	manual: Update from wiki.gnome.org

	pango: Update and add harfbuzz-gobject as dependency
	See https://gitlab.gnome.org/GNOME/pango/issues/458

	vapi: Add harfbuzz-gobject binding
	Mark it as experimental while is it subject to change.

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

2020-02-16  Rico Tzschichholz  <ricotz@ubuntu.com>

	gtk4: Update to 3.98.0+410dbdf6

	girparser: Report a warning for conflicting class and instance methods

	gstreamer: Update from 1.17.0+ git master

	webkit2gtk-4.0: Update to 2.27.90

	gtk+-*.0,gtk4: Fix iter parameter of TextIter.order()
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/908

2020-02-10  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Properly set CodeNode.error when reporting an error

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

	testrunner: Invalid tests and therefore expected failures must return 1

	vala: Don't ignore errors in Parameter and acknowledge them further
	This avoids useless subsequent errors and possible criticals while
	operating on broken AST.

	vala: Fix base-access check for compact classes (2)
	See 84de99560ee96afa8cb80db3b342d584a72188cd

	Correct a few spelling errors in user visible strings

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

	Release 0.47.4

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

	vala: Use some replacement for an unavailable identifier string

	parser: Make parse_identifier more robust
	... when --keep-going was passed

2020-02-03  Princeton Ferro  <princetonferro@gmail.com>

	parser: Make parse_embedded_statement_without_block more robust
	... when --keep-going was passed

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

	parser: Make parse_argument_list/parse_initializer more robust
	... when --keep-going was passed or the input appears to be incomplete

	parser: Handle delimiters inside of parse_argument_list/parse_initializer

	parser: Deal with certain missing delimiters and let the parser continue

	codegen: Make *_try_id specific to emit-context instead being global states

	vapi: Update GIR-based bindings

	gtk4: Update to 3.96.0+4ab12ab7

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

	codegen: Explicitly include <glib.h> as needed for null-literal

	codegen: Explicitly include header for length-type of arrays

	vala: Inline allocated arrays require length or initializer
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/903

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

	tests: Add more "parser" tests to increase coverage

2020-01-29  Princeton Ferro  <princetonferro@gmail.com>

	vala: Improve detection of recursive struct declarations
	Introduced with da2d58c95f39fd142dc845f5df9cdcd55be32476

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

2020-01-28  Corentin Noël  <corentin@elementary.io>

	javascriptcoregtk-4.0: Make JSC.Class usable by defining the right callback

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

	codegen: Handle different type-symbols in visit_base_access()
	It is required to distinguish between classes, compact classes, structs
	and simple-type structs.

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

	codegen: Skip StructRegisterFunction for boolean/integer/floating types
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/901

	vala: Fix base-access check for compact classes
	See 84de99560ee96afa8cb80db3b342d584a72188cd

2020-01-22  Rico Tzschichholz  <ricotz@ubuntu.com>

	Release 0.47.3

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

	codegen: Cast instance parameter in member-initializer for base-properties
	This fixes warnings issued with -Wincompatible-pointer-types

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

2020-01-21  Simon Werbeck  <simon.werbeck@gmail.com>

	codegen: Commonized generation of public/private fields

	codegen: Refactor generation of fields for ccode structs
	Introduce a common method to add field including its possible composite
	fields for array and delegate types.

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

	vapi: Update GIR-based bindings

	gstreamer: Update from 1.17.0+ git master

	gtk4: Update to 3.96.0+7e2e92a8

	webkit2gtk-4.0: Update to 2.27.4

	Regenerate for GIR-based bindings to apply explicit ctype attributes

	girparser: Apply explicitly given ctype metadata attributes on callables

	girparser: Improve source_reference of parameters

2020-01-20  Princeton Ferro  <princetonferro@gmail.com>

	vala: Always bail if there are semantic errors
	Previously introduced by 1430c461d4a45026331663989113feb195588255

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

	Add further support for params arrays
	This brings support for params-arrays in normal vala source code.

	The parameter is a null-terminated array which is represented as variadic
	parameter in generated C.

	This feature is considered experimental for now.

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

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

	glib-2.0: Let (u)int.try_parse() return false if there is an unparsed part
	This is how our other try_parse() implementions behave.

	codegen: Use result value of assignment rather than its computation
	An inline assignment of an array-length, like

	    int j = --i.length;

	resulted in a faulty tranformation

	    i_length1 = i_length1 - 1;
	    j = i_length1 - 1;

	Regression of 80d4bf61e0c3100c839f3fdbcb5218996b6afd5f

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

2020-01-13  Princeton Ferro  <princetonferro@gmail.com>

	parser: Extend source_reference of parenthesized expr to cover "( ... )"

2020-01-11  Jeremy Philippe  <jeremy.philippe@gmail.com>

	vala: Fix short-circuiting behavior of coalescing operator
	It is closely modeled after how ConditionalExpression implements
	short-circuiting behavior.

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

2020-01-08  Jeremy Philippe  <jeremy.philippe@gmail.com>

	vala: Non-nullable value-type in coalesce expression needs to be copied
	The code generated by the coalesce expression could lead to stale
	pointers to the stack if the right-side expression is an immediate value
	(such as an integer literal or a struct).

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

	vala: Infer target_type in coalescing expressions
	Correctly handle reference tranfers of inner expressions.

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

2020-01-07  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Don't set implemenation of interface property to its own
	A base-class is allowed to provide interface implementations for methods
	and properties. If those exist without an explicit implementation in the
	sub-class we then we end up finding the interface property itself. Using
	that is obviously wrong and causes a cyclic call stack.

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

	Release 0.47.2

	tests: Fix make distcheck

	vapi: Update GIR-based bindings

	gstreamer: Update from 1.17.0+ git master

	gtk4: Update to 3.96.0+448a4023

2020-01-06  Jeremy Philippe  <jeremy.philippe@gmail.com>

	glib-2.0: Reset errno before calling strto*() functions.
	Standard library functions only set errno on error and these particular
	functions return an "in-band" error indicator (the error indicator is
	also a normal return value).

	genie: Fix parser's inner state when a struct is declared after a class
	If the struct is declared after a class and has a default creation
	method, the parser will raise a "missing return type in method ..."
	error.

	The cause of the bug is that the global 'class_name' variable is not
	updated when the parser encounters a struct, so the previous value
	is used, and if a class has been parsed before, this value will be the
	name of the class instead of the struct.

2019-12-21  Rico Tzschichholz  <ricotz@ubuntu.com>

	compiler: Add "--depfile" option writing package dependencies to given file
	This is meant to be used by build systems before invoking rebuilds

2019-12-21  Jeremy Philippe  <jeremy.philippe@gmail.com>

	vala: Allow to override base interface properties explicitly

2019-12-09  Rico Tzschichholz  <ricotz@ubuntu.com>

	vapi: Update GIR-based bindings

	vala: Check before accessing "name" of parent_symbol which might be null

2019-12-06  Rico Tzschichholz  <ricotz@ubuntu.com>

	glib-2.0: Add new symbols from 2.64

	glib-2.0: Add to_string() for GLib.PollFd and GLib.Pid

	codegen: Don't attribute *_get_type_once() with G_GNUC_CONST
	Follow up on 6b03920e39bc3900148d02ea5c2ddc13d6e91091

2019-12-05  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Improve *_get_type() fast path (requires glib >= 2.58)
	Uses G_GNUC_NO_INLINE if glib >= 2.58 is targetted otherwise the
	compiler is free to inline the separate *_get_type_once() function.

	Follows the changes introduced in glib by
	https://gitlab.gnome.org/GNOME/glib/commit/e924f777369710221c3e0a9d7bf40392a27d1fa4

	See https://gitlab.gnome.org/GNOME/glib/issues/541
	and https://gitlab.gnome.org/GNOME/vala/issues/879

	codegen: Remove unreachable code in TypeRegisterFunction.init_from_type()
	Not used since 79b1a3e39a3d2bac9fbe40c99336b3b89e374571

2019-12-03  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Don't allow "va_list" as return-type or type of fields
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/884

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

	vala: Improve error message for unsupported inner types and declarations

2019-11-27  Rico Tzschichholz  <ricotz@ubuntu.com>

	gstreamer: Update from 1.17.0+ git master

	gtk4: Update to 3.96.0+9f69c7f3

	webkit2gtk-4.0: Update to 2.27.3

	test: Add some "method-call" tests to increase coverage

	vala: Don't report further errors if MemberInitializer.check() failed

	vala: Don't ignore inner errors in Block and acknowledge them further
	This avoids useless subsequent errors and possible criticals while
	operating on broken AST.

2019-11-26  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Fix precondition in creation method of structs

	vala: Include type_name to default implementation of CCode.to_string()

2019-11-25  Rico Tzschichholz  <ricotz@ubuntu.com>

	scanner: Improve check of "\u" escape sequence

	scanner: "\x" requires two hex digits at most and ignore leading zero #2

	vala: Drop Namespace.remove_struct()

2019-11-24  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Let the parser have set namespace members as static
	... and move error reporting for invalid members into check()

	parser: Implicit "main" method of main-block is public and static

	scanner: "\x" requires two hex digits at most

	tests: Add "member-access" tests to increase coverage

	tests: Add "scanner" tests to increase coverage

	tests: Extend "float and integer" tests to increase coverage

2019-11-21  Rico Tzschichholz  <ricotz@ubuntu.com>

	pango: Update to 1.44+

	vapi: Update GIR-based bindings

	gtk4: Update to 3.96.0+5e11a2ae

	gstreamer: Update from 1.17.0+ git master

	vala: Add a basic parameter check for [Print] methods
	and add tests to increase coverage

	Introdruced with ea8cd97480a7a560cfd8ae3f060f63638b7d9de4

2019-11-19  Rico Tzschichholz  <ricotz@ubuntu.com>

	tests: Fix and make fast-vapi test actually fatal

	vala: Keep formal_target_type when transforming method-call/object-creation
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/835

2019-11-18  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Improve handling of "void" as generic type
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/878

	vala: VoidType is actually compatible with itself
	See https://gitlab.gnome.org/GNOME/vala/issues/878

2019-11-17  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Use result of CCodeBaseModule.get_this_type()

	vala: Check "this_parameter" if available

	vala: Unify "this_parameter" creation using SemanticAnalyzer.get_this_type()

	vala: Allow SemanticAnalyzer.get_this_type() to handle more symbols
	and append possible type-parameters to match get_data_type_for_symbol()

	Suported symbol types are Method, Property, Constructor and Destructor

	gidl/girparser: Creation methods must not be marked as static

	vala: scope "owner" of constructor/destructor subroutines is already set

2019-11-16  Rico Tzschichholz  <ricotz@ubuntu.com>

	tests: Add "invalid address-of" test to increase coverage

2019-11-15  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Don't require constant initializer in fast-vapi
	Regression of 984c034256de3830d6daa0ab6f5eff108dea09bb

	Extend --fast-vapi test by using --use-fast-vapi

	See https://github.com/dino/dino/issues/646
	and https://gitlab.gnome.org/GNOME/vala/issues/461

2019-11-14  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Share generate_struct_*() helpers between classes and interfaces

	codegen: Fix vfunc signature of delegate-typed property in interface

	vala: Report error for async creation expression without yield

	codegen: Fix support of dynamic DBus methods

2019-11-12  Rico Tzschichholz  <ricotz@ubuntu.com>

	test: Add "GLib.Closure parameter" test to increase coverage

	test: Add "GLib.Log constants" tests to increase coverage

2019-11-11  Rico Tzschichholz  <ricotz@ubuntu.com>

	Release 0.47.1

	Sync NEWS from 0.46

2019-11-09  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Commonize the determining of return-type for delegates and methods

	codegen: Use SemanticAnalyzer.get_data_type_for_symbol()

	vala: Make Callable derive from Symbol
	This is a better choice as common base-class.

	vala: Set GLib.Error as symbol of error-types if no error-domain was given

	glib-2.0: Add "has_typedef = false" to custom MarkupParser*Func delegates

2019-11-08  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Improve check of delegate assignments and initializers
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/875

2019-11-06  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Restore DestroysInstance behaviour for non-compact classes
	Although this attribute is not meant to be applied on methods of reference
	counted classes, the original behaviour should not be changed silently.

	Regression of 3d83f31a659bd179e8a867dd054126ac6f22e82b

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

	compiler: Add "--list-sources" options to output a list of all sources
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/872

	vapi: Update GIR-based bindings

	gstreamer: Update from 1.17.0+ git master

2019-11-06  Ole André Vadla Ravnås  <oleavr@gmail.com>

	vala: Add missing gmodule-2.0 to Requires.private of pkg-config file

2019-11-06  Rico Tzschichholz  <ricotz@ubuntu.com>

	libvaladoc: Move gmodule-2.0 to Requires.private of pkg-config file
	It is not required by the public API

2019-11-05  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Support "unowned var" to declare local variables
	Based on patch by Aaron Andersen

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

	gtk4,gtk4-unix-print: Update to 3.96.0+fbea677a

	g-i: Ignore flags like -mfpmath=sse, -msse or -msse2

	g-i: Avoid use of uninitialized "markup" warning

	g-i: Calculate size correctly, avoid use-after-free

	gio-2.0: Use custom TaskReadyCallback delegate in Task.report*_error()

	vala: Don't mark method as used on recursive usage of itself
	See https://gitlab.gnome.org/GNOME/vala/issues/100

	vala: Write value of constants/enums in fast-vapi if they are constant only
	Introduced by 89a1243a4f066cc9652b26f86eb94fd038874982

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

2019-11-04  Rico Tzschichholz  <ricotz@ubuntu.com>

	vala: Add GenericType.dup/destroy fields
	This provides direct access to the according values of generic-types
	and type-parameters.

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

	codegen: Make type-parameter properties readable
	Those are immutable while being construct-only properties.

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

2019-11-03  Rico Tzschichholz  <ricotz@ubuntu.com>

	tests: Add invalid "multiple base classes" tests to increase coverage

	vala: Improve error reporting for invalid interface prerequisites
	Fixes https://gitlab.gnome.org/GNOME/vala/issues/437

	codegen: G_DEFINE_AUTOPTR_CLEANUP_FUNC must not declared more than once
	Follow on f413cb32470d9c2598416772bc0166c6f974ec9f

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

	girwriter: Fix position of priv field (--abi-stability)
	See https://gitlab.gnome.org/GNOME/vala/issues/850

	girwriter: Add readable="0"/private="1" attribute to type-specific fields

2019-10-31  Rico Tzschichholz  <ricotz@ubuntu.com>

	codegen: Fix setting of generic-type properties for gobject style chain up
	Correctly refer to their canonical names.

	See https://bugzilla.gnome.org/show_bug.cgi?id=654702

2019-10-29  Florian Brosch  <flo.brosch@gmail.com>

	vala: Improve error message for arrays as type arguments

	vala: Do not allow to change .length of arrays with fixed length
	This would result in invalid C code.

	vala: Do not allow to .resize() on arrays with fixed length

	vala: Infer array length of inline allocated arrays for fields
	Don't allow non-arrays as initializer for inline allocated arrays

	Same as 0f0bca7e0519af13d9217fbca2c20ce67cd3baba

	See https://bugzilla.gnome.org/show_bug.cgi?id=644046

	vala: Do not allow += for arrays with fixed length

