Still ios build error

Hi,

I posted this question already previously but no answer yet. This is preventing me from creating a build for ios.
In the step Configuring NSBundle I get this error:

Modifying NSBundle configuration at /private/tmp/turtle/5b9d5ca5-b525-472c-9bd4-e706ae21f33f/archive/Release/ExpoKitApp.xcarchive/Products/Applications/ExpoKitApp.app…
Using standalone config: { isShell: true,
manifestUrl: ‘Expo’,
releaseChannel: ‘test’,
testEnvironment: ‘none’ }
Configuring iOS Launch Screen…
Bundling assets…
Cleaning up iOS…
Error: Asset bundling failed: Error: https://d1wp6m56sqw74a.cloudfront.net/~assets/3d29a75fcf0ed7dfff86d3db8f92fc69 is too small
at Object.configureAsync (/usr/local/turtle-js/node_modules/@expo/xdl/build/detach/IosNSBundle.js:672:15)
at

Anyone any idea?
Thanks
Robin

Expo CLI 3.13.1 environment info:
System:
OS: macOS 10.15.4
Shell: 3.2.57 - /bin/bash
Binaries:
Node: 12.13.1 - /usr/local/bin/node
npm: 6.12.1 - /usr/local/bin/npm
IDEs:
Android Studio: 3.5 AI-191.8026.42.35.6010548
Xcode: 11.4/11E146 - /usr/bin/xcodebuild
npmPackages:
expo: ~36.0.0 => 36.0.2
react: ~16.9.0 => 16.9.0
react-native: https://github.com/expo/react-native/archive/sdk-36.0.0.tar.gz => 0.61.4
npmGlobalPackages:
expo-cli: 3.13.1

It’s failing on check that is intended to detect invalid assets (few bytes). Just remove this file or set assetBundlePatterns in way that is not pointing at this file

Hi, thanks for the reply.
My assetBundlePatterns array in app.json was set to ** / *
This means it looks for all assets under the root directory.
I changed it to assets/* and now it works.

It looks like the default settings for this is ** / * when I run expo init.
Could it be that it found an empty asset file in one of the node_modules folders?

Robin

I tried to set assetBundlePatterns" to [“**/"], ["assets/”], and nothing worked.

{
...
  "bundledAssets": [
 ...
    "asset_315b6bc9518b83448be6761e6cc5cb7e.png",
    "asset_fd0192cf977ddf7b60b4e21e332f6b76.json",
    "asset_46c8473e3a6dc096e844e4de60b8e01f.json",
    "asset_85ae102ad9b323d315f4810f81d12952.json",
    "asset_e1e771bac050d06a83d3adf2a50029d8.json",
    "asset_f2f34dc3f2f079791cb5f45c01e81064.json",
    "asset_2ac32dec71143dccca808a592a85eb9f.json",
    "asset_e586329f8f0c95bb0e757678b7ecb434.json",
    "asset_471e17c3a9f3b073df0bf0472c1248df.json",
    "asset_7d7aac2437e57259b9281b9a1c2e0aea.json",
    "asset_110473d8318b9c4d254bcf26ae655a55.json",
    "asset_f9fa43888033833299be60cfa5b3f91d.png",
    "asset_54a91b0619ccf9373d525109268219dc.ttf",
    "asset_99fc0816a09395454061301fefa42bf1.ttf",
    "asset_778ffc9fe8773a878e9c30a6304784de.png",
    "asset_376d6a4c7f622917c39feb23671ef71d.png",
    "asset_c79c3606a1cf168006ad3979763c7e0c.png",
    "asset_02bc1fa7c0313217bde2d65ccbff40c9.png",
    "asset_35ba0eaec5a4f5ed12ca16fabeae451d.png"
  ]

}

And error:
Error: https://d1wp6m56sqw74a.cloudfront.net/~assets/8a80554c91d9fca8acb82f023de02f11 is too small

Is it possible to say which assets or which dependency is causing trouble? The name here looks more like a hash

@dominikst can you try ["assets/**/*"] ?

Can you verify with expo export if file like that shows up in dist directory?

@wkozyra

Using “assets/**/*” doesnt seem to change anything.

After the command:
expo export --public-url http://192.168.0.119:8000 --dev
There are 3 files less in dist/assets than in ~/.turtle/workingdir/android/sdk36/android-shell-app/app/src/main/assets:

  • shell-app-manifest.json,

  • asset_ca1c211b75e1efc987f87cbbdef29d11.json → copy of language file nl.json, that was removed from the project

  • 8a80554c91d9fca8acb82f023de02f11->probably some empty language json file. I had there many empty language files, all are removed, but probably cached somewhere

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