lp:~robru/friends/gschema
- Get this branch:
- bzr branch lp:~robru/friends/gschema
Branch merges
- Ken VanDine: Pending requested
-
Diff: 90 lines (+60/-2)3 files modifieddata/com.canonical.friends.gschema.xml (+54/-0)
friends/main.py (+2/-2)
setup.py (+4/-0)
Related bugs
Bug #1066139: we need to define our own gsettings schema | High | Fix Released |
Related blueprints
Branch information
Recent revisions
- 21. By Robert Bruce Park
-
Add a new gsettings schema, with a basic subset of options.
I reviewed the old gwibber gschema and identified just a few options
that we are actually using at this point (most of the other options
are holdovers from when gwibber still had it's own frontend).Also modified setup.py to install it for us.
- 20. By Robert Bruce Park
-
Fix some AccountManager methods. Fixes lp:1069509
Ok, so I reviewed this in much more depth than previously. This
commit:* Unifies the behavior of disabling and deleting accounts. Now, if
you're in UOA, and you flick an account to 'OFF', it's messages will
be removed from the model. Similarly, if you outright delete an
account, the associated messages are also deleted. Currently we do
not make any distinction between a "disabled" and a "deleted"
account. In both cases, messages are removed from the model, and no
attempts are made to redownload messages from that account, until it
is re-enabled later.* Removes the "refresh callback" from the AccountManager, because that
was stupid. It turns out, when an account is enabled, you only need
to call 'receive' on that one account, not on all of them together.
So this is a nice little efficiency win.* Updates all the tests to the new API changes.
I tested this thoroughly with friends-service.sh, using UOA to enable,
disable, delete, and recreate accounts, and it works great.The best part is, thanks to my previous work on using
Model.insert_sorted instead of Model.append, deleting and re-adding
messages to the model doesn't change the order of those messages in
the Model. - 18. By Robert Bruce Park
-
Implement Dispatcher.
SendReply, with tests. This was requested by kenvandine, who discovered that Dispatcher.Do
was inadequate for this purpose. - 16. By Robert Bruce Park
-
Fix Flickr's timestamps.
This was another case of the mocks not matching reality, so the test
suite would pass, but in reality the timestamps weren't working. So
I've updated the mocks to reflect reality, and updated the behavior to
work correctly. This is confirmed to be working with debug_live.py. - 15. By Robert Bruce Park
-
Workaround for Authentication.
login hanging, which was also causing
Dispatcher.Refresh to hang thanks to it's use of thread.join().
Authentication.login was using an extraneous GObject MainLoop for the
purposes of blocking it's thread synchronously until an async callback
got called, but that was a dain bramaged approach because not only
does it interfere with the primary mainloop, but
Signon.AuthSession. process seems to have a bug where the callback
often won't be called, causing the mainloop to block forever.I've replaced this mainloop with a while loop that calls time.sleep()
a limited number of times. The advantage here is that we have direct
control over how many times time.sleep() gets called and never have to
worry about waiting for a callback that might never come to unblock
us.This commit also makes sweeping changes to the logging infrastructure,
which were necessary to track down this bug, and generally beneficial,
so they're being included rather than reverted. Logging is now more
verbose, and makes extensive use of the "logging.getLogger( __name_ _)"
idiom for finer-grained data on which log is coming from where.
debug_live.py also received an overhaul in order to better accommodate
testing.
Branch metadata
- Branch format:
- Branch format 7
- Repository format:
- Bazaar repository format 2a (needs bzr 1.16 or later)
- Stacked on:
- lp:friends