title: No exceptions from GObject properties in pygobject?
body: <p>I'm trying to do some exception handling in python3 / pygobject with a property inside one of my custom gobject classes. The code I had was something like this</p>
  
  <pre><code>try:
      label = foo.label # This is a GObject.Property
  except Exception:
      label = "fallback"
  </code></pre>
  
  <p>I had noticed that the interpreter never got around to the except block, after trying to figure out the problem I came up with this test case</p>
  
  <pre><code>from gi.repository import Gtk, GObject
  
  class foo(GObject.Object):
      @GObject.Property
      def bar(self):
          raise NotImplementedError
  
  fish = foo()
  print("Bar: ", fish.bar)
  </code></pre>
  
  <p>The output</p>
  
  <pre><code>Traceback (most recent call last):
    File "/usr/lib/python3/dist-packages/gi/_gobject/propertyhelper.py", line 403, in obj_get_property
      return prop.fget(self)
    File "test.py", line 6, in bar
      raise NotImplementedError
  NotImplementedError
  Bar: None
  </code></pre>
  
  <p>As you can see, even though there is an exception the property returns <code>None</code> and the program continues.</p>
  
  <p>I don't get it either.</p>
  
  <p>Anyone knows a workaround or a solution for this?</p>