[Sugar-devel] SL Bug #2063
dfarning at gmail.com
Wed Oct 13 16:03:02 EDT 2010
On Wed, Oct 13, 2010 at 2:50 PM, Mukul Gupta <mukul at seeta.in> wrote:
> Wish to have your feedback on the design aspect of the ticket 2063 (Sugar
> should bring up an alert when an unhandled Python exception occurs) - please
> find the git diff attached below. This is an attempt to display an alert
> when an unhandled Python exception occurs in the journal. Unfortunately,
> when the exception takes place in journalactivity.py , I am neither unable
> to notice the Journal Icon (it disappears),
> diff --git a/journalactivity.py b/journalactivity.py
> index 44cc018..36a2e2e 100644
> --- a/journalactivity.py
> +++ b/journalactivity.py
> @@ -358,8 +358,20 @@ class JournalActivity(Window):
> + def uncaught_exception_alert(self):
> + alert = ErrorAlert(title="Operation could not be performed",
> msg="Please check the logviewer activity for details ")
> + alert.connect('response', self.__alert_response_cb)
> + self.add_alert(alert)
> + alert.show()
> _journal = None
> +def _alert_excepthook(exc_type, exc_value, traceback):
> + logging.exception('Unhandled Python exception: %s', repr((exc_type,
> exc_value, traceback)))
> + _journal.uncaught_exception_alert()
> +sys.excepthook = _alert_excepthook
> def get_journal():
> global _journal
> if _journal is None:
> I wish to request you to please review the code and suggest desired changes,
> if any.
> Moreover, I have two important questions regarding the bug.
> 1. To catch all unhandled python exceptions in sugar, where exactly should
> we be looking forward to be the venue for adding the functionality?
> Adding it in journalactivity.py doesn't seem to serve all purposes. It
> has to be added somewhere which is being used all the time.
> 2. Wish if you could recommend on the GUI feature that could be used for
> displaying the alert message to the user.
> Looking forward to for your valuable suggestions,
> Mukul Gupta
Well asked question.
1. You followed the 'show me the code' principle. That shows that you
have thought through the problem far enough for a draft
2. You are asking for specif help on two specif areas. Based on the
draft code and specifc questions, it is easy for a reviewer to give
you the help.
More information about the Sugar-devel