| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
This member will contain the string from the GEnumValue/GFlagsValue
'value_name' introspection dump.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
|
|
|
|
|
|
| |
Don't rely on runtime name, but on C header parsed symbol.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
|
|
|
|
|
|
|
|
| |
Otherwise we'll end up using the locale encoding. While it's usually utf-8,
that's not the case on Windows.
There is one place where a file with filenames is passed, not sure there
so I left it and passed a explicit None.
|
|
|
|
|
|
|
|
|
| |
cElementTree was removed in Python 3.9 in favor of ElementTree,
which has used a fast, native implementation since Python 3.3.
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1817649
Signed-off-by: Stephen Gallagher <sgallagh@redhat.com>
|
|
|
|
|
|
| |
This reverts commit f606183a010fbec4382acb728882cc0eddbaf7f7.
See https://gitlab.gnome.org/GNOME/gobject-introspection/merge_requests/9#note_409979
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> Certain types like GIConv and GdkAtom are pointers internally but don't
> look like pointers when referenced. They have the form.
>
> typedef struct _X *X;
>
> Parse these as structures/records but mark them in the gir with a 'disguised'
> attribute so that we know that they need special handling.
Additionally, stop relaying on disguised attribute when deciding whether
to render a page. Check number of fields instead, so as to avoid
introducing large regression in the docs.
Fixes #101.
|
|
|
|
| |
We only support 3.4+ now.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On Windows the dumper cleanup regularely fails because the created .exe
is still in use by some process and shutil.rmtree() fails with:
OSError: [WinError 145] The directory is not empty
I'm not 100% sure what's the cause for this, but searching for similar issues
suggests that it might be Windows Defender scanning the newly created .exe
file and because it's so short lifed the scanning and deleting conflict.
This adds a helper which tries a few times and waits a bit before giving up.
A similar patch has been in MSYS2 for some time:
https://github.com/Alexpux/MINGW-packages/blob/d0c39af02a669e45272c713e912ee63b0dd94157/mingw-w64-gobject-introspection/0025-more-tolerant-rmtreeing.patch
|
|
|
|
|
|
|
| |
We already require python 2.7, and it has OrderedDict and Counter.
Besides cleaning up unmaintained code, this change found and fixed
a Python 3 bug where we were iterating over a dict while changing it.
|
|
|
|
|
|
|
|
| |
In cross-compilation the build system is unable to execute the compiled
binary. Give the possibility to use a launcher, e.g. wine for MinGW or
qemu for different CPU type.
https://bugzilla.gnome.org/show_bug.cgi?id=696773
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
Replace usage of iteritems() and itervalues() with items() and values()
respectively.
https://bugzilla.gnome.org/show_bug.cgi?id=679438
|
|
|
|
|
|
|
|
| |
Convert the results map() calls to a list for Python 3 compatibility.
In Python 3, map() returns an iterable "map object" which does not
allow indexing or iteration more than once.
https://bugzilla.gnome.org/show_bug.cgi?id=679438
|
|
|
|
|
|
| |
Ensures files are correctly and immediately closed.
https://bugzilla.gnome.org/show_bug.cgi?id=751926
|
|
|
|
|
| |
Updated from:
https://raw.githubusercontent.com/jcrocholl/pep8/1.6.2/pep8.py
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove GInitiallyUnowned special case in gdumpparser where fields are
copied from GObject. Add generic solution where anytime we have multiple
typedef structs, the fields become shared:
typedef struct _Foo Foo;
typedef struct _Foo Bar;
struct _Foo {...};
https://bugzilla.gnome.org/show_bug.cgi?id=581525
|
| |
|
|
|
|
|
| |
Last call sites where removed in 36aa515f1036978ced8d4ffb808260844f7229e0
about 3 years ago.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Version in our tree is a wee bit outdated. For example,
later work will introduce an utf8 encoded python source
file which our old pep8.py does not yet understand (yeah,
it really was *that* ancient)...
Updated from:
https://raw.github.com/jcrocholl/pep8/1.4.5/pep8.py
Takes 552c1f1525e37a30376790151c1ba437776682c5,
f941537d1c0a40f0906490ed160db6c79af572d3,
5a4afe2a77d0ff7d9fea13dd93c3304a6ca993de and
a17f157e19bd6792c00321c8020dca5e5a281f45 into account...
https://bugzilla.gnome.org/show_bug.cgi?id=699535
|
|
|
|
|
|
| |
It's more readable and as an added bonus Python 3 compatible.
https://bugzilla.gnome.org/show_bug.cgi?id=697616
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The code which heuristically turned functions into class methods would always
ignore any function called *_get_type or *_get_gtype. However, the code which
looked for GI metadata functions to execute them was much more comprehensive,
checking not just the name, but also that it had no parameters and that it
returned a GType.
This change abstracts the more comprehensive check into the Function class, and
uses the same check in both places.
https://bugzilla.gnome.org/show_bug.cgi?id=671218
|
|
|
|
| |
It was actually introduced by e0fea819f0da1ca60cce3280e7e21f3d2955be3a
|
| |
|
|
|
|
|
| |
For gjs we want to switch to using introspection data for signals, and
the "notify" signal being missing from GObject was a problem.
|
|
|
|
|
|
|
|
|
| |
There were some cases of handling GObject and GInitiallyUnowned which
were not necessary. Removing special cases from them simplified code
and as a bonus it added 'GObject::notify' signal into GIR, which was
not there previously.
https://bugzilla.gnome.org/show_bug.cgi?id=657446
|
|
|
|
|
|
|
| |
GParamSpec is introspected as fundamental class, and all GObject
classes derived from it (e.g. GParamSpecChar) are marked as such.
https://bugzilla.gnome.org/show_bug.cgi?id=656440
|
| |
|
|
|
|
|
|
| |
This adds all GSignalFlags into the gir.
https://bugzilla.gnome.org/show_bug.cgi?id=656457
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of storing the name of the function to call to get the
error quark, store the string form of the error quark, which
we derive from the introspection binary during scanning.
Update EnumBlob and GIEnumInfo to include the new information.
This will allow determining a back-mapping from error quark
to error domain without having to dlsym() and call all the
known error quark functions.
Based on earlier patches from Owen Taylor and Maxim Ermilov.
https://bugzilla.gnome.org/show_bug.cgi?id=602516
|
|
|
|
| |
This was not meant to be pushed (yet). Sorry for confusion.
|
|
|
|
|
|
|
|
|
| |
This is simple workaround which ignores CairoRectangleInt boxed type
appearing as defined by libgdk, because libgdk simply aliases this
gtype for GdkRectangle (as it also typedef's GdkRectangle to
cairo_rectangle_int_t).
https://bugzilla.gnome.org/show_bug.cgi?id=655423
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Change the special code for handling GObject and GInitiallyUnowned
so that it exposes GParamSpec as a class, and it allows GVariant to
have a GType without using the deprecate g_variant_get_gtype.
It is a sort of ABI break, in that new typelibs won't work with
previous versions of libgirepository.
https://bugzilla.gnome.org/show_bug.cgi?id=646635
|
|
|
|
|
|
|
|
|
|
| |
Use the new glib-boxed.h header from gobject to pair structure
definitions with boxed types in the GLib namespace, improving the
introspection coverage and removing some hacks.
Some fixes from Colin Walters <walters@verbum.org>
https://bugzilla.gnome.org/show_bug.cgi?id=646635
|
|
|
|
|
|
| |
Based on a patch by Giovanni Campagna <gcampagna@src.gnome.org>
https://bugzilla.gnome.org/show_bug.cgi?id=646635
|
|
|
|
|
|
| |
* gdumpparser.py was incorrectly passing the ctype for transfer
* Property constructor wasn't actually doing anything with passed transfer
* Parse transfer-ownership in girparser
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The C compiler will pick an enumeration type that accomodates the specified
values for the enumeration, so ignoring 64-bit enumerations, we can
have enumeration values from MININT32 to MAXUINT32. To handle this properly:
- Use gint64 for holding eumeration values when scanning
- Add a 'unsigned_value' bit to ValueBlob so we can distinguish the
int32 vs. uint32 cases in the typelib
- Change the return value of g_value_info_get_value() to gint64.
https://bugzilla.gnome.org/show_bug.cgi?id=629704
|
|
|
|
|
| |
...by default. However, the GI_SCANNER_DEBUG=save-temps option
helps for debugging.
|
| |
|
|
|
|
|
|
|
| |
Also document/bug link the other workarounds; just made up a
convention for ## WORKAROUND ##
See: https://bugzilla.gnome.org/show_bug.cgi?id=550616
|
|
|
|
| |
This needs a manual override since GVariant is a fundamental.
|
|
|
|
|
| |
If you pass --namespace=FooBar, and have a GObject named FooBar, we'd
assert. Give the user an obvious error message.
|
|
|
|
|
|
|
|
| |
It's wrong, but they can't change it now, so work around it here.
https://bugzilla.gnome.org/show_bug.cgi?id=550616
https://bugzilla.gnome.org/show_bug.cgi?id=629306
|
|
|
|
|
|
|
|
|
|
|
|
| |
It was a stupid abstraction split, we only support GObject.
* Clean up how we handle c:type - we only set it if we've actually
seen a corresponding structure.
* Add a warning if we don't see the structure typedef for an
interface, since that's pretty bogus. (And fix regress.h to have
one)
* Rename the "type_name" attribute internally to "gtype_name"
for clarity.
|
| |
|