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

yaml-language-server: Fails to start due to missing prettier dependency #106449

Merged

Conversation

SamirHafez
Copy link
Contributor

@SamirHafez SamirHafez commented Dec 9, 2020

Latest yaml-language-server fails to start:

internal/modules/cjs/loader.js:883
  throw err;
  ^

Error: Cannot find module 'prettier'
Require stack:
- /nix/store/0rgyg64rwgi2vpk27bi84094h27sd2w9-node_yaml-language-server-0.13.0/lib/node_modules/yaml-language-server/out/server/src/languageservice/services/yamlFormatter.js
- /nix/store/0rgyg64rwgi2vpk27bi84094h27sd2w9-node_yaml-language-server-0.13.0/lib/node_modules/yaml-language-server/out/server/src/languageservice/yamlLanguageService.js
- /nix/store/0rgyg64rwgi2vpk27bi84094h27sd2w9-node_yaml-language-server-0.13.0/lib/node_modules/yaml-language-server/out/server/src/server.js
- /nix/store/0rgyg64rwgi2vpk27bi84094h27sd2w9-node_yaml-language-server-0.13.0/lib/node_modules/yaml-language-server/bin/yaml-language-server
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:880:15)
    at Function.Module._load (internal/modules/cjs/loader.js:725:27)
    at Module.require (internal/modules/cjs/loader.js:952:19)
    at require (internal/modules/cjs/helpers.js:88:18)
    at Object.<anonymous> (/nix/store/0rgyg64rwgi2vpk27bi84094h27sd2w9-node_yaml-language-server-0.13.0/lib/node_modules/yaml-language-server/out/server/src/languageservice/services/yamlFormatter.js:9:18)
    at Module._compile (internal/modules/cjs/loader.js:1063:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
    at Module.load (internal/modules/cjs/loader.js:928:32)
    at Function.Module._load (internal/modules/cjs/loader.js:769:14)
    at Module.require (internal/modules/cjs/loader.js:952:19) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    '/nix/store/0rgyg64rwgi2vpk27bi84094h27sd2w9-node_yaml-language-server-0.13.0/lib/node_modules/yaml-language-server/out/server/src/languageservice/services/yamlFormatter.js',
    '/nix/store/0rgyg64rwgi2vpk27bi84094h27sd2w9-node_yaml-language-server-0.13.0/lib/node_modules/yaml-language-server/out/server/src/languageservice/yamlLanguageService.js',
    '/nix/store/0rgyg64rwgi2vpk27bi84094h27sd2w9-node_yaml-language-server-0.13.0/lib/node_modules/yaml-language-server/out/server/src/server.js',
    '/nix/store/0rgyg64rwgi2vpk27bi84094h27sd2w9-node_yaml-language-server-0.13.0/lib/node_modules/yaml-language-server/bin/yaml-language-server'
  ]
}

Problem goes away if prettier-2.2.1 is added as a dependency to the node package for yaml-language-server

Copy link
Member

@SuperSandro2000 SuperSandro2000 left a comment

Choose a reason for hiding this comment

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

This change will overwritten the next time we generate the file via the update script.

@SamirHafez
Copy link
Contributor Author

@SuperSandro2000 I see, I didn't know this file was being auto-generated. Can you point me to where the original file is?

@ntharim
Copy link

ntharim commented Dec 15, 2020

I think we can fix this by overriding in node-packages/default.nix:

yaml-language-server = super.yaml-language-server.overrideAttrs (oldAttrs: {
  buildInputs = oldAttrs.buildInputs ++ [ pkgs.makeWrapper ];
  postInstall = ''
    wrapProgram "$out/bin/yaml-language-server" \
    --prefix NODE_PATH : ${self.prettier}/lib/node_modules
  '';
});

@SamirHafez SamirHafez force-pushed the yaml-language-server-dependency branch 2 times, most recently from 6822585 to 769955f Compare January 4, 2021 12:15
@SamirHafez
Copy link
Contributor Author

@SuperSandro2000 could you have another look? I took @naistran advice

@SuperSandro2000
Copy link
Member

This is a semi-automatic executed nixpkgs-review which does not build all packages (e.g. lumo, tensorflow or pytorch)
If you find some bugs or got suggestions for further things to search or run please reach out to SuperSandro2000 on IRC.

Result of nixpkgs-review pr 106449 run on x86_64-linux 1

1 package built:
  • yaml-language-server

@SuperSandro2000
Copy link
Member

@ofborg eval

@SuperSandro2000
Copy link
Member

SuperSandro2000 commented Jan 19, 2021

I am not 100% sure why ofborg fail because pkgconfig got removed on master in that file already. Can you try rebasing and removing any occurrence of pkgconfig in this file with pkg-config?

Edit: I found the eval failure. Unrelated. Gimme 10 minutes to fix it.

@SuperSandro2000
Copy link
Member

@ofborg eval

@SuperSandro2000
Copy link
Member

This is a semi-automatic executed nixpkgs-review which is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
If you have any questions or problems please reach out to SuperSandro2000 on IRC.

Result of nixpkgs-review pr 106449 run on x86_64-linux 1

1 package built:
  • yaml-language-server

@SuperSandro2000 SuperSandro2000 merged commit 7539f48 into NixOS:master Jan 19, 2021
@SamirHafez SamirHafez deleted the yaml-language-server-dependency branch January 20, 2021 08:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants