irrc 0.2.0 → 0.2.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 2153f20f9106d41a4879ffbc6ab3da228fb92c91
4
- data.tar.gz: f79d595e7e9feba683de2e366dd08fdc93b9d119
2
+ SHA256:
3
+ metadata.gz: 6f59c95d799cca6b37d208c59260beb9b2eaf8a72b0c4f11a41ea21810fcef4c
4
+ data.tar.gz: 4a4e3bbc7efc5313a3b6e912b855ab1bd142c78a595ec197139b4d787fc0316f
5
5
  SHA512:
6
- metadata.gz: 01730d20bad2b5b2509b1895fc237ebc299d372ba5a053f52cae32b74e31be9580aa3d84856424e946dd1debf0de1c45f7fb8636fff807258fe133f402ad9eb2
7
- data.tar.gz: e45bce36c6a1449a6a4f866f6e258e76c264dd96fb6f1bc8eb4be9a1cd9e2badc9f409408fefadc39e8a185783eb6fb8b62415cc3c6f24104c0489923636912e
6
+ metadata.gz: 4ba4c3de9f48ce1294e40914fbef78fbf69fd44beed5df86f283b8efe2b440fb9e611e391a5bc0799c4c879033153963ed92f29661e883a3f3344fbab8161ebb
7
+ data.tar.gz: a6de9790cf7e9e0ed4d0ccca4eb54717b075c8195de6f97e6dededbfe26ef6d13415f8e5ba0e5309a3848526338ddf092a10244a1735e8545b57f09b9b0cf8af
data/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2017 Shintaro Kojima
3
+ Copyright (c) 2018 Shintaro Kojima
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -138,6 +138,10 @@ $ irrc -h jpirr -d AS-JPNIC
138
138
  To use modified Logger:
139
139
 
140
140
  ```ruby
141
+ client = Irrc::Client.new {|c| c.logger = Irrc::Logging::Logger.new(STDERR) }
142
+
143
+ # For Rails,
144
+
141
145
  client = Irrc::Client.new {|c| c.logger = Rails.logger }
142
146
  ```
143
147
 
@@ -170,4 +174,4 @@ For questions or feedbacks write to my twitter @codeout.
170
174
 
171
175
  ## Copyright and License
172
176
 
173
- Copyright (c) 2017 Shintaro Kojima. Code released under the [MIT license](LICENSE).
177
+ Copyright (c) 2018 Shintaro Kojima. Code released under the [MIT license](LICENSE).
data/lib/irrc/runner.rb CHANGED
@@ -4,17 +4,20 @@ module Irrc
4
4
  done = []
5
5
 
6
6
  loop do
7
- # NOTE: trick to avoid dead lock
7
+ # Trick to avoid dead lock
8
8
  if last_thread_of?(threads) && @queue.empty?
9
9
  terminate
10
+
11
+ # Queue guard objects notifying other threads to return results
10
12
  logger.debug "Queue #{threads - 1} guard objects"
11
13
  (threads - 1).times { @queue.push nil }
14
+
12
15
  return done
13
16
  end
14
17
 
15
18
  query = @queue.pop
16
19
 
17
- # NOTE: trick to avoid dead lock
20
+ # Trick to avoid dead lock
18
21
  if query.nil?
19
22
  terminate
20
23
  return done
@@ -51,8 +54,8 @@ module Irrc
51
54
  connection.cmd(command).tap {|result| logger.debug %(Got "#{result}") }
52
55
  end
53
56
 
54
- def last_thread_of?(threads)
55
- Thread.list.reject(&:stop?).size == 1 && Thread.list.size == threads+1
57
+ def last_thread_of?(num_threads)
58
+ return @queue.num_waiting == num_threads - 1
56
59
  end
57
60
 
58
61
  def terminate
data/lib/irrc/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Irrc
2
- VERSION = '0.2.0'
2
+ VERSION = '0.2.1'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: irrc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shintaro Kojima
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-01-16 00:00:00.000000000 Z
11
+ date: 2018-10-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: net-telnet
@@ -127,7 +127,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
127
127
  version: '0'
128
128
  requirements: []
129
129
  rubyforge_project:
130
- rubygems_version: 2.6.8
130
+ rubygems_version: 2.7.6
131
131
  signing_key:
132
132
  specification_version: 4
133
133
  summary: IRR / Whois client to expand as-set and route-set into a list of origin ASs