summaryrefslogtreecommitdiff
path: root/test/irb/test_completion.rb
blob: 3aa99d74d34c4f11b1d10db4947e353fa049794e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
# frozen_string_literal: false
require "test/unit"
require "irb"

module TestIRB
  class TestCompletion < Test::Unit::TestCase
    def test_nonstring_module_name
      begin
        require "irb/completion"
        bug5938 = '[ruby-core:42244]'
        bundle_exec = ENV.key?('BUNDLE_GEMFILE') ? ['-rbundler/setup'] : []
        cmds = bundle_exec + %W[-W0 -rirb -rirb/completion -e IRB.setup(__FILE__)
         -e IRB.conf[:MAIN_CONTEXT]=IRB::Irb.new.context
         -e module\sFoo;def\sself.name;//;end;end
         -e IRB::InputCompletor::CompletionProc.call("[1].first.")
         -- -f --]
        status = assert_in_out_err(cmds, "", //, [], bug5938)
        assert(status.success?, bug5938)
      rescue LoadError
        pend "cannot load irb/completion"
      end
    end

    def test_complete_numeric
      assert_include(IRB::InputCompletor.retrieve_completion_data("1r.positi", bind: binding), "1r.positive?")
      assert_empty(IRB::InputCompletor.retrieve_completion_data("1i.positi", bind: binding))
    end

    def test_complete_symbol
      %w"UTF-16LE UTF-7".each do |enc|
        "K".force_encoding(enc).to_sym
      rescue
      end
      _ = :aiueo
      assert_include(IRB::InputCompletor.retrieve_completion_data(":a", bind: binding), ":aiueo")
      assert_empty(IRB::InputCompletor.retrieve_completion_data(":irb_unknown_symbol_abcdefg", bind: binding))
    end

    def test_complete_invalid_three_colons
      assert_empty(IRB::InputCompletor.retrieve_completion_data(":::A", bind: binding))
      assert_empty(IRB::InputCompletor.retrieve_completion_data(":::", bind: binding))
    end

    def test_complete_absolute_constants_with_special_characters
      assert_empty(IRB::InputCompletor.retrieve_completion_data("::A:", bind: binding))
      assert_empty(IRB::InputCompletor.retrieve_completion_data("::A.", bind: binding))
      assert_empty(IRB::InputCompletor.retrieve_completion_data("::A(", bind: binding))
      assert_empty(IRB::InputCompletor.retrieve_completion_data("::A)", bind: binding))
    end

    def test_complete_symbol_failure
      assert_nil(IRB::InputCompletor::PerfectMatchedProc.(":aiueo", bind: binding))
    end

    def test_complete_reserved_words
      candidates = IRB::InputCompletor.retrieve_completion_data("de", bind: binding)
      %w[def defined?].each do |word|
        assert_include candidates, word
      end

      candidates = IRB::InputCompletor.retrieve_completion_data("__", bind: binding)
      %w[__ENCODING__ __LINE__ __FILE__].each do |word|
        assert_include candidates, word
      end
    end

    def test_complete_predicate?
      candidates = IRB::InputCompletor.retrieve_completion_data("1.posi", bind: binding)
      assert_include candidates, '1.positive?'

      namespace = IRB::InputCompletor.retrieve_completion_data("1.positive?", bind: binding, doc_namespace: true)
      assert_equal "Integer.positive?", namespace
    end

    def test_complete_require
      candidates = IRB::InputCompletor::CompletionProc.("'irb", "require ", "")
      %w['irb/init 'irb/ruby-lex].each do |word|
        assert_include candidates, word
      end
      # Test cache
      candidates = IRB::InputCompletor::CompletionProc.("'irb", "require ", "")
      %w['irb/init 'irb/ruby-lex].each do |word|
        assert_include candidates, word
      end
    end

    def test_complete_require_library_name_first
      pend 'Need to use virtual library paths'
      candidates = IRB::InputCompletor::CompletionProc.("'csv", "require ", "")
      assert_equal "'csv", candidates.first
    end

    def test_complete_require_relative
      candidates = Dir.chdir(__dir__ + "/../..") do
        IRB::InputCompletor::CompletionProc.("'lib/irb", "require_relative ", "")
      end
      %w['lib/irb/init 'lib/irb/ruby-lex].each do |word|
        assert_include candidates, word
      end
      # Test cache
      candidates = Dir.chdir(__dir__ + "/../..") do
        IRB::InputCompletor::CompletionProc.("'lib/irb", "require_relative ", "")
      end
      %w['lib/irb/init 'lib/irb/ruby-lex].each do |word|
        assert_include candidates, word
      end
    end

    def test_complete_variable
      str_example = ''
      str_example.clear # suppress "assigned but unused variable" warning
      assert_include(IRB::InputCompletor.retrieve_completion_data("str_examp", bind: binding), "str_example")
      assert_equal(IRB::InputCompletor.retrieve_completion_data("str_example", bind: binding, doc_namespace: true), "String")
      assert_equal(IRB::InputCompletor.retrieve_completion_data("str_example.to_s", bind: binding, doc_namespace: true), "String.to_s")
    end

    def test_complete_class_method
      assert_include(IRB::InputCompletor.retrieve_completion_data("String.new", bind: binding), "String.new")
      assert_equal(IRB::InputCompletor.retrieve_completion_data("String.new", bind: binding, doc_namespace: true), "String.new")
    end
  end
end
:02:40 +0000'>5 months v4.0.0commit 553f1675f3...NARUSE, Yui5 months v4.0.0-preview3commit cfa3e7cf75...Augustin Gottlieb6 months v3_4_8commit 995b59f666...Takashi Kokubun6 months v4.0.0-preview2commit 4fa6e9938c...NARUSE, Yui7 months v3_3_10commit 343ea05002...nagachika7 months v3_4_7commit 7a5688e2a2...Takashi Kokubun8 months v3_4_6commit dbd83256b1...Takashi Kokubun9 months v3_3_9commit f5c772fc7c...nagachika10 months v3_2_9commit 8f611e0c46...Hiroshi SHIBATA10 months v3_4_5commit 20cda200d3...Takashi Kokubun11 months v3_4_4commit a38531fd3f...Takashi Kokubun13 months v3_5_0_preview1commit d06ec25be4...Takashi Kokubun14 months v3_4_3commit d0b7e5b6a0...Takashi Kokubun14 months v3_3_8commit b200bad6cd...nagachika14 months v3_1_7commit 0a3704f218...Hiroshi SHIBATA14 months v3_2_8commit 13f495dc2c...Hiroshi SHIBATA14 months v3_4_2commit d2930f8e7a...Takashi Kokubun16 months v3_2_7commit 02ec315244...nagachika16 months v3_3_7commit be31f993d7...Takashi Kokubun17 months v3_4_1commit 48d4efcb85...NARUSE, Yui17 months v3_4_0commit f450108330...Takashi Kokubun17 months v3_4_0_rc1commit 29caae9991...Kevin Newton18 months v3_3_6commit 75015d4c1f...Takashi Kokubun19 months v3_2_6commit 63aeb018eb...nagachika19 months v3_4_0_preview2commit 32c733f57b...Misaki Shioi20 months v3_3_5commit ef084cc8f4...Takashi Kokubun21 months v3_2_5commit 31d0f1a2e7...nagachika22 months v3_3_4commit be1089c8ec...Takashi Kokubun23 months v3_3_3commit f1c7b6f435...Takashi Kokubun24 months v3_3_2commit e5a195edf6...Takashi Kokubun2 years v3_1_6commit a777087be6...Hiroshi SHIBATA2 years v3_4_0_preview1commit 9d69619623...Nobuyoshi Nakada2 years v3_0_7commit 724a071175...Hiroshi SHIBATA2 years v3_1_5commit 1945f8dc0e...Hiroshi SHIBATA2 years v3_3_1commit c56cd86388...NARUSE, Yui2 years v3_2_4commit af471c0e01...nagachika2 years v3_2_3commit 52bb2ac0a6...nagachika2 years v3_3_0commit 5124f9ac75...NARUSE, Yui2 years v3_3_0_rc1commit a49643340e...NARUSE, Yui2 years v3_3_0_preview3commit 60e19a0b5f...Nobuyoshi Nakada3 years v3_3_0_preview2commit e50fcca9a7...Nathan Froyd3 years v3_3_0_preview1commit a1b01e7701...Yuichiro Kaneko3 years v3_0_6commit 23a532679b...NAKAMURA Usaku3 years v2_7_8commit 1f4d455848...NAKAMURA Usaku3 years v3_2_2commit e51014f9c0...NARUSE, Yui3 years v3_1_4commit 957bb7cb81...Hiroshi SHIBATA3 years v3_2_1commit 31819e82c8...NARUSE, Yui3 years v3_2_0commit a528908271...NARUSE, Yui3 years v3_2_0_rc1commit 81e274c990...Lars Kanis3 years v2_7_7commit 168ec2b1e5...NAKAMURA Usaku4 years v3_0_5commit ba5cf0f7c5...Kazuki Yamaguchi4 years v3_1_3commit 1a6b16756e...nagachika4 years v3_2_0_preview3commit 28611be6ee...Hiroshi SHIBATA4 years v3_2_0_preview2commit 35cfc9a3bb...Kevin Newton4 years v2_6_10commit 7b4ea5bb73...usa4 years v3_0_4commit 3fa771dded...nagachika4 years v2_7_6commit c9c2245c0a...NAKAMURA Usaku4 years v3_1_2commit 4491bb740a...NARUSE, Yui4 years v3_2_0_preview1commit f801386f0c...Nobuyoshi Nakada4 years v3_1_1commit 53f5fc4236...NARUSE, Yui4 years v3_1_0commit fb4df44d16...NARUSE, Yui4 years v2_6_9commit 8e26731f9e...usa5 years v2_7_5commit f69aeb8314...NAKAMURA Usaku5 years v3_0_3commit 3fb7d2cadc...nagachika5 years v3_1_0_preview1commit 5a3b2e6141...Nobuyoshi Nakada5 years v2_7_4commit a21a3b7d23...Yusuke Endoh5 years v2_6_8commit 768423edc2...usa5 years v3_0_2commit 0db68f0233...nagachika5 years v2_7_3commit 6847ee089d...nagachika5 years v3_0_1commit 0fb782ee38...Nobuyoshi Nakada5 years v2_6_7commit 930143880a...usa5 years v2_5_9commit ee47403ce0...usa5 years v3_0_0commit 95aff21468...TAKANO Mitsuhiro5 years v3_0_0_rc2commit a89932799c...NARUSE, Yui5 years v3_0_0_rc1commit 8680ae9cbd...Nobuyoshi Nakada5 years v3_0_0_preview2commit d7a16670c3...Nobuyoshi Nakada5 years v2_7_2commit 5445e04352...nagachika6 years v3_0_0_preview1commit 0096d2b895...Koichi Sasada6 years v2_5_8commit 4992d9fd70...usa6 years v2_4_10commit 27f6ad737b...usa6 years v2_6_6commit 27958c2bd6...nagachika6 years v2_7_1commit a0c7c23c9c...NARUSE, Yui6 years v2_7_0commit 647ee6f091...aycabta6 years v2_7_0_rc2commit 75acbd5f00...Yusuke Endoh6 years v2_7_0_rc1commit 8a40dce0ff...git6 years v2_7_0_preview3commit b563439274...Nobuyoshi Nakada7 years v2_7_0_preview2commit 02aadf1032...Yusuke Endoh7 years v2_4_9commit 7c94ba3401...usa7 years v2_4_8commit 52f881b82a...usa7 years v2_5_7commit 1c39daae0f...usa7 years v2_6_5commit 37c2cd3fa4...nagachika7 years v2_6_4commit 6315e42c22...nagachika7 years v2_5_6commit 189a36cfab...usa7 years v2_4_7commit c914780585...usa7 years v1_0_971003commit 7ad198827b...Yukihiro Matsumoto7 years v1_0_971015commit 2a4ba10e2d...Yukihiro Matsumoto7 years v1_0_971021commit 9b01ce6954...Yukihiro Matsumoto7 years v1_0_971118commit cfd31fa21b...Yukihiro Matsumoto7 years v1_0_971125commit ab261638f5...Yukihiro Matsumoto7 years v1_0_971204commit fb0fe24512...Yukihiro Matsumoto7 years v1_0_971209commit 66541bbb36...Yukihiro Matsumoto7 years v1_0_971225commit 4207990990...Yukihiro Matsumoto7 years v0_71commit 4e65eab7ab...Yukihiro Matsumoto7 years v0_72commit 11e21a36bc...Yukihiro Matsumoto7 years v0_73commit b2420d8ffa...Yukihiro Matsumoto7 years v0_76commit 8bf1c909dc...Yukihiro Matsumoto7 years v0_95commit fca49a8a69...Yukihiro Matsumoto7 years v0_99_4_961224commit 554b989ba1...Yukihiro Matsumoto7 years v1_0_961225commit ce930d0429...Yukihiro Matsumoto7 years v1_0_971002commit 10d21745c8...Yukihiro Matsumoto7 years v0_62commit b3f9ba5a37...Yukihiro Matsumoto7 years v0_63commit bd0c733b77...Yukihiro Matsumoto7 years v0_64commit 5d828b25d4...Yukihiro Matsumoto7 years v0_65commit 897cf06695...Yukihiro Matsumoto7 years v0_66commit c080fb6d10...Yukihiro Matsumoto7 years v0_67commit 2f106ab85c...Yukihiro Matsumoto7 years v0_68commit 881c5a9c32...Yukihiro Matsumoto7 years v0_69commit d349889e77...Yukihiro Matsumoto7 years v0_50commit 6e30904136...Yukihiro Matsumoto7 years v0_51commit eed5c920dd...Yukihiro Matsumoto7 years v0_52commit 173976c97c...Yukihiro Matsumoto7 years v0_54commit 29f237a8b1...Yukihiro Matsumoto7 years v0_55commit c31025779d...Yukihiro Matsumoto7 years v0_56commit 4dfd93c72a...Yukihiro Matsumoto7 years v0_60commit 00e36aa09f...Yukihiro Matsumoto7 years v0_49commit 200e0ee2fd...Yukihiro Matsumoto7 years v2_7_0_preview1commit c55db6aa27...git7 years v2_6_3commit 257fda2518...naruse7 years v2_4_6commit 5b36edf4ca...usa7 years v2_5_5commit f11c0b253c...nagachika7 years v2_5_4commit 1a84920668...nagachika7 years v2_6_2commit 300089b723...naruse7 years v2_6_1commit e6d1c72bec...naruse7 years v2_6_0commit c1af7b1e1d...naruse7 years v2_6_0_rc2commit c54428bbd7...naruse7 years v2_6_0_rc1commit c7ee7e4205...naruse7 years v2_6_0_preview3commit 7ccad5680d...naruse8 years v2_5_3commit c4b6652223...nagachika8 years v2_4_5commit a0143aa5e4...usa8 years v2_3_8commit 8d23556886...usa8 years v2_5_2commit bf508be28b...nagachika8 years v2_6_0_preview2commit 6f59db30c1...naruse8 years v2_5_1commit 85883dc393...naruse8 years v2_3_7commit 9bfe7fc5cb...usa8 years v2_2_10commit 933bb2b8b5...usa8 years v2_4_4commit a8197e08f5...nagachika8 years v2_6_0_preview1commit ce0e3fc1b1...naruse8 years v2_5_0commit 4e0a512972...naruse8 years v2_3_6commit 2551734626...usa8 years v2_2_9commit 72113d58cd...usa8 years v2_4_3commit a5ec07c73f...nagachika8 years v2_5_0_rc1commit c6f401b6b8...naruse8 years v2_5_0_preview1commit f11fbd79fd...naruse9 years v2_2_8commit f3c3c788aa...usa9 years v2_3_5commit e07613e27e...usa9 years v2_4_2commit 595af866bb...nagachika9 years v2_3_4commit 4bd69735af...nagachika9 years v2_2_7commit 530165c294...usa9 years v2_4_1commit 820605ba3c...naruse9 years v2_4_0commit d4bb726b71...naruse9 years v2_4_0_rc1commit 55b2febff0...naruse9 years v2_3_3commit c91cb76f8d...nagachika10 years v2_2_6commit 1c091e3480...usa10 years v2_3_2commit 9d222264d5...nagachika10 years v2_4_0_preview3commit 81234c5eca...naruse10 years v2_4_0_preview2commit e11c22602a...naruse10 years v2_4_0_preview1commit 8183c05322...naruse10 years v2_2_5commit 449169fd8c...usa10 years v2_3_1commit 5827d8e887...nagachika10 years v2_1_10commit 410b031acb...usa10 years v2_1_9commit 22b2eface0...usa10 years v2_3_0commit d40ea2afa6...naruse10 years v2_0_0_648commit 03ec9ed5c9...usa10 years v2_1_8commit 4876b9a68c...usa10 years v2_2_4commit 9081c2c61a...nagachika10 years v2_3_0_preview2commit e3434401ac...naruse10 years v2_3_0_preview1commit 9993701c7d...naruse11 years v2_2_3commit b8c7ea548a...nagachika11 years v2_1_7commit 0f664738e9...usa11 years v2_0_0_647commit c60c15f371...usa11 years v2_0_0_645commit 5dfbc71593...usa11 years v2_1_6commit fe8cc13685...usa11 years v2_2_2commit a9721a2596...nagachika11 years v2_2_1commit 10bc9b85cb...naruse11 years v2_0_0_643commit 5b16662562...usa11 years v2_2_0commit 7393bf6a5c...naruse11 years v2_2_0_rc1commit 050b43acce...naruse11 years v2_2_0_preview2commit 2e968a2338...naruse12 years v2_0_0_598commit 52fda370bc...usa12 years v1_9_3_551commit a32f378924...usa12 years v2_1_5commit 02560c6a79...nagachika12 years v2_0_0_594commit 34b929aeb3...usa12 years v2_1_4commit 0026b21550...nagachika12 years v1_9_3_550commit abd7e6526f...usa12 years v2_1_3commit 63858b8d25...nagachika12 years v2_0_0_576commit f1f3fe11d9...usa12 years v2_2_0_preview1commit ac98aa3101...naruse12 years v1_9_3_547commit b75e21b2bc...usa12 years v2_0_0_481commit 3eae974b3c...usa12 years v2_1_2commit faba7187c5...nagachika12 years v2_0_0_451commit 6d64b00091...nagachika12 years v2_1_1commit 80b4d996e7...naruse12 years v1_9_3_545commit c7306a6eca...usa12 years v2_1_0commit 3603063e43...naruse12 years v2_1_0_rc1commit 9881a183bd...naruse12 years v2_1_0_preview2commit 834679d12c...naruse13 years v1_9_3_484commit 71b69b4120...usa13 years v2_0_0_353commit 609cdd3236...nagachika13 years v2_0_0_352commit e438ab420e...nagachika13 years v1_9_3_483commit e0b7e4bc22...usa13 years v2_1_0_preview1commit 928c4a92de...naruse13 years v1_8_7_374commit 83c8cd7199...shyouhei13 years v1_8_7_373commit 1c7b7da575...shyouhei13 years v1_9_3_448commit 4cf80d0c24...usa13 years v2_0_0_247commit a921f0ec57...nagachika13 years v1_9_3_429commit 5266a83418...usa13 years v1_9_3_426commit e76eb06feb...usa13 years v2_0_0_195commit e0030c175a...nagachika13 years v2_0_0_0commit 22cc613086...mame13 years v1_9_3_392commit fd5c678ff7...usa13 years v2_0_0_rc2commit 324fab490a...mame13 years v1_9_3_385commit b0104369bc...usa13 years v1_9_3_384commit 513746f662...usa13 years v1_9_3_383commit 076ff3b10c...usa13 years v1_9_3_374commit 92e872fa45...usa13 years v2_0_0_rc1commit ca6ccd436b...mame13 years v1_9_3_362commit 99fa4b0ea6...usa13 years v1_9_3_361commit 8a31db57d8...usa13 years v1_9_3_360commit 7b91c87317...usa13 years v2_0_0_preview2commit eb57022d05...mame14 years v1_9_3_327commit c49ae7ae02...usa14 years v1_9_3_326commit 40f7da0658...usa14 years v2_0_0_preview1commit 9f51be4b00...naruse14 years v1_9_3_286commit 6c55027f98...usa14 years v1_9_3_284commit 400b5d3a91...usa14 years v1_9_3_283commit 9089f9aad6...usa14 years v1_8_7_371commit 0ef2a114b5...shyouhei14 years v1_8_7_370commit 6b7998db38...shyouhei14 years v1_8_7_369commit c2086e5c29...shyouhei14 years v1_9_2_320commit ea0b32f984...naruse14 years v1_9_3_195commit 220774485f...naruse14 years v1_9_3_194commit 86f774fa1c...naruse14 years v1_9_2_318commit c2835192bf...yugui14 years v1_9_2_381commit bf72643bed...yugui14 years v1_9_3_125commit 03817dbe54...naruse14 years v1_8_7_358commit e2701232a6...shyouhei14 years v1_8_7_357commit c88cffd972...shyouhei14 years v1_9_3_0commit 7da63cd80f...yugui15 years v1_9_3_rc1commit 493f8a1ce3...yugui15 years v1_9_3_preview1commit c8c4432f1c...yugui15 years v1_9_2_290commit 866f369446...yugui15 years v1_8_7_352commit 0b9eba1365...shyouhei15 years v1_8_7_334commit 7ca6f05238...shyouhei15 years v1_9_2_180commit 6df1763876...yugui15 years v1_9_1_431commit e3e042fa3c...yugui15 years v1_9_2_136commit dc098a569e...yugui15 years v1_8_7_330commit baf67e963c...shyouhei15 years v1_8_6_420commit e17aaaf2d5...wyhaines16 years v1_9_2_0commit 02a892e48d...yugui16 years v1_8_7_302commit 6f7a49e480...shyouhei16 years v1_8_7_301commit 4b3ae77dbe...shyouhei16 years v1_9_1_430commit 3682d3e3ca...yugui16 years v1_9_2_rc2commit 0d4130f35f...yugui16 years v1_9_2_rc1commit 3ce09e0881...yugui16 years v1_9_1_429commit a10e69ed61...yugui16 years v1_8_7_299commit 54956f6bd1...shyouhei16 years v1_8_7_297commit 1327933229...shyouhei16 years v1_9_2_preview3commit fd925eb601...yugui16 years v1_8_6_399commit 9f1e7049db...wyhaines16 years v1_8_6_398commit 5fc3475fe9...wyhaines16 years v1_8_6_388commit fb05572f86...wyhaines16 years v1_9_1_378commit 7b43190d4d...yugui16 years v1_8_7_249commit f0df890559...shyouhei16 years v1_8_7_248commit a42e0e4624...shyouhei16 years v1_9_1_376commit 3fae03e87b...yugui16 years v1_9_2_preview2commit 0a39e25e55...yugui17 years v1_8_6_383commit e1a5c3a10e...wyhaines17 years v1_8_7_190commit f7488de590...shyouhei17 years v1_8_7_189commit f24c6138ac...shyouhei17 years v1_8_7_188commit 5ca4a9a370...shyouhei17 years v1_8_6_381commit 987a68fb9c...wyhaines17 years v1_8_7_187commit aa8a9a278a...shyouhei17 years v1_9_2_preview1commit f579e0909a...yugui17 years v1_9_1_243commit 3a058bd650...yugui17 years v1_8_7_185commit c694a35b16...shyouhei17 years v1_8_7_184commit 429b6a8e29...shyouhei17 years v1_8_7_183commit cd69c649ab...shyouhei17 years v1_8_7_182commit 2947f3f037...shyouhei17 years v1_8_7_181commit d5c908fecf...shyouhei17 years v1_8_7_180commit 5853ee94ec...shyouhei17 years v1_8_7_179commit af042106d4...shyouhei17 years v1_8_7_178commit bf8338ce69...shyouhei17 years v1_8_7_177commit 50fa0abfce...shyouhei17 years v1_8_7_176commit 0adaa398b0...shyouhei17 years v1_8_7_175commit 5e367f2e80...shyouhei17 years v1_8_7_174commit 9a2f2bacbf...shyouhei17 years v1_8_6_369commit dc7b7c574f...wyhaines17 years v1_8_7_173commit cb3115f107...shyouhei17 years v1_8_7_172commit ba88e96839...shyouhei17 years v1_8_7_171commit 987c28d217...shyouhei17 years v1_8_7_170commit 2292604aa9...shyouhei17 years v1_8_7_169commit 2ba13ff384...shyouhei17 years v1_8_7_168commit a0a0c2c1a5...shyouhei17 years v1_8_7_167commit 1240243343...shyouhei17 years v1_8_7_166commit 95be9d5bfe...shyouhei17 years v1_8_7_165commit c91a14b7e4...shyouhei17 years v1_8_7_164commit e8b938bb7e...shyouhei17 years v1_8_7_163commit f46fa3b74a...shyouhei17 years v1_8_7_162commit 184cd31e8c...shyouhei17 years v1_8_7_161commit 0d90b13373...shyouhei17 years v1_9_1_129commit fca64fcaf6...yugui17 years v1_9_1_128commit 97f4fb5621...yugui17 years v1_9_1_127commit 5f9594d1ee...yugui17 years v1_9_1_126commit b98b6ccdd4...yugui17 years v1_8_7_160commit e5131a6214...shyouhei17 years v1_8_7_159commit 38333d287f...shyouhei17 years v1_8_7_158commit 9689740ffe...shyouhei17 years v1_8_7_157commit 8a336dcf40...shyouhei17 years v1_8_7_156commit 4a1f00d299...shyouhei17 years v1_8_6_368commit e66ed66c6e...shyouhei17 years v1_8_7_155commit acf0a5f354...shyouhei17 years v1_8_6_367commit c42a7cfa2f...shyouhei17 years v1_8_7_154commit cc302d1390...shyouhei17 years v1_8_6_366commit d420e20325...shyouhei17 years v1_8_7_153commit bd1ccd8ed9...shyouhei17 years v1_8_6_365commit ef68a59d84...shyouhei17 years v1_8_7_152commit 17ff30ff0a...shyouhei17 years v1_8_6_364commit 8d6b44147c...shyouhei17 years v1_8_7_151commit 722fed2e1d...shyouhei17 years v1_8_6_363commit f65407a2b0...shyouhei17 years v1_8_6_362commit d162ebbb30...shyouhei17 years v1_8_7_150commit faace3e65c...shyouhei17 years v1_8_6_361commit 3590390761...shyouhei17 years v1_8_7_149commit 63611010ae...shyouhei17 years v1_8_6_360commit b74ed437f3...shyouhei17 years v1_8_7_148commit 7902e1f019...shyouhei17 years v1_8_6_359commit 26d218b2d5...shyouhei17 years v1_8_7_147commit 2a75027d49...shyouhei17 years v1_8_6_358commit 3664c070d0...shyouhei17 years v1_8_7_146commit 387cd114e0...shyouhei17 years v1_8_6_357commit ffd60c4537...shyouhei17 years v1_8_7_145commit 6373a4cbdb...shyouhei17 years v1_8_6_356commit 19e7e8d94b...shyouhei17 years v1_8_7_144commit 61aef0611f...shyouhei17 years v1_8_6_355commit 8f9980eb2b...shyouhei17 years v1_8_7_143commit b5ece882d4...shyouhei17 years v1_8_6_354commit ec9ff8bad4...shyouhei17 years v1_8_7_142commit 764da50905...shyouhei17 years v1_8_6_353commit f448fcf706...shyouhei17 years v1_8_7_141commit b158cc31c7...shyouhei17 years v1_8_6_352commit 8122d91bbd...shyouhei17 years v1_8_7_139commit d1d4d976eb...shyouhei17 years v1_8_6_351commit 697c6a0298...shyouhei17 years v1_8_7_138commit 5de05416b2...shyouhei17 years v1_8_6_350commit ee21eebecc...shyouhei17 years v1_8_7_137commit 7863eb3c47...shyouhei17 years v1_8_7_136commit e4d43793a2...shyouhei17 years v1_8_6_349commit 1d1ada0af7...shyouhei17 years v1_8_7_135commit 64b25ae93a...shyouhei17 years v1_8_6_348commit 906b5713be...shyouhei17 years v1_8_7_134commit cde6b6fa8c...shyouhei17 years v1_8_6_347commit 0d96549119...shyouhei17 years v1_8_7_133commit 25f8a9290b...shyouhei17 years v1_8_6_346commit 35ba2a8036...shyouhei17 years v1_8_7_132commit 52d0a3f30d...shyouhei17 years v1_8_6_345commit 13f0ea6b4f...shyouhei17 years v1_8_7_131commit c4ab7565f4...shyouhei17 years v1_8_6_344commit 8ab731c784...shyouhei17 years v1_8_7_130commit 845eb49f92...shyouhei17 years v1_8_6_343commit a84b51039b...shyouhei17 years v1_8_7_129commit eecd3236ab...shyouhei17 years v1_8_6_342commit c31902e5fe...shyouhei17 years v1_8_7_128commit 4e77a44287...shyouhei17 years v1_8_7_127commit c70f38ce4c...shyouhei17 years v1_8_6_341commit 2b025919df...shyouhei17 years v1_8_7_126commit 5e9e9f107a...shyouhei17 years v1_8_6_340commit ff91033c72...shyouhei17 years v1_8_7_125commit 4a49ea81e7...shyouhei17 years v1_8_6_339commit 22f1ad08bc...shyouhei17 years v1_8_7_124commit 66b8c25400...shyouhei17 years v1_8_6_338commit 1cc10bc669...shyouhei17 years v1_8_7_123commit f9564d2909...shyouhei17 years v1_8_6_337commit cc221f0301...shyouhei17 years v1_8_7_122commit a60be7b301...shyouhei17 years v1_8_6_336commit e4fa97b904...shyouhei17 years v1_8_7_121commit edca139410...shyouhei17 years v1_8_6_335commit 0d31efac19...shyouhei17 years v1_8_7_120commit 6934704aae...shyouhei17 years v1_8_6_334commit a3a759e0e2...shyouhei17 years v1_8_7_119commit 78134f174b...shyouhei17 years v1_8_6_333commit 5f548c706c...shyouhei17 years v1_3_1a_990201commit 80438705d6...eban17 years v1_8_7_118commit e7a357398a...shyouhei17 years v1_8_6_332commit 561b618f04...shyouhei17 years v1_8_7_117commit f60ff2ba54...shyouhei17 years v1_8_6_331commit 0343776845...shyouhei17 years v1_8_7_116commit 3d7a6da208...shyouhei17 years v1_8_6_330commit 332ac01624...shyouhei17 years v1_8_7_115commit 3b100d790c...shyouhei17 years v1_8_6_329commit 4c302e53f4...shyouhei17 years v1_8_7_114commit f78e320cb5...shyouhei17 years v1_8_6_328commit 454c6d04b9...shyouhei17 years v1_8_7_113commit d4291e8c97...shyouhei17 years v1_8_6_327commit 9aca470d9a...shyouhei17 years v1_8_7_112commit 17b3c88551...shyouhei17 years v1_8_6_326commit 074dcd52fb...shyouhei17 years v1_8_7_111commit 3d67b479dc...shyouhei17 years v1_8_6_325commit 699967becd...shyouhei17 years v1_8_7_110commit 783387a0eb...shyouhei17 years v1_8_6_324commit 0514ce3bdc...shyouhei17 years v1_8_7_109commit 053ab7666e...shyouhei17 years v1_8_6_323commit e664583cb0...shyouhei17 years v1_8_7_108commit b6aebfd8df...shyouhei17 years v1_8_6_322commit 8f25defb9f...shyouhei17 years v1_8_7_107commit dd31c65b1e...shyouhei17 years v1_8_6_321commit 88dc3f1294...shyouhei17 years v1_8_7_106commit a8d5b82fd5...shyouhei17 years v1_8_6_320commit 9c2ea80072...shyouhei17 years v1_8_7_105commit 3af0bf1e13...shyouhei17 years v1_8_6_319commit 8362ff6a31...shyouhei17 years v1_8_7_104commit 7ef107be59...shyouhei17 years v1_8_6_318commit 510d301e9b...shyouhei17 years v1_8_7_103commit 79ee6c3c09...shyouhei17 years v1_8_6_317commit 7d5891866a...shyouhei17 years v1_8_7_102commit 5ee0005d57...shyouhei17 years v1_8_6_316commit e376ca08ae...shyouhei17 years v1_9_1_0commit 92135776ce...yugui17 years v1_8_7_101commit 116c6abc7f...shyouhei17 years v1_8_6_315commit 9ba878828a...shyouhei17 years v1_8_7_100commit 0dd56cdaac...shyouhei17 years v1_8_6_314commit ab5f89dcc6...shyouhei17 years v1_8_7_99commit cfcf3c5676...shyouhei17 years v1_8_6_313commit 029a57d3a6...shyouhei17 years v1_8_7_98commit 40ea942030...shyouhei17 years v1_8_6_312commit 8331f47136...shyouhei17 years v1_8_7_97commit 003299109d...shyouhei17 years v1_8_6_311commit 770917a82b...shyouhei17 years v1_8_7_96commit 46b1a637c3...shyouhei17 years v1_8_6_310commit 1de9ed2552...shyouhei17 years v1_8_7_95commit 2902fc4427...shyouhei17 years v1_8_6_309commit 4ce346da03...shyouhei17 years v1_8_7_94commit f333627138...shyouhei17 years v1_8_6_308commit d245d5dd4c...shyouhei17 years v1_8_7_93commit ee6628ebfb...shyouhei