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

Che Theia build failing with the latest stable yarn #15552

Closed
azatsarynnyy opened this issue Dec 20, 2019 · 11 comments
Closed

Che Theia build failing with the latest stable yarn #15552

azatsarynnyy opened this issue Dec 20, 2019 · 11 comments
Assignees
Labels
area/editor/theia Issues related to the che-theia IDE of Che kind/bug Outline of a bug - must adhere to the bug report template. severity/P1 Has a major impact to usage or development of the system.

Comments

@azatsarynnyy
Copy link
Member

azatsarynnyy commented Dec 20, 2019

Describe the bug

Che Theia build failing with the latest stable yarn - 1.21.1

Steps to reproduce

Remove node_modules folder and build Che Theia with yarn.

The build is failed with several messages, like:
warning package.json: Invalid bin entry for "che:theia" (in "@eclipse-che/theia-generator")
or
/bin/sh: theia:plugin: command not found

Looks like there's some issue with creating symlinks in node_modules folder.

@azatsarynnyy azatsarynnyy added kind/bug Outline of a bug - must adhere to the bug report template. team/editors area/editor/theia Issues related to the che-theia IDE of Che labels Dec 20, 2019
@che-bot che-bot added the status/need-triage An issue that needs to be prioritized by the curator responsible for the triage. See https://github. label Dec 20, 2019
@benoitf
Copy link
Contributor

benoitf commented Dec 20, 2019

hello, src/browser/textmate/monaco-textmate-service.ts is an upstream issue no ?

@azatsarynnyy azatsarynnyy added the severity/P1 Has a major impact to usage or development of the system. label Dec 20, 2019
@azatsarynnyy
Copy link
Member Author

@benoitf I don't know. I'm going to figure it out

@azatsarynnyy azatsarynnyy self-assigned this Dec 20, 2019
@azatsarynnyy azatsarynnyy added status/in-progress This issue has been taken by an engineer and is under active development. and removed status/need-triage An issue that needs to be prioritized by the curator responsible for the triage. See https://github. labels Dec 20, 2019
@azatsarynnyy azatsarynnyy mentioned this issue Dec 20, 2019
8 tasks
@tolusha
Copy link
Contributor

tolusha commented Dec 20, 2019

sounds blocker?

@benoitf
Copy link
Contributor

benoitf commented Dec 20, 2019

I'm not sure it's blocker as you can use a previous version of yarn (and end users are not impacted AFAIK)
I would say mostly P1
It may be blocker only if CI is blocked

@azatsarynnyy azatsarynnyy removed the status/in-progress This issue has been taken by an engineer and is under active development. label Dec 20, 2019
@azatsarynnyy
Copy link
Member Author

... is an upstream issue no?

@benoitf sorry, I attached the wrong output. The description is updated.

@vzhukovs vzhukovs added the status/in-progress This issue has been taken by an engineer and is under active development. label Dec 26, 2019
@vzhukovs
Copy link
Contributor

Got error on different module build:

...
@eclipse-che/theia-terminal: [format] yarn format exited with code 0
@eclipse-che/theia-plugin-ext: [format] yarn format exited with code 0
@eclipse-che/theia-factory-plugin: [format] yarn format exited with code 0
@eclipse-che/theia-activity-tracker: [compile] yarn compile exited with code 0
@eclipse-che/theia-containers-plugin: [compile] yarn compile exited with code 0
@eclipse-che/theia-containers-plugin: [lint] yarn lint exited with code 0
@eclipse-che/theia-containers-plugin: /bin/sh: theia:plugin: command not found
@eclipse-che/theia-containers-plugin: error Command failed with exit code 127.
@eclipse-che/theia-containers-plugin: info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
@eclipse-che/theia-activity-tracker: [lint] yarn lint exited with code 0
@eclipse-che/theia-containers-plugin: error Command failed with exit code 127.
@eclipse-che/theia-containers-plugin: info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
@eclipse-che/theia-activity-tracker: Done in 21.82s.
lerna ERR! yarn run prepare exited 127 in '@eclipse-che/theia-containers-plugin'
lerna WARN complete Waiting for 8 child processes to exit. CTRL-C to exit immediately.
error Command failed with exit code 127.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
vlad@MacBook-Pro-15-Vlad che-theia %

@monaka
Copy link
Member

monaka commented Jan 11, 2020

Same here. Looks it's similar to #14145.

I found theia:plugin in node_modules/.bin/ on my workspace but it wasn't.
Only theia-plugin is available.

ls node_modules/.bin/
acorn                          is-ci                          regjsparser
atob                           jest                           rimraf
babylon                        jest-runtime                   sane
concurrent                     jsesc                          seek-bunzip
concurrently                   json2yaml                      seek-table
conventional-changelog-writer  json2yml                       semver
conventional-commits-parser    json5                          sha.js
conventional-recommended-bump  JSONStream                     sl-log-transformer
cpx                            jsontoyaml                     sshpk-conv
detect-libc                    jsontoyml                      sshpk-sign
download-debug-adapters        js-yaml                        sshpk-verify
editorconfig                   lerna                          strip-indent
errno                          loose-envify                   terser
escodegen                      markdown-it                    theia-plugin
esgenerate                     miller-rabin                   tree-kill
esparse                        mime                           tsc
esvalidate                     mkdirp                         tsfmt
fuse                           mustache                       tslint
get-pkg-repo                   ncp                            tsserver
git-raw-commits                nexe                           uglifyjs
git-semver-tags                node-gyp                       uuid
handlebars                     nodetouch                      vscode-json-languageserver
he                             nopt                           watch
html-minifier                  prebuild-install               webpack
import-local-fixture           ps-tree                        webpack-cli
installServerIntoExtension     rc                             which

My workspace is on Debian GNU/Linux 9.11.

If my thought is reasonable, theia:plugin is just kept as it for the backward compatibility.
And theia:plugin won't run at least on Windows. (And in my case, also Linux.)

We can upgrade it to theia-plugin now, right ?

monaka added a commit to PizzaFactory/che-theia that referenced this issue Jan 11, 2020
fixes eclipse-che/che#14145 eclipse-che/che#15552.

Signed-off-by: Masaki Muranaka <monaka@monami-ya.com>
@vzhukovs vzhukovs removed the status/in-progress This issue has been taken by an engineer and is under active development. label Jan 13, 2020
benoitf pushed a commit to eclipse-che/che-theia that referenced this issue Jan 13, 2020
fixes eclipse-che/che#14145 eclipse-che/che#15552.

Signed-off-by: Masaki Muranaka <monaka@monami-ya.com>
@TheRealChssAddct
Copy link

Just an FYI @azatsarynnyy -- the breaking change in yarn 1.21.1 was due to added bin key validation among other things which disallowed colons in the bin key name. The fact of the change being too restrictive has been discussed here:
yarnpkg/yarn#7811
and here is a pull request to relax the validation, but only for dots not for colons:
yarnpkg/yarn#7755

Though they have backed off some on the restrictive (allowing dots) it appears they will NOT be modifying the validation to allow colons, so all usage of theia:plugin and any other symlinks using colons should be changed. (plus, as mentioned, colons in symlinks wouldn't work in Windows anyways).

@TheRealChssAddct
Copy link

I see that the commit fixes to use theia-plugin instead theia:plugin. However, there remains the issue of che:theia (https://github.com/eclipse/che-theia/blob/master/generator/package.json). All usage should be modified to che-theia.
Che:theia is used in DockerFiles (e.g https://github.com/eclipse/che-theia/blob/master/dockerfiles/theia/Dockerfile)
and devfiles (e.g. https://github.com/eclipse/che-theia/blob/master/devfiles/che-theia-all.devfile.yaml)

@azatsarynnyy
Copy link
Member Author

Hello @TheRealChssAddct
Thanks for the detailed explanation.
We will tackle it.
cc/ @vzhukovskii

@vzhukovs
Copy link
Contributor

Hello @TheRealChssAddct, thanks for your feedback! cc @azatsarynnyy created the following issue: #15771 to track yarn upgrade through the all projects which need these changes.

monaka added a commit to opentestmodeling/che-theia that referenced this issue Jan 12, 2021
fixes eclipse-che/che#14145 eclipse-che/che#15552 .

Signed-off-by: Masaki Muranaka <monaka@monami-ya.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/editor/theia Issues related to the che-theia IDE of Che kind/bug Outline of a bug - must adhere to the bug report template. severity/P1 Has a major impact to usage or development of the system.
Projects
None yet
Development

No branches or pull requests

7 participants