After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 705533 - Signal decorator does not support accumulators
Signal decorator does not support accumulators
Status: RESOLVED FIXED
Product: pygobject
Classification: Bindings
Component: gobject
unspecified
Other Linux
: Normal normal
: ---
Assigned To: Nobody's working on this now (help wanted and appreciated)
Python bindings maintainers
Depends on:
Blocks:
 
 
Reported: 2013-08-05 21:00 UTC by Simon Feltman
Modified: 2013-08-05 21:51 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Add accumulator and accu_data arguments to GObject.Signal decorator (8.49 KB, patch)
2013-08-05 21:51 UTC, Simon Feltman
committed Details | Review

Description Simon Feltman 2013-08-05 21:00:00 UTC
The GObject.Signal decorator for creating new signals on GObjects does not support accumulators. We have tests for the old style __gsignals__ dictionary attribute which test accumulators. These tests should be ported to use the decorator for testing and implementation of accumulators with the Signal decorator.

https://git.gnome.org/browse/pygobject/tree/tests/test_signal.py?id=3.9.5#n118
Comment 1 Simon Feltman 2013-08-05 21:51:16 UTC
The following fix has been pushed:
c32793d Add accumulator and accu_data arguments to GObject.Signal decorator
Comment 2 Simon Feltman 2013-08-05 21:51:19 UTC
Created attachment 250905 [details] [review]
Add accumulator and accu_data arguments to GObject.Signal decorator

Update __init__, __call__, and copy methods to accept and pass
accumulators and associated user data through them. Update
accumulator unittests to use Signal decorators for testing accumulator
pass throughs. Verified the __gsignals__ dictionary accepts None
as valid values for accumulator and accu_data so specialization
for these arguments is not necessary.