This past Friday evening, pre-release software for an unreleased Apple product was inexplicably made available to the public. It wasn’t a public beta release or even a developer beta, both of which are common for Apple’s iOS platform. Instead, a special HomePod build of iOS 11 that is currently being tested internally at Apple was posted on a public server. Led by well-known iOS developer Steve Troughton-Smith, coders dove in and unearthed a gold mine of information about the iPhone 8. Now, a new report likely sheds light on how this huge leak happened.
Most iPhone leaks are imported from China, but the biggest iPhone 8 leak of the year was home-grown. We’re used to seeing spy shots on Weibo and schematics leak from Foxconn, and that’s typically how almost all of the early information we get about iPhones is exposed. But this time around, a snafu at Apple is responsible for spilling a ton of details about iPhone.
Some of the details exposed in this latest leak include the iPhone 8’s design, its codename, its display resolution, the presence of wireless charging, and the fact that Touch ID will not be embedded in the phone’s display. Nothing big was actually new information, of course, but this is the first time all of these rumors have been confirmed.
So, how on Earth did this happen? Apple blog Daring Fireball is known for getting inside information on occasion, and on Tuesday evening it posted what is almost certainly an accurate explanation of what happened.
“My understanding is that Apple is (or at least was) on the cusp of a widespread deployment of prototype HomePods to employees,” Daring Fireball’s John Gruber wrote. “Someone prepared an over-the-air software update and because it was intended to be distributed only to Apple employees, the OS was compiled without all the usual flags set to omit code that pertains to unreleased hardware. (Kind of makes sense, insofar as HomePod itself is unreleased hardware.) Building the OS without those flags set may not have been a mistake. But distributing it via a world-readable server was.”
This is an entirely logical explanation of the events that led to this huge leak. Apple engineers have the ability to omit code when compiling developer and public beta builds of iOS, thus allowing for their release without the inclusion of any sensitive code. These measures wouldn’t be taken for an internal build, which is fine since internal builds aren’t intended for release outside of Apple.