2011年10月28日金曜日

Xcode4.2のバグ

Xcode4.2.0(for SnowLeopard)にはいくつかバグが居る。
私が把握しているのは以下の通り。

(1)Settings.bundleが編集できない
Xcode4.1以前で編集するしかない
4.1でSettings.bundleを開いたまま終了し、4.2で同じプロジェクトを開くと、その内容が表示された状態で起動する。
が、ここで編集するとファイルが破壊されることがある。

(2)iPadを含むアプリをArchiveしようとすると、必ず証明書が無効という警告が出る
しかし、実際にはそのArchiveでアップロードできるので問題ない。

(3)タブをまとめようとすると落ちることがある
ファイルを1つ開き、何も操作しないまま別のファイルを開いてタブをまとめようとすると落ちるような気がする。
また、タブをたくさん開いていると落ちやすい。

(4)追加された機能に新たにキーバインドが設定されているため、それと重複する設定があった場合、表面上、注意も何もなしにキーが無効になってしまう
標準のキーのまま使っているなら問題ないのかもしれないけど、キーバインドを変更していてると、
Xcode4.2にしたとたん一部操作が出来なくなることがある。これは、新規の機能に割り付けられたキーバインドと重複しているせい。Preferenceからキーバインドを見て、重複警告が出ている部分を修正する。

(5)CodeSigningの設定が外れている(事があるので)、再設定が必要

(6)エディタでソースの一部を折りたたんでいる状態で編集すると落ちやすい。
1ソースファイル内で折りたたんでいる場所が多いと落ちやすいような気がする。
これは4.2だけじゃなく、4.1でも発生する。
折りたたみは、現状ほぼ使えない状態だと言える。

(7)条件付きコンパイルがあるとき、ブレークポイントの位置がずれる

#if 0 // 実際にはコンパイル条件によりここがコンパイルされないとき
ソース←ここにbreakpointが付いていると
#endif

-(id)method
{
    // ここの最初の実行行でbreakPointが効いてしまう(止まる)
}
このブレークポイントは無視すべき。

(8)プログラムを停止したとき、タブ名と表示されている内容が食い違うことがある
現在選択中のタブ内にプログラムを停止したときにはそのソースと停止した場所が表示されるが、このときに、タブ名(表示しているソースファイル名)を変更しないときがある。
だから、「一体ここはどこ?」となることがある。

(9)日本語ファイル/フォルダ名があるとき、gitがCommit出来ない
エラーが発生する。最初からわかっていれば日本語ファイル名は使わなかったが、
後から適応しようとして困った。
フリーウエアの「gitX」では可能なので、併用する。

Xcodeは4になって、あまりにも遅くなり使い物にならなかくなったが(だからずっと3.2.6使ってた)、4.1で改善されてまともに使えるようになった。でもまだバグが散見される。
致命的な問題もあるので、一刻も早いデバッグを望む。

Xcode4.2.1でどうなっているかは未検証。というか、4.2.1のSnowLeopard対応版がまだ出てないので、試しようがない。以前Lionを導入してえらい目に遭ったので、うちではSnowLeopardに戻したから。


ちなみにうちではV4.2/4.1/3.2.6を全部使えるようにしてある。3本までのソースを同時編集することもあるから。便利。

・・・2012/03/11追記

Xcode4.3.1は、またこれはこれで大バグだらけで困った状況にある。
特にシミュレーターがiOS5のデバッグにおいて、一部状況下で全く使い物にならなくなったのが痛い。


アップルはOSといい開発環境といい、もっともっとデバッグに人員を割くべきだ。
儲かってるんだから。

0 件のコメント:

コメントを投稿