CLI Nastavení a instalace JavaScriptu pro cvičení lokálně:Možné chyby na Macu

Při práci na cvičeních Cvičení můžete buď vyřešit problémy pomocí online editoru, nebo na nich pracovat lokálně ve svém oblíbeném IDE a odeslat je přes CLI (Command Line Interface) na terminálu. Při místní instalaci aplikace Exercism na můj MacOS jsem narazil na několik chyb, které mi chvíli trvalo, než jsem je odhalil.

Pokud jste ještě neměli nainstalovaný Homebrew nebo Node, možná jste nenarazili na následující chyby.

Jak bylo zjištěno, zde jsou příčiny z chyb, na které jsem narazil:

  1. Zastaralá verze homebrew
  2. Zastaralá verze uzlu

Obecně projdu procesem ladění – jak jsem problém našel a jak jsem na něj hledal.

Pokud vám vyhovuje instalace cvičení přes Homebrew, cvičení vám poskytne následující 2 kroky:

Krok 1:Nainstalujte Cvičení prostřednictvím Homebrew

brew update  
brew install exercism 

exercism version --> this is only used for checking the exercism version

Krok 2:Konfigurace CLI v terminálu

exercism configure --token=[THIS IS THE SECRET TOKEN THAT CANNOT BE SHARED]

Jakmile je toto dokončeno, úspěšně jste lokálně nainstalovali Exercism.

Zastaralá verze homebrew

Zpočátku se mi při spuštění brew update zobrazila chyba :

Error: 
 homebrew-core is a shallow clone.

Nevěděl jsem, co se děje, dokud jsem nezkontroloval verzi Homebrew pomocí brew --version , pak jsem našel následující chybu:

unknown or unsupported macOS version: :dunno (MacOSVersionError)

Provedl jsem nějaké vyhledávání na Googlu a zjistil jsem, že tato otázka přetečení zásobníku týkající se Homebrew selhala ve verzi macOS. Jak je uvedeno v jedné z odpovědí s nejvyšším počtem hlasů, zde je návod, jak aktualizovat verzi Homebrew:

brew update-reset

Resetování by nějakou dobu trvalo. Jakmile je resetován, můžete znovu zkontrolovat verzi pomocí brew --version . Místo protokolu chyb byste tentokrát měli vidět aktuální verzi Homebrew.

Zastaralá verze uzlu

Nicméně, i když jsem resetoval/aktualizoval verzi Homebrew, když jsem spustil brew update opět jsem stále viděl stejnou chybu:

Error: 
 homebrew-core is a shallow clone.

Nevěděl jsem proč. Rozhodl jsem se nejprve nainstalovat cvičení a nakonfigurovat a ignorovat chybu. Dokud jsem neudělal npm install , Dostal jsem mnoho upozornění na různé balíčky npm, které jsou zastaralé nebo zastaralé. Také se mi zobrazila chyba při spuštění npm test :

SyntaxError: Unexpected token

Po několika pokusech a omylech, abych zjistil, zda mohu provést instalaci npm pro každý starší balíček npm, jsem si uvědomil, že je to časově náročná a neefektivní metoda. Opravdu mi nepomohlo zjistit skutečnou příčinu problému.

Rozhodl jsem se zeptat svého přítele Google a našel jsem tuto otázku ohledně přetečení zásobníku. Jedna z odpovědí mi vlastně řekněte, že možnou příčinou problému by mohla být zastaralá verze uzlu .

Pomocí node --version abych zjistil aktuální verzi, na které jsem byl.

Poté pomocí nvm install [NEW NODE VERSION] k instalaci nejnovější verze.

(Verze, kterou mám ve fragmentu kódu níže, je pouze nejnovější v době psaní tohoto příspěvku. Chcete-li zkontrolovat nejnovější verzi uzlu, klikněte sem )

nvm install 16.13.1

Jakmile jsou tyto kroky dokončeny, gratulujeme!! Měli byste být schopni úspěšně provést npm install a npm test tentokrát bez dalších chyb!!

Děkujeme, že jste si to přečetli a doufáme, že vám to pomůže, pokud narazíte na podobné problémy jako já.

Níže jsou uvedeny některé další zdroje pro případ, že by vám mohly pomoci:

  • Co je Homebrew a jak nainstalovat
  • Jak aktualizovat Node.js
  • Jak místně nainstalovat JavaScript pro cvičení cvičení

Bavte se, cvičte lokálně!

Mimochodem, pokud někdy uvidíte následující chybu při provádění npm test , je to možná proto, že nemáte npm install všechny balíčky na cvičení.

> test
> jest ./*

sh: jest: command not found