## お知らせ お知らせ — Cutterの歴史 |

## 1.0.8: 2009-08-29

- libsoupサポートの追加:

  - HTTPクライアント機能:

    - soupcut_client_new()

    - soupcut_client_set_base()

    - soupcut_client_send_message()

    - soupcut_client_get()

    - soupcut_client_get_n_messages()

    - soupcut_client_get_latest_message()

    - soupcut_client_get_async_context()

  - HTTPサーバー機能:

    - soupcut_server_take()

    - soupcut_server_take_new()

    - soupcut_server_build_uri()

  - 検証:

    - soupcut_message_assert_equal_content_type()

    - soupcut_client_assert_equal_content_type()

    - soupcut_client_assert_response()

    - soupcut_client_assert_equal_body()

    - soupcut_client_assert_match_body()

- GHashTable用の検証ユーティリティ に関数を追加:

  - gcut_hash_table_string_string_copy()

- Cutter利用プロジェクトリスト にmroongaを追加

- Fedora用rpmパッケージをサポート

- Debian用debパッケージをサポート

- Ubuntu用debパッケージをサポート

- lcov 1.7対応

- ドキュメント:

  - Ubuntu用インストールドキュメント を追加

  - FreeBSD用インストールドキュメント を追加

  - Mac OS X用インストールドキュメント を追加

  - Solaris用インストールドキュメント を追加

## 1.0.7: 2009-05-20

- バージョン情報 を提供

- GBoxed型のテストデータ をサポート

- クラッシュ時のテスト名表示（可能なら）

- 共有ライブラリ解析処理の追加

  - ELF（Linux/*BSD）、PE（Windows）、Mach-O（Mac OS X）に対応

  - BFDによる解析処理をデフォルト無効に変更

- ドキュメント:

  - cutterコマンドのman を追加

  - Debian用インストールドキュメント を追加

  - Cygwin用インストールドキュメント を追加

  - チュートリアル にCygwin関連の注意書きを追加[山川さん]

- テストユーティリティの追加:

  - cut_build_path()

- 検証の追加:

  - cut_assert_equal_boolean()

  - cut_assert_not_equal_boolean()

  - cut_assert_equal_substring()

  - cut_assert_not_equal_substring()

  - cut_assert_not_equal_double() [グニャラくん]

  - cut_assert_not_equal_int() [グニャラくん]

  - cut_assert_not_equal_uint() [グニャラくん]

  - cut_assert_not_equal_memory() [グニャラくん]

  - cut_assert_not_equal_size() [グニャラくん]

  - cut_assert_not_equal_string() [グニャラくん]

  - gcut_assert_not_equal_pid() [グニャラくん]

- 互換性:

  - これまでの"cut_"プリフィックスなしのフィクスチャ用関数を非推奨に変更。[グニャラくん]

    - setup() -> cut_setup()

    - teardown() -> cut_teardown()

    - startup() -> cut_startup()

    - shutdown() -> cut_shutdown()

- バグ修正:

  - チュートリアルのtypoを修正: [海野さん]

  - ファイルディスクリプタのリダイレクト方法の修正: [海野さん]

- --disable-signal-handlingオプションの追加

## 1.0.6: 2009-03-01

- Cutter利用プロジェクトリスト を追加

- 外部コマンドを便利に利用するためのAPI を追加

- バックトレース検出機能の改良:

  - CUT_RELATIVE_PATH

- 検証のユーザ指定のメッセージ関連APIを改良:

  - 省略可能なメッセージを非推奨に変更

    - GCC以外のコンパイラをサポートするため

  - 検証とは別にユーザ指定のメッセージを指定するAPIの追加:

    - cut_set_message()

    - cut_set_message_va_list()

  - 複数の検証で同じメッセージを利用できるAPIの追加:

    - cut_keep_message()

- データ駆動テスト作成支援の強化:

  - 便利なテストデータ用API

- フィクスチャ関数へ"cut_"プレフィックスの追加:

  - cut_setup()

  - cut_teardown()

  - cut_startup()

  - cut_shutdown()

- テストユーティリティの追加:

  - オブジェクト調査関数

  - cut_push_backtrace()

  - cut_pop_backtrace()

  - cut_take_replace()

  - gcut_enum_parse()

  - gcut_flags_get_all()

  - gcut_flags_parse()

  - gcut_list_equal_int()

  - gcut_list_equal_uint()

  - gcut_list_equal_string()

  - gcut_list_inspect_enum()

  - gcut_list_inspect_flags()

  - gcut_list_inspect_int()

  - gcut_list_inspect_object()

  - gcut_list_inspect_string()

  - gcut_list_inspect_uint()

  - gcut_list_string_new_array()

  - gcut_take_new_list_string_array()

- 検証の追加:

  - cut_assert_equal_size()

  - cut_return()

  - gcut_assert_equal_list()

  - gcut_assert_equal_pid()

## 1.0.5: 2008-10-15

- 最大同時スレッド数指定のサポート

  - --max-threadsオプション

  - サブプロセスに指定する場合:

    - cut_sub_process_get_max_threads()

    - cut_sub_process_set_max_threads()

- GdkPixbufのサポート:

  - 画像比較

  - 画像差分

    - 期待値:

    - 実測値:

    - 差分:

- デバッグ支援の強化:

  - --keep-opening-modulesオプションの追加

    - デバッグ時にシンボル解決できるように開いたモジュールを閉じない

  - SIGABORT時もSIGSEGV時のようにテスト結果を表示

- --nameオプションによる繰り返しテストの指定をサポート

- 'but was:' -> 'actual:'

- テストユーティリティの追加:

  - cut_take()

  - cut_take_memdup()

  - cut_take_memory()

  - cut_take_strdup()

  - cut_take_strndup()

  - gcut_take_new_hash_table_string_string()

  - gcut_take_new_list_string()

  - gcut_hash_table_string_string_new()

  - gcut_hash_table_string_string_new_va_list()

- 検証の追加:

  - cut_assert_operator_double()

  - cut_assert_operator_uint()

  - gcut_assert_equal_enum()

  - gcut_assert_equal_error()

  - gcut_assert_equal_flags()

  - gcut_assert_equal_int64()

  - gcut_assert_equal_list_enum()

  - gcut_assert_equal_list_flags()

  - gcut_assert_equal_list_object()

  - gcut_assert_equal_list_object_custom()

  - gcut_assert_equal_object()

  - gcut_assert_equal_object_custom()

- ユーザ独自検証作成サポートの強化:

  - バックトレース対応

    - cut_trace()

    - cut_trace_with_info_expression()

  - 検証作成

    - 検証作成の補助

    - GEnumとGFlags用の検証ユーティリティ

    - GError用の検証ユーティリティ

    - GHashTable用の検証ユーティリティ

    - GList用の検証ユーティリティ

    - GObject用の検証ユーティリティ

    - GValue用の検証ユーティリティ

  - cut_equal_double()

  - cut_equal_string()

- バグ修正:

  - メモリリークの修正（森さん）

  - setup()/teardown()内での検証・エラーなどの結果がでないバグを修正

## 1.0.4: 2008-08-27

- オプション:

  - 過去のテスト結果をログとして保存する--stream-log-dirオプションの追加

  - テストが失敗したら中断する--fatal-failuresオプションの追加（デバッガとの連携のため）

- 結果出力:

  - 行が長い場合は折りたたんでdiffした結果も表示

  - 実行中を示す印（「.」や「F」）を適度に改行しながら出力

- 属性を設定する cut_set_attributes() の追加

- マルチプロセスでのテスト をサポート

- データ駆動テストのマルチスレッド実行のサポート

- 検証の追加:

  - gcut_assert_equal_hash_table_string_string()

  - gcut_assert_equal_time_val()

- 便利機能の追加:

  - gcut_hash_table_string_string_new()

  - gcut_take_hash_table()

- 修正:

  - GOfficeがない環境でビルドが失敗する問題の修正（Kazumasa Matsunagaさんによる報告）

- 実験的:

  - ログを解析する--analyzerモードの追加

## 1.0.3: 2008-07-15

- データ駆動テストのサポート:

  - cut_add_data()

- 検証の追加:

  - gcut_assert_equal_list_uint()

- 検証の名前変更:

  - GLibサポートが必要な機能はcut_ではなくgcut_からはじまる名前に変更。以前からあるcut_はじまりの名前も使えるが非推奨。詳細は GLibサポート付きの検証 を参照。

- 便利機能の追加:

  - cut_append_diff() :文字列にdiffを追加

  - gcut_list_string_new() / gcut_list_string_free() :文字列のリストの作成を支援。

  - gcut_take_error() : GError *の所有権をCutterに移譲

  - gcut_take_list() : GList *の所有権をCutterに移譲

  - gcut_take_object() : GObject *の所有権をCutterに移譲

## 1.0.2: 2008-06-27

- フィクスチャデータのサポート:

  - cut_set_fixture_data_dir()

  - cut_get_fixture_data_string()

  - cut_build_fixture_data_path()

- ユーティリティの追加:

  - cut_remove_path()

- 検証の追加:

  - cut_assert_equal_fixture_data_string()

  - cut_assert_path_not_exist()

  - cut_assert_remove_path()

  - cut_error_errno()

- 実験的:

  - Windowsサポート

## 1.0.1: 2008-06-13

- AC_CHECK_COVERAGEの改良

- ドキュメント:

  - 追加: SennaのテストをCutterで書くには

  - 修正: GLib 2.16以上が必要

- 実験的:

  - GStreamerサポート:

    - テスト結果をリモートへの転送するなど

  - warmup()/cooldown()のサポート

## 1.0.0: 2008-05-20

- 検証の追加

  - cut_assert_equal_pointer()

  - cut_assert_g_error()

  - cut_assert_match()

  - cut_assert_match_with_free()

- テスト対象から除外するファイルを指定する--exclude-fileオプションの追加

- テスト対象から除外するディレクトリを指定する--exclude-dirオプションの追加

- cutter.m4に--without-cutterを追加（configureのオプション）

- 実験的:

  - Cutterプロトコルの実装（CutXMLStreamerとCutStreamParser）

  - cut_take_g_error()の追加

  - Mac OS Xのサポート

## 0.9.0: 2008-05-12

- 検証の追加

  - cut_assert_equal_string_array_with_free()

  - cut_assert_true()

  - cut_assert_false()

  - cut_assert_file_exist()

- AC_CHECK_GCUTTERの追加

- 実験的: GObjectサポート:

  - cut_take_g_object()

## 0.8.0: 2008-05-07

- LGPL2 -> LGPL3

- 検証の追加

  - cut_assert_equal_g_list_int()

  - cut_assert_equal_g_list_string()

  - cut_assert_errno()

- 省略のサポート: cut_omit()

- テストケースの最初と最後に実行するフックstartup/shutdownの追加

- diffのサポート

- gcovのサポート

- 実験的: forkのサポート:

  - cut_fork()

  - cut_wait_process()

  - cut_fork_get_stdout_message()

  - cut_fork_get_stderr_message()

## 0.7.0: 2008-03-26

- パッケージの修正

- --help-allの修正

- 出力するXMLのフォーマットのドキュメントを追加

## 0.6.0: 2008-03-21

- XMLで結果を出力する-xml-reportオプションの追加。

- テストケース名で実行するテストケースを並び替える--test-case-orderオプションの追加。

- バージョンを表示する--versionオプションの追加。

- configureに--disable-bfdオプションの追加

## 0.5.0: 2008-03-10

- パッケージもれのcutter/gbsearcharray.hを追加。

## 0.4.0: 2008-02-28

- cut_pending() -> cut_pend()。

- 属性サポート。

## 0.3.0: 2007-12-14

- ドキュメントの修正。

- cut_assert_equal_string_or_null()を非推奨に変更。

- 代わりにcut_assert_equal_string()がNULLを受け付けるように変更。

- 実験的なAPIをドキュメントから除外。

## 0.2.0: 2007-11-29

- SF.netでの最初のリリース。