Code Monkey home page Code Monkey logo

milkode's Introduction

Milkode

Version Build Status

Milkode is source code search engine of "line-oriented" written by Ruby.It have command line interface and web application. It will accelerate the code reading of your life.

It is possible from the file tens of thousands of the order, to search instantly a line that contains the keyword of interest.

Milkode is "見るコード". "See a code" is meaning.

Honyomi are brothers.

milk-web-01.jpg

Installation

$ gem install milkode

When you faild to install Rroonga, Please refer.

Usage

Create a database

$ milk init --default
create     : /Users/auser/.milkode/milkode.yaml
create     : /Users/auser/.milkode/db/milkode.db created.

Create database to current dir.

$ milk init
Create database to "/path/to/dir/db/honyomi.db"

If you want to use custom database, Please specify MILKODE_DEFAULT_DIR variable.

$ MILKODE_DEFAULT_DIR=/path/to/dir milk add /path/to/project

Add packages

Add source code from local directory.

$ milk add ~/Documents/codes/linux-3.10-rc4
package    : linux-3.10-rc4
.
.
result     : 1 packages, 42810 records, 42810 add.
*milkode*  : 1 packages, 42810 records in /Users/ongaeshi/.milkode/db/milkode.db.

Add source code from gem.

$ milk add /opt/local/lib/ruby2.0/gems/2.0.0/gems/milkode-1.6.0/

Add source code from GitHub.

$ milk add https://github.com/ongaeshi/milkode.git -p git
$ milk add git://github.com/ongaeshi/milkode.git
$ milk add git://github.com/ongaeshi/milkode.git -b develop -n milkode_develop

Add source code from http-zip.

$ milk add http://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.2.zip

List packages

$ milk list
a_project
milkode
milkode-1.6.0
ruby-2.1.2

Filter by keyword.

$ milk list milk
milkode-1.6.0
milkode

Search command line

Gmilk command can use the AND search.

$ cd ~/Documents/codes/linux-3.10-rc4
$ gmilk according prototypes
Documentation/cdrom/cdrom-standard.tex:977:  according to prototypes listed in \cdromh, and specifications given

Remember the project root.

$ cd driver/acpi
$ gmilk according prototypes
../../Documentation/cdrom/cdrom-standard.tex:977:  according to prototypes listed in \cdromh, and specifications given

Gomilk is faster version written by Go.

Web application

$ milk web

milk-web-02.jpg

Documents

Plugins

HISTORY

milkode's People

Contributors

akr avatar awasira avatar hiroponz avatar kenhys avatar kitaitimakoto avatar kou avatar kyoshidajp avatar ochaochaocha3 avatar ongaeshi avatar tkfm-yamaguchi avatar tomykaira avatar y-iihoshi avatar y-ken avatar y-yagi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

milkode's Issues

ディレクトリ名以外のパッケージ名

milk addでディレクトリをパッケージとして登録する場合、最下層のディレクトリ名がパッケージ名として扱われますが、この場合、同じ名前のディレクトリは登録できません。

例えば、
//server/MacOS/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs
//server/MacOS/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs
//server/Windows/PlatformSDK/Windows/SDK
//server/Windows/PlatformSDK/WindowsPhone/SDK
のような場合、SDKsとSDKはそれぞれ一つしか登録できません。

さらにサブディレクトリがあればそれを個別に登録できますが、そうでない場合はその親ディレクトリを登録する必要があり、余分なディレクトリが含まれてしまうのでそれをignoreコマンドなどで全て除外させるとなると少し手間がかかります。

提案なのですが、
milk add -p "package name"
のようにパッケージ名が指定出来るようにするのはいかがでしょうか?

groonga 2.1.1でエラー

groongaを2.0.9から2.1.1にアップデートしたところmilk webでエラーになってしまいました。
sudo port activate groonga @2.0.9_0で戻したら起動します。
すいませんが、ご確認よろしくお願いします。

$ bundle exec milk web
/Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/gems/rroonga-2.0.8/lib/groonga/schema.rb:1044:in `define': creating table with differnt options: #<Groonga::PatriciaTrie id: <263>, name: <terms>, path: </Users/myuser/.milkode/db/milkode.db.0000107>, domain: <ShortText>, range: (nil), flags: <>, encoding: <:utf8>, size: <18362>>: {:name=>"terms", :path=>nil, :persistent=>true, :value_type=>nil, :context=>#<Groonga::Context encoding: <:utf8>, database: <#<Groonga::Database id: <nil>, name: (anonymous), path: </Users/myuser/.milkode/db/milkode.db>, domain: (nil), range: (nil), flags: <>>>>, :sub_records=>nil, :key_type=>"ShortText", :key_normalize=>true, :default_tokenizer=>"TokenBigramSplitSymbolAlphaDigit", :key_with_sis=>nil} (Groonga::Schema::TableCreationWithDifferentOptions)
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/gems/rroonga-2.0.8/lib/groonga/schema.rb:645:in `block in define'
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/gems/rroonga-2.0.8/lib/groonga/schema.rb:644:in `each'
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/gems/rroonga-2.0.8/lib/groonga/schema.rb:644:in `define'
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/gems/rroonga-2.0.8/lib/groonga/schema.rb:170:in `define'
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/gems/milkode-0.9.6/lib/milkode/database/document_table.rb:14:in `define_schema'
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/gems/milkode-0.9.6/lib/milkode/database/groonga_database.rb:98:in `define_schema'
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/gems/milkode-0.9.6/lib/milkode/database/groonga_database.rb:32:in `open_file'
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/gems/milkode-0.9.6/lib/milkode/database/groonga_database.rb:24:in `open'
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/gems/milkode-0.9.6/lib/milkode/cdstk/cdstk.rb:1082:in `db_open'
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/gems/milkode-0.9.6/lib/milkode/cdstk/cdstk.rb:70:in `assert_compatible'
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/gems/milkode-0.9.6/lib/milkode/cli.rb:172:in `web'
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/gems/thor-0.15.4/lib/thor/task.rb:27:in `run'
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/gems/thor-0.15.4/lib/thor/invocation.rb:120:in `invoke_task'
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/gems/milkode-0.9.6/lib/milkode/cli.rb:215:in `invoke_task'
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/gems/thor-0.15.4/lib/thor.rb:275:in `dispatch'
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/gems/thor-0.15.4/lib/thor/base.rb:425:in `start'
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/gems/milkode-0.9.6/bin/milk:10:in `<top (required)>'
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/bin/milk:23:in `load'
    from /Users/myuser/dev/milkode/vendor/bundle/ruby/1.9.1/bin/milk:23:in `<main>'

http://ranguba.org/rroonga/ja/Groonga/Schema/TableCreationWithDifferentOptions.html

環境

Mac OS X 10.7.4

$ ruby -v
ruby 1.9.2p320 (2012-04-20 revision 35421) [x86_64-darwin11.4.0]
$ gem -v
1.8.24
$ bundle 
Using addressable (2.3.2) 
Using io-like (0.3.0) 
Using archive-zip (0.5.0) 
Using coderay (1.0.8) 
Using daemons (1.1.9) 
Using eventmachine (1.0.0) 
Using haml (3.1.7) 
Using highline (1.6.15) 
Using json (1.7.6) 
Using launchy (2.1.2) 
Using rack (1.4.3) 
Using pkg-config (1.1.4) 
Using rroonga (2.0.8) 
Using sass (3.2.5) 
Using rack-protection (1.3.2) 
Using tilt (1.3.3) 
Using sinatra (1.3.3) 
Using termcolor (1.2.1) 
Using thin (1.5.0) 
Using thor (0.15.4) 
Using milkode (0.9.6) 
Using bundler (1.2.3) 
Your bundle is complete! It was installed into ./vendor/bundle

svn: E000022: Can't convert string from 'UTF-8' to native encoding:

SVNのチェックアウトでファイル名にShirtJISが使われているファイルが存在するとDBへの登録時なのかこのエラーが出て登録が失敗してしまいます。
svn: E000022: Can't convert string from 'UTF-8' to native encoding:

パッケージの登録時にエンコーディングを変換することは出来ませんでしょうか?

ファイル中のマッチ箇所をすべて表示してほしい

Milkode 0.2.2 を試してみたのですが、同一ファイルで複数行にマッチするケースでも、
最初にマッチする行しか検索結果に表示されないようです。

この動作では「特定の関数の利用箇所を全て調べたい」というような場合に不便ですので、
すべてのマッチ箇所を表示するオプション等を設けていただけないでしょうか?

rvm(ruby1.8.7)から実行後、チュートリアル中にエラー?

一つ目のIssuesにあった、

システムにgroongaをインストールする。
LD_LIBRARY_PATH=$(gem environment gemdir)/rroonga-1.2.4/vendor/local/lib milkで起動する。

$ sudo gem install groonga

.zshrcに追記。
export LD_LIBRARY_PATH=/home/hi/.rvm/gems/ruby-1.8.7-p352@milk6/gems/rroonga-1.2.4/vendor/local/lib:/usr/lib

$ milk

これでrvmからのruby1.8.7で動きました。

追記
ruby1.8.7で動作確認してからチュートリアルを試していたので、Isses#1と前後してしまいました。

windows環境(mswin32)で、日本語ファイル、日英混在文字が化ける

windows環境(mswin32)で使用しています。

以下の現象が起きています。テキストは、SJISのものを登録しました。

①日本語ファイル名が文字化けしています。
 これは、ブラウザのエンコードを、SJISに変更するときちんとした名称で表示されます。

②日英混在文字が文字化けする。
 「C_日本語」のような記述の場合、「日本語」の部分が文字化けしています。
 「--」ではじまる行はコメント扱いされているようで文字化けしていません。
 ※よく見ると、「--」の行以外の日本語がすべて文字化けしているように見えます。

日本語を使用したソースは対象外でしょうか?それともセットアップ失敗?
テキスト形式の議事録の検索にも使用できるかと期待していましたが、難しいのかな。
また、試してみます。

追加情報が必要であれば教えてください。

milk web -n でthinのArgumentErrorとなり起動できない。

milkodeを試してみたと思いインストールしてみたのですが、milk webが起動できせん。errorの内容は引数の不一致のようです。当方rubyの知識は全くなく、webの情報を頼りにセットアップを行ったので、検討違いの質問かもしれないことをご容赦ください。

[環境]
CentOS 6.5
ruby 1.9.3
milkode 1.5.0
thin 2.0.0.pre codename The Wire Burner

エラーメッセージは以下の通りです。

/home/username/.rvm/gems/ruby-1.9.3-p545/gems/thin-2.0.0.pre/lib/thin/server.rb:108:in `initialize': wrong number of arguments (4 for 3) (ArgumentError)
from /home/username/.rvm/gems/ruby-1.9.3-p545/gems/rack-1.5.2/lib/rack/handler/thin.rb:14:in `new'
from /home/username/.rvm/gems/ruby-1.9.3-p545/gems/rack-1.5.2/lib/rack/handler/thin.rb:14:in `run'
from /home/username/.rvm/gems/ruby-1.9.3-p545/gems/rack-1.5.2/lib/rack/server.rb:264:in `start'
from /home/username/.rvm/gems/ruby-1.9.3-p545/gems/milkode-1.5.0/lib/milkode/cdweb/cli_cdweb.rb:64:in `execute_with_options'
from /home/username/.rvm/gems/ruby-1.9.3-p545/gems/milkode-1.5.0/lib/milkode/cli.rb:184:in `web'
from /home/username/.rvm/gems/ruby-1.9.3-p545/gems/thor-0.19.1/lib/thor/command.rb:27:in `run'
from /home/username/.rvm/gems/ruby-1.9.3-p545/gems/thor-0.19.1/lib/thor/invocation.rb:126:in `invoke_command'
from /home/username/.rvm/gems/ruby-1.9.3-p545/gems/milkode-1.5.0/lib/milkode/cli.rb:245:in `invoke_command'
from /home/username/.rvm/gems/ruby-1.9.3-p545/gems/thor-0.19.1/lib/thor.rb:359:in `dispatch'
from /home/username/.rvm/gems/ruby-1.9.3-p545/gems/thor-0.19.1/lib/thor/base.rb:440:in `start'
from /home/username/.rvm/gems/ruby-1.9.3-p545/gems/milkode-1.5.0/bin/milk:10:in `<top (required)>'
from /home/username/.rvm/gems/ruby-1.9.3-p545/bin/milk:23:in `load'
from /home/username/.rvm/gems/ruby-1.9.3-p545/bin/milk:23:in `<main>'
from /home/username/.rvm/gems/ruby-1.9.3-p545/bin/ruby_executable_hooks:15:in `eval'
from /home/username/.rvm/gems/ruby-1.9.3-p545/bin/ruby_executable_hooks:15:in `<main>'

milk web で起動ディレクトリを指定したい

milk web でウェブサーバを起動すると http://xxx.xxx.xxx.xxx:9292/ として Milkode のページが閲覧できるようになりますが、
mod_proxy を使って既存のドメインで公開したいような場合、http://xxx.xxx.xxx.xxx:9292/milkode/ のような URL で起動できると便利です。

もし可能であれば、URL のルートを指定するためのオプション(ruby script/server でいうところの --path オプションのようなもの)
を設けていただけないでしょうか?

milkode ver 0.9.4 milk web にて不具合

はじめまして。

milkodeをインストールして使い始めたのですが、ちょっとおかしなところが・・・。

milk webから検索を実行して、検索結果の表示にて、1ページ目では、

「11ファイル中 0-3ファイルを検索20件マッチ」

と表示されていたとします。
ここで、nextボタンで、次のページへ移動すると、

「8ファイル中 3-4ファイルを検索20件マッチ」

と表示され、検索結果の件数が変わってしまいます。
さらに次ページへ移動を続けると、最終的に

「6ファイル中 5-6ファイルを検索20件マッチ」

と表示されたページを最後に、次のページへ移動できなくなります。

最初の検索結果11ファイルは正しいのですが、結果として7ファイル(0からスタートなので)しか表示をせずに終わってしまっています。残りの4ファイルは表示できません。

対応方法等ございましたら教えてください。

milk web の仕様

「大文字/小文字を区別」のオプションがあるのに、単語に大文字が含まれていると、区別してしまうのはよくないと思う。

検索欄をクリックしたときに、検索語をselectする意味がわからない。検索語を修正しずらいと思う

Windows版でファイルのパスが長い(259文字+null)場合、エラーになる。

milkodeを1.4.0から1.6.0にバージョンアップした時にデーターベースを手動で更新して気づいたのですが、ファイルが長いパスにあるとデーターベースの構築が途中で異常終了してしまうようです。長いパスをサポートするか、少なくとも警告を出すだけで途中で終了しないようにすることはできませんでしょうか?例えば、rebuildやupdateにignore errorパラメーターを指定できる等。ご検討よろしくお願いします。

$ milk update --all
package    : xxx.sdk
C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:209:in `ftype': No such file or directory - [very long path > (259 + null)] (Errno::ENOENT)
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:209:in `block in searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `foreach'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:211:in `block in searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `foreach'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:211:in `block in searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `foreach'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:211:in `block in searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `foreach'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:211:in `block in searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `foreach'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:211:in `block in searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `foreach'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:211:in `block in searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `foreach'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:211:in `block in searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `foreach'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:211:in `block in searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `foreach'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:211:in `block in searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `foreach'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:211:in `block in searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `foreach'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:211:in `block in searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `foreach'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:163:in `db_add_dir'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:156:in `update_dir'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/database/updater.rb:39:in `exec'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/cdstk/cdstk.rb:1154:in `updater_exec'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/cdstk/cdstk.rb:1122:in `update_package_in'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/cdstk/cdstk.rb:74:in `block (2 levels) in update_all'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/cdstk/cdstk.rb:73:in `each'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/cdstk/cdstk.rb:73:in `block in update_all'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/cdstk/cdstk.rb:1210:in `print_result'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/cdstk/cdstk.rb:70:in `update_all'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/cdstk/cdstk.rb:83:in `update'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/cli.rb:60:in `update'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.18.1/lib/thor/command.rb:27:in `run'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.18.1/lib/thor/invocation.rb:120:in `invoke_command'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/lib/milkode/cli.rb:245:in `invoke_command'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.18.1/lib/thor.rb:363:in `dispatch'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.18.1/lib/thor/base.rb:439:in `start'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.6.0/bin/milk:10:in `<top (required)>'
        from C:/Ruby/bin/milk:23:in `load'
        from C:/Ruby/bin/milk:23:in `<main>'

$ dir [very long path > (259 + null)]
The filename or extension is too long.

資源の最新化

はじめまして。
Milkodeの存在を知り、利用させていただいております。

一つお聞きしたいことがあります。
見当違いな質問でしたら申し訳ございません。お先にお詫びいたします。

SubversionやGitで管理されているリポジトリをプロジェクトとして管理し、
常に同期をとる方法などはあるのでしょうか?
ファイルの増減や更新に対し、常に最新化としておきたいのですが。

gem.bat install milkode にて、ERROR

0.2.3をインストールしようとしたところ、インストールに失敗するようになってしまいました。
昨日(0.2.2ではインストールできていました。)
今日、gem install milkode -v 0.2.2 もインストール出来ています。 

cmd.exeは「管理者として実行」しています

==== 

C:\Windows\system32>gem.bat install milkode
ERROR: While executing gem ... (NoMethodError)
undefined method `call' for nil:NilClass

C:\Windows\system32>gem.bat uninstall milkode
Remove executables:
cdv, milk, cdview

in addition to the gem? [Yn] y
Removing cdv
Removing milk
Removing cdview
Successfully uninstalled milkode-0.2.2

C:\Windows\system32>gem.bat install milkode
ERROR: While executing gem ... (NoMethodError)
undefined method `call' for nil:NilClass

C:\Windows\system32>gem -v
1.3.7

C:\Windows\system32>ruby -v
ruby 1.8.7 (2010-12-23 patchlevel 330) [i386-mswin32]

grenfiletest.rb:12:in `match': invalid byte sequence in UTF-8 (ArgumentError)

以下のように、milk add で invalid byte sequence in UTF-8 というエラーが出ることがあります。

% rm -rf z
% rm -rf ~/.milkode
% mkdir z
% ruby -e 'File.open("z/\xff", "w")'
% bin/milk init
create     : /home/akr/.milkode/milkode.yaml
create     : /home/akr/.milkode/db/milkode.db created.
% bin/milk add z
package    : z
/home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/lib/milkode/common/grenfiletest.rb:12:in `match': invalid byte sequence in UTF-8 (ArgumentError)
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/lib/milkode/common/grenfiletest.rb:12:in `ignoreFile?'
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/lib/milkode/database/updater.rb:236:in `ignoreFile?'
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/lib/milkode/database/updater.rb:219:in `block in searchDirectory'
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/lib/milkode/database/updater.rb:198:in `foreach'
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/lib/milkode/database/updater.rb:163:in `db_add_dir'
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/lib/milkode/database/updater.rb:156:in `update_dir'
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/lib/milkode/database/updater.rb:39:in `exec'
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/lib/milkode/cdstk/cdstk.rb:1154:in `updater_exec'
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/lib/milkode/cdstk/cdstk.rb:1132:in `update_dir_in'
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/lib/milkode/cdstk/cdstk.rb:151:in `block (2 levels) in add'
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/lib/milkode/cdstk/cdstk.rb:132:in `each'
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/lib/milkode/cdstk/cdstk.rb:132:in `block in add'
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/lib/milkode/cdstk/cdstk.rb:1210:in `print_result'
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/lib/milkode/cdstk/cdstk.rb:126:in `add'
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/lib/milkode/cli.rb:52:in `add'
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/thor-0.19.1/lib/thor/command.rb:27:in `run' 
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/thor-0.19.1/lib/thor/invocation.rb:126:in `invoke_command'
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/lib/milkode/cli.rb:249:in `invoke_command'
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/thor-0.19.1/lib/thor.rb:359:in `dispatch'             
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/thor-0.19.1/lib/thor/base.rb:440:in `start' 
        from /home/ruby/all-ruby/2.1.3/lib/ruby/gems/2.1.0/gems/milkode-1.8.1/bin/milk:9:in `<top (required)>'
        from bin/milk:23:in `load'
        from bin/milk:23:in `<main>'
zsh: exit 1     bin/milk add z
% bin/milk --version
milk 1.8.1
% bin/ruby -v
ruby 2.1.3p242 (2014-09-19 revision 47630) [x86_64-linux]

どうも、UTF-8 でない (ロケールに従っていない?) ファイル名で例外が発生するようです。

この問題は、gem mirror で取ってきた gem を片っ端から登録してみたときに見つけました。
jmail-0.3.0, bukovina-0.0.3, drep-0.3.4 というものにこのような UTF-8 でないファイル名が存在し、milk add が失敗しました。

理想はそのようなファイルも検索できるように扱えることですが、
そのようなファイルを無視するなどして例外で中断しないでいただけるだけでも助かります。

Windows環境で動作が不安定

Windows Server 2008R2 で Milkode(17 packages, 229248 records) を動かしています。
検索ワードを入れて検索押下後、5秒くらい待たされ「Internal Server Error」とだけブラウザに表示される現象が多発しています(Miokode 0.9.9, 0.9.7, 0.9.6, 0.9.5, 0.9.4 で確認、いずれも同じ Windows Server 2008R2)
特定の検索ワードで発生することはなく、Milkode を再起動後に同じワードで検索すると結果が返ってきたり、またエラーになったりして法則性がつかめません。
しばらくサーバにアクセスせず、時間を置いた後に検索すると発生頻度が高いように見えます(各検索間で時間をおきながら5回検索すると、うち1回は Internal Server Error がでるくらいの頻度です)。
同じデータを登録した別サーバ(CentOS)では、このような現象は一切発生していません。
以下に、Internal Server Error 発生時にコンソールに表示されていたスタックトレースをいくつか張ります。

Groonga::InvalidArgument - invalid argument: result is not a array: #<Groonga::Hash id: <2147483662>, name: (anonymous), path: (temporary), domain: , range: (nil), flags: <WITH_SUBREC>, size: <0>, encoding: <:utf8>, default_tokenizer: (nil), normalizer: (nil)>
db.c:7548: grn_table_sort():
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/common/util.rb:224:in sort' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/common/util.rb:224:ingroonga_table_sort'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/database/document_table.rb:290:in search_with_match' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/lib/database.rb:94:insearch'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/lib/search_contents.rb:42:in initialize' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/lib/command.rb:73:innew'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/lib/command.rb:73:in search' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/app.rb:98:inblock in <top (required)>'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1292:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1292:inblock in compile!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:860:in []' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:860:inblock (3 levels) in route!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:876:in route_eval' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:860:inblock (2 levels) in route!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:897:in block in process_route' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:895:incatch'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:895:in process_route' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:859:inblock in route!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:858:in each' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:858:inroute!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:963:in block in dispatch!' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:inblock in invoke'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:in catch' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:ininvoke'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:960:in dispatch!' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:794:inblock in call!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:in block in invoke' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:incatch'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:in invoke' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:794:incall!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:780:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/xss_header.rb:18:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/path_traversal.rb:16:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/json_csrf.rb:18:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/base.rb:49:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/base.rb:49:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/frame_options.rb:31:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/logger.rb:15:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:154:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/head.rb:9:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/methodoverride.rb:21:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/showexceptions.rb:21:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:124:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1417:inblock in call'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1499:in synchronize' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1417:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/lint.rb:48:in _call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/lint.rb:36:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/showexceptions.rb:24:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/commonlogger.rb:33:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:161:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/chunked.rb:43:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/content_length.rb:14:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:81:inblock in pre_process'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:79:in catch' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:79:inpre_process'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:54:in process' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:39:inreceive_data'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/eventmachine-1.0.0.rc.4-x86-mingw32/lib/eventmachine.rb:187:in run_machine' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/eventmachine-1.0.0.rc.4-x86-mingw32/lib/eventmachine.rb:187:inrun'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/backends/base.rb:63:in start' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/server.rb:159:instart'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/handler/thin.rb:13:in run' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/cli_cdweb.rb:46:instart'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/server.rb:137:in start' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/cli_cdweb.rb:108:inexecute_with_options'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cli.rb:174:in web' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor/task.rb:27:inrun'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor/invocation.rb:120:in invoke_task' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cli.rb:217:ininvoke_task'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor.rb:275:in dispatch' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor/base.rb:425:instart'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/bin/milk:10:in <top (required)>' C:/Programs32/Ruby/bin/milk:23:inload'
C:/Programs32/Ruby/bin/milk:23:in <main>' NoMethodError - undefined methodrecords' for nil:NilClass:
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/database/document_table.rb:140:in find_shortpath' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/lib/database.rb:59:inrecord'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/app.rb:94:in block in <top (required)>' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1292:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1292:in block in compile!' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:860:in[]'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:860:in block (3 levels) in route!' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:876:inroute_eval'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:860:in block (2 levels) in route!' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:897:inblock in process_route'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:895:in catch' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:895:inprocess_route'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:859:in block in route!' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:858:ineach'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:858:in route!' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:963:inblock in dispatch!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:in block in invoke' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:incatch'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:in invoke' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:960:indispatch!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:794:in block in call!' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:inblock in invoke'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:in catch' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:ininvoke'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:794:in call!' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:780:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/xss_header.rb:18:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/path_traversal.rb:16:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/json_csrf.rb:18:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/base.rb:49:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/base.rb:49:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/frame_options.rb:31:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/logger.rb:15:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:154:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/head.rb:9:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/methodoverride.rb:21:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/showexceptions.rb:21:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:124:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1417:in block in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1499:insynchronize'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1417:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/lint.rb:48:in_call'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/lint.rb:36:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/showexceptions.rb:24:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/commonlogger.rb:33:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:161:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/chunked.rb:43:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/content_length.rb:14:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:81:in block in pre_process' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:79:incatch'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:79:in pre_process' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:54:inprocess'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:39:in receive_data' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/eventmachine-1.0.0.rc.4-x86-mingw32/lib/eventmachine.rb:187:inrun_machine'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/eventmachine-1.0.0.rc.4-x86-mingw32/lib/eventmachine.rb:187:in run' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/backends/base.rb:63:instart'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/server.rb:159:in start' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/handler/thin.rb:13:inrun'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/cli_cdweb.rb:46:in start' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/server.rb:137:instart'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/cli_cdweb.rb:108:in execute_with_options' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cli.rb:174:inweb'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor/task.rb:27:in run' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor/invocation.rb:120:ininvoke_task'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cli.rb:217:in invoke_task' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor.rb:275:indispatch'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor/base.rb:425:in start' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/bin/milk:10:in<top (required)>'
C:/Programs32/Ruby/bin/milk:23:in load' C:/Programs32/Ruby/bin/milk:23:in

'

NoMethodError - undefined method sort' for nil:NilClass: C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/common/util.rb:224:ingroonga_table_sort'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/database/document_table.rb:290:in search_with_match' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/lib/database.rb:94:insearch'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/lib/search_contents.rb:87:in initialize' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/lib/command.rb:73:innew'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/lib/command.rb:73:in search' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/app.rb:106:inblock in <top (required)>'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1292:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1292:inblock in compile!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:860:in []' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:860:inblock (3 levels) in route!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:876:in route_eval' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:860:inblock (2 levels) in route!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:897:in block in process_route' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:895:incatch'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:895:in process_route' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:859:inblock in route!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:858:in each' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:858:inroute!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:963:in block in dispatch!' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:inblock in invoke'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:in catch' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:ininvoke'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:960:in dispatch!' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:794:inblock in call!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:in block in invoke' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:incatch'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:in invoke' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:794:incall!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:780:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/xss_header.rb:18:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/path_traversal.rb:16:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/json_csrf.rb:18:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/base.rb:49:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/base.rb:49:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/frame_options.rb:31:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/logger.rb:15:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:154:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/head.rb:9:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/methodoverride.rb:21:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/showexceptions.rb:21:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:124:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1417:inblock in call'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1499:in synchronize' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1417:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/lint.rb:48:in _call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/lint.rb:36:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/showexceptions.rb:24:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/commonlogger.rb:33:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:161:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/chunked.rb:43:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/content_length.rb:14:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:81:inblock in pre_process'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:79:in catch' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:79:inpre_process'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:54:in process' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:39:inreceive_data'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/eventmachine-1.0.0.rc.4-x86-mingw32/lib/eventmachine.rb:187:in run_machine' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/eventmachine-1.0.0.rc.4-x86-mingw32/lib/eventmachine.rb:187:inrun'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/backends/base.rb:63:in start' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/server.rb:159:instart'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/handler/thin.rb:13:in run' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/cli_cdweb.rb:46:instart'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/server.rb:137:in start' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/cli_cdweb.rb:108:inexecute_with_options'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cli.rb:174:in web' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor/task.rb:27:inrun'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor/invocation.rb:120:in invoke_task' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cli.rb:217:ininvoke_task'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor.rb:275:in dispatch' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor/base.rb:425:instart'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/bin/milk:10:in <top (required)>' C:/Programs32/Ruby/bin/milk:23:inload'
C:/Programs32/Ruby/bin/milk:23:in `

'

NoMethodError - undefined method records' for nil:NilClass: C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/database/document_table.rb:140:infind_shortpath'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/lib/database.rb:59:in record' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/app.rb:94:inblock in <top (required)>'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1292:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1292:inblock in compile!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:860:in []' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:860:inblock (3 levels) in route!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:876:in route_eval' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:860:inblock (2 levels) in route!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:897:in block in process_route' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:895:incatch'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:895:in process_route' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:859:inblock in route!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:858:in each' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:858:inroute!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:963:in block in dispatch!' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:inblock in invoke'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:in catch' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:ininvoke'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:960:in dispatch!' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:794:inblock in call!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:in block in invoke' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:incatch'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:in invoke' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:794:incall!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:780:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/xss_header.rb:18:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/path_traversal.rb:16:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/json_csrf.rb:18:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/base.rb:49:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/base.rb:49:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/frame_options.rb:31:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/logger.rb:15:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:154:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/head.rb:9:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/methodoverride.rb:21:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/showexceptions.rb:21:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:124:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1417:inblock in call'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1499:in synchronize' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1417:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/lint.rb:48:in _call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/lint.rb:36:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/showexceptions.rb:24:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/commonlogger.rb:33:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:161:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/chunked.rb:43:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/content_length.rb:14:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:81:inblock in pre_process'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:79:in catch' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:79:inpre_process'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:54:in process' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:39:inreceive_data'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/eventmachine-1.0.0.rc.4-x86-mingw32/lib/eventmachine.rb:187:in run_machine' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/eventmachine-1.0.0.rc.4-x86-mingw32/lib/eventmachine.rb:187:inrun'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/backends/base.rb:63:in start' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/server.rb:159:instart'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/handler/thin.rb:13:in run' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/cli_cdweb.rb:46:instart'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/server.rb:137:in start' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/cli_cdweb.rb:108:inexecute_with_options'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cli.rb:174:in web' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor/task.rb:27:inrun'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor/invocation.rb:120:in invoke_task' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cli.rb:217:ininvoke_task'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor.rb:275:in dispatch' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor/base.rb:425:instart'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/bin/milk:10:in <top (required)>' C:/Programs32/Ruby/bin/milk:23:inload'
C:/Programs32/Ruby/bin/milk:23:in `

'

NoMethodError - undefined method each' for nil:NilClass: C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/database/package_table.rb:61:ineach'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/lib/database.rb:170:in to_a' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/lib/database.rb:170:inpackages'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/app.rb:164:in create_select_package_home' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/views/index.haml:34:inblock in singletonclass'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/views/index.haml:65527:in instance_eval' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/views/index.haml:65527:insingletonclass'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/views/index.haml:65525:in __tilt_19510320' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/tilt-1.3.6/lib/tilt/template.rb:144:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/tilt-1.3.6/lib/tilt/template.rb:144:in evaluate' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/tilt-1.3.6/lib/tilt/haml.rb:24:inevaluate'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/tilt-1.3.6/lib/tilt/template.rb:77:in render' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:711:inrender'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:607:in haml' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/app.rb:35:inblock in <top (required)>'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1293:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1293:inblock in compile!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:860:in []' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:860:inblock (3 levels) in route!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:876:in route_eval' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:860:inblock (2 levels) in route!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:897:in block in process_route' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:895:incatch'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:895:in process_route' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:859:inblock in route!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:858:in each' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:858:inroute!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:963:in block in dispatch!' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:inblock in invoke'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:in catch' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:ininvoke'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:960:in dispatch!' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:794:inblock in call!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:in block in invoke' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:incatch'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:in invoke' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:794:incall!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:780:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/xss_header.rb:18:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/path_traversal.rb:16:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/json_csrf.rb:18:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/base.rb:49:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/base.rb:49:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/frame_options.rb:31:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/logger.rb:15:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:154:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/head.rb:9:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/methodoverride.rb:21:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/showexceptions.rb:21:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:124:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1417:inblock in call'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1499:in synchronize' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1417:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/lint.rb:48:in _call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/lint.rb:36:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/showexceptions.rb:24:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/commonlogger.rb:33:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:161:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/chunked.rb:43:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/content_length.rb:14:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:81:inblock in pre_process'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:79:in catch' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:79:inpre_process'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:54:in process' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:39:inreceive_data'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/eventmachine-1.0.0.rc.4-x86-mingw32/lib/eventmachine.rb:187:in run_machine' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/eventmachine-1.0.0.rc.4-x86-mingw32/lib/eventmachine.rb:187:inrun'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/backends/base.rb:63:in start' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/server.rb:159:instart'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/handler/thin.rb:13:in run' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/cli_cdweb.rb:46:instart'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/server.rb:137:in start' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/cli_cdweb.rb:108:inexecute_with_options'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cli.rb:174:in web' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor/task.rb:27:inrun'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor/invocation.rb:120:in invoke_task' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cli.rb:217:ininvoke_task'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor.rb:275:in dispatch' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor/base.rb:425:instart'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/bin/milk:10:in <top (required)>' C:/Programs32/Ruby/bin/milk:23:inload'
C:/Programs32/Ruby/bin/milk:23:in `

'

NoMethodError - undefined method each' for nil:NilClass: C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/database/package_table.rb:61:ineach'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/lib/database.rb:170:in to_a' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/lib/database.rb:170:inpackages'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/app.rb:164:in create_select_package_home' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/views/index.haml:34:inblock in singletonclass'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/views/index.haml:65527:in instance_eval' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/views/index.haml:65527:insingletonclass'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/views/index.haml:65525:in __tilt_19477560' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/tilt-1.3.6/lib/tilt/template.rb:144:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/tilt-1.3.6/lib/tilt/template.rb:144:in evaluate' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/tilt-1.3.6/lib/tilt/haml.rb:24:inevaluate'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/tilt-1.3.6/lib/tilt/template.rb:77:in render' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:711:inrender'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:607:in haml' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/app.rb:35:inblock in <top (required)>'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1293:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1293:inblock in compile!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:860:in []' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:860:inblock (3 levels) in route!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:876:in route_eval' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:860:inblock (2 levels) in route!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:897:in block in process_route' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:895:incatch'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:895:in process_route' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:859:inblock in route!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:858:in each' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:858:inroute!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:963:in block in dispatch!' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:inblock in invoke'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:in catch' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:ininvoke'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:960:in dispatch!' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:794:inblock in call!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:in block in invoke' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:incatch'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:946:in invoke' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:794:incall!'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:780:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/xss_header.rb:18:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/path_traversal.rb:16:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/json_csrf.rb:18:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/base.rb:49:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/base.rb:49:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-protection-1.5.0/lib/rack/protection/frame_options.rb:31:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/logger.rb:15:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:154:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/head.rb:9:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/methodoverride.rb:21:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/showexceptions.rb:21:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:124:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1417:inblock in call'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1499:in synchronize' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:1417:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/lint.rb:48:in _call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/lint.rb:36:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/showexceptions.rb:24:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/commonlogger.rb:33:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/sinatra-1.3.5/lib/sinatra/base.rb:161:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/chunked.rb:43:incall'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/content_length.rb:14:in call' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:81:inblock in pre_process'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:79:in catch' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:79:inpre_process'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:54:in process' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/connection.rb:39:inreceive_data'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/eventmachine-1.0.0.rc.4-x86-mingw32/lib/eventmachine.rb:187:in run_machine' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/eventmachine-1.0.0.rc.4-x86-mingw32/lib/eventmachine.rb:187:inrun'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/backends/base.rb:63:in start' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thin-1.5.1/lib/thin/server.rb:159:instart'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/handler/thin.rb:13:in run' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/cli_cdweb.rb:46:instart'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/rack-1.4.5/lib/rack/server.rb:137:in start' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cdweb/cli_cdweb.rb:108:inexecute_with_options'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cli.rb:174:in web' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor/task.rb:27:inrun'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor/invocation.rb:120:in invoke_task' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/lib/milkode/cli.rb:217:ininvoke_task'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor.rb:275:in dispatch' C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.15.4/lib/thor/base.rb:425:instart'
C:/Programs32/Ruby/lib/ruby/gems/1.9.1/gems/milkode-0.9.9/bin/milk:10:in <top (required)>' C:/Programs32/Ruby/bin/milk:23:inload'
C:/Programs32/Ruby/bin/milk:23:in `

'

検索結果が多すぎる場合

検索した結果が多すぎるとこのエラーが出るみたいなのですが、いくつぐらいまでなら大丈夫なのでしょうか?

それからgrepなどを代わりに使えと出ますがうまく動かないようなのですが、何が問題なのでしょうか?

$>gmilk -a NULL
Number of records is large. Use auto external tool (gmilk -e grep)
C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/grep/cli_grep.rb:262:in `exist?': can't convert nil into String (Type Error)
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/grep/cli_grep.rb:262:in `block in pickup_files'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/grep/cli_grep.rb:261:in `each'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/grep/cli_grep.rb:261:in `pickup_files'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/grep/cli_grep.rb:231:in `search_external_tool'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/grep/cli_grep.rb:215:in `execute'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/bin/gmilk:10:in `<top (required)>'
        from C:/Ruby/bin/gmilk:23:in `load'
        from C:/Ruby/bin/gmilk:23:in `<main>'

$>gmilk -e grep -a NULL
C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/grep/cli_grep.rb:262:in `exist?': can't convert nil into String (Type Error)
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/grep/cli_grep.rb:262:in `block in pickup_files'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/grep/cli_grep.rb:261:in `each'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/grep/cli_grep.rb:261:in `pickup_files'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/grep/cli_grep.rb:231:in `search_external_tool'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/grep/cli_grep.rb:169:in `execute'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/bin/gmilk:10:in `<top (required)>'
        from C:/Ruby/bin/gmilk:23:in `load'
        from C:/Ruby/bin/gmilk:23:in `<main>'

拡張子が .php のファイルで日本語が表示されない

拡張子が .php のファイルについて、日本語の部分が「?」になって検索結果に表示されるようです。
(日本語の検索自体は成功しているので、表示の際に化けてしまっているのだと思います。)

ファイルの内容に問題があるのかと思い Shift_JIS、EUC-JP、UTF-8 のような文字コードで
動作を確認してみましたがどれも同じ動作で、拡張子を .txt に変えたところ正常に表示されました。

もし milkode 側で何らかの対策が可能であれば、対応していただけると助かります。

ソースコード表示ページで、ハイライトされていない行へのリンクを取得できないでしょうか

milk webにて、ソースのファイル単体表示している場合に、
現在、ハイライトされていて、行番号が赤くなっている行については、
その行へのリンクを取得することができますが、
そうでない行についても、その行へのリンクを取得することはできないでしょうか?

たとえば
http://kodeworld.ongaeshi.me/home/milkode/lib/milkode/cdweb/lib/mkurl.rb#!
このようなページで、
「57」をクリックすると、
http://kodeworld.ongaeshi.me/home/milkode/lib/milkode/cdweb/lib/mkurl.rb#57
というようにURLが取得可能で、その行がハイライトされるというようなイメージです。
(操作としては、行番号のクリック以外の方法でもOKです)

milk webでソースコードの文字コードがEUC-JPの場合、検索結果に表示される日本語が文字化けする

milk webを使用し、日本語文字列で検索を行います。
検索自体は正しく行われるのですが、表示されるコードに日本語があると文字化けしてしまいます。
ソースコードがEUC-JPでmilk webではutf-8で表示している所為かと思います。

検索ボックスに以下を入力し、検索ボタンを押下。

ユーザ情報表示

238 ,'PATH'=>_PATH. 'User/Common.css'
239 ,'ENTRY'=>'???????????????????'
240
241 ,'TITLE'=>'???????'
242
243

検索せずに、たんにファイルを開いても日本語は文字化けしているようです。

milk grep を使用すると問題なく日本語が表示されます。

$ milk grep ユーザ情報表示

dev/modules/User/admUser.php:241: ,'TITLE'=>'ユーザ情報表示'

milk webを使用している際にも、正しく日本語が表示されるようにならないでしょうか。

Debian squeezeでインストールエラー

最近、Mikodeの存在を知りましてWindows7にはインストール成功しました。
既出の問題のV.0.2.3がインストール出来ない問題でV.0.2.2をインストールしましたが・・・

で、Debian squeezeにインストールしようとしたところエラーになります。

gem install milkode -v 0.2.2

Building native extensions. This could take a while...
ERROR: Error installing milkode:
ERROR: Failed to build gem native extension.

/usr/bin/ruby1.8 extconf.rb
checking for GCC... yes
checking for Win32 OS... no
checking for groonga version (>= 1.2.5)... no
downloading http://packages.groonga.org/source/groonga/groonga-1.2.5.tar.gz... done
extracting... done
configuring... done
building (maybe long time)... failed

Gem files will remain installed in /var/lib/gems/1.8/gems/rroonga-1.2.9 for inspection.
Results logged to /var/lib/gems/1.8/gems/rroonga-1.2.9/ext/groonga/gem_make.out

groongaのインストールに失敗しているようです

gem install groonga

Building native extensions. This could take a while...
ERROR: Error installing groonga:
ERROR: Failed to build gem native extension.

/usr/bin/ruby1.8 extconf.rb
checking for GCC... yes
checking for Win32 OS... no
checking for groonga version (>= 1.2.5)... no
downloading http://packages.groonga.org/source/groonga/groonga-1.2.5.tar.gz... done
extracting... done
configuring... done
building (maybe long time)... failed

Gem files will remain installed in /var/lib/gems/1.8/gems/rroonga-1.2.9 for inspection.
Results logged to /var/lib/gems/1.8/gems/rroonga-1.2.9/ext/groonga/gem_make.out

各Versionは以下の通りです。

ruby -v

ruby 1.8.7 (2010-08-16 patchlevel 302) [arm-linux-eabi]

gem -v

1.3.7

何かご助言があればよろしくお願いします。

ちなみにCPUはARMです。

cat /proc/cpuinfo

Processor : Feroceon 88FR131 rev 1 (v5l)
BogoMIPS : 1599.07
Features : swp half thumb fastmult edsp
CPU implementer : 0x56
CPU architecture: 5TE
CPU variant : 0x2
CPU part : 0x131
CPU revision : 1

Hardware : Feroceon-KW
Revision : 0000
Serial : 0000000000000000

milkコマンドの実行

hidemaru76です。
申し訳ございませんが、また新たに質問をさせていただきます。

milkode検索対象資源の追加、更新、削除のコマンドを自作プログラムから利用したいのですが、
情報や手順等をご教授いただけないでしょうか?
(当方、rubyの経験が浅く、初歩的な質問をしていましたら、お詫び申し上げます)

依存関係をGemspecに移動しました

To: tomykairaさん

Milkode0.7が以下のようなエラーを吐き

ERROR:  Error installing milkode:         milkode requires milkode (>= 0)

インストール出来ないというバグ報告があり調べてみた所、jewelerの依存関係生成部分に問題があることが分かりました。

依存関係が全てGemfileにあれば解決しそうなのでRakefileにあった依存関係を引っ越しました。 (16f372a)

Milkodeをbundlerで扱う時に関係しそうな部分だったのでお知らせさせてもらいました。
もし、何かまずい点があればご指摘下さい。

Typo in tutorial?

カスタムデータベースの作成の項に「作成したディレクトリに移動後、milk initを実行します」とありますが、「milk init .」のようにディレクトリを指定しないと、~/.milkodeにDBが作られてしまうようです。

rvm使用時にLoadError

環境
[11-08-01 15:33] @rails3 hi% rvm info

ruby-1.9.2-p290@rails3:

system:
uname: "Linux ubuntu 2.6.38-10-generic #46-Ubuntu SMP Tue Jun 28 15:07:17 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux"
bash: "/bin/bash => GNU bash, バージョン 4.2.8(1)-release (x86_64-pc-linux-gnu)"
zsh: "/usr/bin/zsh => zsh 4.3.11 (x86_64-unknown-linux-gnu)"

rvm:
version: "rvm 1.6.25 by Wayne E. Seguin ([email protected]) [https://rvm.beginrescueend.com/]"

ruby:
interpreter: "ruby"
version: "1.9.2p290"
date: "2011-07-09"
platform: "x86_64-linux"
patchlevel: "2011-07-09 revision 32553"
full_version: "ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-linux]"

homes:
gem: "/home/hi/.rvm/gems/ruby-1.9.2-p290@rails3"
ruby: "/home/hi/.rvm/rubies/ruby-1.9.2-p290"

binaries:
ruby: "/home/hi/.rvm/rubies/ruby-1.9.2-p290/bin/ruby"
irb: "/home/hi/.rvm/rubies/ruby-1.9.2-p290/bin/irb"
gem: "/home/hi/.rvm/rubies/ruby-1.9.2-p290/bin/gem"
rake: "/home/hi/.rvm/gems/ruby-1.9.2-p290@global/bin/rake"

environment:
PATH: "/home/hi/.rvm/gems/ruby-1.9.2-p290@rails3/bin:/home/hi/.rvm/gems/ruby-1.9.2-p290@global/bin:/home/hi/.rvm/rubies/ruby-1.9.2-p290/bin:/home/hi/.rvm/bin:/home/hi:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/ant/bin"
GEM_HOME: "/home/hi/.rvm/gems/ruby-1.9.2-p290@rails3"
GEM_PATH: "/home/hi/.rvm/gems/ruby-1.9.2-p290@rails3:/home/hi/.rvm/gems/ruby-1.9.2-p290@global"
MY_RUBY_HOME: "/home/hi/.rvm/rubies/ruby-1.9.2-p290"
IRBRC: "/home/hi/.rvm/rubies/ruby-1.9.2-p290/.irbrc"
RUBYOPT: ""
gemset: "rails3"

実行できずにエラー。
[11-08-01 15:32] @rails3 hi% milk
/home/hi/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:58:in require': libgroonga.so.0: cannot open shared object file: No such file or directory - /home/hi/.rvm/gems/ruby-1.9.2-p290@rails3/gems/rroonga-1.2.4/lib/groonga.so (LoadError) from /home/hi/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:58:inrescue in require'
from /home/hi/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:35:in require' from /home/hi/.rvm/gems/ruby-1.9.2-p290@rails3/gems/rroonga-1.2.4/lib/groonga.rb:45:inrescue in <top (required)>'
from /home/hi/.rvm/gems/ruby-1.9.2-p290@rails3/gems/rroonga-1.2.4/lib/groonga.rb:41:in <top (required)>' from /home/hi/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:inrequire'
from /home/hi/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in require' from /home/hi/.rvm/gems/ruby-1.9.2-p290@rails3/gems/milkode-0.1.4/lib/milkode/cdstk/cdstk.rb:6:in<top (required)>'
from /home/hi/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in require' from /home/hi/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:inrequire'
from /home/hi/.rvm/gems/ruby-1.9.2-p290@rails3/gems/milkode-0.1.4/lib/milkode/cdstk/cli_cdstksub.rb:3:in <top (required)>' from /home/hi/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:inrequire'
from /home/hi/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in require' from /home/hi/.rvm/gems/ruby-1.9.2-p290@rails3/gems/milkode-0.1.4/lib/milkode/cdstk/cli_cdstk.rb:3:in<top (required)>'
from /home/hi/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in require' from /home/hi/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:inrequire'
from /home/hi/.rvm/gems/ruby-1.9.2-p290@rails3/gems/milkode-0.1.4/bin/milk:7:in <top (required)>' from /home/hi/.rvm/gems/ruby-1.9.2-p290@rails3/bin/milk:19:inload'
from /home/hi/.rvm/gems/ruby-1.9.2-p290@rails3/bin/milk:19:in `

'

gmilkでの検索結果のファイルのパス

gmilkを実行した時に検索結果のファイルパスが同じドライブの場合、結果のファイルパスが相対パスになりますが、これを絶対パスで出力させる方法がございませんでしょうか?

外部プログラムでタグジャンプをさせる場合、そのプログラムが開いているファイルに応じて動的にカレントパスを変えるため、相対パスだとタグジャンプできず困っています。

よろしくお願いします。

Windowsで1.3を1.4に上書きインストールした場合のエラー

Windowsで1.3がインストールされている状態で1.4をインストールすると以下のよう
なエラーが出ました。ドキュメントのようですので動作には問題が無いと思います。

gem install milkode
Fetching: i18n-0.6.5.gem (100%)
Fetching: milkode-1.4.0.gem (100%)
Successfully installed i18n-0.6.5
Successfully installed milkode-1.4.0
2 gems installed
Installing ri documentation for i18n-0.6.5...
unable to convert U+00C0 from UTF-8 to Windows-31J for lib/i18n/backend/transliterator.rb, skipping unable to convert U+00E4 from UTF-8 to Windows-31J for lib/i18n/tests/interpolation.rb, skipping unable to convert "\xC3" to UTF-8 in conversion from ASCII-8BIT to UTF-8 to Windows-31J for lib/i18n.rb, skipping Installing ri documentation for milkode-1.4.0...
Installing RDoc documentation for i18n-0.6.5...
unable to convert U+00C0 from UTF-8 to Windows-31J for lib/i18n/backend/transliterator.rb, skipping unable to convert U+00E4 from UTF-8 to Windows-31J for lib/i18n/tests/interpolation.rb, skipping unable to convert "\xC3" to UTF-8 in conversion from ASCII-8BIT to UTF-8 to Windows-31J for lib/i18n.rb, skipping Installing RDoc documentation for milkode-1.4.0...

Bundler 1.1 で "milkode (0.2.3) has an invalid gemspec"

Bundler 1.1 では rubygems の依存関係の探しかたが変わった関係で、昔の gemspec のエラーの問題が再発しているようです。

ubuntu, ruby 1.9.2-p180, rubygems 1.8.17, bundler 1.1.rc.8 で次の Gemfile を bundle すると、上述のエラーがでます。

source :rubygems
gem 'milkode'

なお、bundler 1.0 系ではエラーは出ません(1.0.22 で確認)。

bundler 側で対応すべき問題なのかもしれませんが、rubygems.org についてよく知らないので、ひとまずこちらに報告します。

エラー内容:

Fetching gem metadata from http://rubygems.org/.
Unfortunately, the gem milkode (0.2.3) has an invalid gemspec. As a result, Bundler cannot install this Gemfile. Please ask the gem author to yank the bad version to fix this issue. For more information, see http://bit.ly/syck-defaultkey.

milk add <フォルダ>でGroonga::TokenizerError

milk 0.2.4をインストールしました。

milk add <フォルダ>を行うと以下のエラーが出ます。

add_record : C:/Users/foo/Documents/Builder/Projector/test/test.~h
C:/Ruby187/lib/ruby/gems/1.8/gems/rroonga-1.1.0-x86-mingw32/lib/groonga/record.r
b:84:in `[]=': tokenizer error: grn_str_open failed at grn_token_open: #<Groonga
::VariableSizeColumn id: <259>, name: <documents.content>, path: <C:/Users/00050
03350/.milkode/db/milkode.db.tables/documents.columns/content>, domain: <documen
ts>, range: <Text>, flags: <>> (Groonga::TokenizerError)
token.c:223: ngram_init()
        from C:/Ruby187/lib/ruby/gems/1.8/gems/rroonga-1.1.0-x86-mingw32/lib/gro
onga/record.rb:84:in `set_column_value'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/rroonga-1.1.0-x86-mingw32/lib/gro
onga/record.rb:84:in `[]='
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:482:in `db_add_file'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:472:in `each'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:472:in `db_add_file'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:507:in `searchDirectory'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:489:in `foreach'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:489:in `searchDirectory'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:504:in `searchDirectory'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:489:in `foreach'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:489:in `searchDirectory'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:504:in `searchDirectory'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:489:in `foreach'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:489:in `searchDirectory'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:432:in `db_add_dir'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:339:in `update_dir_in'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:78:in `update_dir'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:115:in `add'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:114:in `each'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:114:in `add'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:351:in `print_result'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
dstk.rb:112:in `add'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/lib/milkode/cdstk/c
li_cdstk.rb:59:in `execute'
        from C:/Ruby187/lib/ruby/gems/1.8/gems/milkode-0.2.4/bin/milk:10
        from C:/Ruby187/bin/milk:19:in `load'
        from C:/Ruby187/bin/milk:19

このエラーが出ると
milk list
は出来ますが、
milk cleanup
も出来なくなります。

CentOS 5.5 (32bit) で milk update に失敗する

環境は以下のような感じ。

$ cat /etc/redhat-release
CentOS release 5.5 (Final)
$ uname -a
Linux dti-vps-srv22 2.6.18-194.3.1.el5.028stab069.6 #1 SMP Wed May 26 18:31:05 MSD 2010 i686 i686 i386 GNU/Linux

milk updateでエラー

$ milk update
package    : ruby-1.9.2-p290
add_record : /home/ongaeshi/.milkode/packages/zip/ruby-1.9.2-p290/compile.c
/usr/local/lib/ruby/gems/1.8/gems/milkode-0.1.4/lib/milkode/cdstk/cdstk.rb:438:in `db_add_file': undefined method `size' for nil:NilClass (NoMethodError)
    from /usr/local/lib/ruby/gems/1.8/gems/milkode-0.1.4/lib/milkode/cdstk/cdstk.rb:488:in `searchDirectory'
    from /usr/local/lib/ruby/gems/1.8/gems/milkode-0.1.4/lib/milkode/cdstk/cdstk.rb:470:in `foreach'
    from /usr/local/lib/ruby/gems/1.8/gems/milkode-0.1.4/lib/milkode/cdstk/cdstk.rb:470:in `searchDirectory'
    from /usr/local/lib/ruby/gems/1.8/gems/milkode-0.1.4/lib/milkode/cdstk/cdstk.rb:414:in `db_add_dir'
    from /usr/local/lib/ruby/gems/1.8/gems/milkode-0.1.4/lib/milkode/cdstk/cdstk.rb:328:in `update_dir_in'
    from /usr/local/lib/ruby/gems/1.8/gems/milkode-0.1.4/lib/milkode/cdstk/cdstk.rb:66:in `update'
    from /usr/local/lib/ruby/gems/1.8/gems/milkode-0.1.4/lib/milkode/cdstk/cdstk.rb:65:in `each'
    from /usr/local/lib/ruby/gems/1.8/gems/milkode-0.1.4/lib/milkode/cdstk/cdstk.rb:65:in `update'
    from /usr/local/lib/ruby/gems/1.8/gems/milkode-0.1.4/lib/milkode/cdstk/cdstk.rb:340:in `print_result'
    from /usr/local/lib/ruby/gems/1.8/gems/milkode-0.1.4/lib/milkode/cdstk/cdstk.rb:58:in `update'
    from /usr/local/lib/ruby/gems/1.8/gems/milkode-0.1.4/lib/milkode/cdstk/cli_cdstk.rb:57:in `execute'
    from /usr/local/lib/ruby/gems/1.8/gems/milkode-0.1.4/bin/milk:10
    from /usr/local/bin/milk:19:in `load'
    from /usr/local/bin/milk:19

milk rebuild なら問題なく動きます

WindowsXP(32bit) で大量のファイルを登録するとエラー

20000ファイル位登録すると動かなくなる印象。

$ milk web
127.0.0.1 - - [12/Aug/2011 11:18:05] "GET / HTTP/1.1" 200 1034 1.3750
127.0.0.1 - - [12/Aug/2011 11:18:05] "GET / HTTP/1.1" 200 1034 1.4063
127.0.0.1 - - [12/Aug/2011 11:18:05] "GET /css/gren.css HTTP/1.1" 304 - 0.0000
127.0.0.1 - - [12/Aug/2011 11:18:05] "GET /css/gren.css HTTP/1.1" 304 - 0.0000
127.0.0.1 - - [12/Aug/2011 11:18:05] "GET /css/coderay.css HTTP/1.1" 304 - 0.0000
127.0.0.1 - - [12/Aug/2011 11:18:05] "GET /css/coderay.css HTTP/1.1" 304 - 0.0000
127.0.0.1 - - [12/Aug/2011 11:18:05] "GET /images/MilkodeIcon135.png HTTP/1.1" 304 - 0.0000
127.0.0.1 - - [12/Aug/2011 11:18:05] "GET /images/MilkodeIcon135.png HTTP/1.1" 304 - 0.1719
127.0.0.1 - - [12/Aug/2011 11:18:09] "POST /home HTTP/1.1" 302 - 0.0000
127.0.0.1 - - [12/Aug/2011 11:18:09] "POST /home HTTP/1.1" 302 - 0.0156
Groonga::UnknownError - unknown error: syscall error 'CreateFile' (unknown error): #<Groonga::Hash id: <256>, name: <documents>, path: <C:/tmp/milkode_tmp/old_src/db/milkode.db.tables/documents>, domain: <ShortText>, range: (nil), flags: <>, encoding: <:utf8>, size: <41082>>
io.c:1620: grn_open():
 C:/app/ruby/lib/ruby/gems/1.8/gems/milkode-0.2.1/lib/milkode/cdweb/lib/database.rb:158:in `select'
 C:/app/ruby/lib/ruby/gems/1.8/gems/milkode-0.2.1/lib/milkode/cdweb/lib/database.rb:158:in `searchMain'
 C:/app/ruby/lib/ruby/gems/1.8/gems/milkode-0.2.1/lib/milkode/cdweb/lib/database.rb:52:in `search'
 ../../milkode/cdweb/lib/search_contents.rb:32:in `initialize'
 ../../milkode/cdweb/lib/command.rb:39:in `new'
 ../../milkode/cdweb/lib/command.rb:39:in `search'
 ./app.rb:51:in `GET /home*'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:1151:in `call'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:1151:in `compile!'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:724:in `instance_eval'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:724:in `route_eval'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:708:in `route!'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:758:in `process_route'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:755:in `catch'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:755:in `process_route'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:707:in `route!'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:706:in `each'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:706:in `route!'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:843:in `dispatch!'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:644:in `call!'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:808:in `instance_eval'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:808:in `invoke'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:808:in `catch'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:808:in `invoke'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:644:in `call!'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:629:in `call'
 C:/app/ruby/lib/ruby/gems/1.8/gems/rack-1.2.2/lib/rack/head.rb:9:in `call'
 C:/app/ruby/lib/ruby/gems/1.8/gems/rack-1.2.2/lib/rack/commonlogger.rb:18:in `call'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/showexceptions.rb:21:in `call'
 C:/app/ruby/lib/ruby/gems/1.8/gems/rack-1.2.2/lib/rack/methodoverride.rb:24:in `call'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:1272:in `call'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:1303:in `synchronize'
 C:/app/ruby/lib/ruby/gems/1.8/gems/sinatra-1.2.6/lib/sinatra/base.rb:1272:in `call'
 C:/app/ruby/lib/ruby/gems/1.8/gems/rack-1.2.2/lib/rack/lint.rb:48:in `_call'
 C:/app/ruby/lib/ruby/gems/1.8/gems/rack-1.2.2/lib/rack/lint.rb:36:in `call'
 C:/app/ruby/lib/ruby/gems/1.8/gems/rack-1.2.2/lib/rack/showexceptions.rb:24:in `call'
 C:/app/ruby/lib/ruby/gems/1.8/gems/rack-1.2.2/lib/rack/commonlogger.rb:18:in `call'
 C:/app/ruby/lib/ruby/gems/1.8/gems/rack-1.2.2/lib/rack/content_length.rb:13:in `call'
 C:/app/ruby/lib/ruby/gems/1.8/gems/rack-1.2.2/lib/rack/chunked.rb:15:in `call'
 C:/app/ruby/lib/ruby/gems/1.8/gems/thin-1.2.11-x86-mswin32/lib/thin/connection.rb:84:in `pre_process'
 C:/app/ruby/lib/ruby/gems/1.8/gems/thin-1.2.11-x86-mswin32/lib/thin/connection.rb:82:in `catch'
 C:/app/ruby/lib/ruby/gems/1.8/gems/thin-1.2.11-x86-mswin32/lib/thin/connection.rb:82:in `pre_process'
 C:/app/ruby/lib/ruby/gems/1.8/gems/thin-1.2.11-x86-mswin32/lib/thin/connection.rb:57:in `process'
 C:/app/ruby/lib/ruby/gems/1.8/gems/thin-1.2.11-x86-mswin32/lib/thin/connection.rb:42:in `receive_data'
 C:/app/ruby/lib/ruby/gems/1.8/gems/eventmachine-0.12.10-x86-mswin32-60/lib/eventmachine.rb:256:in `run_machine'
 C:/app/ruby/lib/ruby/gems/1.8/gems/eventmachine-0.12.10-x86-mswin32-60/lib/eventmachine.rb:256:in `run'
 C:/app/ruby/lib/ruby/gems/1.8/gems/thin-1.2.11-x86-mswin32/lib/thin/backends/base.rb:61:in `start'
 C:/app/ruby/lib/ruby/gems/1.8/gems/thin-1.2.11-x86-mswin32/lib/thin/server.rb:159:in `start'
 C:/app/ruby/lib/ruby/gems/1.8/gems/rack-1.2.2/lib/rack/handler/thin.rb:14:in `run'
 C:/app/ruby/lib/ruby/gems/1.8/gems/milkode-0.2.1/lib/milkode/cdweb/cli_cdweb.rb:46:in `start'
 C:/app/ruby/lib/ruby/gems/1.8/gems/rack-1.2.2/lib/rack/server.rb:100:in `start'
 C:/app/ruby/lib/ruby/gems/1.8/gems/milkode-0.2.1/lib/milkode/cdweb/cli_cdweb.rb:99:in `execute_with_options'
 C:/app/ruby/lib/ruby/gems/1.8/gems/milkode-0.2.1/lib/milkode/cdstk/cli_cdstk.rb:74:in `execute'
 C:/app/ruby/lib/ruby/gems/1.8/gems/milkode-0.2.1/bin/milk:10
 C:/app/ruby/bin/milk:19:in `load'
 C:/app/ruby/bin/milk:19
127.0.0.1 - - [12/Aug/2011 11:18:10] "GET /home/?query=sqrt HTTP/1.1" 500 149879 0.2656

パッケージを完全一致で検索する方法

いつも便利に使わせてもらっています

milkode に、複数のパッケージを登録し、パッケージ名に以下の例のような4つの名前を使用している場合、
p:milk keyword
で検索すると、以下のすべてのパッケージから検索されてしまいます
パッケージ「milk」内だけを検索する方法はありますでしょうか?

milk
milk_xx
milk_yy
buy_milk

SVNやCVSの形式にも対応して欲しい

CVS、SVNサーバー上でmilkodeを運用したいのですが、SVNのfsfs形式等には対応していないですよね?

出来ましたら対応して欲しいのですが難しいでしょうか?

Permission deniedで中断してしまう

milk update --allを実行し、更新させる時に開けないファイルがあるとそこで中断してしまうようです。これを無視して続行し、中断しないようにする事は難しいでしょうか?

その該当ファイルのアクセス権を変更すればよいのですが、頻繁にアップデートするファイルにランダムに含まれているためそのファイルを特定するのが容易ではないので、そのようなファイルはただ単に無視していただけると助かるのですが。

C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/common/grenfiletest.rb:16:in `read': Permission denied - //server/volume/file.bin (Errno::EACCES)
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/common/grenfiletest.rb:16:in `binary?'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:233:in `ignoreFile?'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:216:in `block in searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:198:in `foreach'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:214:in `block in searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:198:in `foreach'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:214:in `block in searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:198:in `foreach'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:214:in `block in searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:198:in `foreach'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:214:in `block in searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:198:in `foreach'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:214:in `block in searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:198:in `foreach'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:198:in `searchDirectory'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:163:in `db_add_dir'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:156:in `update_dir'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/database/updater.rb:39:in `exec'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/cdstk/cdstk.rb:1154:in `updater_exec'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/cdstk/cdstk.rb:1122:in `update_package_in'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/cdstk/cdstk.rb:74:in `block (2 levels) in update_all'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/cdstk/cdstk.rb:73:in `each'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/cdstk/cdstk.rb:73:in `block in update_all'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/cdstk/cdstk.rb:1210:in `print_result'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/cdstk/cdstk.rb:70:in `update_all'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/cdstk/cdstk.rb:83:in `update'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/cli.rb:60:in `update'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.18.1/lib/thor/command.rb:27:in `run'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.18.1/lib/thor/invocation.rb:120:in `invoke_command'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/lib/milkode/cli.rb:245:in `invoke_command'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.18.1/lib/thor.rb:363:in `dispatch'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/thor-0.18.1/lib/thor/base.rb:439:in `start'
        from C:/Ruby/lib/ruby/gems/1.9.1/gems/milkode-1.4.0/bin/milk:10:in `<top (required)>'
        from C:/Ruby/bin/milk:23:in `load'
        from C:/Ruby/bin/milk:23:in `<main>'

gmilk で Ctrl+C 押下時のスタックトレースを表示しないで欲しい

お世話になっております。

gmilk コマンドの実行中に Ctrl+C で処理を中断することが結構あるのですが、その際表示されるスタックトレースが邪魔になることがあるので、デフォルトではスタックトレースを非表示にできないか検討していただけないでしょうか?

データベースの容量が肥大化する

Milkodeを使用していたところ、検索対象ファイルのサイズが約500MBであるのに対し、Milkodeのデータベースが10GB程度になる事象が発生しました。

実施した手順は、以下の通りです。 1. データベースを初期化(milk init --setdb data) 2. Milkodeのデータベースに、約600MBのデータを追加(15000ファイル程度)。(milk add [ディレクトリ名])   (この時、データベース容量は466MB) 3. 追加したファイルを全て削除。 4. 検索インデックスを更新。(milk update [ディレクトリ名])

検索インデックスを更新中に、データベース容量の変化を監視したのですが、データベースのレコードが削除されても、データベースの容量は増加しているようです。

原因を突き止められてはいないのですが、可能性として、以下の2つを考えています。 1. Milkodeは、データ構造としてPatricia Trie(ツリー構造)を使用している。  インデックスを保存するファイルの最大サイズが1GBであるため、データ容量が1GBを超えると、新たなファイルが作成されるが、その際、ツリー構造の大部分が複製されてしまう。 2. レコードが削除される際にも、データベースの容量が増加するようになっている。  ファイルの大規模な削除等が行われると、その際にデータベースが増加する容量が大きくなり、1GBを超えたところから、1の理由で、容量が爆発的に増加する。

本件について、何か対策はありませんでしょうか。また、こちらの設定の問題も考えられるので、原因をご存じでしたら、教えていただけないでしょうか。

(現在は、データベースを初期化し、再度データを追加することで対応しています。) よろしくお願いします。

【milkode 0.1.6】検索結果・検索結果の表示がおかしい

【バグ】
・検索文字列のヒット数が明らかに少ない
  みかけ50件まで、(実際は62件まで?)しか取得できていません。

・検索結果の件数表示がおかしい
  さらに、検索結果の件数表示も異常です。
  50件中 42 - 62件(0.087289秒) <= 50件中と書いてあるのに62件まで表示されている

・全体を検索 root 以下 root 以下 となっていてどういう検索方法なのかわからない

これらのバグは http://kodeworld.ongaeshi.me/ においてもみられるので、環境依存ではなさそうです。


【要望】
・現時点でのページャはnextリンクしかないが、prevリンクもほしい。
・nextリンクprevリンクをページ上部にもほしい(◯件中〜の下あたりに)

・検索結果の表示順をソートしたい(ファイル名順、ファイル更新日順、など)


ソースコードではなく、ログの検索に使ってみていますが、ファイルごとに文字コードが違っていても検索できてしまうのは素晴らしいです!
バグ報告と要望を一気に出してしまいましたが、じっくりと良いものを作っていただけると利用させていただいてる側としても嬉しいです。

よろしくお願いいたします。

検索結果が漏れる

検索結果が漏れています。
s: で拡張子を絞り込んで検索した場合と、絞り込まずにキーワードでのみ検索した場合で、拡張子を絞り込んで検索した結果が、絞り込まずに検索した結果にでてきません。
登録されているファイルの数が多かったりした場合に、バグがあるのだと思います。

milk webでlibxxx.dllが見つからないエラー

導入の手順について報告いたします。このissueは解決済みです。

環境はWindows2003 32bitです。

結論としては、当方の環境では下記手順で動作しました。

gem.bat install rroonga --platform x86-mingw32 -v 1.1.0
gem.bat install milkode

■動作せず
最初に下記を実行すると、eventmachineは1.0.0.beta.4 x86-mswin32-60がインストールされました。

gem.bat install eventmachine --pre
rroongaとmilkodeのインストールも無事完了しましたが、milk webのときに、次のメッセージで怒られます。

『libxxx.dll が見つからなかったため、このアプリケーションを開始できませんでした。アプリケーションをインストールし直すとこの問題は解決される場合があります。』
(xxxはlibgcc_sjlj-1.dllやlibstdc++-6.dllやlibgcc_s_dw2-1.dllです)

■動作した
eventmachineを事前の単体インストールは行わず、rroonga(1.1.0)のインストールを済ませたのち
gem install milkodeを実行したところ、eventmachineは0.12.10-x86-mswin32-60がインストール
されました。こちらはmilk webが動作し、検索も出来ました。

addするとnegative string size (or size too big) (ArgumentError)となる

addするとエラーとなります。
環境はCentOS6.3 64ビット、ruby1.9.3-p286、milkode-0.9.3.1です。
上手くいったものもあるので、ファイル数や内容に関係するのだと思います。
もっと詳しいログ等がどこかに出力されているのであれば、そちらも添付しますので
場所を教えて頂ければと思います。

[azurite@dev086 hogehoge]$ milk add hogehoge
package    : hogehoge
/home/azurite/.rvm/rubies/ruby-1.9.3-p286/lib/ruby/1.9.1/kconv.rb:61:in `nkf': negative string size (or size too big) (ArgumentError)
        from /home/azurite/.rvm/rubies/ruby-1.9.3-p286/lib/ruby/1.9.1/kconv.rb:61:in `kconv'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/database/document_table.rb:330:in `load_content'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/database/document_table.rb:73:in `add'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/database/updater.rb:144:in `db_add_file'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/database/updater.rb:182:in `block in searchDirectory'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/database/updater.rb:163:in `foreach'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/database/updater.rb:163:in `searchDirectory'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/database/updater.rb:179:in `block in searchDirectory'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/database/updater.rb:163:in `foreach'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/database/updater.rb:163:in `searchDirectory'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/database/updater.rb:179:in `block in searchDirectory'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/database/updater.rb:163:in `foreach'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/database/updater.rb:163:in `searchDirectory'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/database/updater.rb:128:in `db_add_dir'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/database/updater.rb:121:in `update_dir'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/database/updater.rb:39:in `exec'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/cdstk/cdstk.rb:954:in `updater_exec'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/cdstk/cdstk.rb:930:in `update_package_in'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/cdstk/cdstk.rb:107:in `block (2 levels) in update'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/cdstk/cdstk.rb:104:in `each'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/cdstk/cdstk.rb:104:in `block in update'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/cdstk/cdstk.rb:996:in `print_result'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/cdstk/cdstk.rb:102:in `update'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/cli.rb:51:in `update'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/thor-0.15.4/lib/thor/task.rb:27:in `run'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/thor-0.15.4/lib/thor/invocation.rb:120:in `invoke_task'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/lib/milkode/cli.rb:205:in `invoke_task'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/thor-0.15.4/lib/thor.rb:275:in `dispatch'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/thor-0.15.4/lib/thor/base.rb:425:in `start'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/gems/milkode-0.9.3.1/bin/milk:10:in `<top (required)>'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/bin/milk:19:in `load'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/bin/milk:19:in `<main>'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/bin/ruby_noexec_wrapper:14:in `eval'
        from /home/azurite/.rvm/gems/ruby-1.9.3-p286/bin/ruby_noexec_wrapper:14:in `<main>'

【milk0.1.5】milk web コマンドを叩いた時にundefined method `shellsplit' for nil:NilClass (NoMethodError)が出る

//環境//
OS: Ubuntu 10.04
Ruby: ruby 1.8.7 p249
gem: 1.8.6

//以下エラーメッセージ//
$milk web

sh: xprop: not found

Thin web server (v1.2.11 codename Bat-Shit Crazy)
Maximum connections set to 1024
Listening on 127.0.0.1:9292, CTRL+C to stop
/usr/lib/ruby/gems/1.8/gems/launchy-2.0.5/lib/launchy/detect/runner.rb:41:in shell_commands': undefined methodshellsplit' for nil:NilClass (NoMethodError)
from /usr/lib/ruby/gems/1.8/gems/launchy-2.0.5/lib/launchy/detect/runner.rb:104:in wet_run' from /usr/lib/ruby/gems/1.8/gems/launchy-2.0.5/lib/launchy/detect/runner.rb:103:infork'
from /usr/lib/ruby/gems/1.8/gems/launchy-2.0.5/lib/launchy/detect/runner.rb:103:in wet_run' from /usr/lib/ruby/gems/1.8/gems/launchy-2.0.5/lib/launchy/detect/runner.rb:61:inrun'
from /usr/lib/ruby/gems/1.8/gems/launchy-2.0.5/lib/launchy/application.rb:58:in run' from /usr/lib/ruby/gems/1.8/gems/launchy-2.0.5/lib/launchy/applications/browser.rb:76:inopen'
from /usr/lib/ruby/gems/1.8/gems/launchy-2.0.5/lib/launchy.rb:30:in open' from /usr/lib/ruby/gems/1.8/gems/milkode-0.1.5/lib/milkode/cdweb/cli_cdweb.rb:49:instart'
from /usr/lib/ruby/gems/1.8/gems/rack-1.3.2/lib/rack/handler/thin.rb:12:in run' from /usr/lib/ruby/gems/1.8/gems/milkode-0.1.5/lib/milkode/cdweb/cli_cdweb.rb:46:instart'
from /usr/lib/ruby/gems/1.8/gems/rack-1.3.2/lib/rack/server.rb:137:in start' from /usr/lib/ruby/gems/1.8/gems/milkode-0.1.5/lib/milkode/cdweb/cli_cdweb.rb:99:inexecute_with_options'
from /usr/lib/ruby/gems/1.8/gems/milkode-0.1.5/lib/milkode/cdstk/cli_cdstk.rb:73:in execute' from /usr/lib/ruby/gems/1.8/gems/milkode-0.1.5/bin/milk:10 from /usr/bin/milk:19:inload'
from /usr/bin/milk:19

よろしくお願いいたします。

milk init --default でランタイムエラー

milkのインストールは完了したのですが、milk init --defaultで、ランタイムエラーを起こしてしまいます。
コマンドプロンプトで、エラーが出ると同時に、強制終了した報告のウインドウが出ます。

Win7 64bit

普段はrubyは使っておらず、milkのために今回インストールしました。
Ruby 1.9.2-p290
http://rubyinstaller.org/downloads/

gem.bat install milkode の最中に、'eventmachine' native gem requires installed build tools. とエラーが出たので、
以下を参考に、gem install eventmachine --pre  しました。
http://groups.google.com/group/rubyinstaller/browse_thread/thread/7af6a025d79850f9

===  (ユーザ名部分置換しています。)

C:\Users\txxxxxxx>milk
milk COMMAND [ARGS]

The most commonly used milk are:
init Init db.
add Add packages.
update Update packages.
web Run web-app.
remove Remove packages.
list List packages.
pwd Disp current db.
cleanup Cleanup garbage records.
rebuild Rebuild db.
dump Dump records.

C:\Users\txxxxxxx>milk init --default
create : C:/Users/txxxxxxx/.milkode/milkode.yaml
terminate called after throwing an instance of 'std::runtime_error'
what(): locale::facet::_S_create_c_locale name not valid <<<<<<<<<<<

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.

C:\Users\txxxxxxx>milk init --default
Can't create milkode db (Because not empty in C:/Users/txxxxxxx/.milkode)

C:\Users\txxxxxxx>milk list

C:\Users\txxxxxxx>milk web
terminate called after throwing an instance of 'std::runtime_error'
what(): locale::facet::_S_create_c_locale name not valid <<<<<<<<<<<

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.

C:\Users\txxxxxxx>

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.