| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
This reverts commit b1c8f70fa9b148b5fed77a6a1cacdbcf0c733601.
This was reverted on master too, see 4b421597d1885c725cbc
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These functions were deprecated in gobject-introspection 1.72
GI_CHECK_VERSION was added after gobject-introspection 1.58, and we
require 1.56.
../gi/pygi-closure.c: In function ‘_pygi_invoke_closure_free’:
../gi/pygi-closure.c:635:5: warning: ‘g_callable_info_free_closure’ is deprecated: Use 'g_callable_info_destroy_closure' instead [-Wdeprecated-declarations]
635 | g_callable_info_free_closure (invoke_closure->info,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../gi/pygi-closure.h:22,
from ../gi/pygi-closure.c:20:
/usr/include/gobject-introspection-1.0/girffi.h:106:15: note: declared here
106 | void g_callable_info_free_closure (GICallableInfo *callable_info,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../gi/pygi-closure.c: In function ‘_pygi_make_native_closure’:
../gi/pygi-closure.c:674:9: warning: ‘g_callable_info_prepare_closure’ is deprecated: Use 'g_callable_info_create_closure' instead [-Wdeprecated-declarations]
674 | g_callable_info_prepare_closure (info, &closure->cif, _pygi_closure_handle,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/gobject-introspection-1.0/girffi.h:100:15: note: declared here
100 | ffi_closure * g_callable_info_prepare_closure (GICallableInfo *callable_info,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
| |
+ python -m flake8
./examples/demo/demos/combobox.py:212:24: E275 missing whitespace after keyword
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
When the interface is being registered by PyGObject and again through
an override, the first one is being leaks, free it at this point.
We need to copy the GInterfaceInfo to set on the GType QData as we
do not own it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Up until now pycairo provided a cairo.get_include() helper which
could be used to find the required include directory matching the module,
considering various scenarios.
Starting with 3.8 this leads to problems on Windows since CPython on Windows
will no longer use PATH for the DLL lookup and expects the library user to
explicitely pass the directory where the cairo DLL can be found.
In a build environment the user has no control over this though, so we have to
find the include directory without loading/importing pycairo again.
This now uses a combination of importlib.util.find_spec() for finding the module
and importlib.metadata.distribution() for finding the package version.
Hopefully this covers all cases.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Python 3.8 no longer uses PATH for searching DLLs so we have to
add them manually.
Note that unlike PATH add_dll_directory() has no defined order,
so if there are two same DLLs in PATH we might get a random one.
This only makes sure that 'setup.py test' and 'pytest' continue working.
If you include pygobject manually you have to call os.add_dll_directory()
yourself with the location of the DLLs you ship.
|
|
|
|
|
| |
The test_gvalue_gobject_ref_counts appears to be working just fine these
days.
|
|
|
|
|
|
|
| |
PyList_GET_ITEM only returns a borrowed reference. In the unlikely event
of an error converting the key or value, the reference would be
unintentionally decremented. This could cause random failures later on
(and was indeed causing the PyPy test to fail randomly later on).
|
| |
|
|
|
|
| |
Check for required type, instead of negating invalid type.
|
| |
|
| |
|
| |
|
|
|
|
| |
Why does a g_instance_init() function only handle GObjects?
|
|
|
|
|
|
| |
In theory it should no longer be needed, but PyPy hasn't
updated this part of their implementation yet, and not initing
threads will lead to crashes due to missing GIL init.
|
|
|
|
|
| |
GObject Introspection renamed its default development branch to
"main".
|
| |
|
| |
|
|
|
|
| |
It's not used in GTK 4.
|
|
|
|
| |
Those methods require a Gdk.ContentFormats object.
|
|
|
|
|
|
| |
If it triggers it creates a blocking GUI dialog without any helpful output.
I can't reproduce the cause on my local machine, just on the CI server, so
jsut disable this for now.
|
|
|
|
|
| |
There are some glib deprecations that need fixing, but let's get
CI green again first.
|
|
|
|
|
|
| |
If gobject-introspection adds a new scope that we do not handle, we
should definitely not error out. Printing out a critical warning and
asking to file an issue should be enough.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On Python 3.10, the code raised an ImportWarning:
ImportWarning: DynamicImporter.find_spec() not found; falling back to find_module()
See https://docs.python.org/3.10/whatsnew/3.10.html#deprecated
> Starting in this release, there will be a concerted effort to begin cleaning
> up old import semantics that were kept for Python 2.7 compatibility.
> Specifically, find_loader()/find_module() (superseded by find_spec()),
> load_module() (superseded by exec_module()), module_repr()
> (which the import system takes care of for you),
> the __package__ attribute (superseded by __spec__.parent),
> the __loader__ attribute (superseded by __spec__.loader),
> and the __cached__ attribute (superseded by __spec__.cached)
> will slowly be removed (as well as other classes and methods in importlib).
> ImportWarning and/or DeprecationWarning will be raised as appropriate to help
> identify code which needs updating during this transition.
Fixes https://gitlab.gnome.org/GNOME/pygobject/-/issues/473
|
|
|
|
|
|
|
|
| |
It got renamed in gtk 4.1.0, see https://gitlab.gnome.org/GNOME/gtk/-/commit/a1216599ff6b39bca3e936fbf
To avoid an API break and make porting easier provide both versions for
all users.
Fixes #467
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Found by Coverity.
https://bugzilla.redhat.com/show_bug.cgi?id=1938851
|
|
|
|
|
|
| |
Found by Coverity.
https://bugzilla.redhat.com/show_bug.cgi?id=1938851
|
|
|
|
|
|
|
|
|
| |
Use the depth= argument from Meson 0.52 to limit the clone depth of
subprojects to 1. This should make the CI images a little smaller, and
reduce the bandwidth required to build them (although that’s not so
important because it only happens once every few months).
Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
|
|
|
|
|
|
|
|
| |
GLib upstream has renamed its `master` branch to `main`.
See https://gitlab.gnome.org/GNOME/glib/-/issues/2348.
Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
|
| |
|
| |
|
|
|
|
| |
Examples derived from tests/test_gtk_template.py.
|
|
|
|
|
|
|
|
|
|
| |
Up until now this raised an exception "This method is currently unsupported.".
With Gtk.Widget.destroy() gone in gtk4 and that method often being used to remove
references to other objects and breaking cycles this is the next best thing
on a lower level and should make porting a bit easier.
Fixes #470
|
|
|
|
|
| |
The meson_options.txt file uses the "feature" option which was
introduced in 0.47.0.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
In a4880dbc4575fadc0e3 a special case for partial() was added to handle gtk4 template
callbacks. This in turn broken normal usage of partial objects.
To work around that add a special marker in the gtk template code for now until
we find a better fix.
Also adds a test so this doesn't happen again.
Fixes #464
|
|
|
|
|
|
|
| |
Since 2.68 Gio.File.new_for_path("") returns a GDummyFile instead of
a GLocalFile. We don't really care since we just want to test that there
is a name despite the type not being in the gir, so just pass a potentially
valid path instead.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
GTK4 removed the Gtk.Container interface. All GTK4 widgets are now
iterable.
|