| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
We've always had a hard dependency on libffi headers.
Commit 5798f94b6a727b93 added a direct module dependency on libffi
instead of indirect via GI. Remove the option to build without libffi.
|
|
|
|
|
|
|
|
|
|
| |
Use consistent doc string quotations (three double quotes).
Update usage of GObject.GObject in docs to GObject.Object.
Use reStructuredText markup for parameter annotations, instance variables,
admonitions, and code examples.
This allows for better Sphinx documentation generation for the project.
Preliminary style guide:
https://wiki.gnome.org/Projects/PyGObject/StyleGuide
|
|
|
|
|
|
| |
Add quotation marks around names of deprecated positional arguments.
This makes the message clearer in stating what has been deprecated
in cases when only a single argument is displayed.
|
|
|
|
|
|
| |
Skip attempts at generating a doc string for GObject meta-class bases
since they do not contain an __info__ attribute.
This circumvents errors with documentation generators (Sphinx).
|
|
|
|
|
| |
Update all references to the FSF physical address
to use the web address: http://www.gnu.org/licenses
|
|
|
|
|
|
|
|
|
|
|
| |
Any (transfer full) return of a cairo type other than a path
was leaked.
Pass the transfer type PyGIArgOverrideFromGIArgumentFunc and handle
it for the cairo foreign type. For paths we can only handle
(transfer full) so throw an error for (transfer none).
https://bugzilla.gnome.org/show_bug.cgi?id=726206
|
| |
|
| |
|
|
|
|
|
| |
Use $(top_srcdir)/NEWS for pulling in news items to ensure
"make release-news" works in a vpath build environment.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Cleanup internal callable cache and state tracking by removing multiple
counting schemes for differently sized "in" and "out" argument arrays.
Use a single count based on the total number of arguments passed to C
(inclusive of instance argument and GError exception where applicable).
Size all state tracking arrays to the same size and ensure argument cache
indices always line up with these arrays. This cleans up logic which was
required by g_callable_info_invoke for splitting "in" and "out" arguments
up.
Cleanup array marshaling which can now rely on the new scheme which ensures
the "arg_values" array always points to the correct location for length
argument values.
Cache the ffi_cif struct in PyGICallableCache via GIFunctionInvoker and
related GI methods. Overall, these changes can give a performance boost of
almost 2x for simple function calls (see ticket for micro benchmarks).
https://bugzilla.gnome.org/show_bug.cgi?id=723642
|
|
|
|
|
|
| |
Move the definition of WindowWithSizeAllocOverride inside of the test
function call to so it is lazily defined. This avoids problems running tests
on systems without GTK+ installed.
|
|
|
|
| |
This allows running make check without GTK+ installed.
|
|
|
|
|
| |
Unconditional usage of regress breaks tests when PyGObject is built without
cairo.
|
|
|
|
|
|
| |
Replace gcc option of -std=c9x with c90 and add
-Werror=declaration-after-statement
This ensures we keep compatibility with msvc builds.
|
|
|
|
| |
Use g_snprintf for consistency with the rest of gobjectmodule.c
|
|
|
|
|
| |
Update various locations which use C99 single line comments to conform to
C90 style comments. Found with: make CFLAGS="-std=C90"
|
|
|
|
|
|
|
|
|
| |
Some items from pygi-enum-marshal.c were moved to pygi-basictype.c, which
included the use of the NAN and INFINITY macros/constants, so the
definitions for those need to be moved to pygi-basictype.c as well. Also
avoid defining a variable in the middle of the block.
https://bugzilla.gnome.org/show_bug.cgi?id=725122
|
|
|
|
| |
Add an explicit step to commit the NEWS changes and push prior tagging.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Add a g_type_is_a check to interface/object instance arguments in addition
to the Python IsInstance check. This loosens restrictions on overrides which
don't use gi.overrides.override() and is needed to keep API compatibility
which broke with commit:
https://git.gnome.org/browse/pygobject/commit/?id=d5925b76
https://bugzilla.gnome.org/show_bug.cgi?id=724009
|
| |
|
| |
|
|
|
|
|
|
| |
Add gi._gobject.pygobject_version which was removed with commit:
https://git.gnome.org/browse/pygobject/commit/?id=2624bd2b
This is needed for pygobject.h to function properly.
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=709700
|
|
|
|
|
|
| |
Use "pygi_arg_cache" as the prefix for arg cache memory related functions.
https://bugzilla.gnome.org/show_bug.cgi?id=709700
|
|
|
|
|
|
|
| |
Move marshaling of GValues to and from PyObjects into pygi-value.c. Make
PyGTypeMarshal struct and related functions accessible via pygtype.h.
https://bugzilla.gnome.org/show_bug.cgi?id=709700
|
|
|
|
|
|
|
|
| |
Add gi/pygi-value.h and .c files with initial contents of
_pygi_argument_from_g_value. Eventually this file will contain all code
related to GValue marshaling from various code locations in the project.
https://bugzilla.gnome.org/show_bug.cgi?id=709700
|
|
|
|
|
|
|
| |
Move enum and flags argument cache setup and marshaling fragments into
isolated file: pygi-enum-marshal.c. Remove pygi-marshal-from/to files.
https://bugzilla.gnome.org/show_bug.cgi?id=709700
|
|
|
|
|
|
|
|
|
| |
Move struct (boxed, union, gvalue, gclosure, variant, and pointer) argument
cache setup and marshaling fragments into isolated file:
pygi-struct-marshal.c.
Remove redundant and dead code related to boxed and union marshaling.
https://bugzilla.gnome.org/show_bug.cgi?id=709700
|
|
|
|
|
|
|
|
|
| |
Move GObject argument cache setup and marshaling fragments into
isolated file: pygi-object.c.
Break GIInterfaceCache creation and setup into API for interface based
argument cache usage.
https://bugzilla.gnome.org/show_bug.cgi?id=709700
|
|
|
|
|
|
|
| |
Move closure argument caching and marshaling fragments into
pygi-closure.c.
https://bugzilla.gnome.org/show_bug.cgi?id=709700
|
|
|
|
|
|
|
| |
Move GError argument caching and marshaling fragments into
isolated file: pygi-error.c.
https://bugzilla.gnome.org/show_bug.cgi?id=709700
|
|
|
|
|
|
|
| |
Move GArray argument caching and marshaling fragments into an
isolated file: pygi-array.c.
https://bugzilla.gnome.org/show_bug.cgi?id=709700
|
|
|
|
|
|
|
| |
Move GList and GSList argument caching and marshaling fragments into an
isolated file: pygi-list.c.
https://bugzilla.gnome.org/show_bug.cgi?id=709700
|
|
|
|
|
|
|
|
|
| |
Add new arg cache type specialized for arrays. This cleans up the basic
sequence cache type which does not need length and size related info. Remove
fixed length checks from GList and GSList from_py marshaling because these
will always be -1.
https://bugzilla.gnome.org/show_bug.cgi?id=709700
|
|
|
|
|
|
|
|
|
|
| |
Move all basic type arg caching and marshaling fragments into an isolated
file where most functions are made static. pygi-basictype.h exposes:
pygi_arg_basic_type_new_from_info, _pygi_marshal_from_py_basic_type, and
_pygi_marshal_to_py_basic_type which allows continued use for all marshaling
code paths.
https://bugzilla.gnome.org/show_bug.cgi?id=709700
|
|
|
|
|
|
|
|
|
|
| |
Re-organize hash table arg cache and its marshaling by moving all
related code fragments into an isolated file where most of it is made
static. pygi-hashtable.h exposes a single function:
pygi_arg_hash_table_new_from_info. This is all the caching system needs to
produce the proper bits for handling hash table marshaling.
https://bugzilla.gnome.org/show_bug.cgi?id=709700
|
|
|
|
|
|
|
|
|
|
|
| |
Move PyGIArgCache and PyGIInterfaceCache generic setup into standalone
functions: pygi_arg_base_setup and pygi_arg_interface_setup respectively.
Shift argument order and move arguments which will eventually be removed
from the signature into the tail with comment. Isolate special casing for
GI_INFO_TYPE_CALLBACK ArgCache creation to a single location in
_arg_cache_new_for_interface.
https://bugzilla.gnome.org/show_bug.cgi?id=709700
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=722899
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=722899
|
|
|
|
|
|
|
|
|
| |
Rename GIObjectMeta to GObjectMeta reverting it to its original name prior
to commit https://git.gnome.org/browse/pygobject/commit/?id=2624bd2b
That change could have been considered an API break for anyone deriving from
gi.types.GObjectMeta since it is essentially public API. Rename base meta
class to _GObjectMetaBase which was previously gi._gobject before
commit 2624bd2b (private API).
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=721646
|
|
|
|
|
|
| |
Add test showing memory problems with sub-classes of GLib.Source.
https://bugzilla.gnome.org/show_bug.cgi?id=722387
|
|
|
|
|
|
|
|
| |
Ensure we add a new reference to sub-modules added to gi._gi. This may
have caused GC errors upon exiting the Python process since a reference was
shared by sys.modules and gi._gi.
https://bugzilla.gnome.org/show_bug.cgi?id=722274
|