Merge lp://staging/~thomas-voss/location-service/expose-engine-state-information into lp://staging/location-service/trunk

Proposed by Thomas Voß
Status: Merged
Approved by: Marcus Tomlinson
Approved revision: 249
Merged at revision: 252
Proposed branch: lp://staging/~thomas-voss/location-service/expose-engine-state-information
Merge into: lp://staging/location-service/trunk
Diff against target: 1022 lines (+597/-61)
19 files modified
include/location_service/com/ubuntu/location/codec.h (+45/-0)
include/location_service/com/ubuntu/location/service/interface.h (+24/-0)
include/location_service/com/ubuntu/location/service/skeleton.h (+8/-0)
include/location_service/com/ubuntu/location/service/state.h (+43/-0)
include/location_service/com/ubuntu/location/service/stub.h (+2/-0)
src/location_service/com/ubuntu/location/CMakeLists.txt (+2/-0)
src/location_service/com/ubuntu/location/engine.cpp (+19/-21)
src/location_service/com/ubuntu/location/engine.h (+4/-14)
src/location_service/com/ubuntu/location/service/daemon.cpp (+13/-0)
src/location_service/com/ubuntu/location/service/daemon.h (+3/-0)
src/location_service/com/ubuntu/location/service/implementation.cpp (+31/-6)
src/location_service/com/ubuntu/location/service/skeleton.cpp (+33/-0)
src/location_service/com/ubuntu/location/service/state.cpp (+71/-0)
src/location_service/com/ubuntu/location/service/stub.cpp (+7/-0)
src/location_service/com/ubuntu/location/state_tracking_provider.h (+162/-0)
tests/CMakeLists.txt (+1/-0)
tests/daemon_and_cli_tests.cpp (+10/-0)
tests/engine_test.cpp (+0/-20)
tests/state_tracking_provider_test.cpp (+119/-0)
To merge this branch: bzr merge lp://staging/~thomas-voss/location-service/expose-engine-state-information
Reviewer Review Type Date Requested Status
Marcus Tomlinson (community) Approve
Scott Sweeny (community) Approve
PS Jenkins bot continuous-integration Pending
Review via email: mp+295336@code.staging.launchpad.net

Commit message

Expose service::State to the bus.

Description of the change

Expose service::State to the bus.

To post a comment you must log in.
Revision history for this message
Scott Sweeny (ssweeny) wrote :

LGTM

review: Approve
Revision history for this message
Marcus Tomlinson (marcustomlinson) wrote :

The silo is currently failing due to a changeling mismatch in Yakkety (...-0ubuntu4 vs ...-0ubuntu1)

Failing that, I've built this branch here: https://launchpad.net/~unity-api-team/+archive/ubuntu/dev-build-1. However, once installed on the phone, apps that use location begin crashing.

To test, before installing this, make sure only the Apps scope is favourited (Otherwise, you'll end up with the dash stuck in a restart loop).

As soon as a scope that uses location is opened (such as Nearby or News), the dash crashes. Also, as soon as you hit the locate button in uNav, uNav crashes.

Oddly though, I've got nothing in /var/crash.

review: Needs Fixing
Revision history for this message
Marcus Tomlinson (marcustomlinson) wrote :

Hmmm, I seem to only get a PropertiesChanged signal for "State" when I disable location, no signal on enable, and no signal on active (afaict).

I'm running this on the phone:

dbus-monitor --system "interface='org.freedesktop.DBus.Properties',path=/com/ubuntu/location/Service"

I toggle the indicator switch on/off/on:

signal sender=:1.110 -> dest=(null destination) serial=559 path=/com/ubuntu/location/Service; interface=org.freedesktop.DBus.Properties; member=PropertiesChanged
   string "com.ubuntu.location.Service"
   array [
      dict entry(
         string "IsOnline"
         variant boolean true
      )
   ]
   array [
   ]
signal sender=:1.110 -> dest=(null destination) serial=561 path=/com/ubuntu/location/Service; interface=org.freedesktop.DBus.Properties; member=PropertiesChanged
   string "com.ubuntu.location.Service"
   array [
      dict entry(
         string "IsOnline"
         variant boolean false
      )
   ]
   array [
   ]
signal sender=:1.110 -> dest=(null destination) serial=562 path=/com/ubuntu/location/Service; interface=org.freedesktop.DBus.Properties; member=PropertiesChanged
   string "com.ubuntu.location.Service"
   array [
      dict entry(
         string "State"
         variant string "disabled"
      )
   ]
   array [
   ]
signal sender=:1.110 -> dest=(null destination) serial=564 path=/com/ubuntu/location/Service; interface=org.freedesktop.DBus.Properties; member=PropertiesChanged
   string "com.ubuntu.location.Service"
   array [
      dict entry(
         string "IsOnline"
         variant boolean true
      )
   ]
   array [
   ]

review: Needs Fixing
248. By Thomas Voß

Fix copy'n'paste leftover.

Revision history for this message
Marcus Tomlinson (marcustomlinson) wrote :

Just to recap where we are now: Your last change indeed fixed the "enabled" / "disabled" properties changes, thanks! We can at least rest assured that these signals will propagate through to the indicator. However, we now face an issue where we don't ever get an "active" status (even when it is clear that our position is being tracked).

review: Needs Fixing
249. By Thomas Voß

Introduce a StateTrackingProvider enabling the engine to track enabled/active state.

Revision history for this message
Marcus Tomlinson (marcustomlinson) wrote :

This really is looking good now, thanks!

So one last concern is the silo's current build status: "Failed to build (location-service/vivid, location-service/yakkety)."

A few builds are failing, not sure which are expected: https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/landing-049/+packages

review: Needs Fixing
Revision history for this message
Marcus Tomlinson (marcustomlinson) wrote :

Awesome, Good to go here. Thanks Thomas!

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
The diff is not available at this time. You can reload the page or download it.

Subscribers

People subscribed via source and target branches