| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
This is something that libraries are not supposed to do, but some do
anyway (Soup and Clutter are two examples) and language bindings should
handle it somehow or other. In GJS we want to make sure that the way it's
handled doesn't change inadvertently, because buggy library code should
not break existing user code.
https://bugzilla.gnome.org/show_bug.cgi?id=785091
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"(in) (transfer none)".
The "(in)" alias was (unintenionally?) introduced in
https://git.gnome.org/browse/gobject-introspection/commit/?id=699ad0fec427c79bec1
which added an alias for return annotations. This change makes sure that this continues
to work.
Functions which ref_sink in params are currently marked as transfer-none since in the
case of non-floating objects (which all bindings use) no ownership gets transfered.
But in case of floating objects, which is the common case when using the C API directly,
the ownership _is_ transfered. Using transfer-floating should make this clearer
while giving the same result for bindings.
Functions where this could be used: gst_bin_add, gtk_container_add, gst_element_add_pad
See https://bugzilla.gnome.org/show_bug.cgi?id=657202 and https://bugzilla.gnome.org/show_bug.cgi?id=702960
https://bugzilla.gnome.org/show_bug.cgi?id=742618
|
|
|
|
|
|
|
|
| |
necessary"
This reverts commit 17ef691e9b3ebd475b01d1e623d3df7b1f534dfa.
This breaks builddir != srcdir builds, like GNOME Continuous.
|
|
|
|
| |
This reverts commit b1200a87bc0bd4f4fcd5275f25422032104138ed.
|
|
|
|
|
|
| |
We need to point Python in the right direction, because unlike source
rules, automake won't automatically expand commands in explicit make
rules.
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=744021
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=775679
|
|
|
|
|
|
| |
This is to test GJS's support of GValues boxed inside GValues.
https://bugzilla.gnome.org/show_bug.cgi?id=688128
|
|
|
|
|
|
|
| |
These will be used by pygobject in
https://bugzilla.gnome.org/show_bug.cgi?id=726484
https://bugzilla.gnome.org/show_bug.cgi?id=780652
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
We now reuse _create_type_from_base instead of reimplementing
it in a semi-broken way in transformer, and use complete_ctype
when writing it out if available.
This incidentally allows us to remove a test where the comment
acknowledged the non-optimal behaviour.
https://bugzilla.gnome.org/show_bug.cgi?id=779959
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=760056
|
|
|
|
|
|
|
| |
We could have a fundamental type A derived by a subclass B. Class A happens
to be introspected, but B isn't. This can cause some issues in Gjs.
https://bugzilla.gnome.org/show_bug.cgi?id=760056
|
|
|
|
|
|
|
| |
In order to test GJS's support for GHashTables with float, double,
gint64, and guint64 value types, here are some new GI marshalling tests.
https://bugzilla.gnome.org/show_bug.cgi?id=773763
|
|
|
|
|
|
| |
Left over from code review fix.
https://bugzilla.gnome.org/show_bug.cgi?id=772790
|
|
|
|
|
|
|
|
| |
For boolean arrays, we want to make sure that we actually got an array of
TRUE and FALSE (1 and 0) instead of an array of integers that may have
other values besides 1 and 0.
https://bugzilla.gnome.org/show_bug.cgi?id=772790
|
|
|
|
|
|
|
| |
Since we return a static const array as the out value, the function must
have a const type for its out parameter.
https://bugzilla.gnome.org/show_bug.cgi?id=772790
|
|
|
|
|
|
|
|
| |
GJS has gained some support for marshalling arrays of previously
unsupported types. These are the marshalling tests that are needed to
test that new functionality.
https://bugzilla.gnome.org/show_bug.cgi?id=772790
|
|
|
|
|
|
|
| |
C11 which added support for anonymous unions (already supported)
also adds support for anonymous structs.
https://bugzilla.gnome.org/show_bug.cgi?id=766011
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=765618
|
|
|
|
|
|
|
|
|
|
|
| |
This is false on x32, arm32 on Linux and on 32-bit archs of FreeBSD,
OpenBSD.
In general we've been moving g-i away from supporting time_t due to
various problems - GLib-using apps should use GTimeVal or GDateTime
etc.
https://bugzilla.gnome.org/show_bug.cgi?id=736109
|
|
|
|
|
|
|
|
| |
This is a regression test for marshalling callback arguments from signals
with an array parameter and separate length parameter into closures in
the introspected language.
https://bugzilla.gnome.org/show_bug.cgi?id=761659
|
|
|
|
|
|
|
| |
This is a regression test for returning out arrays of structs, like
gdk_keymap_get_entries_for_keyval() for example.
https://bugzilla.gnome.org/show_bug.cgi?id=761658
|
|
|
|
|
|
|
|
|
|
|
|
| |
On bug #719966, the question arose of whether parameters annotated with
(element-type) but not (not nullable) are regarded as nullable or
non-nullable.
Add some new unit tests to Regress-1.0.gir to check the behaviour is as
expected: annotating a parameter with (element-type) implicitly makes it
non-nullable (unless also annotated with (nullable)).
https://bugzilla.gnome.org/show_bug.cgi?id=757678
|
|
|
|
|
|
|
|
| |
Use a single static allocation for the hash created in regress_test_ghash_gvalue_return().
This function is explicitly marked as returning the hash with transfer-none
and doesn't need to re-create the hash each call.
https://bugzilla.gnome.org/show_bug.cgi?id=736517
|
|
|
|
|
|
| |
Transfer is annotated as full so the function should free its input.
https://bugzilla.gnome.org/show_bug.cgi?id=736517
|
|
|
|
|
|
|
| |
Transfer is annotated as full so the function should free its input
after testing and before output assignment.
https://bugzilla.gnome.org/show_bug.cgi?id=736517
|
|
|
|
|
|
|
|
| |
g_simple_async_result_complete_in_idle() will add its own reference for
managing the async result. We need to unref the result after calling this
so we don't leak.
https://bugzilla.gnome.org/show_bug.cgi?id=736517
|
|
|
|
|
|
|
|
|
|
| |
g-ir-scanner now supports something like this:
typedef void my_callback(int);
Notice how my_callback is not a pointer.
https://bugzilla.gnome.org/show_bug.cgi?id=755645
|
|
|
|
|
|
|
| |
The nullable code needs to search via index lookup of closure_name,
which drops the need to (incorrectly) assign closure_name again.
https://bugzilla.gnome.org/show_bug.cgi?id=756352
|
|
|
|
|
|
|
| |
Fixup to commit 10cb665fee2cc378dd2f13bad16e6384836a8b16. I failed to
work git properly when submitting the patch.
https://bugzilla.gnome.org/show_bug.cgi?id=729660
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
gpointer parameters and return types should be marked as nullable by
default, unless:
• also annotated with (type) and not with (nullable); or
• explicitly annotated with (not nullable).
This introduces the (not nullable) annotation as a direct opposite to
(nullable). In future, (not) could be extended to invert other
annotations.
https://bugzilla.gnome.org/show_bug.cgi?id=729660
|
|
|
|
|
|
|
|
| |
All user_data pointers should be nullable, and they should all be
annotated as closures too. I have not found any counter-examples where a
closure is non-nullable.
https://bugzilla.gnome.org/show_bug.cgi?id=729660
|
|
|
|
|
|
|
|
| |
Otherwise the .gir can contain invalid data which would
likely cause a crash at runtime.
https://bugzilla.gnome.org/show_bug.cgi?id=752044
Signed-off-by: Garrett Regier <garrett.regier@riftio.com>
|
|
|
|
|
|
|
| |
These can easily be misunderstood, especially optional.
https://bugzilla.gnome.org/show_bug.cgi?id=752065
Signed-off-by: Garrett Regier <garrett.regier@riftio.com>
|
|
|
|
|
|
|
|
| |
The optional annotation was being applied which
is invalid for return values.
https://bugzilla.gnome.org/show_bug.cgi?id=752029
Signed-off-by: Garrett Regier <garrett.regier@riftio.com>
|
|
|
|
|
| |
Apparently Python 2 still tries to interpret r"\u" in some
circumstances?
|
| |
|
|
|
|
|
|
| |
Add conditional import for Python 3's renamed builtins module.
https://bugzilla.gnome.org/show_bug.cgi?id=679438
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add unicode_literals future import which turns any string literal
into a unicode string. Return unicode strings from the Python C extension
module. Force writing of annotations (g-ir-annotation-tool) to output utf8
encoded data to stdout.
This is an initial pass at following the "unicode sandwich"
model of programming (http://nedbatchelder.com/text/unipain.html)
needed for supporting Python 3.
https://bugzilla.gnome.org/show_bug.cgi?id=679438
|
|
|
|
|
|
|
|
|
|
|
| |
Replace occurances of "%r" (repr) in format strings where the intended
behaviour is to output a quoted string "'foo'" with explicit usage
of "'%s'". This is needed to move the codebase to unicode literals
in order to upgrade to Python 3. Python 2 unicode strings are expanded
with repr formatting prefixed with a "u" as in "u'foo'" which causes
failures for various text formatting scenarios.
https://bugzilla.gnome.org/show_bug.cgi?id=679438
|
|
|
|
|
|
|
| |
Use future import "print_function" and update relevant uses of print
as a function call. See: PEP 3105
https://bugzilla.gnome.org/show_bug.cgi?id=679438
|
|
|
|
|
|
|
|
|
|
| |
Import Python 3 compatible "true division" from the future (PEP 238).
This changes the Python 2 classic division which uses floor division
on integers to true division. Verfied we don't actually use the
division operator anywhere in the code base so this a safety for
supporting both Python 2 and 3.
https://bugzilla.gnome.org/show_bug.cgi?id=679438
|
|
|
|
|
|
| |
Use absolute_import to ensure Python 3 compatibility of the code base.
https://bugzilla.gnome.org/show_bug.cgi?id=679438
|
| |
|
|
|
|
| |
More followup to https://bugzilla.gnome.org/show_bug.cgi?id=752047
|
|
|
|
| |
Should help debugging.
|
|
|
|
| |
This reverts commit 232f3c831260f596e36159112292897962a505b4.
|
|
|
|
|
|
| |
It broke at least atk and mutter.
This reverts commit 5ae7bd58b6266997b61d897ad6562118eeb59210.
|
|
|
|
|
|
|
|
| |
This is an issue in various code bases and tends
to confuse newcomers.
https://bugzilla.gnome.org/show_bug.cgi?id=752047
Signed-off-by: Garrett Regier <garrett.regier@riftio.com>
|