summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Add override for GdkPixbuf.Pixbuf.new_from_data. Fixes #225pixbuf-new-from-dataChristoph Reiter2018-06-173-0/+103
| | | | | | | | | new_from_data isn't bindable (see https://bugzilla.gnome.org/show_bug.cgi?id=721497) and will result in use after free. While we could try to move people away from it and skip it in GI a github code search turns up quite a few users. This adds an override for it, wrapping GdkPixbuf.Pixbuf.new_from_bytes, and marks any usage of the callback args as deprecated.
* Update NEWSChristoph Reiter2018-05-311-0/+9
|
* gi/pygi-argument: Squash critical warning when using array as hash valuePhilip Withnall2018-05-181-0/+2
| | | | | | | | | | | | | | Using a GPtrArray as the value type of a GHashTable currently produces a warning: Unsupported type array for example when calling a function whose return type is annotated as: (transfer container) (element-type filename GPtrArray<SomeObject>) Since we don’t treat objects (GI_TYPE_TAG_INTERFACE) specially when marshalling to/from GHashTable, we shouldn’t need to treat arrays specially either. Handle the case explicitly. Signed-off-by: Philip Withnall <withnall@endlessm.com>
* docs/getting started: add "pacman -Suy" before installing packages under msys2Christoph Reiter2018-05-161-7/+8
| | | | | | pacman doesn't support installing packages without doing a system upgrade first. In case the user already has msys2 installed but not used in a while just doing the install might not work.
* git commit -m "version bump"Christoph Reiter2018-05-162-2/+2
|
* release3.29.2Christoph Reiter2018-05-161-0/+40
|
* meson: increase the test timeoutChristoph Reiter2018-05-131-1/+2
| | | | we run the whole test suite as one test
* ci/meson: build with pypy and run testsChristoph Reiter2018-05-131-8/+11
| | | | pypy+pycairo doesn't work because it doesn't install a .pc file with it.
* README: mention that we support PyPyChristoph Reiter2018-05-131-3/+4
|
* README: remove coverage badge, gitlab can now show them on the project pageChristoph Reiter2018-05-131-5/+0
|
* ossig: Don't leak the callbacks in case the event loops are not stopped ↵sigint-fallback-leakChristoph Reiter2018-05-111-6/+9
| | | | | | | | | | through SIGINT. Fixes #219 We didn't remove them if the event loops returned normally. This also fixes a small race where a SIGINT gets ignored right after the yield check and before the old handler is reinstated. Check after the signal handler is switched back instead. This resulted in GLib.MainLoop and Gio.Aplication instances leaking.
* meson: remove subprojects we don't useChristoph Reiter2018-05-063-10/+0
|
* meson: don't autodetect pycairo support, force it and add an option to ↵Christoph Reiter2018-05-065-8/+14
| | | | | | disable it If you don't want pycairo support pass "-Dpycairo=false"
* docs: Add pycairo requires for development setupKai Willadsen2018-05-051-0/+1
|
* Merge branch 'gerror-docs' into 'master'Christoph Reiter2018-05-042-0/+49
|\ | | | | | | | | docs: Add introduction to handling GLib.Error See merge request GNOME/pygobject!69
| * docs: Fix quark_from_string/to_string confusionKai Willadsen2018-05-051-1/+1
| |
| * docs: Fix references in new error handling docsKai Willadsen2018-05-041-9/+9
| |
| * docs: Add introduction to handling GLib.ErrorKai Willadsen2018-05-042-0/+49
| |
* | Don't crash on multiple calls to GObject.Value.__del__. See !66Christoph Reiter2018-05-043-2/+16
| | | | | | | | | | | | | | | | | | After chaining up accessing anything on the instance will crash like accessing self.g_type in this case. Guard against that by exposing if the wrapped boxed is still there. Ideally we shouldn't invalidate the object in __del__, but various things depend on it atm. For another time..
* | valgrind: add some wildcards to function namesChristoph Reiter2018-05-041-1/+1
| | | | | | | | | | Debian seems to have started using LTO for Python and some symbol names have a ".lto_priv" suffix now.
* | gi/pygi-value: Don't wrap GValue in GValue when creating GValueArrayStian Selnes2018-05-043-13/+74
|/ | | | | | | | | | | | | | | | | | | | If a GValueArray is created from a list of GValues, it should not wrap these GValues in a second layer of GValues before appending to the array. The end result should be a GValueArray of GValues, not a GValueArray of GValues holding another GValue (unless the user explicitly creates such a value). With this patch the behavior is now consistent when creating a GValueArray and appending GValues directly, and creating a GValueArray within a GValue based on a list of GValues. For instance, to create a GValueArray of G_TYPE_UINT the user must create GValues manually and create a GValueArray from these. The result should be a GValueArray of GValues that hold G_TYPE_UINT, not a GValueArray that contain GValues that hold a GValue that holds G_TYPE_UINT. See !66
* importer: raise ImportError in load_module() and not find_module(). See #213Christoph Reiter2018-05-031-9/+9
| | | | | | | | | find_module() should either return None or a loader, but we raised ImportError there in case we already knew that the namespace was missing. Move that check to load_module() instead. While there shouldn't be any functional difference, raising in find_module() under Python 3 resulted in a chained exception with an unrelated error message printed first.
* Add ActionMap and ActionMap.add_action_entries() to overrides. Fixes #29yangfl2018-05-032-0/+112
| | | | | | | | | | Adds ActionMap and ActionMap.add_action_entries() to allow for adding multiple actions as a list of tuples in which each element defines a single action like the GActionEntry C struct. https://bugzilla.gnome.org/show_bug.cgi?id=678655 Original Author: Micah Carrick <micah@quixotix.com>
* build: disable new cast-function-type warnings with gcc8Christoph Reiter2018-05-032-0/+2
| | | | | We have to assign PyCFunctionWithKeywords functions to PyCFunction fields everywhere, so not much we can do. Ideas welcome.
* ci: fix doc build not being runChristoph Reiter2018-05-031-4/+4
| | | | | We check the exact version number but that has changed with the last update. Check the major/minor + impl instead.
* ci: remove pypy workaround where pip crashes with MALLOC_CHECK_Christoph Reiter2018-05-031-5/+0
| | | | This is now fixed in PyPy and pip
* meson: install _gtktemplate.pyChristoph Reiter2018-05-031-1/+3
|
* meson: build and install the cairo extensionChristoph Reiter2018-05-031-2/+4
|
* meson: dedup PY_SSIZE_T_CLEAN usageChristoph Reiter2018-05-033-3/+5
|
* meson: HAVE_CONFIG_H no longer existsChristoph Reiter2018-05-031-2/+2
|
* meson: use the same compiler flags as with distutilsChristoph Reiter2018-05-033-8/+59
|
* meson: don't hardcode includedir/datadirChristoph Reiter2018-05-031-2/+2
| | | | as suggested by Patrick in !62
* meson: dont pass the default required value everywhereChristoph Reiter2018-05-031-7/+7
| | | | as suggested by Patrick in !62
* ci: build with mesonChristoph Reiter2018-05-031-0/+10
|
* ci: add meson deps to the docker imageChristoph Reiter2018-05-031-0/+4
|
* meson: update the version and required meson version. Fixes #212Christoph Reiter2018-05-021-2/+2
|
* ci: update pypy and py2.7Christoph Reiter2018-05-013-8/+8
|
* pygobject: Release the GIL when emitting signalJohn Bassett2018-04-301-0/+2
| | | | | | Release the GIL when emitting signals to avoid potential deadlocks if the signal handling needs to call back into python from another C thread.
* pygi-info: use PYGLIB_PyBytes_AsString instead of checkingHavard Graff2018-04-301-6/+1
|
* conftest: add absolute_import and update mesonHavard Graff2018-04-302-1/+4
| | | | See !66
* ci: move some jobs to manualChristoph Reiter2018-04-301-0/+4
| | | | | gitlab likes to ban users who trigger too many jobs, so let's reduce the default amount a bit.
* ci: update image to bionic; drop Python 3.4ci-bionicChristoph Reiter2018-04-294-16/+5
| | | | We require Ubuntu 16.04+ which has 3.5
* Add tests for pyg_gil_state_ensure/pyg_gil_state_releaseChristoph Reiter2018-04-242-0/+14
|
* Add tests for pyg_constant_strip_prefix()Christoph Reiter2018-04-242-0/+23
|
* Add tests for GObject.list_propertiesChristoph Reiter2018-04-241-1/+43
|
* Add pygi_gschar_from_py/pygi_guchar_from_py; add testsChristoph Reiter2018-04-234-45/+111
| | | | | | | | | | | | The gvalue code had special code for handling G_TYPE_CHAR/UCHAR allowing as input roughly what u/int8 allows plus unicode. Since GI maps g(u)char to u/int8 it's a good idea that both support the same input ranges for numbers/bytes so that there is no difference between gtype/GI. pygi_gschar_from_py is a superset of gint8 + unicode. pygi_guchar_from_py is a superset of guint8 + unicode.
* setup.py: dedup some of the compiler input argsChristoph Reiter2018-04-231-4/+9
| | | | reduces the output at build time a bit
* ci: run tests under pypy but allow failures for startersChristoph Reiter2018-04-222-5/+2
|
* pypy: skip various refcounting related tests and add some gc.collect where ↵Christoph Reiter2018-04-222-12/+43
| | | | it helps
* pypy: pass a warning subclass to PyErr_Warn and not an exception, pypy ↵Christoph Reiter2018-04-223-4/+4
| | | | | | does't support that. TypeError is wrong there anyway.