Post

Added a pull request to fastlane to support new screen sizes

I have an app that hadn’t been updated for five years, but in September I received a kind review from a user, which asks for deleting feature of search results.

review

Appreciating the review, I decided to make a small update and release it. However, when I tried to upload screenshots through fastlane, it failed with errors.

1
[18:11:51]: 🚫 Error: ./fastlane/screenshots/en-US/iPad Pro 13-inch (M4)-1-FillingPAOFieldsOfProductViewController.png - Invalid screen size (Actual size is 2064x2752. See the specifications to fix https://help.apple.com/app-store-connect/#/devd274dd925)

But according to Apple’s documentation, the sizes in errors were valid. I found that fastlane hadn’t been updated with new devices for about four years, and there were already a few open pull requests related to this. Referring to those, I wrote some code myself and tried again.

1
2
3
[22:38:33]: fastlane finished with errors
bundler: failed to load command: fastlane (/Users/[...]/.rbenv/versions/3.1.2/lib/ruby/gems/3.1.0/bin/fastlane)
Spaceship::AppStoreScreenshotError: [!] en-US

Then even stranger errors appeared. The cause turned out to be that the App Store Connect API still does not support 6.9’’ and 6.3’’ device sizes.

I was shocked for two reasons:

  1. How could App Store Connect API not support these devices for years?
  2. How could people submit pull requests without actually running the code and verifying that previews upload correctly?

For the first one, I realized that not many developers automate screenshot uploads, and using 6.5’’ screenshots works fine anyway. I submitted feedback to Apple. For second, I’m still not sure—maybe I’m missing something.

Anyway, adding new sizes to the existing device types worked fine. So I submitted a pull request

Through this, I learned that fastlane isn’t really a black box. A Gemfile is just like a Podfile or SPM—it’s all code! You can even point it to your local repository like this:

1
gem "fastlane", path: '/Users/[...]/Documents/fastlane'

Opening black boxes is always fun ❤️‍🔥

This post is licensed under CC BY 4.0 by the author.