Under Review

SDK 8.4.0 Code does not get updated after pushing a new update to the store

After compiling with 8.4.0 on Linux or Mac (I haven't tested on Windows) and pushing to the store, old code stays active and doesn't seem to be rolled out. However, changed settings ARE rolled out.
Compiling it again with 8.3.0 and pushing it to the store does work as expected


Expected behavior:
Code changes and changes in the settings files will be deployed after pushing it to the store

What happens instead:
Only settings are updated, the old code stays as is

To reproduce:
- Create a basic watchface and make it display "Hello world", add a setting "Hello World" compile with 8.3.0 and push to the store.
- Change "Hello world" to "Hello universe"
- Compile with 8.4.0 and push to the store again
- Wait like 30 minutes for it to be rolled out, Load on your watch, restart the watch to make sure it gets loaded, and it will display "Hello World" on the watchface, but "Hello universe" in the settings.

- Compile again with 8.3.0 and push it to the store, load it on your watch, restart your watch (...) and now it works as expected

- It makes no difference if the app was installed on the watch before or if it is a fresh install.


Workaround:

Compile with 8.3.0 and it works as expected.

  • We "downgraded" our apps that had been uploaded with 8.4.0 back to 8.3.0 (a total of 4). After the upload, all is good. The apps show up in the ConnectIQ app, again. Due to this issue we lost 3.5 days of sales on one of our best-selling apps.....

  • Apps updated with 8.4.0 can't be found on the store anymore if a search is done on a smartphone. Vanished from the Top... lists, too. Oh boy!

  • b1 was happening before as well. Users see the new settings, but needed to restart their watch to load in the new code.

    It seems A1 is the case. I updated a test watchface about 28 hours ago. The settings changed instantly, but 24 hours later the code still wasnt updated. Even a fresh install on a fresh device still showed the old code, so its not like it was before, where users that had the old version installed kept seeing the old code until the watch was restarted (indicating the issue on the watch itself). A fresh install indicates the code isn't being updated in the store itself.

  • I wonder if what you experienced are 2 bugs new bugs or one old and one new:

    a.1. new: code compiled with 8.4.0 isn't published
    a.2. new: but the setting is published

    or

    b.1. old: updating sometimes takes time, and sometimes the phone Connect IQ app seems to be out of sync on what version is actually installed on the device
    b.2. new: but settings are updated immediately

    So from what I know about settings, they are using some server rendered file, so it looks that there might be a new bug that this part is updated (already uses the new build) but for some reason the code part (downloading the prg file) is still using the old. This is obviously a bug that needs to be fixed ASAP, as this is not supposed to happen (if for any reason, rejection or even just some queue in the server growing to long and slow the processing of the code part is not finished, the settings are not supposed to be updated either or in other words the switch between versions needs to be atomic in terms of different parts of the iq file)