-
Notifications
You must be signed in to change notification settings - Fork 165
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
ビルドツールの検索を改善 #653
ビルドツールの検索を改善 #653
Conversation
PRありがとうございます。
|
内容については、これでappveyorが通るなら問題ないんじゃないかと考えています。 CIの完了を待ってから判断のつもりで、reviewコメント入れるのは早くて明日朝となる見込みです。 |
趣味が出る分野だと思うので、ご意見があればお願いします。 https://github.com/Microsoft/vswhere
とのことなので、当面はこのパスに含まれる・・・と思います。(微妙にあてにならないけど) |
従来との相違点はこんな感じでしょうか。
思うところです。
明確な理由があるのでなければ1番目は特に対応してほしいです。 2番目は言い出しっぺがやれ案件です。 3番目は効率を気にするならやった方がいいかなという程度です。CMD_* という環境変数の * 部分をバッチの引数とすれば呼び出し元とのコンセンサスは簡単にとれます。さらにそれがバッチ内のラベル名と一致するなら処理の振り分けも簡単です。 |
find-tools.bat
Outdated
:msbuild | ||
:: ref https://github.com/Microsoft/vswhere | ||
setlocal | ||
PATH=%PATH%;%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
%ProgramFiles% と %ProgramW6432% に対する指定が抜けています。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
↑ 32bit OS で動かすときに必要です。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
意図的に64bitのみを想定してます、ならそれはそれで良い気もします。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
他の箇所は 32bit でも対応出来るようにしているのにここだけ対応しないのは、中途半端な対応ですし、変更前は対応していたのに、この対応で削る理由はないと思います
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1 の意味を補足しときます。
この対応で削る理由はない、についての「だよねー」の意味です。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
vswhereのドキュメントに%ProgramFiles(x86)%とのみあったので、32bitOSは考慮漏れでした
find-tools.bat
Outdated
PATH=%PATH%;%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\; | ||
for /f "usebackq tokens=1* delims=: " %%i in (`vswhere -latest -requires Microsoft.Component.MSBuild`) do ( | ||
if /i "%%i"=="installationPath" ( | ||
endlocal && set "CMD_MSBUILD=%%j\MSBuild\15.0\Bin\MSBuild.exe" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
%%j はどこで定義されるのですか?
appveyor のログを見る限りはちゃんと動いているようですが。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
これは確かforコマンドの仕様。複数トークンを処理する場合には、指定した文字から連番で変数が割当たります。iを指定してるので二個目ですね。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
これは確かforコマンドの仕様。複数トークンを処理する場合には、指定した文字から連番で変数が割当たります。iを指定してるので二個目ですね。
なるほど、知りませんでした。
for /? に載ってますね。
ところで、vswhere
msbuild.exe
で検索したらこんなサイトがありました。
https://github.com/Microsoft/vswhere/wiki/Find-MSBuild
-property installationPath
をつけて実行するともっと直接的に検索できるようです。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
こちらのほうが良さそうなので、変更しました
find-tools.bat で全部のツールを検索する場合、cppcheck や doxygen のインストールの順番に install セクションというが appveyor.yml にあるのでそこでやるのがわかりやすいと思います。 |
ツールに関するドキュメントを削っていますが、 find-tools.bat でも tools/hhc/readme.md で解説していた tips を使っているので |
find-tools.bat
Outdated
@@ -0,0 +1,89 @@ | |||
:: ビルドツールのパスを見つける |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
文字コードが UTF-8 で保存しているのでローカル環境で実行すると
以下のように文字化けしてしまいます。文字化けしないように(バッチファイル内で)コンソールの文字コードを適切に設定するか、あるいは 英語で記述するようにしてローカル環境と appveyor 上の両方で問題ないようにしてほしいです。
G:\gitwork\SakuraEditor\PR\sakura-PR653>find-tools.bat
G:\gitwork\SakuraEditor\PR\sakura-PR653>縺、縺九l縺ー縺昴l繧剃スソ縺・
'縺、縺九l縺ー縺昴l繧剃スソ縺・' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
G:\gitwork\SakuraEditor\PR\sakura-PR653>°繧峨↑縺代l縺ーCMD_7Z繧貞炎髯、縺吶k
'°繧峨↑縺代l縺ーCMD_7Z繧貞炎髯、縺吶k' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
find-tools.bat
笏懌楳 CMD_7Z=C:\Program Files\7-Zip\7z.exe
笏懌楳 CMD_HHC=C:\Program Files (x86)\HTML Help Workshop\hhc.exe
笏懌楳 CMD_ISCC=
笏懌楳 CMD_CPPCHECK=C:\Program Files\doxygen\bin\doxygen.exe
笏懌楳 CMD_DOXYGEN=
笏披楳 CMD_MSBUILD=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\MSBuild.exe
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
とりあえず、Shift JISにしてみました。ダメそうなら英語のみにします。
chcp 65001がデフォの私の端末では逆に罫線が文字化けしますが、対処法がわからぬ
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
とりあえず、Shift JISにしてみました。ダメそうなら英語のみにします。
他のバッチファイルはややこしいことをしたくないので、全部英語にしています。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
tree コマンドにこういうオプションがあります。
/A 拡張文字ではなく、ASCII 文字で表示します。
+と\(だが¥だ)と|を使うみたいです。>罫線
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
とりあえず、Shift JISにしてみました。ダメそうなら英語のみにします。
とりあえず英語にしましょう。日本語対応は後で考えましょう。
find-tools.bat
Outdated
|
||
:7z | ||
setlocal | ||
PATH=%PATH%;%ProgramFiles%\7-Zip\;%ProgramFiles(x86)%\7-Zip\;%ProgramW6432%\7-Zip\; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
7-Zip
の部分が繰り返し使われるので、変数で定義して共通化したい気がします。
HTML Workshop 等他のツールも同様です。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"7-zip" に 7zip という名前を付けることに意味はありません。
ちょっと逸れますが、パスはそれ自体が ID です。相対・絶対など複数の表記法はありますが実体としてパスは ID です。パスの一部に変数名という形で別名を付けるとアイデンティティが希釈されます。長いパス全体に短い別名を付けることに意味がないとは言いませんが、a\b\c\f.x に A\B\C\f.x という別名を付けたり AB\C\F という別名を付けることは難読化と変わりがありません。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
つまりはこういうことです。
set Z7=7-zip
と定義したが今度は Z7
という変数名を複数の場所で利用することになるので、この名前を繰り返さないで済むように set Z7VAR=Z7
と定義して Z7
を利用する場所では Z7VAR
という名前を書くようにしよう。
m-tmatma さんはこういうことをしています。
ちなみに少し前に雑談場に貼ったリンク先で知りましたが、こういう多重展開テクニックがあるようです。※Z7VAR の中身は 7-zip ではなく Z7 という変数名であることに注目。
>set Z7=7-zip
>set Z7VAR=Z7
>call echo %%%Z7VAR%%%
7-zip
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
コメントを勘違いされているようなので、コードで示すとこんな感じです。
:7z
setlocal
set APPDIR=7-Zip
PATH=%PATH%;%ProgramFiles%\%APPDIR%\;%ProgramFiles(x86)%\%APPDIR%\;%ProgramW6432%\%APPDIR%\;
APPDIR の変数名は何でもいいです。 (setlocal の後なので変数はローカル化される)
このようにすることで HTML Help Workshop の場合や Inno Setup 5 の場合も
PATH の代入の行を共通化でき、かつパス名部分の重複を回避して共通化することができます。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
たしかにそこまでは読んでいませんでした。「別名を付ける」ではなく「コードを共通化する~~共通のコードを利用するひとつのコードを共有する」ことが目的であるなら意義を認めます。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
この際書いてしまいますが
m-tmatma さんはこういうことをしています。(現在完了形)
が指し示しているのは https://github.com/sakura-editor/sakura/pull/378/files における project_name 変数のことです。
CMakeLists.txt においてプロジェクト名やターゲットは識別子です。パスとは違い十分に短い識別子です。これを変数をつかって匿名化することは何にも寄与しません。
本人がそうすることを批判はしませんが、他人に要求するなら対等な立場から反論を述べますし、自分が干渉されたなら全力で抵抗します。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
何を指すのか掴めませんでした。
set Z7=7-zip と定義したが今度は Z7 という変数名を複数の場所で利用することになるので、この名前を繰り返さないで済むように set Z7VAR=Z7 と定義して Z7 を利用する場所では Z7VAR という名前を書くようにしよう。
m-tmatma さんはこういうことをしています。
です。事実と異なります。
その行為のナンセンスさを示すためのコメントが #653 (comment) です。7-Zip を繰り返すことと APPDIR を繰り返すことに違いはありません。
7-Zip の場合は短いですが、
例えば、Inno Setup 5\ISCC.exe
のパスの場合は、Inno Setup 5
の部分は
例えば Inno Setup が バージョン6 になったら多分 Inno Setup 6
になるだろうし
アプリケーションのフォルダパスは 64bit 版でも 32bit 版でも変わらないだろうから
共通部分を共通化するという意図です。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CMakeLists.txt においてプロジェクト名やターゲットは識別子です。パスとは違い十分に短い識別子です。これを変数をつかって匿名化することは何にも寄与しません。
この記述は 先頭で変数として project_name を定義しています。
それで何度も同じ記述を繰り返したくないから、${project_name} という
変数で参照するようにしています。
途中でプロジェクト名を変えたくなった場合とかに一箇所だけ変えれば
いいようにするものです。
あと、#378 に関して言いたいことがあれば、ここに書かずに、#378 に書いて
ここには #378 にコメント書きました、ということだけ書くのがいいかと思います。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
この記述は 先頭で変数として project_name を定義しています。
それで何度も同じ記述を繰り返したくないから、${project_name} という
変数で参照するようにしています。途中でプロジェクト名を変えたくなった場合とかに一箇所だけ変えれば
いいようにするものです。
この理屈はわかります。すべての問題は余分の間接層で解決するそうですから。100 の間接層を導入すれば 100 の問題が解決するだろうという揶揄やり過ぎへの戒めが #653 (comment) に込められています。「途中でプロジェクト名を変えたくなった場合」は現実の問題ではありません。「プロジェクト名を変えたくなったが exe 名を変えたくない場合」には対応できません。ひとつの問題も解決する前にべつのやっかいごとを持ち込んでいます。
あと、#378 に関して言いたいことがあれば、ここに書かずに、#378 に書いて
ここには #378 にコメント書きました、ということだけ書くのがいいかと思います。
本人がそうすることは批判しないと書きました。#378 について他人のやり方をとやかく言うつもりはありません。しかしここでの 7-Zip に APPDIR という別名を付けてはどうかという他人への提案に対しては、反対意見もあるということを言わずにはいられません。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
このコメント、改めて見てみると言ってることは分かる気がしました。
純粋に「それ今やるべき?」というツッコミがないでもないですが、複数のツールを対象に似たような判定を作っていくうえで、コピペできる判定のセットを作っておくと増やすのに便利だと思います。
記述内容的に「感想」に近いコメントなので
やるかどうかはPRを出している人の判断に委ねられると思ってます。
「要望」なのか「感想」なのかはなるべく分かるようにしていけるといいなと思います。
(と、コメントの大半が「レビューとは関係ありません」なぼくが言うとアレですが 😄)
他の find-xxx.bat は削除したのに find-doxygen.bat が残ってるのは消し忘れ? |
これだけで単体で PR を投げるのでもいいと思います。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ビルドは通ったけどままならん感じですね。
ぼくも気になったコメントに困ったちゃんマークを付けました。
基本的にok、何点か修正要となった認識です。
あと、以前のバッチファイルに関して、markdown で説明していた箇所も合わせて更新してほしいです。 |
- FORCE_POWERSHELL_ZIPオプションを廃止し、該当ドキュメントを除去 - find-tools.batを1度しか呼び出さないように修正 - zip関連バッチでfind-toolsを呼ぶように - find-doxygenの消し忘れ - find-tools.batをShift JISに
すぐに修正できそうなところだけ一旦修正しました。 初回のみ呼び出すように
考えましたが、バッチが複雑になりそうな方法しか思いつかなかったので、FIND_TOOLS_CALLEDが未定義の場合のみ検索するようにしてみました。 cppcheckとdoxygen#653 (comment) ドキュメントバッチファイルの説明やtipsなんかはWikiやdocsディレクトリとかに移してもいい気がします。細々したドキュメントがあると、FORCE_POWERSHELL_ZIPのように調べ忘れがでそうです。 |
逆だと考えています。 markdown でリポジトリに入れることでレビュープロセスを通るので、 wiki に書くとレビュープロセスを通らないので更新されないまま見過ごされて FORCE_POWERSHELL_ZIP が wiki に書いてあったら、更新できたと思いますか? もし wiki に FORCE_POWERSHELL_ZIP に関して記載する場合、 |
find-tools.bat
Outdated
setlocal | ||
PATH=%PATH%;%ProgramFiles%\7-Zip\;%ProgramFiles(x86)%\7-Zip\;%ProgramW6432%\7-Zip\; | ||
:: where�̏o�͂�1�s�ڂ�CMD_7Z�ɑ�� | ||
for /f "usebackq delims=" %%a in (`where 7z`) do ( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
where
はwhere $ENV:file
と書くことで、PATHの代わりにENV環境変数から検索ができます。
PATHを汚さないためだけにsetlocal
を使う必要はありません。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
たぶん where $ENV:file
と書く方がカッコいいと思います。
直すの大変そうなので、別PRで後日対応でもいい気はします。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
よく考えると PATH という特別な変数に変更を加える必要がなくなるとはいえ、現在の実行環境に新たな変数を定義することになるわけで、それなら setlocal は常に付けてスコープを最小限にするのがお行儀のいいスタイルではないかと思います。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ログに問題っぽいものを見付けたのでコメント入れました。
対応可能なら対応してから入れたいです。
対応難しいようならそのまま入れていい気もしますが、まずはご確認ください。
find-tools.bat
Outdated
setlocal | ||
PATH=%PATH%;%ProgramFiles%\7-Zip\;%ProgramFiles(x86)%\7-Zip\;%ProgramW6432%\7-Zip\; | ||
:: where�̏o�͂�1�s�ڂ�CMD_7Z�ɑ�� | ||
for /f "usebackq delims=" %%a in (`where 7z`) do ( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
たぶん where $ENV:file
と書く方がカッコいいと思います。
直すの大変そうなので、別PRで後日対応でもいい気はします。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
失礼。commentで残すつもりがapproveになっていたので取消。
Wikiでのバージョン管理は確かにそうですね・・・ docsディレクトリに移すのはどうでしょうか?
同じファイル名で説明文があるのもそれはそれで見やすいので、難しいところかもしれません。(それを含めてファイル先頭に説明を書いて見たものの、バッチファイルの文字コードで苦しむリスクの方がたかそうなので削除するつもりです) |
いっぱいファイルがあると見にくいということなら そうすれば、ファイルが増えても、一つのフォルダあたりのファイル数を抑えられますし バッチファイルと同名でドキュメントがあるとドキュメントを最新にする努力をしやすいように思います。 |
tools/zip/listzip.bat
Outdated
@echo ------------------------------------------------------- | ||
@echo ---- you can make this faster by installing 7-zip. ---- | ||
@echo ------------------------------------------------------- | ||
echo examining %SRCZIP%. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
zip 系のバッチファイルで、ここだけ echo の前の @ マークが消えてますが、
間違って削除しました?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
多分ミスです。ところで、@echo off
以降は@をつけても特に意味はないと認識してるんですが、この@は何か意図があるものですか?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
もともと別のバッチを call で呼んでいるので
バッチファイルの中の処理に依存しないように
するためだったと思います。
パスの検索用のバッチファイルって削除するとう結論でした?
tools/find-tools.md
Outdated
デフォルトパスにインストールしていない場合や別の実行ファイルを使いたい場合、実行前にパスを通しておくかCMD_7Zなどの対応する環境変数に絶対パスをセットしておいてください。 | ||
|
||
## 外部ツールの一覧 | ||
| ツール名 | 環境変数 | ソフトのデフォルトパス | ファイル名 | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
この説明では ソフトのデフォルトパス
が何を意味するのかわからないと思います。
具体例を書けばいいと思います。
あと、具体例を書くのであれば、doxygen を使ったほうがいいと思います。
理由は、ソフト名とアプリのインストールパスが異なるので説明がわかりやすくなると思います。
事前に環境変数の`FORCE_POWERSHELL_ZIP`を1にセットすることで、7zの検索をスキップできます。 | ||
7z未インストールの環境で[PowerShellによるzipの処理](zip/readme.md)が正しく行われるかを検証する際に活用できます。 | ||
|
||
### 参照 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
この参照は msbuild に対するものなので、MSBuild の章の下にぶら下げたほうがいいです。
tools/find-tools.md
Outdated
4. 1~3で見つからなければCMD_MSBUILDには何もセットしない | ||
|
||
## zipの処理に7zではなくPowerShellを強制する | ||
事前に環境変数の`FORCE_POWERSHELL_ZIP`を1にセットすることで、7zの検索をスキップできます。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FORCE_POWERSHELL_ZIP
に対して build.md に対するリンクを張ったほうがいいと思います。
tools/find-tools.md
Outdated
| Inno Setup 5 | CMD_ISCC | Inno Setup 5 | ISCC.exe | | ||
| cppcheck | CMD_CPPCHECK | cppcheck | cppcheck.exe | | ||
| doxygen | CMD_DOXYGEN | doxygen\bin | doxygen.exe | | ||
| MSBuild | CMD_MSBUILD | 特殊 | | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
msbuild のファイル名は空にする必要はないと思います。
tools/find-tools.md
Outdated
|
||
1. CMD_7Zがセットされていればそれを使う | ||
2. パスが通っていればそれを使う | ||
3. 以下のディレクトリ内の「ソフトのデフォルトパス」で見つかればそれを使う |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
以下のディレクトリのサブディレクトリを順番で探すという説明があったほうかいいと思います。
あと気になったのは find のバッチファイルって結構時間がかかりましたが、もともとこんなに時間かかりました?7秒ぐらいかかったと思います |
レビュー受けた箇所直しました。
あれ、このメッセージなんだろう・・・、なんか変な操作をしてしまってたらすいません
AppVeyorのログを見る感じ、find-tools.batは2秒前後で終わってるっぽいです。タイミング問題とかはあるかもしれませんが、2回以上は無駄処理しないはずなので時間はそれほどじゃまにならないはず |
tools/find-tools.md
Outdated
|
||
## zipの処理に7zではなくPowerShellを強制する | ||
事前に環境変数の`FORCE_POWERSHELL_ZIP`を1にセットすることで、7zの検索をスキップできます。 | ||
7z未インストールの環境で[PowerShellによるzipの処理](zip/readme.md)が正しく行われるかを検証する際に活用できます。[build.md](../build.md#powershell-によるzipファイルの圧縮解凍内容確認の強制)も参照してください。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
7z未インストールの環境で試すためではなく、7z インストール済みの環境で
powershell での zip 処理を行うためです。
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
「7z未インストールの環境をエミュレートする」的な意味合いで書いてましたが、そうとも読み取れますね。紛らわしくないように訂正しました。
externals.bat は使用されていないバッチファイルですが、 |
再度ローカルで実行したら 1 秒ほどになりました。 |
新しいコミットが approving review を無効にしたってことだと思います。無効になるようにリポジトリが設定されています。 |
そうです。 |
approving previewはそういうことなんですね。変なことしてなくてよかった。 externals.batは除いたはずなのに、誤操作っぽいです・・・ |
細かい指摘ですが、 tools/zip/unzip.bat では tools/zip/listzip.bat では |
今後の課題でいいのかな?・・・ なんとなく |
該当の箇所をこの PR で変更しているので、 |
修正しました。 |
対応ありがとうございます。 |
(一応確認)一応2名からレビューもらったということで、マージして大丈夫でしょうか? |
ビルド開始時にfind-tools.batを呼び出し、まとめて検索を行います。
以下のような出力が出ます。
探索アルゴリズムの改善
文中のコメントの通り、以下のような順で検索します。
を削除(未定義にする)には何もセットしないただし、msbuildのみvswhereを使います。Enterpriseで正しく発見できることを確認しました。
その他
勘違いしていなければ、
set HOGE=
すると、環境変数HOGEは削除されます。if "%CMD_HHC%" == ""
はif not defined CMD_HHC
と同義で、こちらのほうが説明的です。