Repository navigation
Release years and isVision
New:
Device.yearandMac.year: the year the model was released, e.g.Device(modelIdentifier: "iPhone18,1").yearis 2025. Every device and Mac in the data has one; an unknown device givesnil. For a Mac identifier Apple reused across models, it's the newest model's year, matching its name. Xcode names the 2020 and 2022 Apple Watch SE alike, so the year is what tells them apart.Device.isVision, alongsideisPhonethroughisMac.
Data pipeline:
Scripts/update-devices.pygives a new device the current year, since Xcode lists devices around their announcement; correct it by hand if a device ships the next year.Scripts/update-macs.pystores each Mac's year, taken from its name.- The tests fail until every device and Mac has a year.