prettier / prettier/plugin-php

`linguist-languages` Version Mismatch

Open
#2,455 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
PHP
Stars
1.9k
Forks
139
PR merge metrics
No merged PRs in 30d

Description

I get this error whenever attempting to format PHP files with the plugin:

["ERROR" - 8:03:08 PM] Error handling text editor change
["ERROR" - 8:03:08 PM] Cannot find module 'c:\Users\Hendrick\Projects\ecommerce\node_modules\linguist-languages\data\PHP.mjs' imported from c:\Users\Hendrick\Projects\ecommerce\node_modules\@prettier\plugin-php\src\index.mjs
Did you mean to import "linguist-languages/data/PHP.js"?
Error [ERR_MODULE_NOT_FOUND]: Cannot find module 'c:\Users\Hendrick\Projects\ecommerce\node_modules\linguist-languages\data\PHP.mjs' imported from c:\Users\Hendrick\Projects\ecommerce\node_modules\@prettier\plugin-php\src\index.mjs
Did you mean to import "linguist-languages/data/PHP.js"?
    at finalizeResolution (node:internal/modules/esm/resolve:278:11)
    at moduleResolve (node:internal/modules/esm/resolve:871:10)
    at defaultResolve (node:internal/modules/esm/resolve:995:11)
    at nextResolve (node:internal/modules/esm/hooks:748:28)
    at resolve (data:text/javascript;base64,CglleHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVzb2x2ZShzcGVjaWZpZXIsIGNvbnRleHQsIG5leHRSZXNvbHZlKSB7CgkJaWYgKHNwZWNpZmllciA9PT0gJ2ZzJykgewoJCQlyZXR1cm4gewoJCQkJZm9ybWF0OiAnYnVpbHRpbicsCgkJCQlzaG9ydENpcmN1aXQ6IHRydWUsCgkJCQl1cmw6ICdub2RlOm9yaWdpbmFsLWZzJwoJCQl9OwoJCX0KCgkJLy8gRGVmZXIgdG8gdGhlIG5leHQgaG9vayBpbiB0aGUgY2hhaW4sIHdoaWNoIHdvdWxkIGJlIHRoZQoJCS8vIE5vZGUuanMgZGVmYXVsdCByZXNvbHZlIGlmIHRoaXMgaXMgdGhlIGxhc3QgdXNlci1zcGVjaWZpZWQgbG9hZGVyLgoJCXJldHVybiBuZXh0UmVzb2x2ZShzcGVjaWZpZXIsIGNvbnRleHQpOwoJfQ==:13:10)
    at nextResolve (node:internal/modules/esm/hooks:748:28)
    at resolve (data:text/javascript;base64,CglsZXQgbG9va3VwOwoJZXhwb3J0IGNvbnN0IGluaXRpYWxpemUgPSBhc3luYyAoY29udGV4dCkgPT4gewoJCWxldCByZXF1ZXN0SWRzID0gMDsKCQljb25zdCB7IHBvcnQgfSA9IGNvbnRleHQ7CgkJY29uc3QgcGVuZGluZ1JlcXVlc3RzID0gbmV3IE1hcCgpOwoJCXBvcnQub25tZXNzYWdlID0gKGV2ZW50KSA9PiB7CgkJCWNvbnN0IHsgaWQsIHVybCB9ID0gZXZlbnQuZGF0YTsKCQkJcGVuZGluZ1JlcXVlc3RzLmdldChpZCk/Lih1cmwpOwoJCX07CgkJbG9va3VwID0gdXJsID0+IHsKCQkJLy8gZGVidWdnZXI7CgkJCWNvbnN0IG15SWQgPSByZXF1ZXN0SWRzKys7CgkJCXJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4gewoJCQkJcGVuZGluZ1JlcXVlc3RzLnNldChteUlkLCByZXNvbHZlKTsKCQkJCXBvcnQucG9zdE1lc3NhZ2UoeyBpZDogbXlJZCwgdXJsLCB9KTsKCQkJfSk7CgkJfTsKCX07CglleHBvcnQgY29uc3QgcmVzb2x2ZSA9IGFzeW5jIChzcGVjaWZpZXIsIGNvbnRleHQsIG5leHRSZXNvbHZlKSA9PiB7CgkJaWYgKHNwZWNpZmllciAhPT0gJ3ZzY29kZScgfHwgIWNvbnRleHQucGFyZW50VVJMKSB7CgkJCXJldHVybiBuZXh0UmVzb2x2ZShzcGVjaWZpZXIsIGNvbnRleHQpOwoJCX0KCQljb25zdCBvdGhlclVybCA9IGF3YWl0IGxvb2t1cChjb250ZXh0LnBhcmVudFVSTCk7CgkJcmV0dXJuIHsKCQkJdXJsOiBvdGhlclVybCwKCQkJc2hvcnRDaXJjdWl0OiB0cnVlLAoJCX07Cgl9Ow==:22:11)
    at nextResolve (node:internal/modules/esm/hooks:748:28)
    at Hooks.resolve (node:internal/modules/esm/hooks:240:30)
    at handleMessage (node:internal/modules/esm/worker:199:24)

JSON used in the .prettierrc config file:

{
  "plugins": [
    "prettier-plugin-blade",
    "@prettier/plugin-php"
  ],
  "overrides": [
    {
      "files": "*.blade.php",
      "options": {
       "parser": "blade"
      }
    },
    {
      "files": "*.php",
      "excludeFiles": "*.blade.php",
      "options": {
       "parser": "php"
      }
    }
  ]
}

PHP version used: v8.4.16 NTS
Node.JS version used: v25.6.1
NPM version used: v11.9.0

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the PHP formatting setup with Node.js v25.6.1, then inspect @prettier/plugin-php/src/index.mjs and the linguist-languages/data/PHP.mjs versus PHP.js paths shown in the error. Done means formatting PHP files no longer fails with ERR_MODULE_NOT_FOUND.

Written by the indexing model from the issue text.

Assessment

Tech stack
node.js, php
Domain
tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.