Graphql erro curso vtex learn

Estou fazendo o curso do vtex learn (Conectando a um Serviço), aonde pede pra adicionar uma pasata node e uma graphql porem apresenta um erro no terminal qnd executo o vtex link:

erros error: node@4.x builder failed to install dependencies through yarn (retries=3)
yarn errors:
yarn errors:
graphql@16.1.0: The engine "node" is incompatible with this module. Expected version "^12.22.0 || ^14.16.0 || >=16.0.0". Got "12.16.1"
Found incompatible module. vtex.builder-hub@0.283.0 

vi q e com relação a versao do node, porem a versao que utilizo ta dentre essas informadas no erro.

versao : wanderson in admin-course on  master [!?] took 2s ❯ node -v            
v14.16.0

ou seja ja tentei de tudo porem sempre apresenta o erro.

atualiza sua versão do node. :slight_smile:

1 Like

@wandersoncorrea pelo que eu tô vendo nas mensagens de erro, parece que você está com uma versão desatualizada do Node.js na sua máquina ou no projeto.

Para mudar facilmente a versão na sua máquina, recomendo usar o n… É super fácil de usar e prático quando você precisa trabalhar em projetos com necessidades diferentes.

Para checar se o projeto está com uma versão diferente, é importante checar o arquivo package.json. Parece que o @types/node que consta no package.json fornecido como exemplo no curso está na versão 12, pode ser que impacte indiretamente.

Vale dar uma lida nesse guia que explica tudo sobre o package.json:

1 Like

Conseguiu resolver? Tivemos o mesmo problema por aqui.
O Node por aqui já está na verão certa…

Estou anexado aqui a solução que obtive via suporte, para que ajude outras pessoas que venham a enfrentar o mesmo problema:

O que deve funcionar é o seguinte:

1 - Na paste node do projeto, no package.json, troque a versão do @vtex/api para 6.45.10 e do @vtex/test-tools para ^3.4.3
2 - Apague o arquivo yarn.lock
3 - Rode um yarn install ainda dentro da pasta node.

Após seguir esses passos, o builder não deve mais ter problemas pra montar o seu app na hora de linkar.

via @brunomonteiro

No meu caso o problema era na versão do pacote @vtex/test-tools
Mais uma vez, obrigado pelo suporte.
At.te, Matheus

2 Likes

Esse erro é o caos na terra.

A título de informação: Essa versão do node que ele reclama na linha de comando é a do builder da VTEX e não a da sua máquina, ou seja: tudo que tiver que ser buildado na hora do link tem obrigatoriamente que estar liberado para uso no node 12 e em termos de libs para apps de front, react 16. Qualquer coisa fora disso vai dar erro. Já até abri chamado junto à VTEX pra ver se conseguiam colocar o node 14 pelo menos no lado do servidor e disseram que não há como.