Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: wrangler init should not crash if Git is not available on Windows #1033

Merged
merged 1 commit into from
May 16, 2022

Conversation

petebacondarwin
Copy link
Contributor

We check for the presence of Git by trying to run git --version.
On non-Windows we get an Error with code set to "ENOENT".
One Windows we get a different error:

{
  "shortMessage":"Command failed with exit code 1: git --version",
  "command":"git --version",
  "escapedCommand":"git --version",
  "exitCode":1,
  "stdout":"",
  "stderr":"'git' is not recognized as an internal or external command,\r\noperable program or batch file.",
  "failed":true,
  "timedOut":false,
  "isCanceled":false,
  "killed":false
}

Since we don't really care what the error is, now we just assume that Git
is not available if an error is thrown.

Fixes #1022

We check for the presence of Git by trying to run `git --version`.
On non-Windows we get an Error with `code` set to "ENOENT".
One Windows we get a different error:

```
{
  "shortMessage":"Command failed with exit code 1: git --version",
  "command":"git --version",
  "escapedCommand":"git --version",
  "exitCode":1,
  "stdout":"",
  "stderr":"'git' is not recognized as an internal or external command,\r\noperable program or batch file.",
  "failed":true,
  "timedOut":false,
  "isCanceled":false,
  "killed":false
}
```

Since we don't really care what the error is, now we just assume that Git
is not available if an error is thrown.

Fixes cloudflare#1022
@changeset-bot
Copy link

changeset-bot bot commented May 16, 2022

🦋 Changeset detected

Latest commit: bb2d1d8

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
wrangler Patch

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@github-actions
Copy link
Contributor

A wrangler prerelease is available for testing. You can install this latest build in your project with:

npm install --save-dev https://prerelease-registry.developers.workers.dev/runs/2334328048/npm-package-wrangler-1033

You can reference the automatically updated head of this PR with:

npm install --save-dev https://prerelease-registry.developers.workers.dev/prs/1033/npm-package-wrangler-1033

Or you can use npx with this latest build directly:

npx https://prerelease-registry.developers.workers.dev/runs/2334328048/npm-package-wrangler-1033 dev path/to/script.js

Copy link
Contributor

@threepointone threepointone left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for investigating and fixing!

@petebacondarwin petebacondarwin merged commit ffce3e3 into cloudflare:main May 16, 2022
@github-actions github-actions bot mentioned this pull request May 16, 2022
@petebacondarwin petebacondarwin deleted the git-version-crash branch June 20, 2022 11:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

wrangler init throws an error if git is not available
2 participants