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

OSS Gate Workshop: Tokyo: 2017-03-25: yuinore: vscode: Work log #342

Closed
yuinore opened this issue Mar 25, 2017 · 63 comments
Closed

OSS Gate Workshop: Tokyo: 2017-03-25: yuinore: vscode: Work log #342

yuinore opened this issue Mar 25, 2017 · 63 comments

Comments

@yuinore
Copy link
Contributor

yuinore commented Mar 25, 2017

This is a work log of "OSS Gate".
"OSS Gate" is about an activity to increase OSS developers.
Here's been discussed in Japanese. Thanks.


  • この issue のタイトルを
    「OSS Gate Workshop: ${LOCATION}: ${YEAR}-${MONTH}-${DAY}: ${アカウント名}: ${OSS名}: Work log」
    の形式でつけてください
  • 例:
    「OSS Gate Workshop: Tokyo: 2017-01-16: kou: Rabbit: Work log」
  • OSS 名が未定の場合はタイトルは後からでも変えられるので、とりあえず未定などでも OK です

OSS Gate へようこそ。

OSS Gateワークショップでは一人ずつ issue を作り、そこに作業ログを残しながら進めます。
過去のビギナーのものはこちらで見られます。 https://github.com/oss-gate/workshop/issues?q=is%3Aissue+is%3Aclosed

作業ログを書くタイミング

作業ログを書くタイミングは次のタイミングです。

  • 違う作業を始めたとき(インストールを始めた、動作確認を始めた、テストを始めた、とか)
  • 詰まったとき(インストール時にエラーがでた、ビルドが失敗した、とか)
  • issueを出したとき
  • pull requestを出したとき

作業ログに書く内容

作業ログに残すことは次のことです。「備考」以外は作業の邪魔にならないように一言でよいです。備考は作業に役立つので必要な分だけ書いてください。

  • 作業(やること、やっていること、やったこと。)
  • 思っていること(そのときどう思っているか。)
  • 備考(必要な付加情報。)

ログはコメントとして追記していってください。テンプレートは次の通りです。

* 作業:(ここにやること、やっていること、やったことを書く)
* 思っていること:(今どう思っているかを書く)

備考:(必要なら必要なだけ書く。必要ないなら書かなくてもよい。)

例1(備考なし):

* 作業:インストールを始めた
* 思っていること:ドキュメント通りに進めれば大丈夫だろう

例2:

* 作業:インストールが失敗した
* 思っていること:ドキュメントに手順が足りない?

備考:エラーメッセージは次の通り

```text
XXX is not found
```

必要なファイルが足りないのかなぁ。

ふりかえり

作業ログは、ビギナーが、このワークショップを通して得るものをより増やすために重要になります。なぜなら作業ログがメンターからのフィードバックをより充実させるからです。

作業ログを元にメンターと「ふりかえり」をするタイミングがあります。「ふりかえり」では次のことをします。

  • ビギナーは作業ログの内容を順にメンターに説明する。
  • メンターは説明を聞いてビギナーにフィードバックをする。

メンターは次のようなフィードバックをします。これは、ビギナーとは違う視点からビギナーの行動を観察することおよびメンターの経験があるからできることです。(「ふりかえり」の前にこんなフィードバックをよろしくお願いします!とお願いすると効果が高まるので実践してみましょう。)

  • ビギナーが気づかずにやっていたよい行動に気づくきかっけを与え、今後もその行動を継続するように促します。
  • ビギナーが困っていることについて、解決策を一緒に考えてくれます。
  • 適切な質問をしてビギナーが整理できていない行動や考えを整理してくれます。
  • ビギナーが「問題」だと認識していないこと(「問題発見」は難しい!)をメンターの視点から「問題」だと見つけてくれます。「問題」がはっきりしたら直しましょう。
  • ビギナーが次にどの方向に進めばよいかを整理してくれます。

このように、ビギナーの作業をメンター視点で一緒に整理し、ビギナーの今後の行動に活かす活動がここでいう「ふりかえり」です。そのため、「ビギナーにとって」ログに残すべきかどうか、という視点ではなく、「とりあえずログに残す」という視点でログを残してください。これは、ビギナーが重要だと判断しなくてもメンターの視点から見たら大事なこともあるからです。

@koyhoge
Copy link
Contributor

koyhoge commented Mar 25, 2017

がんばりましょー

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

頑張ります

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

vscodeで検索したけどやっぱりやめてvscode githubでgoogle検索したら一番上に出てきたのでクリック https://github.com/Microsoft/vscode

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

MITライセンスであることをREADME.mdとLICENSE.txtで確認

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

README.mdにあるリンクからVSCode's websideに飛ぶ
https://code.visualstudio.com/Download

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

一旦戻って、README.md内のHow to Contributeをクリックして次に飛ぶ
https://github.com/Microsoft/vscode/wiki/How-to-Contribute

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

Installing Prerequisitesに従って、NodeJSをインストールすることにする。gitは既に入っているのでインストールしない。Native Compilationのために必要なPython2.7は、とりあえずインストールしないことにする。

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

nvmで検索

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

nvm windows install でgoogle検索

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

nvm windows install でgoogle検索して、http://blog.h2o-space.com/2016/11/1095/ を開く

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

上のページに従って、nvm-setup.zipを落とす

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

zipを解凍し、nvm-setup.exeを実行する

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

cmd.exeを管理者として実行

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

nvm
でインストールを確認

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

node.jsの公式サイトに、6.10.1がLTSだと書いてあるので、

> nvm install 6.10.1

で安定版をインストール

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

> nvm list

で現在選択されているバージョンを確認

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

バージョンの前に*が付いていないため、使いたいバージョンを

> nvm use 6.10.1
> nvm list

で選択

@koyhoge
Copy link
Contributor

koyhoge commented Mar 25, 2017

ここにサンプルがあったので試すとよいかも。
http://arfyasu.hatenablog.com/entry/2016/01/26/212543

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

上のページにある、hello.jsをコピペし、hello.jsというファイル名でnotepad.exeを使って保存

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

どこに保存すれば良いかわからない

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

カレントディレクトリが C:\Windows\System32 のプロンプトで実行すると node コマンドが通る(が、他のプロンプトではnodeコマンドが通らない)ため、試しにこのディレクトリ( C:\Windows\System32)に hello.js を移動して、

> node hello.js

を叩く

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

Server running at http://127.0.0.1:[ポート番号]/ というメッセージが出たので、ここにchromeからアクセスするとHello Worldページが出た。また、System32にhello.jsがあると不穏なので、削除しておいた。

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

作業用ディレクトリを作成した。その後、githubのリポジトリのURLをコピーして、git bash (MINGW64)から

$ git clone https://github.com/Microsoft/vscode.git

を実行

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

終わるのを待つ

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

git bash から nvm が叩けない(command not found.)ので、cmd.exeに戻る

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

How to Contributeのページに従って、

> cd vscode
> scripts\npm install

を実行

@koyhoge
Copy link
Contributor

koyhoge commented Mar 25, 2017

同じ問題がAtomにもありました。 atom/node-oniguruma#9

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

こちらにも似たようなものがありました microsoft/vscode#13275

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

エラーメッセージ

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
npm ERR! Windows_NT 10.0.10586
npm ERR! argv "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "install"
npm ERR! node v6.10.1
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE

npm ERR! [email protected] install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script 'node-gyp rebuild'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the oniguruma package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-gyp rebuild
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs oniguruma
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls oniguruma
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR! ${vscodeDir}\npm-debug.log

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

vscodeディレクトリを丸ごと削除して、cloneからやり直す

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

同じエラーが出てダメでした

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

時間が無いのでLinux版も試してみます。

VMWare (ubuntu) を開き、http://qiita.com/TsutomuNakamura/items/7a8362efefde6bc3c68b に従って Node.js をインストール

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

[Windows]
Node.jsをlatest( 7.7.4 )をインストールして実行した
ただし use 7.7.4 をして変更するのを忘れていた
エラーが出た

エラーメッセージ

npm WARN deprecated [email protected]: Use uuid module instead
npm WARN deprecated [email protected]: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated [email protected]: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated [email protected]: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
npm WARN deprecated [email protected]: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated [email protected]: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated [email protected]: to-iso-string has been deprecated, use @segment/to-iso-string instead.
npm WARN deprecated [email protected]: Jade has been renamed to pug, please install the latest version of pug instead of jade

[email protected] preinstall ${vscodeDir}
node build/npm/preinstall.js

[email protected] install ${vscodeDir}\node_modules\oniguruma
node-gyp rebuild

${vscodeDir}\node_modules\oniguruma>if not defined npm_config_node_gyp (node "C:\Users\Mint\AppData\Roaming\nvm\v6.10.1\node_modules\npm\bin\node-gyp-bin\....\node_modules\node-gyp\bin\node-gyp.js" rebuild ) else (node "" rebuild )
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
gyp ERR! stack at failNoPython (C:\Users\Mint\AppData\Roaming\nvm\v6.10.1\node_modules\npm\node_modules\node-gyp\lib\configure.js:449:14)
gyp ERR! stack at C:\Users\Mint\AppData\Roaming\nvm\v6.10.1\node_modules\npm\node_modules\node-gyp\lib\configure.js:404:11
gyp ERR! stack at C:\Users\Mint\AppData\Roaming\nvm\v6.10.1\node_modules\npm\node_modules\graceful-fs\polyfills.js:264:29
gyp ERR! stack at FSReqWrap.oncomplete (fs.js:123:15)
gyp ERR! System Windows_NT 10.0.10586
gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Users\Mint\AppData\Roaming\nvm\v6.10.1\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "rebuild"
gyp ERR! cwd ${vscodeDir}\node_modules\oniguruma
gyp ERR! node -v v6.10.1
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
npm ERR! Windows_NT 10.0.10586
npm ERR! argv "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "install"
npm ERR! node v6.10.1
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE

npm ERR! [email protected] install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script 'node-gyp rebuild'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the oniguruma package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-gyp rebuild
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs oniguruma
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls oniguruma
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR! ${vscodeDir}\npm-debug.log

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

[Linux]

$ git clone https://github.com/microsoft/vscode
$ cd vscode
$ ./scripts/npm.sh install --arch=x64

したところ、同様のエラーが出た

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/windows-foreground-love):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"win32","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/windows-mutex):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"win32","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm ERR! Linux 3.13.0-24-generic
npm ERR! argv "/home/mint/.nvm/versions/node/v6.10.1/bin/node" "/home/mint/.nvm/versions/node/v6.10.1/bin/npm" "install" "--arch=x64"
npm ERR! node v6.10.1
npm ERR! npm v3.10.10
npm ERR! code ELIFECYCLE

npm ERR! [email protected] install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script 'node-gyp rebuild'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the native-keymap package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-gyp rebuild
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs native-keymap
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls native-keymap
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR! /home/mint/vscode/npm-debug.log

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

[Windows]

nvmでNode.jsを7.7.4に変更してインストール。
すると、先程のエラーメッセージよりずっと上の方に別のエラーメッセージが出ていることを発見

gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
gyp ERR! stack at PythonFinder.failNoPython (C:\Users\Mint\AppData\Roaming\nvm\v7.7.4\node_modules\npm\node_modules\node-gyp\lib\configure.js:454:19)
gyp ERR! stack at PythonFinder. (C:\Users\Mint\AppData\Roaming\nvm\v7.7.4\node_modules\npm\node_modules\node-gyp\lib\configure.js:480:16)
gyp ERR! stack at C:\Users\Mint\AppData\Roaming\nvm\v7.7.4\node_modules\npm\node_modules\graceful-fs\polyfills.js:284:29
gyp ERR! stack at FSReqWrap.oncomplete (fs.js:114:15)
gyp ERR! System Windows_NT 10.0.10586
gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Users\Mint\AppData\Roaming\nvm\v7.7.4\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "rebuild"
gyp ERR! cwd ${vscodeDir}\node_modules\oniguruma
gyp ERR! node -v v7.7.4
gyp ERR! node-gyp -v v3.5.0
gyp ERR! not ok

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

先程まで見逃していたのか、Node.jsを7.7.4に変更したら出たのかは不明

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

[Windows]
先程までも同じエラー(PYTHON環境変数が無い)が出ていたことを確認

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

[Ubuntu]

ノートパソコンが重いので、VMwareを強制終了させた。

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

python2.7 Windows版(python-2.7.13.msi)を公式サイトからダウンロードし、インストール

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

set で PYTHON環境変数が表示されないことを確認。
cmd.exeを再起動しないと反映されないのかもしれない。

> set PYTHON=C:\Python27\python.exe

を実行して、一時的に環境変数を設定

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

もう一度、

> scripts\npm install

を実行。
途中で .c ファイルのコンパイルが始まった。
エラー無しでスクリプトが終了した。

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

Windowsの場合は、自動でnative compilationになってしまうのではないか?

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

> npm run watch

を実行したが、必要ないようなので、 Ctrl+C で中断した

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

> .\scripts\code.bat

を実行した

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

{ errorCode: 'load',
moduleId: 'vs/code/electron-main/main',
neededBy: [ '===anonymous1===' ],
detail:
{ Error: ENOENT: no such file or directory, open '${vscodeDir}\out\vs\code\electron-main\main.js'
at Error (native)
errno: -4058,
code: 'ENOENT',
syscall: 'open',
path: '${vscodeDirEscaped}\out\vs\code\electron-main\main.js' } }

というエラーが出たので、npm run watchを再度実行。(npm run watchが実行途中だった可能性がある。)

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

Windowsを再起動

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

cmd.exeを開いて、 setx PYTHON C:\Python27\python.exe を実行。反映させるために、cmd.exeを再起動

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

Windows を再起動したら、 nvm コマンドが通るようになった

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

cd ${vscodeDir} を実行し、 npm run watch

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

別のプロンプトを開き、
cd ${vscodeDir}
.\scripts\code.bat
を実行。実行してもすぐに終了してコマンド受付に戻ってしまう。

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

.\scripts\code.bat ファイルが 0バイトのファイルになっていることが判明したため、npm run watch していたプログラムを一旦終了し、もう一度 npm install コマンドを実行する

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

git status コマンドを叩くと、

Your branch is up-to-date with 'origin/master'.
Changes not staged for commit:
(use "git add ..." to update what will be committed)
(use "git checkout -- ..." to discard changes in working directory)

    modified:   scripts/code.bat
    modified:   src/vs/monaco.d.ts

Untracked files:
(use "git add ..." to include in what will be committed)

no changes added to commit (use "git add" and/or "git commit -a")

というメッセージが出て、code.batが変更されていることが分かった。

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

git checkout .
を実行した。

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

.\scripts\code.bat

を実行したら、VSCodeが起動した

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

・pythonのインストールが必要だった?
・native compilation モードになってしまっていた
・code.batを消してしまっていた

@yuinore
Copy link
Contributor Author

yuinore commented Mar 25, 2017

・nvmをインストールしたら再起動した方が良いかもしれない

@kou
Copy link
Member

kou commented Mar 25, 2017

お疲れ様でした!

@kou kou closed this as completed Mar 25, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants