2020-03-26 Rico Tzschichholz Release 0.46.7 2020-03-26 Corentin Noël posix: Add pathconf and fpathconf bindings Also bind the named constants to use them. 2020-03-24 Rico Tzschichholz gtk+-3.0: Update to 3.24.14 manual: Update from wiki.gnome.org vala: Inline-allocated array can't be instantiated with creation expression This generalizes 0554ed7ad9cefe0f56e53dc00be88488dfa788bf Fixes https://gitlab.gnome.org/GNOME/vala/issues/926 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-24 ZUHONG TAO glib-2.0: Add missing IOChannel's win32 API 2020-03-24 Rico Tzschichholz parser: Improve error message for invalid ArrayCreationExpression Fixes https://gitlab.gnome.org/GNOME/vala/issues/939 tests: Add "property array length" test to increase coverage 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 vala: Inherit lambda parameter attributes from delegate ... by setting base_parameter accordingly vala: Improve copy of required attributes from delegate to lamdba method vala: Accept enum-values as length for inline allocated arrays Fixes https://gitlab.gnome.org/GNOME/vala/issues/935 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-24 Corentin Noël 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-24 Rico Tzschichholz 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. 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-24 ZUHONG TAO glib-2.0: Add binding for g_poll() Fixes https://gitlab.gnome.org/GNOME/vala/issues/924 2020-03-24 Rico Tzschichholz tests: Extend "GLib.Value (un-)boxing" test to increase coverage poppler-glib: Update to 0.85 Fixes https://gitlab.gnome.org/GNOME/vala/issues/922 glib-2.0: Add missing "type_id" or "has_type_id" attributes to structs See https://gitlab.gnome.org/GNOME/vala/issues/921 vala: Fix search for Parameter.base_parameter glib-2.0: Memory profiling ("g_mem_*") is deprecated since 2.46 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 tests: Split array tests to provide a GLib-independent test linux: Don't depend on GLib.Time when using POSIX profile 2020-03-05 Rico Tzschichholz manual: Update from wiki.gnome.org 2020-03-05 Princeton Ferro vala: Prevent possible stack-overflow in Class.is_subtype_of() girparser: Delay adding of "GLib.Object" prerequisite to interfaces 2020-03-05 Rico Tzschichholz girparser: Decrease return_array_length_idx for transformed function 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-05 Princeton Ferro 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-05 Rico Tzschichholz 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. vala: Skip UsingDirective if error is set 2020-03-05 Princeton Ferro vala: Handle unavailable type-symbol in Constant.check_const_type() This caused criticals like: vala_typesymbol_is_subtype_of: assertion 'self != NULL' failed 2020-03-05 Rico Tzschichholz 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 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-03-05 Princeton Ferro vala: Method representing a LambdaExpression might be null on an error This caused criticals like: vala_method_get_closure: assertion 'self != NULL' failed 2020-03-05 Rico Tzschichholz vala: Never add "null" in ForeachStatement.get_defined_variables() See https://gitlab.gnome.org/GNOME/vala/issues/911 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 testrunner: Pass G_DEBUG=fatal-warnings to invalid test vala: Handle PointerType and VoidType in Constant.check_const_type() This caused criticals like: vala_typesymbol_is_subtype_of: assertion 'self != NULL' failed codegen: Don't initialize stack-allocated array with local-constant length Fixes https://gitlab.gnome.org/GNOME/vala/issues/910 manual: Update from wiki.gnome.org vapi: Add harfbuzz-gobject binding Mark it as experimental while is it subject to change. Fixes https://gitlab.gnome.org/GNOME/vala/issues/909 gtk4: Update to 3.98.0+410dbdf6 girparser: Report a warning for conflicting class and instance methods 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 vala: Properly set CodeNode.error when reporting an error