Categories: News

0.93.4 APK teardown: time zone bug fixed, multiple code reverts and branching

Trainers,

Pokemon GO is now being updated to version 0.93.4, which finally fixes the time zone bug present in 0.93.3. The new release also comes with a metric ton of code changes, however, the majority of those are reverts of what was done in 0.93.3’s code branch. We’ll talk about code branches more on the end of the article.

Time Zone bug fixed

The 0.93.3 APK broke time display and rendering on the majority of devices, with Pokemon GO displaying time in UTC, instead of your local time zone. Luckily, this was now addressed and the game properly renders time. We strongly encourage that you ping your local community to update, as this also influences the time on your EX Raid pass – there could be trainers missing out tomorrow’s EX raid due to this bug!

Code changes

0.93.3 had 65745 modified (added / deleted / changed) lines of code, which entailed the following:

  • Code refactoring and optimization
  • GO+ changes
  • Map rendering changes
  • Changes to underlying libraries (QR code and SQL tools)
  • Client side Pokemon spawn and despawn pooling

In 0.93.4, a fair chunk of libraries changes were reverted and there are 59000 line changes, with only 600-ish intra-line changes. Why were these library changes reverted? We’re not sure yet, they could have been too risky to revert with this fix, or maybe they could have been the culprit for the time zone issue – unlikely though.

All in all, 0.93.4 shares far more with 0.91.x family of APKs than with 0.93.x:

  • 0.93.4 vs 0.91.2 diff:  ~17000 LoC changes
  • 0.93.4 vs 0.93.3 diff:  ~59000 LoC changes

Asset changes

No significant asset changes detected.

Discussion about code branches

As we already mentioned, this update seems like a series of reverts for the 0.93.x code branch. However, that may not be necessarily correct, as we know that Niantic is hoping between various code branches for their APK releases:

  • release branch – the one we see most often, contains only verified and well tested changes, at the moment of this post it is mostly 0.91.x code
  • future release branch – the one we see from time to time, usually accompanied by a lot of changes to the infrastructure and a huge number of bugs. Currently, it seems that 0.93.x branch is the future release branch and we expect to see a “revert of revert” soon
  • develop branch – branch that contains features in active development. We observed the Quest leak in 0.91.1 and their removal in 0.91.2, not because the feature is not coming, but because Niantic switched the branch they use for APK deployments. We also know that beta testers use a version of this branch
  • feature branches – branches that serve as a staging area to develop a particular feature

The following image illustrates the common branching strategy used by almost every software development company:

Zeroghan

Antonio started the Hub in July 2016 and hasn't had much sleep since. Software developer. Discord username: Zeroghan. 26 years old.

Share
Published by
Zeroghan

Recent Posts

Floatzel Raid Guide

Floatzel is a Tier 3 Raid Boss in Pokémon GO (16082 Combat Power). Its best counters are strong Electric-types such…

14 hours ago

Uxie Heat Map

Until May 27th at 1 PM PDT, Uxie will be the Tier 5 Raid Boss in the Aisa Pacific Region.…

1 day ago

Mesprit Heat Map

Until May 27th at 1 PM PDT, Mesprit will be the Tier 5 Raid Boss in Europe, the Middle East,…

1 day ago

Azelf Heat Map

Until May 27th at 1 PM PDT, Azelf will be the Tier 5 Raid Boss in The Americas and Greenland.…

1 day ago

News Roundup: New Lures, Extraordinary Raid Week, and More!

This week's News Roundup sees a significant release of new content and events. The announcement of a Raid Week Event,…

2 days ago

Torchic Community Day Guide

Trainers! May is heating up with the start of Torchic Community Day! Below is our ever so handy CD Guide…

2 days ago