Turtle-cli fails when building on Expo 39


we setup a build server with turtle-cli that worked fine so far, until we upgraded one app to SDK 39.
When launching a build (dev or default release channels) I get the error:


 socket: [TLSSocket],
      connection: [TLSSocket],
      _header: 'GET /@user/xxx HTTP/1.1\r\n' +
        'Accept: application/expo+json,application/json\r\n' +
        'Exponent-SDK-Version: 38.0.0\r\n' +
        'Exponent-Platform: android\r\n' +
        'Expo-Release-Channel: dev\r\n' +
        'User-Agent: axios/0.19.0\r\n' +
        'Host: exp.host\r\n' +
        'Connection: close\r\n' +
      _onPendingData: [Function: noopPendingOutput],


data: 'Experience "@user/xxx" for platform "android" and release channel "dev" is not compatible with the sdk versions supported by this version of the Expo client. Please update your version of Expo.'

This is really strange as:
The project is setup properly and the build runs fine if done with expo service (build:android)
Turtle-cli and expo-cli are updated (Turtle 0.18.4, expo 3.27.14)

The issue seems to arise in the HTTP call done to expo to fetch the manifest: The published manifest is on expo 39, but turtle-cli seems that is trying to fetch sdk 38.

I have tried to uninstall and reinstall turtle-cli without luck.

I noticed a PR on turtle-cli about upgrading to Expo 39.
Maybe SDK 39 is simply not yet supported by the current turtle-cli?

  Expo CLI 3.27.14 environment info:
      OS: macOS 10.15.6
      Shell: 5.7.1 - /bin/zsh
      Node: 12.18.3 - ~/.nvm/versions/node/v12.18.3/bin/node
      Yarn: 1.22.5 - ~/.nvm/versions/node/v12.18.3/bin/yarn
      npm: 6.14.6 - ~/.nvm/versions/node/v12.18.3/bin/npm
      Watchman: 4.9.0 - /usr/local/bin/watchman
      iOS SDK:
        Platforms: iOS 14.0, DriverKit 19.0, macOS 10.15, tvOS 14.0, watchOS 7.0
      Android SDK:
        API Levels: 30
        Build Tools: 30.0.2
        System Images: android-30 | Google APIs Intel x86 Atom
      Android Studio: 4.0 AI-193.6911.18.40.6626763
      Xcode: 12.0.1/12A7300 - /usr/bin/xcodebuild
    Expo Workflow: managed

I’ve found the issue:
app.json was missing the “sdkVersion”: “39.0.0”,
this option is not set by default when doing a new “expo init” and build on expo’s server run fine without it, so seems that the expo utils in turtle inserts a default sdk version in the file when the option is missing from the app.json.
Now builds on 39 works just fine :wink:

This topic was automatically closed 20 days after the last reply. New replies are no longer allowed.