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

Unexpected end of JSON input #2700

Open
kapilsriram opened this issue Dec 27, 2022 · 20 comments
Open

Unexpected end of JSON input #2700

kapilsriram opened this issue Dec 27, 2022 · 20 comments

Comments

@kapilsriram
Copy link

I am facing similar issue as mentioned in #2540

whenever I run "eslint ." i am thrown "Unexpected end of JSON input"
image

@ljharb
Copy link
Collaborator

ljharb commented Dec 27, 2022

What version of everything are you using? eslint 8.2 is out of date, try with eslint latest, and make sure you're on the latest of eslint-config-airbnb as well.

@kapilsriram
Copy link
Author

i use 19.0.4 of eslint-config-airbnb and v8.30.0 of eslint. Still the same issue.
this is what i have in my eslint.json

extends": ["eslint:recommended","airbnb/whitespace"],

if i replace "airbnb/whitespace" with "airbnb" or even "airbnb/hooks" the issue is resolved. but wont work with whitespace for some reason

@kapilsriram
Copy link
Author

image

@kapilsriram
Copy link
Author

i have 2 different projects, with same issue, in one project, it opens "airbnb/whitespace-async.js" file in my notepad whenever i run "npm run lint" or "eslint ."

@ljharb
Copy link
Collaborator

ljharb commented Dec 28, 2022

The way the eslint-config-airbnb/whitespace file works is it executes https://unpkg.com/browse/eslint-config-airbnb@19.0.4/whitespace-async.js - which is an executable node program - and it outputs JSON.

If that file is being opened in your editor then perhaps the executable bit isn't set properly on that file, or perhaps something about your system isn't supporting execSync of an executable JS file. It's possible this happens on any Windows machine, but I'd be pretty surprised if you were the first Windows user to use the whitespace config.

If it's a problem on all Windows machines, then we might need to change the approach we use to execute the whitespace-async file.

@kapilsriram
Copy link
Author

the problem didnt exist in older versions, only in the latest versions we r facing the issue. Previously we used 18.2.0 with typescript 3.9.10

@ljharb
Copy link
Collaborator

ljharb commented Dec 29, 2022

yes, this technique was introduced to be compatible with eslint 8.

@kapilsriram
Copy link
Author

is it possible to fix this thing? or can give me a hint of how to get around this, I can give a try and probably will contribute the update

@ljharb
Copy link
Collaborator

ljharb commented Dec 30, 2022

I believe that what's required is either finding a package that can sync exec a node file on linux/mac and windows - or, detecting windows, and using an alternative sync approach on windows (all in the whitespace file, to exec the whitespace-async file).

@kapilsriram
Copy link
Author

kapilsriram commented Jan 2, 2023

image
by adding "node " to the command, the issue seized, is this the expected functionality? we are only trying to run the js file in node isnt?

@ljharb
Copy link
Collaborator

ljharb commented Jan 2, 2023

i don't know what you mean by "seized" here - but certainly if running it directly with node fixes the problem, that might work.

@kapilsriram
Copy link
Author

i mean stopped. cool. I was just checking if "node " does the same thing as it was doing previoulsy

@ljharb
Copy link
Collaborator

ljharb commented Jan 3, 2023

Yes, it should be unnecessary, but it also doesn't hurt. Want to make a PR?

@kapilsriram
Copy link
Author

yep sure.

@meta-panic
Copy link

I faced the very same issue recently. So, the problem was the line #!/usr/bin/env node here

My fix:

  1. Create/update the symlink at /usr/bin ln -s <path_to_your_nodejs> /usr/bin/node
  2. Check permission(I just set 777 and that's all)

I hope it'will work for someone else

@meta-panic
Copy link

@kapilsriram hi! Maybe my workaround could help you

@Oms-343
Copy link

Oms-343 commented Mar 4, 2023

@meta-panic could you please elaborate..? I am facing the same issue .

@Oms-343
Copy link

Oms-343 commented Mar 6, 2023

@kapilsriram your solution helped. Thankyou👍

@postmeback
Copy link

Looks like the fix worked for many people.

IMHO, The PR and the issue both can get resolved.

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

No branches or pull requests

6 participants
@ljharb @kapilsriram @postmeback @meta-panic @Oms-343 and others