`linguist-languages` Version Mismatch

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

Nobody has claimed this yet.

Assessment

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

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.

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

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

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.

More from prettier/plugin-php

All issues in prettier/plugin-php

Similar issues

More PHP issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.