Updating scope from store removes it from favorites

Bug #1446499 reported by Alan Pope 🍺🐧🐱 🦄
34
This bug affects 6 people
Affects Status Importance Assigned to Milestone
Canonical System Image
Fix Released
High
Paweł Stołowski
Today Scope
Invalid
Undecided
Unassigned
unity-scope-click (Ubuntu)
Invalid
Undecided
Unassigned
unity-scopes-api (Ubuntu)
Fix Released
Undecided
Paweł Stołowski
unity-scopes-api (Ubuntu RTM)
Fix Released
Undecided
Unassigned
unity-scopes-shell (Ubuntu)
Fix Released
Undecided
Unassigned
unity-scopes-shell (Ubuntu RTM)
Fix Released
Undecided
Paweł Stołowski
unity8 (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

Using retail bq e4.5
Saw an update for Today scope in the store today, so updated.
After the Today scope was updated, I can no longer see the Today scope on my phone.

* No today scope running
* No today scope listed from bottom edge.

Tags: hotfix

Related branches

Revision history for this message
Alan Pope 🍺🐧🐱 🦄 (popey) wrote :
Revision history for this message
Alan Pope 🍺🐧🐱 🦄 (popey) wrote :
Revision history for this message
Alan Pope 🍺🐧🐱 🦄 (popey) wrote :
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in unity-scope-click (Ubuntu):
status: New → Confirmed
Changed in unity8 (Ubuntu):
status: New → Confirmed
Revision history for this message
Timo Jyrinki (timo-jyrinki) wrote :

Nothing after reboot either.

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in unity-scopes-shell (Ubuntu):
status: New → Confirmed
Revision history for this message
Alan Pope 🍺🐧🐱 🦄 (popey) wrote :

Rebooted, and had to re-favourite the scope from the bottom edge then move it back to position 1 in the list.

Revision history for this message
Alan Pope 🍺🐧🐱 🦄 (popey) wrote :

I have unpublished the app in the store for now, some hundreds of users have updated already. This should prevent more people hitting this for now.

Michał Sawicz (saviq)
Changed in unity-scope-click (Ubuntu):
status: Confirmed → Invalid
Changed in unity8 (Ubuntu):
status: Confirmed → Opinion
Revision history for this message
Gabriele (gabrielemartelli) wrote :

Alan , I have installed the new version and everything works perfectly (on Aquaris E4.5 Ubuntu Edition ) .
Just re-enter the scope from the management . It should be noted that the icon of the scope " Today " is not similar to "calendar " or "day info".
Must choose well among " scopes " --> Today

Gabriele

Revision history for this message
Michał Sawicz (saviq) wrote :

AFAICT during the update the favourites list "loses" the scope and removes it from favourites, seeing it as invalid/non-existent.

Revision history for this message
Paweł Stołowski (stolowski) wrote :

Yes, as Saviq says. Apparently during update the scope is removed and then installed again. When scope .ini file disappears from the filesystem, it gets disappears from scope registry and therefore is removed from favorited scopes. Fixing/changing this will be tricky.

Revision history for this message
Paweł Stołowski (stolowski) wrote :

Looks like it's two problems actually: manage list didn't refresh until reboot when scope was updated, and the scope needed to be favorited again because update un-favorites it.

summary: - Updating today scope from store kills scope, doesn't restart
+ Updating scope from store removes running scope, doesn't restart
Revision history for this message
Victor Tuson Palau (vtuson) wrote : Re: Updating scope from store removes running scope, doesn't restart

This issue affects any scopes that the click version is upgraded and has previously being pavourited, not just today scope. Marking it invalid for the today scope

Changed in today-scope:
status: New → Invalid
Michał Sawicz (saviq)
Changed in unity8 (Ubuntu):
status: Opinion → Invalid
summary: - Updating scope from store removes running scope, doesn't restart
+ Updating scope from store removes it from favorites
Revision history for this message
Michał Sawicz (saviq) wrote :

@Paweł, as for fixing it... the favourites list could just keep the scope in place even if removed, simply ignoring it. I believe that's what happens in the launcher, for example.

Changed in unity-scopes-shell (Ubuntu):
assignee: nobody → Pawel Stolowski (stolowski)
Changed in unity-scopes-shell (Ubuntu):
status: Confirmed → In Progress
Revision history for this message
Paweł Stołowski (stolowski) wrote :

Currently considering and testing two fixes for this issue, therefore two branches linked but only one will eventually land. Both based on the idea of delaying the notification about scope registry changes (shell plugin does this on receiver end, scopes api does this on the sender side). I've also implemented the idea of not updating the list of favorited scopes, but it turned out to be most complex and risky, because the implications of this change bubbled up in different areas of the plugin.

Revision history for this message
Leo Arias (elopio) wrote :

How can we prevent this from regressing?
Would it be enough to write unit tests for the new code with the fix, or should we write a higher level test that installs a scope, favorites it and then updates it?

Changed in unity-scopes-api (Ubuntu):
status: New → In Progress
Revision history for this message
Paweł Stołowski (stolowski) wrote :

@Leo there's no way for unit-test it in the unity-api (which is the fix we chose out of the two I considered). Scopes registry from scopes-api knows nothing about favorites etc. This needs to be some sort of high level integration test as you described.

Changed in unity-scopes-api (Ubuntu):
assignee: nobody → Pawel Stolowski (stolowski)
Changed in unity-scopes-shell (Ubuntu):
status: In Progress → Invalid
Changed in unity-scopes-shell (Ubuntu):
assignee: Pawel Stolowski (stolowski) → nobody
Changed in unity-scopes-api (Ubuntu):
status: In Progress → Fix Committed
Changed in canonical-devices-system-image:
assignee: nobody → Pawel Stolowski (stolowski)
importance: Undecided → High
milestone: none → ww18-2015
status: New → In Progress
tags: added: hotfix
Changed in canonical-devices-system-image:
milestone: ww18-2015 → ww19-ota
Revision history for this message
Paweł Stołowski (stolowski) wrote :

Backporting the fix in unity-scopes-api in RTM turned out to be too complicated and risky, therefore I implemented the workaround in scopes shell plugin (just for RTM).

Changed in unity-scopes-shell (Ubuntu RTM):
assignee: nobody → Pawel Stolowski (stolowski)
Changed in unity-scopes-api (Ubuntu RTM):
status: New → Invalid
Changed in unity-scopes-shell (Ubuntu RTM):
status: New → In Progress
Changed in canonical-devices-system-image:
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package unity-scopes-shell - 0.5.4+15.04.20150430.1~rtm-0ubuntu1

---------------
unity-scopes-shell (0.5.4+15.04.20150430.1~rtm-0ubuntu1) 14.09; urgency=medium

  [ CI Train Bot ]
  * New rebuild forced.

  [ Pawel Stolowski ]
  * Delay change notifications received from scope registry. (LP:
    #1446499)

 -- CI Train Bot <email address hidden> Thu, 30 Apr 2015 15:36:00 +0000

Changed in unity-scopes-shell (Ubuntu RTM):
status: In Progress → Fix Released
Changed in canonical-devices-system-image:
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (35.3 KiB)

This bug was fixed in the package unity-scopes-api - 0.6.17+15.04.20150423.2-0ubuntu1

---------------
unity-scopes-api (0.6.17+15.04.20150423.2-0ubuntu1) vivid; urgency=medium

  [ Marcus Tomlinson ]
  * Added is_account_login_result() method to Result class.

  [ Pawel Stolowski ]
  * Fix LP: #1446499.

  [ CI Train Bot ]
  * debian/libunity-scopes3.symbols: update to released version.
  * New rebuild forced.

unity-scopes-api (0.6.16+15.04.20150410.3-0ubuntu1) vivid; urgency=medium

  [ Pawel Stolowski ]
  * Added support for attaching arbitrary data to CannedQuery.
  * Added _ENABLE_QT_EXPERIMENTAL_ guard to qt headers until that library
    is finalized. Further changes in the unity::scopes::qt namespace are
    expected at this point.
  * Added DateTimePickerFilter into experimental namespace.

  [ CI Train Bot ]
  * debian/libunity-scopes-qt.symbols: update to released version.
  * debian/libunity-scopes3.symbols: update to released version.
  * New rebuild forced.

unity-scopes-api (0.6.15+15.04.20150407-0ubuntu1) vivid; urgency=medium

  [ Marcus Tomlinson ]
  * Renamed "child_scopes()" to "find_child_scopes()"
  * Renamed "child_scopes_ordered()" to "child_scopes()"
  * Added is_aggregated() and aggregated_keywords() to SearchMetaData

  [ CI Train Bot ]
  * debian/libunity-scopes3.symbols: update to released version.
  * New rebuild forced.

unity-scopes-api (0.6.14+15.04.20150223-0ubuntu1) vivid; urgency=medium

  [ Pawel Stolowski ]
  * Set CrashDB attribute to point at savilerow project for click scopes
    which has 'Canonical' as the maintainer.

  [ Michi Henning ]
  * Fixed compilation problems when compiling with boost 1.56 and 1.57.
  * Fixed a bunch of copyright headers.

unity-scopes-api (0.6.14+15.04.20150213-0ubuntu1) vivid; urgency=medium

  [ Michi Henning ]
  * Added push_surfacing_results_from_cache() to Reply proxy. This allows
    a scope to reply the results of the last succesful surfacing query
    from an on-disk cache. This is useful to prevent the user being
    presented with an empty screen when swiping to the scope while the
    device has no network access, or the scope's data source is off-line.

    Note: This is change is ABI compatible with gcc and clang despite
          the addition a new virtual function.
  * Fixed sporadic failure in JsonAsyncReader test caused by slow DNS.
    Improved tests to report exception details if an exception other
    than the expected one is thrown.

  [ CI Train Bot ]
  * debian/libunity-scopes3.symbols: auto-update to released version

unity-scopes-api (0.6.13+15.04.20150211-0ubuntu1) vivid; urgency=medium

  [ Ubuntu daily release ]
  * debian/libunity-scopes3.symbols: auto-update to released version

  [ Michi Henning ]
  * Fixed a bunch of warnings caused by QVariant headers. Restored
    spelling of Thomas Voß's surname. Fixed test failure in
    RuntimeConfig caused by a change in the glib .ini parser from Utopic
    to Vidid. This allows the test to pass on both Utopic and Vivid.
    Fixed a few clang warnings.
  * Reduced log history to 2 MB per scope.
  * Fixed core dump in the run time when a scope threw an exception from
    PreviewQueryBase::run().
  * A...

Changed in unity-scopes-api (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Łukasz Zemczak (sil2100) wrote :

This bug was fixed in the package unity-scopes-api 0.6.18+15.04.20150609.1-0ubuntu1 in https://launchpad.net/~ci-train-ppa-service/+archive/ubuntu/stable-phone-overlay

---------------

unity-scopes-api (0.6.18+15.04.20150609.1-0ubuntu1) vivid; urgency=medium

  [ Marcus Tomlinson ]
  * Allow child_scopes() and set_child_scopes() methods more time to
    execute as they read from and write to disk.
  * Added ChildScopes.Timeout configuration parameter to Zmq.ini

  [ Pawel Stolowski ]
  * Added API for activation of in-card result actions.

  [ CI Train Bot ]
  * debian/libunity-scopes3.symbols: update to released version.
  * New rebuild forced.

unity-scopes-api (0.6.17+15.10.20150526-0ubuntu1) wily; urgency=medium

  [ CI Train Bot ]
  * debian/libunity-scopes3.symbols: update to released version.

  [ Pawel Stolowski ]
  * Fix for over-zealous loop detection. A loop is now detected only if
    a query loops back with the exact same details, that is, query
    string, department, filter state, user data, and metadata must all
    be the same. Fixes: https://bugs.launchpad.net/bugs/1457698 (cherry-
    picked from devel). (LP: #1457698)

unity-scopes-api (0.6.17+15.04.20150423.2-0ubuntu1) vivid; urgency=medium

  [ Marcus Tomlinson ]
  * Added is_account_login_result() method to Result class.

  [ Pawel Stolowski ]
  * Fix LP: #1446499.

  [ CI Train Bot ]
  * debian/libunity-scopes3.symbols: update to released version.
  * New rebuild forced.

 -- CI Train Bot <email address hidden> Tue, 09 Jun 2015 12:21:21 +0000

Changed in unity-scopes-api (Ubuntu RTM):
status: Invalid → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package unity-scopes-shell - 0.5.4+15.10.20150707-0ubuntu1

---------------
unity-scopes-shell (0.5.4+15.10.20150707-0ubuntu1) wily; urgency=medium

  [ CI Train Bot ]
  * Resync trunk.

  [ Marcus Tomlinson ]
  * Clean out redundant pkg_check_modules calls in multiple
    CMakeLists.txt files

  [ Pawel Stolowski ]
  * Cherry-picked the workaround for delayed processing of scoperegistry
    changes from RTM. (LP: #1446499)
  * Fix for test failure caused by changes in jsoncpp formatting of
    floats. Use regular expressions to matched error strings when
    testing for expected failures.

 -- CI Train Bot <email address hidden> Tue, 07 Jul 2015 04:20:10 +0000

Changed in unity-scopes-shell (Ubuntu):
status: Invalid → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.