tarbit 1.0.7 → 1.0.8

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
2
  SHA256:
3
- metadata.gz: 753e18e5f581d7207020533407495174cddaca2d94f2ae21bfe8e07edeef09e8
4
- data.tar.gz: fd1c73f4661175b7a223c3c7b2edc0a51e28bea922282b98a7fe389f5fc58be4
3
+ metadata.gz: 182034a90913782f8971a89c33dcc160273bab47bfcb44204dbb7edf9f50317e
4
+ data.tar.gz: da2d30e40c2ff76062064208df8d5e30883e5af05b75acc3fd34b2d842aec1f6
5
5
  SHA512:
6
- metadata.gz: 0601e392575206ed90d849de2b81b84fc263f80aabb59077372ecbd73b6325fc570f7ac849c5fa73d2e273fb68a7c6eb874f63b7b35076ea8e6d6ad7ff8e196c
7
- data.tar.gz: dd6c98ccb6bf2b89b5f304bad053198921013cf61e9288ddc0c830b52fea64bcc30dee925892c14c09f5323a2b075550b58da2fe258ec90c351ce91fdbc35c3e
6
+ metadata.gz: 264c074daad6d84d9413497298bccb8130248d34cd5e37624bf5487bc4b8b29ae2c06e7c33ccf66803a8a783c49562f0964b19d523843fa0c33f39eb80d741b9
7
+ data.tar.gz: d73c1f425d01bae5159a1912ee5790182fe79b0bc5e46f98b981326ac77dc48650703f97822f98d08e4ba8af0d61c882fd0eae7e90dc2b43eaff03e1e7376b91
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- tarbit (1.0.6)
4
+ tarbit (1.0.7)
5
5
  async-io
6
6
  commander
7
7
  gruff
data/bin/tarbit CHANGED
@@ -26,9 +26,6 @@ command :serve do |c|
26
26
  statistic = Tarbit::StatisticWatcher.new(server, options.interval)
27
27
 
28
28
  Async do |task|
29
- Async.logger.info "============================================================"
30
- Async.logger.info "Starting tarbit on port #{options.port || 22} creating time points every #{options.interval || 600} seconds"
31
- Async.logger.info "============================================================"
32
29
  statistic.watch
33
30
  server.run
34
31
  end
data/lib/tarbit/server.rb CHANGED
@@ -11,21 +11,15 @@ module Tarbit
11
11
  class Server
12
12
  attr_reader :connections
13
13
 
14
- def initialize(port = 22)
14
+ def initialize(port)
15
15
  @connections = []
16
- @port = port.to_i
16
+ @port = port.nil? ? 22 : port.to_i
17
+ Async.logger.info "Server - Starting tarbit on port #{@port}"
17
18
  end
18
19
 
19
20
  def run
20
21
  endpoint = Async::IO::Endpoint.parse("tcp://0.0.0.0:#{@port}")
21
22
 
22
- Async do |task|
23
- while true
24
- task.sleep 1
25
- Async.logger.info "Connection count: #{@connections.size}"
26
- end
27
- end
28
-
29
23
  Async do |task|
30
24
  endpoint.accept do |peer|
31
25
  stream = Async::IO::Stream.new(peer)
@@ -40,10 +34,11 @@ module Tarbit
40
34
 
41
35
  while true do
42
36
  task.sleep 60
43
- if stream.eof? || stream.closed? || stream.io.closed?
37
+ if stream.eof? || stream.closed? || stream.io.closed? # Todo validate if flush is the problem here
44
38
  raise Async::TimeoutError.new
45
39
  end
46
40
  stream.write "#{rand(10)}\r\n"
41
+ #stream.flush
47
42
  end
48
43
  rescue StandardError => e
49
44
  @connections = @connections.reject { |stats| stats.fetch(:id) == id }
@@ -5,10 +5,11 @@ require 'json'
5
5
  module Tarbit
6
6
  class StatisticWatcher
7
7
 
8
- def initialize(server, interval = 600)
8
+ def initialize(server, interval)
9
9
  @server = server
10
- @interval = interval.to_i
10
+ @interval = interval.nil? ? 600 : interval.to_i
11
11
  @history = []
12
+ Async.logger.info "SatisticWatcher - Starting watcher with interval #{@interval}"
12
13
  end
13
14
 
14
15
  def watch
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Tarbit
4
- VERSION = "1.0.7"
4
+ VERSION = "1.0.8"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tarbit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.7
4
+ version: 1.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Niklas Hanft
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-02-26 00:00:00.000000000 Z
11
+ date: 2020-02-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: async-io