ファイル: お知らせ — rroonga - ラングバ

お知らせ

2.0.4: 2012-05-02

修正

  • マッチカラムの重みが無視される問題を修正。

2.0.3: 2012-05-02

改良

  • groonga 2.0.2対応。
  • Groonga::Table#eachでGroonga::Table#open_cursorと同じオプションを受け付けるようにした。
  • [grndump] --order-by=idオプションを追加。このオプションを使うと、キーではなくIDでレコードをソートしてダンプします。もし、レコードを削除していない場合はこのオプションを使うことでレコードIDを変更せずにレコードをリストアできます。 [#1341]
  • RubyInstall for WindowsのDevKitを使ったWindows上でのビルドをサポート。 [GitHub#6] [@ongaeshiさんがパッチ提供]
  • 類似文書検索をサポート。構文はtable.select {|record| record.column.similar_search(text)}

修正

  • GC関連ででクラッシュするバグを修正。

感謝

  • ongaeshiさん

2.0.2: 2012-03-29

改良

  • groonga 2.0.1対応。
  • ロゴを追加

修正

  • Groonga::Snippetに関連したGCでクラッシュするバグを修正した。

2.0.0: 2012-03-22

改良

  • groonga 2.0.0対応。
  • [gem][windows] mswin用のパッケージを削除した。

修正

  • [test] バージョンのテストの失敗を修正した。 [GitHub#4] [@takkanmさんが報告]
  • Groonga::Expressionに関連したGCでクラッシュするバグを修正した。
  • [doc] 壊れたHTML出力を修正した。 [groonga-dev,00699] [平野さんが報告]

感謝

  • @takkanmさん
  • 平野さん

1.3.1: 2012-01-29

改良

  • groonga 1.3.0対応。
  • [schema] Int8、Int16、UInt8、UInt16に対応。
  • [schema] TokyoGeoPoint、WGS84GeoPointに対応。
  • [schema][dumper] Booleanや多くの組み込み型に対応。 [@mashiroさんが報告]
  • [schema] カラムの型として型オブジェクトを指定できるようになった。 [#1002]
  • Groonga::VariableSizeColumn#compressed?を追加。 [#1004]
  • Groonga::Record#score=を追加。
  • エンコードされた文字列の扱ったときのパフォーマンスを改良。
  • Groonga::Command::Builder.escape_valueを追加。

感謝

  • @mashiroさん

1.3.0: 2011-11-29

改良

  • [schema] db.tables/ディレクトリが空の場合は削除時に一緒に削除するようにした。
  • [schema] db.tables/table.columns/ディレクトリが空の場合は削除時に一緒に削除するようにした。
  • クエリログパーサを追加。
  • groonga-query-log-extractコマンドを追加。
  • grntestのログを解析するスクリプトを追加。
  • JSONgemへの依存関係を追加。
  • groonga 1.2.8対応。
  • Dropped groonga 1.2.7 or former support.
  • Groonga::Table#defragを追加。
  • Groonga::Table#renameを追加。
  • Groonga::Column#renameを追加。
  • Groonga::DoubleArrayTrieを追加。
  • [schema] テーブルのリネームに対応。
  • [schema] カラムのリネームに対応。
  • [schema] ダブル配列トライに対応。

変更

  • [schema] DBを移動してもそのまま使えるようにするために、デフォルトではパスに意味のある名前をつけないようにした。

修正

  • GC時にクラッシュする問題を修正。

1.2.9: 2011-09-16

修正

  • 不要なオブジェクトファイルが入っていたのを削除。

1.2.8: 2011-09-16

改良

  • Groonga::Table#selectに与えるブロックの中での"!="メソッドに対応。詳しくはGroonga::Table#selectのリファレンスを参照。
  • ハッシュライクなオプションに対応。
  • Ruby文法においてのベクター形式のダンプに対応。
  • 環境変数GRN_CTX_PER_DBに対応。(注意:この環境変数を使用する際は注意して使ってください)

1.2.7: 2011-08-29

改良

  • リソースを解放するGroonga::Snippet#closeを追加。

修正

  • Ruby 1.8.7でビルドできない問題を修正。

1.2.6: 2011-08-29

改良

  • groonga 1.2.5対応。
  • 追加直後のレコードかどうかを返す Groonga::Record#added? を追加。
  • カラムをデフラグする Groonga::VariableSizeColumn#defrag? を追加。
  • データベース中のすべての可変長カラムをデフラグする Groonga::Database#defrag を追加。
  • シンボルでのカラム名指定に対応。

修正

  • gem install時に*.rbのインストールに失敗する問題を修正。
  • メモリリークを修正。
  • 終了時にクラッシュする問題を修正。

1.2.5: 2011-08-05

改良

  • tar.gzでのパッケージ配布を再サポート。
  • Groonga::Context#closeを追加。
  • Groonga::Context#closed?を追加。
  • Groonga::ObjectClosedを非推奨にした。代わりにGroonga::Closedを使うこと。
  • grndump: ダンプしないテーブルを指定する--exclude-tableオプションを追加。
  • dump: パスが等しいかどうかのチェックを削除。

修正

  • dump: 間違ったインデックス用テーブルを出力する問題を修正。
  • groongaの自動インストールを再サポート。

1.2.4: 2011-06-29

改良

  • groonga 1.2.3対応。

修正

  • groongaの自動インストールを再サポート。
  • pkg-config gemへの依存関係を追加。

1.2.3: 2011-06-27

修正

  • gemパッケージに含まれてしまったオブジェクトファイル(*.o)を削除。
  • 一部のリファレンスマニュアルの文字化けを修正。

1.2.2: 2011-06-27

改良

  • 英語版の「開発者向け情報」ページを作成。
  • "html:publish"タスクと"publish"に関しての説明を追加。

変更

  • Groonga::Record#attributesが重複したレコードが現れた際に同じattributesオブジェクトを返すようにした。
  • Groonga::Record#attributesにドキュメントを追加。
  • 「開発者向け情報」ページ内にあるドキュメント作成ツールを変更。
  • NEWS*.rdocとtutorial.texttileをディレクトリdoc/text/に移動。

修正

  • インデックスページにある「チュートリアル」ページへのリンクを修正。
  • インデックスページにある英語版「チュートリアル」ページへのリンクを修正。
  • 新しいgroongaのダウンロードURLに対応。 [mallowlabs]

感謝

  • mallowlabsさん

1.2.1: 2011-06-07

改良

  • Groonga::Table#paginationのドキュメントを追加。
  • grndumpをパッケージに追加。
  • Groonga::Record#attributesによるレコード内での再帰参照に対応した。(補足:ただし実験的実装)[mooz]
  • Groonga::Record#attributesにて_scoreも含めたデータを返すようにした。
  • Windowsの64bitに対応。(ただし、rubyの64bit版が存在しないため、動作環境がない)
  • Groonga::Postingを追加。
  • TokenDelimitのエイリアスに:delimit, :token_delimiterを追加。
  • Groonga::DatabaseDumper#dumpにてlexiconテーブルのダンプに対応。
  • Groonga::DatabaseDumper#dumpにてプラグインを含んだダンプに対応。
  • Groonga::IndexColumn#open_cursorを追加。[yoshihara]
  • Groonga::IndexCursorを追加。[yoshihara]
  • Groonga::Object#builtin?を追加。[yoshihara]

変更

  • カラムが削除される前に、そのカラムがあるかチェックするようにした。
  • ドキュメントからgrn式のページを削除。

感謝

  • moozさん
  • yoshiharaさん

1.2.0: 2011-04-01

改良

  • groonga 1.2.0対応。
  • Groonga::Accessor#local_nameを追加。
  • Groonga::IndexColumn#with_section?を追加。
  • Groonga::IndexColumn#with_weight?を追加。
  • Groonga::IndexColumn#with_position?を追加。
  • Groonga::Schema.dumpがgroongaコマンド形式でのダンプに対応。
  • grndumpを追加。
  • Groonga::Database#eachで繰り返す順序を指定可能にした。
  • Groonga::Context#match_escalation_thresholdを追加。
  • Groonga::Context#match_escalation_threshold=を追加。
  • エラーメッセージの改良。
  • Groonga::Schemaの型指定で"ShortText"など正式型名だけではなく、:short_textなどよりRubyらしい名前を使えるようにした。

1.1.0: 2011-02-09

改良

  • groonga 1.1.0対応。
  • Groonga::Plugin.registerを追加。

1.0.9: 2011-01-29

改良

  • Windows上でのgem作成に対応。 [ongaeshiさんがパッチ提供]
  • Groonga::Schemaでテーブル・カラムを削除した時に作成したディレクトリを削除するようにした。
  • Groonga::Context#create_databaseを追加。
  • Groonga::Context#open_databaseを追加。
  • Groonga::Column#indexesを追加。
  • Supported a notation for specifying index column as match target in Groonga::Table#select: table.select do |record| record.match(“query”) do |match_record| (match_record.index(“Terms.title”) * 1000) | (match_record.index(“Terms.description”) * 100) match_record.content end end
  • Supported prefix search in Groonga::Table#select: table.select do |record| record.name.prefix_search(“groo”) end
  • Supported suffix search in Groonga::Table#select: table.select do |record| record.name.suffix_search(“nga”) end
  • :default_tokenizerのスキーマダンプに対応。
  • :key_normalizeのスキーマダンプに対応。
  • Groonga::Table#have_column?が擬似カラムに対応。
  • Groonga::Record#have_column?が擬似カラムに対応。

変更

  • Groonga::OperatoionをGroonga::Operatorに変更。(しばらくはGroonga::Operationも使えるが、非推奨。)

修正

  • 複数のGroonga::Contextを利用した場合にGroonga::Table#selectでクラッシュする問題を修正。
  • 例外発生時にクラッシュする問題を修正。

感謝

  • ongaeshiさん

1.0.8: 2010-12-25

改良

  • Groonga::Schemaのn-gramトークナイザー検出処理を改良。

修正

  • selectでmatch_targetを利用した場合に生きているオブジェクトもGCされる問題を修正。

1.0.7: 2010-12-19

修正

  • Ruby 1.8でRubyGemsでインストールされたpkg-configを使えるようにした。 [@kamipoさんが報告]
  • Groonga::Table#columnsのメモリリークを修正。

感謝

  • @kamipoさん

1.0.5: 2010-11-29

改良

  • Groonga::Schemaでgroongaの組み込み型をshort_textなどのように「小文字 + アンダースコア」でも指定できるようにした。

修正

  • GC時にクラッシュするバグを修正。 [Ryo Onodera]

1.0.4: 2010-11-29

改良

  • groonga 1.0.4対応。
  • Groonga::UnsupportedCommandVersionを追加。
  • Groonga::Record#support_sub_records?を追加。
  • Groonga::Record#eql?とGroonga::Record#hashを追加。(同じテーブルの同じレコードIDのオブジェクトを同一のHashキーとして扱う。)
  • pkg-config gemを利用するようにした。
  • Groonga::Table#select内でrecord_idメソッドを持っているメソッドはレコードとして扱うようにした。
  • Groonga::Record#record_idを追加。
  • Groonga::Table#support_key?を追加。
  • Groonga::Record#support_key?を追加。
  • Groonga::Record#support_key?を追加。
  • Groonga::Column#reference_key?を追加。
  • Groonga::Column#index_column?を追加。
  • Groonga::Schema#dumpを追加。
  • Groonga::Schemaが複数のカラムのインデックス作成に対応。
  • Groonga::Schemaで定義したオブジェクトに対応するファイル名にわかりやすいファイル名を利用するようにした。
  • Groonga::Schemaで参照カラムを定義時に参照先のテーブル名を省略可能になった。
  • Groonga::Schema.remove_columnを追加。
  • Groonga::Schemaでcreated_atカラムとupdated_atカラムを作るためのtimestamps便利メソッドを追加。
  • Groonga::Context#support_zlib?を追加。
  • Groonga::Context#support_lzo?を追加。
  • Groonga::Database#touchを追加。
  • Groonga::Table#exist?を追加。
  • Groonga::Record#valid?を追加。
  • Groonga::Column#vector?を追加。
  • Groonga::Column#scalar?を追加。
  • Groonga::Record#vector_column?を追加。
  • Groonga::Record#scalar_column?を追加。
  • レコードIDが必要なところにrecord_raw_idを持つオブジェクトならGroonga::Record以外も渡せるようにした。
  • Groonga::Record#record_raw_idを追加。
  • ベクタの参照カラムの値にArray以外でもto_aryを持つオブジェクトを設定できるようにした。

変更

  • Groonga::PatriciaTrie#open_cursorでは:order_byのデフォルト値として:keyを使うようにした。
  • 非推奨扱いのGroonga::TableKeySupport#findを削除。
  • Groonga::Hash#createとGroonga::PatriciaTrie#createでキーの型を省略した場合はShortTextを使用するようにした。
  • Groonga::Schema#loadをGroonga::Schema#restoreに改名。
  • pkg-config 1.0.7対応。
  • Groonga::Column#index?を追加。Groonga::Column#index_column?は非推奨。
  • Groonga::Column#reference?を追加。Groonga::Column#reference_column?は非推奨。

修正

  • keyにインデックスを張れない問題を修正。
  • GC時にクラッシュする問題を修正。

1.0.1: 2010-09-12

修正

  • テーブル作成時に誤ったフラグを指定していた問題を修正。 [小野マトペさんが報告]

感謝

  • 小野マトペさん

1.0.0: 2010-08-29

  • groonga 1.0.0対応。
  • Groonga::CASErrorを追加。
  • Groonga::Table#open_cursorに:order_byオプションを追加。
  • 前方一致検索がマッチしたレコードを順に取り出すカーソルを作るGroonga::PatriciaTrie#open_prefix_cursorを追加。
  • ローマ字・ひらがなでカタカナのキーを検索するカーソルを作るGroonga::PatriciaTrie#open_rk_cursorを追加。
  • 値の近い順にレコードを取り出すカーソルを作るGroonga::PatriciaTrie#open_near_cursorを追加。
  • インデックスのソースに_keyを指定できるようになった。

0.9.5: 2010-07-20

  • groonga 0.7.4対応。
  • Groonga::Table#selectを改良:
  • 重み付きマッチに対応:
Here is an example to match source column or title column and title column has high score: table.select do |record| (record.title * 10 | record.source) =~ “query” end
  • 配列で複数条件のand表現に対応:
Here are examples that represents the same condition: table.select do |record| conditions = [] conditions << record.title =~ “query” conditions << record.updated_at > Time.parse(“2010-07-29T21:14:29+09:00”) conditions end table.select do |record| (record.title =~ “query”) & (record.updated_at > Time.parse(“2010-07-29T21:14:29+09:00”)) end
  • 利用しているgroongaのバージョン取得対応: Groonga::VERSION
  • Groonga::Table#support_sub_records?追加
  • ページネーション対応: Groonga::Table#paginate, Groonga::Pagination

0.9.4: 2010-04-22

  • リリースミス修正。

0.9.3: 2010-04-22

  • リリースミス修正。

0.9.2: 2010-04-22

  • groonga 0.1.9対応。
  • たくさん。

0.9.1: 2010-02-09

  • groonga 0.1.6対応

0.9.0: 2010-02-09

  • groonga 0.1.5対応
  • APIを追加
  • Groonga::Object#context
  • Groonga::Record#n_sub_records
  • Groonga::Context#send
  • Groonga::Context#receive
  • Groonga::PatriciaTrie#prefix_search [Tasuku SUENAGA]
  • Groonga::Object#path [Ryo Onodera]
  • Groonga::Object#lock [Tasuku SUENAGA]
  • Groonga::Object#unlock [Tasuku SUENAGA]
  • Groonga::Object#locked? [Tasuku SUENAGA]
  • Groonga::Object#temporary?
  • Groonga::Object#persistent?
  • Groonga::ObjectClosed
  • Groonga::Context.[]
  • Groonga::Table#column_value
  • Groonga::Table#set_column_value
  • APIを変更。
  • Groonga::Table#select, Groonga::Column#select
  • Groonga::Expressionも受け付けるようになった
  • grn式のシンタックスを指定する:syntaxオプションの追加
  • Groonga::Table#open_cursor
  • 開始位置を指定する:offsetオプションの追加
  • 最大レコード数を指定する:limitオプションの追加
  • Groonga::Expression.parseオプションの変更:
  • (nil (default) → :column) → (nil (default) → :query)
  • :column → 削除
  • :table → :query
  • :table_query → :query
  • :expression → :script
  • :language → :script
  • Groonga::Table#define_column, Groonga::Table#define_index_column
  • 永続テーブルをデフォルトにした
  • Groonga::Table#[] → Groonga::Table#value
  • Groonga::Table#[]= → Groonga::Table#set_value
  • Groonga::Table#find → Groonga::Table#[]
  • Groonga::Table#find → obsolete
  • Groonga::Table#[]= → 削除
  • Groonga::TableKeySupport#[]=はGroonga::TableKeySupport#addの別名
  • Groonga::Recordで存在しないカラムにアクセスしたときの例外をGroonga::InvalidArgumentからGroonga::NoSuchColumnに変更
  • Bug fixes
  • スキーマにコンテキストが伝搬されない問題の修正 [dara]
  • Groonga::PatriciaTrie#tag_keysが最後のテキストを返さない問題の修正 [Ryo Onodera]
  • extconf.rbにデバッグモードでビルドする--with-debugオプションを追加
  • Ruby 1.9.1でextconf.rbが失敗する問題の修正

感謝

  • daraさん
  • Ryo Onoderaさん
  • Tasuku SUENAGAさん

0.0.7: 2009-10-02

  • groonga 0.1.4対応
  • APIを追加
  • Groonga::PatriciaTrie#scan
  • Groonga::PatriciaTrie#tag_keys
  • Groonga::Expression#snippet
  • Groonga::Object#append
  • Groonga::Object#prepend

0.0.6: 2009-07-31

  • groonga 0.1.1対応
  • ドキュメントの修正 [id:mat_aki]
  • Groonga::Table#selectでのgrn式対応
  • APIを追加
  • Groonga::Table#union!
  • Groonga::Table#intersect!
  • Groonga::Table#differene!
  • Groonga::Table#merge!
  • tar.gzも提供 [id:m_seki]
  • メモリリークの修正

0.0.3: 2009-07-18

  • Groonga::TableKeySupport#has_key?の追加 [#26145] [Tasuku SUENAGA]
  • カラム名が存在しない場合はGroonga::Record#[]が例外をあげるように変更。 [#26146] [Tasuku SUENAGA]
  • 32ビット環境をサポート [niku]
  • N-gramインデックスサーチのテストを追加 [dara]
  • Added APIs
  • Groonga::Record#incemrent!
  • Groonga::Record#decemrent!
  • Groonga::Record#lock
  • Groonga::Table#lock
  • Groonga::Schema: スキーマ定義用DSL
  • Groonga::Expression

0.0.2: 2009-06-04

  • groonga 0.0.8対応 [mori]
  • 性能向上: キー、値、ドメイン、レンジをキャッシュ
  • APIを改良
  • ドキュメントを追加
  • Ruby 1.9対応
  • Bug fixes:
  • Fixed install process [Tasuku SUENAGA]
  • メモリリークの修正

0.0.1: 2009-04-30

  • 最初のリリース!