expo / expo-cli

Tools for creating, running, and deploying universal Expo and React Native apps

Home Page:https://docs.expo.io/workflow/expo-cli/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

create-expo-app --template [github_url] returns Error: npm.cmd exited with non-zero code: 128

gloredo opened this issue · comments

Summary

The --template argument throws an error when a GitHub URL is provided. As there is still no doc for create-expo-app I used create-react-native-app and examples as a guide.

Environment

  expo-env-info 1.0.5 environment info:
    System:
      OS: Windows 10 10.0.19045
    Binaries:
      Node: 16.13.0 - C:\Program Files\nodejs\node.EXE
      Yarn: 1.22.19 - ~\AppData\Roaming\npm\yarn.CMD
      npm: 8.1.0 - C:\Program Files\nodejs\npm.CMD
      Watchman: 20210110.135312.0 - C:\ProgramData\chocolatey\bin\watchman.EXE
    SDKs:
      Android SDK:
        API Levels: 30, 31
        Build Tools: 28.0.3, 29.0.2, 30.0.2, 30.0.3, 31.0.0, 33.0.1
        System Images: android-30 | Google APIs Intel x86 Atom, android-31 | Intel x86 Atom_64, android-31 | Google APIs Intel x86 Atom_64
    IDEs:
      Android Studio: AI-221.6008.13.2211.9477386
    npmPackages:
      expo: ~47.0.12 => 47.0.13
      react: 18.1.0 => 18.1.0
      react-dom: 18.1.0 => 18.1.0
      react-native: 0.70.5 => 0.70.5
      react-native-web: ~0.18.9 => 0.18.12
    Expo Workflow: managed

Please specify your device/emulator/simulator platform, model and version

npx 8.1.0

Error output

× Something went wrong in downloading and extracting the project files: npm.cmd exited with non-zero code: 128
Error: npm.cmd exited with non-zero code: 128
error Command failed.
Exit code: 1

Reproducible demo or steps to reproduce from a blank project

  1. npx create-expo-app my-template --template
  2. select Blank (TypeScript)
  3. create a public GitHub repo and commit all content
  4. create a new branch named master from the main branch and make it the default branch
  5. npx create-expo-app my-app --template https://github.com/[username]/my-template

This is a bit of an unfortunate design (for legacy purposes), but --template is used for NPM packages and --example can be used for repos. Opened an internal ticket to write up a docs page.