pio 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -1
  3. data/.rspec +1 -0
  4. data/lib/pio/arp/frame.rb +3 -3
  5. data/lib/pio/arp/message.rb +5 -4
  6. data/lib/pio/arp/reply.rb +0 -1
  7. data/lib/pio/arp/request.rb +2 -3
  8. data/lib/pio/ipv4_address.rb +149 -0
  9. data/lib/pio/lldp.rb +2 -2
  10. data/lib/pio/lldp/{chassis-id-tlv.rb → chassis_id_tlv.rb} +0 -0
  11. data/lib/pio/lldp/{end-of-lldpdu-value.rb → end_of_lldpdu_value.rb} +0 -0
  12. data/lib/pio/lldp/frame.rb +5 -5
  13. data/lib/pio/lldp/{management-address-value.rb → management_address_value.rb} +0 -0
  14. data/lib/pio/lldp/{optional-tlv.rb → optional_tlv.rb} +7 -7
  15. data/lib/pio/lldp/{organizationally-specific-value.rb → organizationally_specific_value.rb} +0 -0
  16. data/lib/pio/lldp/{port-description-value.rb → port_description_value.rb} +0 -0
  17. data/lib/pio/lldp/{port-id-tlv.rb → port_id_tlv.rb} +0 -0
  18. data/lib/pio/lldp/{system-capabilities-value.rb → system_capabilities_value.rb} +0 -0
  19. data/lib/pio/lldp/{system-description-value.rb → system_description_value.rb} +0 -0
  20. data/lib/pio/lldp/{system-name-value.rb → system_name_value.rb} +0 -0
  21. data/lib/pio/lldp/{ttl-tlv.rb → ttl_tlv.rb} +0 -0
  22. data/lib/pio/mac.rb +4 -4
  23. data/lib/pio/type/{ethernet-header.rb → ethernet_header.rb} +1 -1
  24. data/lib/pio/type/{ip-address.rb → ip_address.rb} +2 -1
  25. data/lib/pio/type/{mac-address.rb → mac_address.rb} +0 -0
  26. data/lib/pio/version.rb +1 -1
  27. data/pio.org +69 -445
  28. data/pio.org_archive +451 -0
  29. data/spec/pio/arp/reply_spec.rb +4 -5
  30. data/spec/pio/arp/request_spec.rb +5 -6
  31. data/spec/pio/arp_spec.rb +0 -1
  32. data/spec/pio/ipv4_address_spec.rb +99 -0
  33. data/spec/pio/lldp_spec.rb +0 -1
  34. data/spec/pio/mac_spec.rb +3 -4
  35. metadata +19 -19
  36. data/lib/pio/ip.rb +0 -90
  37. data/spec/pio/ip_spec.rb +0 -38
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a99eb3c57f09bc9a82c53d916636509695770620
4
- data.tar.gz: 5da352b9a4cbe2660ce0fc71e086f15c697f52b2
3
+ metadata.gz: ffde8b15ff26955c6cb9bb0351d5dccd1eae1c00
4
+ data.tar.gz: 5bdb5cf6cba9138b660b72f856058cca8b813a45
5
5
  SHA512:
6
- metadata.gz: 50e299558aea50ece6f430e007b428b9b5cc53439883043aca7128fe67ed3d08c50ec2e8ffac4f5d115735e77eb09289d25a249ee22f812edfbca2f91289aacc
7
- data.tar.gz: b01bab2207f6556d2ca45ff72281c1475195511767d64b6b4847100961ada881b3406aeee2cd068d6998881f08d07dc026ca6c991a594a87d84aa2e722dd419e
6
+ metadata.gz: 13f6c6425349b174caf3b3b0d9b799bd94d115a7f099d53ae026da3541af39c5e5f2d6168ff27a1dc1eda99e140207f42f5d3ba67a137c30af49f06098b8fe93
7
+ data.tar.gz: b63d0743cec0bf45b016c963b74d95105858383e8b01601915df9eeb803d6c5906148e2f419a71d5957305617d8e80dfd495fe7170213cc582eb37bccaf39c3f
data/.gitignore CHANGED
@@ -3,9 +3,10 @@
3
3
  .bundle
4
4
  .config
5
5
  Gemfile.lock
6
- coverage
7
6
  InstalledFiles
7
+ coverage
8
8
  lib/bundler/man
9
+ pio.html
9
10
  pkg
10
11
  rdoc
11
12
  spec/reports
data/.rspec CHANGED
@@ -1,2 +1,3 @@
1
+ --require spec_helper
1
2
  --format Fuubar
2
3
  --color
data/lib/pio/arp/frame.rb CHANGED
@@ -1,6 +1,6 @@
1
- require "pio/type/ethernet-header"
2
- require "pio/type/ip-address"
3
- require "pio/type/mac-address"
1
+ require "pio/type/ethernet_header"
2
+ require "pio/type/ip_address"
3
+ require "pio/type/mac_address"
4
4
 
5
5
 
6
6
  module Pio
@@ -1,5 +1,6 @@
1
- require "pio/arp/frame"
2
1
  require "forwardable"
2
+ require "pio/arp/frame"
3
+ require "pio/ipv4_address"
3
4
 
4
5
 
5
6
  module Pio
@@ -45,7 +46,7 @@ module Pio
45
46
  def option_hash
46
47
  mandatory_options.inject( {} ) do | opt, each |
47
48
  klass = option_to_klass[ each ]
48
- opt_pair = { each => klass.new( user_options[ each ] ).to_a }
49
+ opt_pair = { each => klass.new( user_options[ each ] ).to_ary }
49
50
  opt.merge opt_pair
50
51
  end.merge default_options
51
52
  end
@@ -57,8 +58,8 @@ module Pio
57
58
  :destination_mac => Mac,
58
59
  :sender_hardware_address => Mac,
59
60
  :target_hardware_address => Mac,
60
- :sender_protocol_address => IP,
61
- :target_protocol_address => IP,
61
+ :sender_protocol_address => IPv4Address,
62
+ :target_protocol_address => IPv4Address,
62
63
  }
63
64
  end
64
65
  end
data/lib/pio/arp/reply.rb CHANGED
@@ -1,6 +1,5 @@
1
1
  require "forwardable"
2
2
  require "pio/arp/message"
3
- require "pio/ip"
4
3
  require "pio/mac"
5
4
 
6
5
 
@@ -1,6 +1,5 @@
1
1
  require "pio/arp/frame"
2
2
  require "pio/arp/message"
3
- require "pio/ip"
4
3
  require "pio/mac"
5
4
 
6
5
 
@@ -10,8 +9,8 @@ module Pio
10
9
  class Request < Message
11
10
  OPERATION = 1
12
11
 
13
- BROADCAST_MAC_ADDRESS = Mac.new( 0xffffffffffff ).to_a
14
- ALL_ZERO_MAC_ADDRESS = Mac.new( 0 ).to_a
12
+ BROADCAST_MAC_ADDRESS = Mac.new( 0xffffffffffff ).to_ary
13
+ ALL_ZERO_MAC_ADDRESS = Mac.new( 0 ).to_ary
15
14
 
16
15
 
17
16
  ########################################################################
@@ -0,0 +1,149 @@
1
+ require "forwardable"
2
+ require "ipaddr"
3
+
4
+
5
+ module Pio
6
+ #
7
+ # IPv4 Address
8
+ #
9
+ class IPv4Address
10
+ extend Forwardable
11
+
12
+
13
+ #
14
+ # @return [IPAddr] value object instance of proxied IPAddr.
15
+ #
16
+ attr_reader :value
17
+
18
+
19
+ #
20
+ # Creates a {IPv4Address} instance object as a proxy to IPAddr class.
21
+ #
22
+ # @overload initialize(addr)
23
+ #
24
+ # @param [String|Number] addr
25
+ # an IPv4 address specified either as a String or Number.
26
+ #
27
+ # @raise [TypeError] invalid address if supplied argument is invalid
28
+ #
29
+ # @return [IPv4Address] self
30
+ # a proxy to IPAddr.
31
+ #
32
+ def initialize addr
33
+ case addr
34
+ when Integer
35
+ @value = IPAddr.new( addr, Socket::AF_INET )
36
+ when String
37
+ @value = IPAddr.new( addr )
38
+ else
39
+ raise TypeError, "Invalid IPv4 address: #{ addr.inspect }"
40
+ end
41
+ end
42
+
43
+
44
+ #
45
+ # @return [String] the IPv4 address in its text representation.
46
+ #
47
+ def_delegator :value, :to_s
48
+
49
+
50
+ #
51
+ # @return [Number] the IPv4 address in its numeric representation.
52
+ #
53
+ def_delegator :value, :to_i
54
+
55
+
56
+ #
57
+ # @return [Array]
58
+ # an array of decimal numbers converted from IPv4 address.
59
+ #
60
+ def to_ary
61
+ to_s.split( "." ).collect do | each |
62
+ each.to_i
63
+ end
64
+ end
65
+
66
+
67
+ #
68
+ # @return [IPv4Address]
69
+ # Returns the IPv4 address masked with masklen.
70
+ #
71
+ def mask! masklen
72
+ @value = @value.mask( masklen )
73
+ return self
74
+ end
75
+ alias :prefix! :mask!
76
+
77
+
78
+ #
79
+ # @return [IPv4Address]
80
+ # Returns the IPv4 address masked with masklen.
81
+ #
82
+ def mask masklen
83
+ self.clone.mask!( masklen )
84
+ end
85
+ alias :prefix :mask
86
+
87
+
88
+ #
89
+ # @return [bool]
90
+ # Returns true if the address belongs to class A.
91
+ #
92
+ def class_a?
93
+ mask( 1 ).to_s == "0.0.0.0"
94
+ end
95
+
96
+
97
+ #
98
+ # @return [bool]
99
+ # Returns true if the address belongs to class B.
100
+ #
101
+ def class_b?
102
+ mask( 2 ).to_s == "128.0.0.0"
103
+ end
104
+
105
+
106
+ #
107
+ # @return [bool]
108
+ # Returns true if the address belongs to class C.
109
+ #
110
+ def class_c?
111
+ mask( 3 ).to_s == "192.0.0.0"
112
+ end
113
+
114
+
115
+ #
116
+ # @return [bool]
117
+ # Returns true if the address belongs to class D.
118
+ #
119
+ def class_d?
120
+ mask( 4 ).to_s == "224.0.0.0"
121
+ end
122
+ alias :multicast? :class_d?
123
+
124
+
125
+ #
126
+ # @return [bool]
127
+ # Returns true if the address belongs to class E.
128
+ #
129
+ def class_e?
130
+ mask( 4 ).to_s == "240.0.0.0"
131
+ end
132
+
133
+
134
+ #
135
+ # @return [bool]
136
+ # Returns true if the address is unicast address.
137
+ #
138
+ def unicast?
139
+ class_a? or class_b? or class_c?
140
+ end
141
+ end
142
+ end
143
+
144
+
145
+ ### Local variables:
146
+ ### mode: Ruby
147
+ ### coding: utf-8-unix
148
+ ### indent-tabs-mode: nil
149
+ ### End:
data/lib/pio/lldp.rb CHANGED
@@ -21,8 +21,8 @@ module Pio
21
21
 
22
22
  def to_hash
23
23
  {
24
- :destination_mac => Mac.new( destination_mac ).to_a,
25
- :source_mac => Mac.new( source_mac ).to_a,
24
+ :destination_mac => Mac.new( destination_mac ).to_ary,
25
+ :source_mac => Mac.new( source_mac ).to_ary,
26
26
  :chassis_id => dpid,
27
27
  :port_id => port_id
28
28
  }
@@ -1,11 +1,11 @@
1
1
  require "rubygems"
2
2
  require "bindata"
3
3
 
4
- require "pio/lldp/chassis-id-tlv"
5
- require "pio/lldp/optional-tlv"
6
- require "pio/lldp/port-id-tlv"
7
- require "pio/lldp/ttl-tlv"
8
- require "pio/type/ethernet-header"
4
+ require "pio/lldp/chassis_id_tlv"
5
+ require "pio/lldp/optional_tlv"
6
+ require "pio/lldp/port_id_tlv"
7
+ require "pio/lldp/ttl_tlv"
8
+ require "pio/type/ethernet_header"
9
9
 
10
10
 
11
11
  module Pio
@@ -1,10 +1,10 @@
1
- require "pio/lldp/port-description-value"
2
- require "pio/lldp/system-name-value"
3
- require "pio/lldp/system-description-value"
4
- require "pio/lldp/system-capabilities-value"
5
- require "pio/lldp/management-address-value"
6
- require "pio/lldp/organizationally-specific-value"
7
- require "pio/lldp/end-of-lldpdu-value"
1
+ require "pio/lldp/port_description_value"
2
+ require "pio/lldp/system_name_value"
3
+ require "pio/lldp/system_description_value"
4
+ require "pio/lldp/system_capabilities_value"
5
+ require "pio/lldp/management_address_value"
6
+ require "pio/lldp/organizationally_specific_value"
7
+ require "pio/lldp/end_of_lldpdu_value"
8
8
 
9
9
 
10
10
  module Pio
File without changes
File without changes
data/lib/pio/mac.rb CHANGED
@@ -73,11 +73,11 @@ module Pio
73
73
  # address string format.
74
74
  #
75
75
  # @example
76
- # Mac.new("11:22:33:44:55:66").to_a #=> [ 0x11, 0x22, 0x33, 0x44, 0x55, 0x66 ]
76
+ # Mac.new("11:22:33:44:55:66").to_ary #=> [ 0x11, 0x22, 0x33, 0x44, 0x55, 0x66 ]
77
77
  #
78
78
  # @return [Array] the Ethernet address in Array format
79
79
  #
80
- def to_a
80
+ def to_ary
81
81
  @string.split( ":" ).collect do | each |
82
82
  each.hex
83
83
  end
@@ -103,7 +103,7 @@ module Pio
103
103
  # @return [Boolean] whether the Ethernet address is multicast
104
104
  #
105
105
  def multicast?
106
- to_a[ 0 ] & 1 == 1
106
+ to_ary[ 0 ] & 1 == 1
107
107
  end
108
108
 
109
109
 
@@ -116,7 +116,7 @@ module Pio
116
116
  # @return [Boolean] whether the Ethernet address is broadcast
117
117
  #
118
118
  def broadcast?
119
- to_a.all? { | each | each == 0xff }
119
+ to_ary.all? { | each | each == 0xff }
120
120
  end
121
121
 
122
122
 
@@ -1,4 +1,4 @@
1
- require "pio/type/mac-address"
1
+ require "pio/type/mac_address"
2
2
 
3
3
 
4
4
  module Pio
@@ -1,4 +1,5 @@
1
1
  require "bindata"
2
+ require "pio/ipv4_address"
2
3
 
3
4
 
4
5
  module Pio
@@ -14,7 +15,7 @@ module Pio
14
15
 
15
16
 
16
17
  def get
17
- IP.new octets.collect { | each | "%d" % each }.join( "." )
18
+ IPv4Address.new octets.collect { | each | "%d" % each }.join( "." )
18
19
  end
19
20
  end
20
21
  end
File without changes
data/lib/pio/version.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  # Base module.
2
2
  module Pio
3
3
  # gem version.
4
- VERSION = "0.2.1"
4
+ VERSION = "0.2.2"
5
5
  end
6
6
 
7
7
 
data/pio.org CHANGED
@@ -1,4 +1,4 @@
1
- #+TITLE: Pio の TODO
1
+ #+TITLE: Pio の開発
2
2
  #+FILETAGS: PIO
3
3
  #+ICALENDAR_EXCLUDE_TAGS: noex
4
4
 
@@ -14,6 +14,13 @@ CLOCK: [2013-09-05 木 17:30]--[2013-09-05 木 17:31] => 0:01
14
14
 
15
15
  近藤さんおすすめの ARP フォーマット解説。
16
16
  http://www.n-study.com/network/arpheader.htm
17
+ ** ICMP のテスト用データ :NOTE:
18
+ :LOGBOOK:
19
+ CLOCK: [2013-09-22 日 22:25]--[2013-09-22 日 22:26] => 0:01
20
+ :END:
21
+ [2013-09-22 日 22:25]
22
+
23
+ https://gist.github.com/shun159/6647589
17
24
  ** ターミナルでペアプロするための設定 :NOTE:
18
25
  :LOGBOOK:
19
26
  CLOCK: [2013-07-22 月 09:29]--[2013-07-22 月 09:30] => 0:01
@@ -25,488 +32,105 @@ CLOCK: [2013-07-22 月 09:29]--[2013-07-22 月 09:30] => 0:01
25
32
  [2013-07-22 月 09:29]
26
33
 
27
34
  http://www.zeespencer.com/articles/building-a-remote-pairing-setup/
35
+ ** ICMP フォーマット :NOTE:
36
+ [2013-09-22 日 23:09]
37
+
38
+ http:///www.asahi-net.or.jp/~aa4t-nngk/ipttut/output/icmpheaders.html
28
39
  * Tasks
29
40
  このアイテムをそれぞれのリリースに割り振る。
30
41
  ** NEXT git パスワードを省略できるように
31
42
  [2013-09-13 金 17:07]
32
- ** WAITING 鈴木さんルータの ARP 部分を Pio で書き直してもらう :WAITING:
33
- - State "WAITING" from "TODO" [2013-09-18 水 12:04] \\
34
- ARP のコードが実機で動いてから
35
- :LOGBOOK:
36
- CLOCK: [2013-09-14 土 10:20]--[2013-09-14 土 10:21] => 0:01
37
- :END:
38
- [2013-09-14 土 10:20]
39
- ** WAITING 鈴木さんの IPv4Address への PR を Pio へ誘導 :WAITING:
40
- - State "WAITING" from "TODO" [2013-09-18 水 12:05] \\
41
- 本体にマージし 0.2.0 をリリースしてから。
42
- [2013-09-14 土 10:22]
43
-
44
- https://github.com/trema/trema-edge/pull/22
45
- ** TODO flay に PR を送る (FlayTask が動かない件)
46
- :LOGBOOK:
47
- CLOCK: [2013-09-18 水 17:20]--[2013-09-18 水 17:21] => 0:01
48
- :END:
49
- [2013-09-18 水 17:20]
50
43
  ** TODO bindata 1.6.0 の changelog をチェック
51
44
  [2013-09-05 木 21:32]
52
45
  ** TODO 各 OpenFlow メッセージのパーサを作る
53
46
  [2013-09-06 金 19:27]
54
47
  ** TODO Nick さんに README の英語をチェックしてもらう
55
48
  [2013-09-18 水 12:01]
56
- * Research and Development
57
- ** TODO 0.2.0 リリース
49
+ ** TODO phost を Pio で書き直す
50
+ [2013-09-24 15:36]
51
+ * Releases
52
+ ** TODO 0.2.2 リリース
58
53
  :LOGBOOK:
59
- CLOCK: [2013-09-13 16:30]--[2013-09-13 17:02] => 0:32
60
- CLOCK: [2013-09-13 金 16:29]--[2013-09-13 金 16:30] => 0:01
61
- CLOCK: [2013-09-13 金 16:28]--[2013-09-13 金 16:29] => 0:01
62
- CLOCK: [2013-09-13 金 16:26]--[2013-09-13 金 16:27] => 0:01
63
- CLOCK: [2013-09-13 金 16:13]--[2013-09-13 金 16:26] => 0:13
64
- CLOCK: [2013-09-13 金 16:07]--[2013-09-13 金 16:11] => 0:04
65
- CLOCK: [2013-09-13 金 15:53]--[2013-09-13 金 15:54] => 0:01
66
- CLOCK: [2013-09-13 金 15:45]--[2013-09-13 金 15:48] => 0:03
67
- CLOCK: [2013-09-13 金 14:05]--[2013-09-13 金 15:43] => 1:38
68
- CLOCK: [2013-09-13 金 13:25]--[2013-09-13 金 13:28] => 0:03
69
- CLOCK: [2013-09-13 金 11:40]--[2013-09-13 金 11:56] => 0:16
70
- CLOCK: [2013-09-13 金 11:27]--[2013-09-13 金 11:28] => 0:01
71
- CLOCK: [2013-09-13 金 10:32]--[2013-09-13 金 10:33] => 0:01
72
- CLOCK: [2013-09-13 金 10:27]--[2013-09-13 金 10:31] => 0:04
73
- CLOCK: [2013-09-13 金 10:06]--[2013-09-13 金 10:07] => 0:01
74
- CLOCK: [2013-09-13 金 09:59]--[2013-09-13 金 10:05] => 0:06
75
- CLOCK: [2013-09-05 木 11:04]--[2013-09-05 木 11:05] => 0:01
54
+ CLOCK: [2013-09-19 14:29]--[2013-09-19 16:39] => 2:10
76
55
  :END:
77
- [2013-09-0511:04]
78
- *** DONE 実機で検証
79
- CLOSED: [2013-09-19 木 13:56]
80
- - State "DONE" from "WAITING" [2013-09-19 木 13:56]
81
- - State "WAITING" from "TODO" [2013-09-18 12:00] \\
82
- 近藤さんに再度実機でのテストを依頼中。
56
+ [2013-09-1914:17]
57
+ *** DONE IP -> IPv4Address
58
+ SCHEDULED: <2013-09-26 木>
59
+ [2013-09-26 木 13:33]
60
+ *** DONE 鈴木さんの IPv4Address への PR を Pio へ誘導
61
+ CLOSED: [2013-09-19 木 14:29] SCHEDULED: <2013-09-19 木>
83
62
  :LOGBOOK:
84
- CLOCK: [2013-09-06 16:05]--[2013-09-06 16:06] => 0:01
63
+ CLOCK: [2013-09-19 14:27]--[2013-09-19 14:29] => 0:02
85
64
  :END:
86
- [2013-09-06 16:05]
87
-
88
- 近藤さんが実機検証環境を作り中。
89
-
90
- その上で Arp Request をつかまえてパースしたり、Arp Request を送るだけの
91
- 簡単なコントローラを動かし、しばらく動かしてバグがないかを確認してもら
92
- う。
65
+ - State "TODO" from "WAITING" [2013-09-19 14:18]
66
+ - State "WAITING" from "TODO" [2013-09-18 水 12:05] \\
67
+ 0.2.0 をリリースしてから。
68
+ [2013-09-14 土 10:22]
93
69
 
94
- もし何か問題があれば、コードにフィードバックする。
70
+ 鈴木さんが trema-edge に出している PR はこちら
71
+ https://github.com/trema/trema-edge/pull/22
95
72
 
96
- **** DONE 実機環境を構築
97
- CLOSED: [2013-09-18 水 12:00]
98
- [2013-09-13 09:44]
99
- *** DONE Arp::{Request,Reply} #mandatory_options をリファクタリング
100
- CLOSED: [2013-09-19 木 10:29] SCHEDULED: <2013-09-19 木>
101
- :LOGBOOK:
102
- CLOCK: [2013-09-19 木 10:23]--[2013-09-19 木 10:29] => 0:06
103
- CLOCK: [2013-09-19 木 10:07]--[2013-09-19 木 10:08] => 0:01
104
- :END:
73
+ コメントしておいた。
74
+ https://github.com/trema/trema-edge/pull/22#issuecomment-24717877
75
+ *** DONE チケットを切ったことを鈴木さんに確認
76
+ CLOSED: [2013-09-24 20:57] SCHEDULED: <2013-09-24 火 13:45>
105
77
  :PROPERTIES:
106
- :Effort: 0:30
78
+ :Effort: 0:05
107
79
  :END:
108
- [2013-09-19 10:07]
109
-
110
- 今の実装だと、「必須オプション」と「それぞれの型」という 2 つの情報が
111
- 入ってしまっている。「それぞれの型」の情報は、Arp::Message に引き上げ
112
- たほうがいいと思う。
113
- *** DONE FlayTask が正しく動いてるか確認
114
- CLOSED: [2013-09-18 水 17:17] SCHEDULED: <2013-09-18 水>
115
- [2013-09-18 水 16:54]
116
-
117
- 最小の FlayTask だけを含んだ Rakefile を作ってみたけどやっぱりダメだっ
118
- た。なぜか verbose = trueにしたときだけレポートが表示される。FlayTask
119
- のバグか?
120
- *** DONE 近藤さんからもらったキャプチャデータを試す
121
- CLOSED: [2013-09-18 水 16:35] SCHEDULED: <2013-09-18 水>
80
+ [2013-09-20 09:26]
81
+ ** TODO 0.2.3 リリース
122
82
  :LOGBOOK:
123
- CLOCK: [2013-09-18 16:24]--[2013-09-18 16:35] => 0:11
124
- :END:
125
- :PROPERTIES:
126
- :Effort: 1:00
83
+ CLOCK: [2013-09-26 13:31]--[2013-09-26 13:32] => 0:01
127
84
  :END:
128
- [2013-09-18 15:04]
129
-
130
- https://gist.github.com/shun159/6604955
131
- *** DONE ruby_topology を新しい Lldp.new に合わせて直す
132
- CLOSED: [2013-09-18 水 11:12] SCHEDULED: <2013-09-18 水>
85
+ [2013-09-26 13:31]
86
+ *** TODO 鈴木さんルータの ARP 部分を Pio で書き直してもらう
87
+ - State "TODO" from "WAITING" [2013-09-19 木 14:18]
88
+ - State "WAITING" from "TODO" [2013-09-18 12:04] \\
89
+ ARP のコードが実機で動いてから
133
90
  :LOGBOOK:
134
- CLOCK: [2013-09-18 10:45]--[2013-09-18 11:12] => 0:27
135
- CLOCK: [2013-09-17 火 22:45]--[2013-09-17 火 22:46] => 0:01
136
- :END:
137
- :PROPERTIES:
138
- :Effort: 0:30
91
+ CLOCK: [2013-09-14 10:20]--[2013-09-14 10:21] => 0:01
139
92
  :END:
140
- [2013-09-17 22:45]
141
- *** DONE README.md に ARP の例を追加
142
- CLOSED: [2013-09-18 水 10:19] SCHEDULED: <2013-09-18 水>
143
- [2013-09-13 金 16:29]
93
+ [2013-09-14 10:20]
144
94
 
145
- できれば .org から tangle して生成したいけどそれはまた今度の話?
146
- *** DONE ARP のオプション処理をリファクタリング
147
- CLOSED: [2013-09-18 10:07] SCHEDULED: <2013-09-18 水>
95
+ GitHub のチケットはこちら:
96
+ https://github.com/trema/pio/issues/1
97
+ ** TODO 0.3.0 リリース
98
+ - State "TODO" from "WAITING" [2013-09-19 木 14:16]
99
+ - State "WAITING" from "TODO" [2013-09-06 金 17:17] \\
100
+ 0.2.0 が無事に出てから
101
+ [2013-09-05 木 17:29]
102
+ *** TODO ICMP パーサを作る
103
+ [2013-08-02 金 17:19]
104
+ *** DONE gem の命名規則に合わせる
105
+ CLOSED: [2013-09-26 木 08:28] SCHEDULED: <2013-09-26 木>
148
106
  :LOGBOOK:
149
- CLOCK: [2013-09-18 09:19]--[2013-09-18 10:07] => 0:48
107
+ CLOCK: [2013-09-26 08:20]--[2013-09-26 08:28] => 0:08
108
+ CLOCK: [2013-09-26 木 08:05]--[2013-09-26 木 08:06] => 0:01
150
109
  :END:
151
110
  :PROPERTIES:
152
111
  :Effort: 0:30
153
112
  :END:
154
- [2013-09-18 09:17]
155
- *** DONE require "pio" ですべてロードされるようにする
156
- CLOSED: [2013-09-17 火 15:20] SCHEDULED: <2013-09-17 火>
157
- :LOGBOOK:
158
- CLOCK: [2013-09-13 金 16:27]--[2013-09-13 金 16:28] => 0:01
159
- :END:
160
- [2013-09-13 金 16:27]
161
-
162
- README.md にはそのように書いてあるけど、実際にはそうなっていない。
163
- *** DONE Lldp のリファクタリング
164
- CLOSED: [2013-09-17 火 23:01] SCHEDULED: <2013-09-17 火>
165
- [2013-09-13 金 16:26]
166
-
167
- ARP のテストのように Lldp.new と Lldp.read のテストだけに絞ってシンプル
168
- にする。
169
-
170
- **** DONE lldp_spec.rb にパーサのテストを補強
171
- CLOSED: [2013-09-17 火 14:27] SCHEDULED: <2013-09-17 火>
172
- :LOGBOOK:
173
- CLOCK: [2013-09-17 火 11:08]--[2013-09-17 火 14:27] => 3:19
174
- CLOCK: [2013-09-17 火 10:52]--[2013-09-17 火 10:53] => 0:01
175
- :END:
113
+ [2013-09-26 08:05]
114
+ *** NEXT YARD の警告をつぶす
115
+ SCHEDULED: <2014-08-19 火>
176
116
  :PROPERTIES:
177
117
  :Effort: 0:30
178
118
  :END:
179
- [2013-09-17 10:52]
180
- **** DONE lldp_spec.rb にジェネレータのテストを補強
181
- CLOSED: [2013-09-17 火 17:43] SCHEDULED: <2013-09-17 火>
182
- :LOGBOOK:
183
- CLOCK: [2013-09-17 火 10:53]--[2013-09-17 火 10:54] => 0:01
184
- :END:
185
- :PROPERTIES:
186
- :Effort: 2:00
187
- :END:
188
- [2013-09-17 火 10:53]
189
- **** DONE README.md の Lldp の使いかたを更新
190
- CLOSED: [2013-09-17 火 17:50] SCHEDULED: <2013-09-17 火>
191
- :LOGBOOK:
192
- CLOCK: [2013-09-17 火 17:45]--[2013-09-17 火 17:46] => 0:01
193
- :END:
194
- [2013-09-17 火 17:45]
195
- **** DONE rake quality の警告をつぶす
196
- CLOSED: [2013-09-17 火 21:58] SCHEDULED: <2013-09-17 火>
197
- :LOGBOOK:
198
- CLOCK: [2013-09-17 火 21:33]--[2013-09-17 火 21:58] => 0:25
199
- :END:
200
- [2013-09-17 火 21:32]
201
- **** DONE rake spec のエラーを直す
202
- CLOSED: [2013-09-17 火 22:06] SCHEDULED: <2013-09-17 火>
203
- :LOGBOOK:
204
- CLOCK: [2013-09-17 火 22:04]--[2013-09-17 火 22:06] => 0:02
205
- CLOCK: [2013-09-17 火 22:02]--[2013-09-17 火 22:03] => 0:01
206
- :END:
207
- [2013-09-17 火 22:02]
208
-
209
- 2.0 系だけ?MacBook Air で実行したら次のエラーが出た。
210
-
211
- #+BEGIN_SRC shell
212
- /Users/yasuhito/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/json/common.rb:270:in `pretty_generate': uninitialized constant JSON::State (NameError)
213
- from /Users/yasuhito/.rvm/gems/ruby-2.0.0-p247/gems/simplecov-0.7.1/lib/simplecov/json.rb:16:in `dump'
214
- from /Users/yasuhito/.rvm/gems/ruby-2.0.0-p247/gems/simplecov-0.7.1/lib/simplecov/result_merger.rb:69:in `block in store_result'
215
- from /Users/yasuhito/.rvm/gems/ruby-2.0.0-p247/gems/simplecov-0.7.1/lib/simplecov/result_merger.rb:68:in `open'
216
- from /Users/yasuhito/.rvm/gems/ruby-2.0.0-p247/gems/simplecov-0.7.1/lib/simplecov/result_merger.rb:68:in `store_result'
217
- from /Users/yasuhito/.rvm/gems/ruby-2.0.0-p247/gems/simplecov-0.7.1/lib/simplecov.rb:48:in `result'
218
- from /Users/yasuhito/.rvm/gems/ruby-2.0.0-p247/gems/simplecov-0.7.1/lib/simplecov/configuration.rb:133:in `block in at_exit'
219
- from /Users/yasuhito/.rvm/gems/ruby-2.0.0-p247/gems/simplecov-0.7.1/lib/simplecov/defaults.rb:52:in `call'
220
- from /Users/yasuhito/.rvm/gems/ruby-2.0.0-p247/gems/simplecov-0.7.1/lib/simplecov/defaults.rb:52:in `block in <top (required)>'
221
- /Users/yasuhito/.rvm/rubies/ruby-2.0.0-p247/bin/ruby -S rspec ./spec/pio/arp/reply_spec.rb ./spec/pio/arp/request_spec.rb ./spec/pio/arp_spec.rb ./spec/pio/ip_spec.rb ./spec/pio/lldp/chassis-id-tlv_spec.rb ./spec/pio/lldp/end-of-lldpdu-value_spec.rb ./spec/pio/lldp/frame_spec.rb ./spec/pio/lldp/optional-tlv_spec.rb ./spec/pio/lldp/port-id-tlv_spec.rb ./spec/pio/lldp/ttl-tlv_spec.rb ./spec/pio/lldp_spec.rb ./spec/pio/mac_spec.rb failed
222
- #+END_SRC
223
- **** DONE いらないテストを消す
224
- CLOSED: [2013-09-17 火 22:08] SCHEDULED: <2013-09-17 火>
225
- :LOGBOOK:
226
- CLOCK: [2013-09-17 火 22:06]--[2013-09-17 火 22:07] => 0:01
227
- :END:
228
- [2013-09-17 火 22:06]
229
- *** DONE quality タスクの description を追加
230
- CLOSED: [2013-09-13 金 16:13] SCHEDULED: <2013-09-13 金>
231
- :LOGBOOK:
232
- CLOCK: [2013-09-13 金 16:11]--[2013-09-13 金 16:13] => 0:02
233
- :END:
234
- [2013-09-05 木 21:32]
235
- *** DONE Pio::Mac のテストコードを Trema から移植
236
- CLOSED: [2013-09-13 金 16:07] SCHEDULED: <2013-09-13 金>
237
- :LOGBOOK:
238
- CLOCK: [2013-09-13 金 15:54]--[2013-09-13 金 16:07] => 0:13
239
- CLOCK: [2013-09-13 金 15:44]--[2013-09-13 金 15:45] => 0:01
240
- :END:
241
- [2013-09-13 金 15:44]
242
- *** DONE Pio::IP のテストコードを Trema から移植
243
- CLOSED: [2013-09-13 金 15:53] SCHEDULED: <2013-09-13 金>
244
- :LOGBOOK:
245
- CLOCK: [2013-09-13 金 15:48]--[2013-09-13 金 15:53] => 0:05
246
- CLOCK: [2013-09-13 金 15:43]--[2013-09-13 金 15:44] => 0:01
247
- :END:
248
- [2013-09-13 金 15:43]
249
- *** DONE Pio::Arp::Reply#initialize の flog 警告を直す
250
- CLOSED: [2013-09-13 金 13:25] SCHEDULED: <2013-09-13 金>
251
- :LOGBOOK:
252
- CLOCK: [2013-09-13 金 11:56]--[2013-09-13 金 13:25] => 1:29
253
- CLOCK: [2013-09-13 金 10:31]--[2013-09-13 金 10:32] => 0:01
254
- :END:
255
- [2013-09-13 金 10:31]
256
- *** DONE Pio::Arp::Request#initialize の flog 警告を直す
257
- CLOSED: [2013-09-13 金 11:27] SCHEDULED: <2013-09-13 金>
258
- :LOGBOOK:
259
- CLOCK: [2013-09-13 金 10:33]--[2013-09-13 金 11:27] => 0:54
260
- :END:
261
- [2013-09-13 金 10:32]
262
- *** DONE Pio::IP#prefixlen の reek 警告部分を直す
263
- CLOSED: [2013-09-13 金 10:27] SCHEDULED: <2013-09-13 金>
264
- :LOGBOOK:
265
- CLOCK: [2013-09-13 金 10:07]--[2013-09-13 金 10:27] => 0:20
266
- CLOCK: [2013-09-13 金 10:05]--[2013-09-13 金 10:06] => 0:01
267
- :END:
268
- [2013-09-13 金 10:05]
269
-
270
- 次の警告が出ている。
271
-
272
- #+BEGIN_SRC shell
273
- % rake quality
274
- lib/pio/ip.rb -- 3 warnings:
275
- Pio::IP#prefixlen has approx 6 statements (TooManyStatements)
276
- Pio::IP#prefixlen refers to mask more than self (FeatureEnvy)
277
- Pio::IP#prefixlen refers to range more than self (FeatureEnvy)
278
- 3 total warnings
279
- #+END_SRC
280
- *** DONE rake quality が最後まで走るようにする
281
- CLOSED: [2013-09-13 金 09:59] SCHEDULED: <2013-09-13 金>
282
- :LOGBOOK:
283
- CLOCK: [2013-09-13 金 09:57]--[2013-09-13 金 09:59] => 0:02
284
- CLOCK: [2013-09-13 金 09:50]--[2013-09-13 金 09:51] => 0:01
285
- :END:
286
- [2013-09-13 金 09:50]
287
-
288
- いまの reek, flog タスク等は問題があったときに例外を上げてそこで止まっ
289
- てしまうので、次のタスクに行かない。そうではなくて、エラーメッセージだ
290
- け出して quality タスク全体をひととおり実行するように直す。
291
- *** DONE ARP パーサを作る (Pio::Arp.read)
292
- CLOSED: [2013-09-12 木 14:57]
293
- [2013-08-02 金 17:19]
294
- **** DONE rake quality にかける
295
- CLOSED: [2013-09-12 木 11:48] SCHEDULED: <2013-09-12 木>
296
- [2013-09-12 木 09:09]
297
- **** DONE RSpec の見直し
298
- CLOSED: [2013-09-12 木 11:36] SCHEDULED: <2013-09-12 木>
299
- :LOGBOOK:
300
- CLOCK: [2013-09-12 木 10:30]--[2013-09-12 木 11:36] => 1:06
301
- CLOCK: [2013-09-11 水 21:36]--[2013-09-11 水 21:37] => 0:01
302
- :END:
303
- [2013-09-11 水 21:36]
304
-
305
- ここに書いてあるベストプラクティスを参考に、ひととおり見直す。
306
- http://betterspecs.org/jp/
307
- **** DONE Arp.read でパースした結果の各フィールドのテストを追加
308
- CLOSED: [2013-09-12 木 10:08] SCHEDULED: <2013-09-12 木>
309
- [2013-09-11 水 15:47]
310
- **** DONE pio/lldp/mac-address.rb -> pio/mac-address.rb に変更
311
- CLOSED: [2013-09-09 月 13:52]
312
- :LOGBOOK:
313
- CLOCK: [2013-09-06 金 16:02]--[2013-09-06 金 16:03] => 0:01
314
- :END:
315
- [2013-09-06 金 16:02]
316
- **** DONE ARP Reply のテストを追加
317
- CLOSED: [2013-09-09 月 14:17] SCHEDULED: <2013-09-09 月>
318
- [2013-09-06 金 16:04]
319
- **** DONE operation の値で ArpRequest と ArpReply クラスを変える
320
- CLOSED: [2013-09-11 水 14:30]
321
- :LOGBOOK:
322
- CLOCK: [2013-09-06 金 16:23]--[2013-09-06 金 16:24] => 0:01
323
- :END:
324
- [2013-09-06 金 16:23]
325
- **** DONE 金曜日分の作業を近藤さんリポジトリに push する
326
- CLOSED: [2013-09-06 金 16:22]
327
- :LOGBOOK:
328
- CLOCK: [2013-09-06 金 16:14]--[2013-09-06 金 16:15] => 0:01
329
- :END:
330
- [2013-09-06 金 16:14]
331
- **** DONE Arp.read で ArpRequest or ArpReply が返ってくる部分のテストを書く
332
- CLOSED: [2013-09-11 水 14:30]
333
- [2013-09-11 水 14:10]
334
- **** DONE いらないファイルがないか探して消す
335
- CLOSED: [2013-09-11 水 14:54]
336
- [2013-09-09 月 14:19]
337
- **** DONE lib/pio/arp/ip-address.rb -> lib/pio/type/ip-address.rb
338
- CLOSED: [2013-09-11 水 15:45]
339
- :LOGBOOK:
340
- CLOCK: [2013-09-11 水 15:43]--[2013-09-11 水 15:44] => 0:01
341
- :END:
342
- [2013-09-11 水 15:43]
343
- **** DONE lib/pio/mac-address.rb -> lib/pio/type/mac-address.rb
344
- CLOSED: [2013-09-11 水 15:42]
345
- :LOGBOOK:
346
- CLOCK: [2013-09-11 水 15:38]--[2013-09-11 水 15:39] => 0:01
347
- :END:
348
- [2013-09-11 水 15:38]
349
- **** DONE 調べる: ARP request と reply でパディングが付くのはどんなとき?
350
- CLOSED: [2013-09-11 水 15:06]
351
- :LOGBOOK:
352
- CLOCK: [2013-09-09 月 14:02]--[2013-09-09 月 14:03] => 0:01
353
- :END:
354
- [2013-09-09 月 14:02]
355
-
356
- 近藤さんが時間のあるときに調べる。
357
- **** DONE リネーム ArpRequest -> Arp::Request
358
- CLOSED: [2013-09-11 水 15:01]
359
- [2013-09-11 水 14:56]
360
- **** DONE リネーム ArpReply -> Arp::Reply
361
- CLOSED: [2013-09-11 水 15:05]
362
- [2013-09-11 水 14:57]
363
- *** DONE Arp Request のジェネレータを作る (Pio::Arp::Request.new) :Request:
364
- CLOSED: [2013-09-12 木 14:57]
365
- :LOGBOOK:
366
- CLOCK: [2013-09-10 火 11:36]--[2013-09-10 火 11:38] => 0:02
367
- CLOCK: [2013-09-10 火 11:08]--[2013-09-10 火 11:10] => 0:02
368
- CLOCK: [2013-09-10 火 10:47]--[2013-09-10 火 10:48] => 0:01
369
- :END:
370
- [2013-09-09 月 15:23]
371
- **** DONE #to_binary を追加
372
- CLOSED: [2013-09-12 木 14:36] SCHEDULED: <2013-09-12 木>
373
- [2013-09-12 木 11:51]
374
- **** DONE RSpec の見直し
375
- CLOSED: [2013-09-12 木 14:36] SCHEDULED: <2013-09-12 木>
376
- :LOGBOOK:
377
- CLOCK: [2013-09-12 木 13:34]--[2013-09-12 木 14:09] => 0:35
378
- CLOCK: [2013-09-11 水 21:36]--[2013-09-11 水 21:37] => 0:01
379
- :END:
380
- [2013-09-11 水 21:36]
381
-
382
- ここに書いてあるベストプラクティスを参考に、ひととおり見直す。
383
- http://betterspecs.org/jp/
384
- **** DONE rake quality にかける
385
- CLOSED: [2013-09-12 木 14:44] SCHEDULED: <2013-09-12 木>
386
- [2013-09-12 木 08:47]
387
- **** DONE Trema の IP アドレスクラスを持ってくる
388
- CLOSED: [2013-09-11 水 14:05]
389
- [2013-09-11 水 13:41]
390
- **** DONE Trema の Mac クラスを Pio に持ってくる
391
- CLOSED: [2013-09-11 水 13:40] SCHEDULED: <2013-09-11 水>
392
- :LOGBOOK:
393
- CLOCK: [2013-09-11 水 11:17]--[2013-09-11 水 11:18] => 0:01
394
- :END:
395
- [2013-09-11 水 11:17]
396
- **** DONE #new に必須オプションが渡されてないときのエラー処理
397
- CLOSED: [2013-09-11 水 11:03]
398
- [2013-09-10 火 11:38]
399
- **** DONE 整数 -> 8bit int の Array に変換するエレガントな書き方
400
- CLOSED: [2013-09-10 火 11:36] SCHEDULED: <2013-09-10 火>
401
- :LOGBOOK:
402
- CLOCK: [2013-09-10 火 11:10]--[2013-09-10 火 11:36] => 0:26
403
- :END:
404
- [2013-09-09 月 17:13]
405
- **** DONE IP アドレスを文字列で指定できるようにする
406
- CLOSED: [2013-09-10 火 11:08] SCHEDULED: <2013-09-10 火>
407
- :LOGBOOK:
408
- CLOCK: [2013-09-10 火 10:48]--[2013-09-10 火 11:08] => 0:20
409
- :END:
410
- [2013-09-09 月 17:10]
411
- **** DONE 00:00:00:00:00:00 な MAC アドレスの名前を調べる
412
- CLOSED: [2013-09-10 火 10:47] SCHEDULED: <2013-09-10 火>
413
- :LOGBOOK:
414
- CLOCK: [2013-09-10 火 10:45]--[2013-09-10 火 10:47] => 0:02
415
- :END:
416
- [2013-09-09 月 15:53]
417
- **** DONE MAC アドレスを文字列で指定できるようにする
418
- CLOSED: [2013-09-09 月 17:10]
419
- [2013-09-09 月 15:58]
420
- **** DONE ARP Request を生成するテストを追加
421
- CLOSED: [2013-09-09 月 15:56]
422
- [2013-09-09 月 14:25]
423
- *** DONE Arp Reply のジェネレータを作る (Pio::Arp::Reply.new) :Reply:
424
- CLOSED: [2013-09-12 木 14:57]
425
- [2013-09-09 月 15:26]
426
- **** DONE #to_binary を追加
427
- CLOSED: [2013-09-12 木 14:36] SCHEDULED: <2013-09-12 木>
428
- [2013-09-12 木 11:51]
429
- **** DONE RSpec の見直し
430
- CLOSED: [2013-09-12 木 14:36] SCHEDULED: <2013-09-12 木>
431
- :LOGBOOK:
432
- CLOCK: [2013-09-12 木 14:09]--[2013-09-12 木 14:36] => 0:27
433
- CLOCK: [2013-09-11 水 21:36]--[2013-09-11 水 21:37] => 0:01
434
- :END:
435
- [2013-09-11 水 21:36]
436
-
437
- ここに書いてあるベストプラクティスを参考に、ひととおり見直す。
438
- http://betterspecs.org/jp/
439
- **** DONE rake quality にかける
440
- CLOSED: [2013-09-12 木 14:44] SCHEDULED: <2013-09-12 木>
441
- :LOGBOOK:
442
- CLOCK: [2013-09-12 木 09:09]--[2013-09-12 木 09:10] => 0:01
443
- :END:
444
- [2013-09-12 木 09:09]
445
- **** DONE ARP Reply を生成するテストを追加
446
- [2013-09-09 月 14:27]
447
- *** DONE Arp::Frame と Lldp::Frame の Ethernet ヘッダ部分を共通化
448
- CLOSED: [2013-09-12 木 15:15] SCHEDULED: <2013-09-12 木>
449
- :LOGBOOK:
450
- CLOCK: [2013-09-12 木 14:58]--[2013-09-12 木 15:15] => 0:17
451
- CLOCK: [2013-09-06 金 16:10]--[2013-09-06 金 16:13] => 0:03
452
- :END:
453
- [2013-09-06 金 16:10]
454
-
455
- たとえば、以下のように 3 つのフィールドがひとつにまとまることになる。
456
-
457
- #+BEGIN_SRC ruby
458
- mac_address :destination_mac
459
- mac_address :source_mac
460
- uint16 :ether_type, :value => 0x0806
461
-
462
- #=>
463
-
464
- ethernet :ethernet
465
- # or
466
- ehternet :l2
467
- #+END_SRC
468
-
469
- みたいな感じ?
470
- *** DONE Lldp の :ethertype -> :ether_type に名前を変更
471
- CLOSED: [2013-09-12 木 15:18] SCHEDULED: <2013-09-12 木>
472
- :LOGBOOK:
473
- CLOCK: [2013-09-12 木 15:16]--[2013-09-12 木 15:18] => 0:02
474
- CLOCK: [2013-09-06 金 20:38]--[2013-09-06 金 20:39] => 0:01
475
- :END:
476
- [2013-09-06 金 20:38]
477
- *** DONE guard の "ambiguous option stat" を直す
478
- CLOSED: [2013-09-12 木 09:35] SCHEDULED: <2013-09-12 木>
479
- :LOGBOOK:
480
- CLOCK: [2013-09-12 木 09:19]--[2013-09-12 木 09:35] => 0:16
481
- CLOCK: [2013-09-12 木 09:16]--[2013-09-12 木 09:17] => 0:01
482
- :END:
483
- [2013-09-12 木 09:16]
484
- *** DONE フィールド名を修正
119
+ [2013-07-31 15:32]
120
+ *** TODO flay に PR を送る (FlayTask が動かない件)
485
121
  :LOGBOOK:
486
- CLOCK: [2013-09-10 14:46]--[2013-09-10 14:48] => 0:02
122
+ CLOCK: [2013-09-18 17:20]--[2013-09-18 17:21] => 0:01
487
123
  :END:
488
- [2013-09-10 14:46]
489
-
490
- - :source_hardware_address -> :sender_hardware_address
491
- - :source_protocol_address -> :sender_protocol_address
492
- *** DONE Arp::Request と Arp::Reply の共通部分をクラスに引き上げ
493
- CLOSED: [2013-09-13 金 14:05] SCHEDULED: <2013-09-13 金>
124
+ [2013-09-18 17:20]
125
+ *** DONE 明示的に spec_helper.rb をロードしてる部分をなくす
126
+ CLOSED: [2013-09-26 木 08:18] SCHEDULED: <2013-09-26 木>
494
127
  :LOGBOOK:
495
- CLOCK: [2013-09-13 13:28]--[2013-09-13 14:05] => 0:37
128
+ CLOCK: [2013-09-26 08:14]--[2013-09-26 08:15] => 0:01
496
129
  :END:
497
- [2013-09-13 金 13:28]
498
- ** WAITING 0.3.0 リリース :WAITING:
499
- - State "WAITING" from "TODO" [2013-09-06 金 17:17] \\
500
- 0.2.0 が無事に出てから
501
- [2013-09-05 木 17:29]
502
- *** TODO ICMP パーサを作る
503
- [2013-08-02 金 17:19]
504
- *** NEXT YARD の警告をつぶす
505
- SCHEDULED: <2014-08-19 火>
506
130
  :PROPERTIES:
507
131
  :Effort: 0:30
508
132
  :END:
509
- [2013-07-31 15:32]
133
+ [2013-09-26 08:14]
510
134
  ** WAITING 0.4.0 リリース :WAITING:
511
135
  - State "WAITING" from "TODO" [2013-09-06 金 17:18] \\
512
136
  0.3.0 が無事に出てから。