Bazaar 2.1 がリリースされました
Bazaar 2.1 がリリースされました。まだソースコードのみですが、ここからダウンロードできます。
Bazaarは 2.0 のリリース からUbuntuのような半年ごとのリリーススケジュールに移行していて、ほぼスケジュール通りのリリースとなりました。
今回も、私の基準でこの半年間のBazaarやその周辺の改良を紹介しておきます。
Bazaar本体の改良
まずはbzr本体の改善点です。
- bzr+ssh でも bzr+sftp のように、 ~ でホームディレクトリを指定できるようになりました。 自分のホームディレクトリ以下にリポジトリ置き場を持っている人は、 bzr+ssh://host/~/bzr/proj/branch の用に短いURLを利用できるようになります。
- メモリ使用量や速度が向上しました。特にタプルというPythonの軽量なデータ構造をさらに軽量にしたStaticTupleの存在が大きいです。Pythonを使う人はぜひ参考にしてみてください。
- updateコマンドに-rオプションがつきました。これは svn の update -r オプションと同じで、現在の作業ディレクトリの内容を一時的に過去のリビジョンで 上書きするコマンドです。ビルド手順が複雑なプログラムの過去の動作を確認したいときなど、現在の作業ディレクトリを使い回して過去のリビジョンをビルド したい場面で便利です。最新リビジョンに戻る場合は -r オプション無しで bzr update します。
GUIの改良
TortoiseBZR
私がメンテナをしているTortoiseBZRも、この半年間で大きく改善しました。- ビルドするのにMicrosoft Visual Studio Standard以上が不要になりました。
今まではシェル拡張の作成にATLを使っていたのですが、もうすぐでるVisual Studio 2010 でも無料のExpress EditionにATLが付属しないことが判明して、ATLの摘出手術をしました。 現在は Windows SDK と Python だけでビルドが可能です。ということで、一緒にメンテナしてくれる人を募集中です(笑) - ステータスアイコンのオーバーレイ表示で、まだステータスを取得していないファイルには ? の形をしたアイコンを表示しているのですが、 ステータス取得完了後にF5キーなどで手動更新しなくても自動でアイコンが更新されるようになりました。
- i18n対応をしました。TortoiseBZR以外のGUIツールも日本語コミュニティの皆さんの強力で高い翻訳率を維持しているので、英語アレルギーな人にも安心してお使いいただけます。
- コンテキストメニューの内容を整理しました。特に、Bazaarの推奨GUIである bzr-explorer や、任意のコマンドを実行できる qrun をコンテキストメニューから実行することが可能になりました。
- ファイルの変更を監視しているディレクトリ内で大量のファイルの変更が発生した場合(プログラムのビルド中など)にCPU使用率が若干高めになっていたのを修正しました。
qbzrとbzr-explorer
全体的に完成度が高くなっています。特に、 bzr-explorer は先日 1.0rc1 をリリースしました。 0.x 系から 1.x 系に変更したのは、開発者の「そろそろ一般的な作業はこのGUIで完結できるだろう」という自信の表れだと思います。
- qdiff などでテキストファイルを表示する際、テキストのエンコーディングをGUIから指定できるようになりました。
- qbrowse や qcommit などのツリー表示で、ファイルのリネームや移動ができるようになりました。
- bzr-explorer の作業ツリーブラウザでファイルを開くときに、拡張子毎にファイルを開くのに使うアプリケーションを指定できるようになりました。
Bazaar 2.2 に向けて
2.1 は 2.0 のブラッシュアップのようなリリースですが、今後はまたユーザーが使いやすくなるような改良がどんどん入ってくると思われます。
私は bzr 本体のヘルプなどの i18n 対応を担当しようかと思っています。
他にも、gitやhgのように「作業ツリーとリポジトリは一つで、その中でたくさんのブランチを扱う」というスタイルを実現する colocated branch も、試験実装となる新しいプラグインが bzr-colo という名前でリリースされ、活発な議論がされています。
また、最近 bzr-git も試してみたのですが、シンボリックリンクの入ったgitリポジトリをうまく扱えないことに気づいて修正した以外は問題なくなっていました。 もうそろそろ 1.0 のリリースが近いのではないかと思います。 bzr-2.2 がリリースされたら 「github のクライアントとしてTortoiseBZR を使う」なんて記事を書くつもりです。
現在、日本でBazaarを使うのに一番足りていないのは日本語の情報だと思うので、日本語の情報を集めるHubサイトを作ろうと思います。 先週会社のデータセンターにある空きサーバーを一台借りて、空き時間を使ってセットアップ中なので、もうしばらくお待ち下さい。