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

## 1.1.7: 2011-02-13

### Cutter

#### 改良

- growlnotify対応。

#### 修正

- CentOS 5.5で動かない問題を修正。[中村弘輝さんが報告]

### ドキュメント

===== 修正

- チュートリアルのtypoを修正。[中村弘輝さんが報告]

### 感謝

- 中村弘輝さん

## 1.1.6: 2011-02-09

### Cutter

#### 改良

- ユーティリティの名前変更:

  - cut_build_fixture_data_path() -> cut_build_fixture_path()

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

  - gcut_take_string()

  - cut_get_fixture_data()

  - gcut_get_fixture_data()

  - GCutEventLoop

  - GCutGLibEventLoop

- Debian GNU/Linux squeeze対応。[Romuald Contyさんが提案]

- Ubuntu Maverick Meerkat対応。

- Fedora 14対応。

- cutter.m4: --config-cache対応。

- cutter.m4: --enable-coverageが更新するMakefileとしてMakefile以外の名前に対応。（AC_CHECK_COVERAGE()の引数にMakefileのファイル名を指定）

- notify-send対応。

#### 修正

- 間違ったテストを修正。[Ilya Baryginさんが提案]

### cut-diff

#### 改良

- ヘッダーのラベルを指定する --labelオプション を追加。

### 感謝

- Romuald Contyさん

- Ilya Baryginさん

## 1.1.5: 2010-09-06

### Cutter

#### 改良

- 検証の名前変更:

  - cut_assert_path_exist() -> cut_assert_exist_path()

  - cut_assert_path_not_exist() -> cut_assert_not_exist_path()

- 検証の追加:

  - gcut_assert_equal_string()

- ユーティリティの名前変更:

  - GCutEgg -> GCutProcess

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

  - cut_get_source_directory()

  - cut_build_path_array()

  - gcut_data_has_field()

  - gcut_list_int_new()

  - gcut_list_uint_new()

  - gcut_take_new_list_int()

  - gcut_take_new_list_uint()

- Ubuntu Lucid Lynx対応。

- configure終了時に結果を報告。[Romain Tartièreさんが提案]

- libgoffice-0.8対応。（libgoffice-0.6対応は終了）[Romain Tartièreさんが提案]

- lcov 1.9対応。#3056684 [Romain Tartièreさんが改良]

- テスト説明文内の全角スペース表示に対応。

- サブcutterプロセスがPATH上にあれば動作するように修正。[Romain Tartièreさんが改良]

#### 修正

- ロケールに依存したテストを修正。[Romain Tartièreさんが提案]

### cut-diff

#### 改良

- diffの周辺何行を表示するかを指定する --context-linesオプション を追加。

### ドキュメント

#### 改良

- FreeBSDではportsを使うように変更。[Romain Tartièreさんが提案]

### 感謝

- Romain Tartièreさん

## 1.1.4: 2010-06-10

CentOS対応。

### Cutter

#### 改良

- 検証の追加:

  - cut_assert_equal_file_raw()

  - cut_assert_not_equal_file_raw()

  - gcut_assert_not_equal_int64()

  - gcut_assert_not_equal_uint64()

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

  - cut_get_test_directory()

- diffではできるだけタブを利用するように変更

- CentOS対応

#### 修正

- 検証に指定したメッセージが無視される問題の修正

### ドキュメント

#### 修正

- Debian, Ubuntu: ファイルのパスを修正。[Romuald Contyさんが報告]

### 感謝

- Romuald Contyさん

## 1.1.3: 2010-04-13

データ駆動テストサポートの強化。

### Cutter

#### 改良

- AC_CHECK_ENABLE_COVERAGE: 'make check'に失敗してもカバレッジを出力するcoverage-forceターゲットを追加

#### バグ修正

- 不要なメモリ解放を削除 [Reported by Zed Shaw]

- AC_CHECK_ENABLE_COVERAGEがタブではなく空白を出力する問題の修正

### GCutter

#### 改良

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

  - gcut_data_get_size()

  - gcut_data_get_char()

  - gcut_data_get_boolean()

  - gcut_data_get_int64()

  - gcut_data_get_uint64()

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

  - gcut_inspect_size()

  - gcut_inspect_char()

  - gcut_inspect_boolean()

  - gcut_inspect_double()

  - gcut_inspect_int64()

  - gcut_inspect_uint64()

#### バグ修正

- Mac OS Xでgcut_list_inspect_enum()とgcut_list_inspect_flags()がクラッシュする問題の修正。

### ドキュメント

#### バグ修正

- Cygwin 1.7での依存パッケージを修正

### 感謝

- Zed Shaw

## 1.1.2: 2010-04-03

Windows対応強化。

### Cutter

#### 改良

- lcov 1.8対応

- --enable-coverage=SOMETHINGと指定しても動作するようにした[グニャラくんが報告]

- #2976775: cut_setup()内でのcut_omit()対応[Romain Tartièreさんが報告]

- Visual Studio C++ 2008でのビルド・テスト実行に対応

### CppCutter

#### 改良

- Windows用でのテスト定義用マクロ CUT_EXPORT を追加

### ドキュメント

#### 改良

- Ubuntu Karmic Koara対応

### 感謝

- Romain Tartièreさん

- グニャラくん

## 1.1.1: 2010-03-11

1.1.0のバグ修正とGObject、sockaddr対応強化。

### Cutter

#### 改良

- Visual C++で生成されたDLLに対応。

- 検証の追加:

  - cut_assert_equal_sockaddr()

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

  - cut_equal_sockaddr()

  - cut_inspect_sockaddr()

  - cut_make_directory()

#### 修正

- stdint.hがあるがinttypes.hがない環境でビルドが失敗する問題の修正

### GCutter

#### 改良

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

  - gcut_data_get_object()

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

  - gcut_list_new()

  - gcut_take_new_list_object()

  - gcut_list_object_free()

## 1.1.0: 2009-11-03

注意: APIに非互換があります。

### Cutter

#### 改良

- stdint.hに定義されている型の検証を追加 [はやみずさん]

- API変更 : 省略可能な検証メッセージを再有効化

  変更前:

      cut_assert_equal_string("a", "b", "message");

  変更後:

      cut_assert_equal_string("a", "b", cut_message("message"));

  - cut_message() の追加

  - cut_set_message() を非推奨に変更

  - cut_set_message_va_list() を非推奨に変更

  - cut_keep_message() を非推奨に変更

### CppCutter

#### 改良

- cppcut_assert_equal() が対応する型を追加

- namespace内でのテスト定義検出に対応

  - CPPCUT_BEGIN_TEST_DECLS を非推奨に変更

  - CPPCUT_END_TEST_DECLS を非推奨に変更

- 省略可能な検証メッセージに対応

  - cppcut_message() の追加

### 感謝

- はやみずさん

## 1.0.9: 2009-10-20

### 改良

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

  - gcut_hash_table_inspect_sorted()

- ハッシュの詳細表示時に内容をキーでソート

- 色付き差分表示対応:

- テスト実行直前にブレークポイントを設定する--stop-before-testオプションの追加 [奥地さんによる提案]

- cut-diff コマンドの追加

- unified diff対応

- C++サポートの追加: CppCutter

### バグ修正

- ロケール依存を修正 [奥地さんによる報告]

### 感謝

- 奥地さん

## 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での最初のリリース。