console_progress 0.1.8 → 0.1.9

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
  SHA1:
3
- metadata.gz: 444f3d7a708d7f628de25eebfd93470d482857cf
4
- data.tar.gz: ebbfadbb55c743d2c5fe21463e5ce217781c8ab3
3
+ metadata.gz: 184046f6cb7484cffb2f5aa2e6f223fbc2531d38
4
+ data.tar.gz: e22d6c9f6e9d25b95eb3b5500abafc7d87e1b535
5
5
  SHA512:
6
- metadata.gz: 019585c314527935fc18134daa1b3d8dc6a74a5744e3fad8b10aa060d0f4d9df7a20d775371dd85dd9a752782ac9257c5701d2e4428f01a605e1aa2bbfb0a461
7
- data.tar.gz: 95c77b69f1b172453f33bbb142c8dd13fc7944a67cc2373f757c4925c42f652d29a4c6ea07b28b35b124417e82e024b6af3afda9508a452679e009c40e55a7b8
6
+ metadata.gz: cda6dc66c82f2f5ca6bf17a3ed3d7c03c4bbd3ca61ba6fabc9dd08ee54fe97ad7da19645496e8ba39bb04ca7897ca19ae2140e296ee8d38e076cc9a90a39fa1e
7
+ data.tar.gz: 2ff6a2c6fe90c613149aac7850c0056a2ca266cfa45a0d01aeb3172e585ad74b71538263e03ba4eefa223d28ce9368e9ae82fd23bd90079d45745971c3711da6
@@ -9,7 +9,7 @@ module ConsoleProgress
9
9
 
10
10
  attr_accessor *ATTR
11
11
 
12
- def initialize(steps, format: nil)
12
+ def initialize(steps, format: nil, current_step: 0)
13
13
  @steps = steps
14
14
  @format = format
15
15
  @message_prefix = 'ETA'
@@ -17,7 +17,7 @@ module ConsoleProgress
17
17
  "Remaining: {{time_left}} "\
18
18
  "Took: {{step_time}}s Avg: {{avg_time}}s "\
19
19
  "Elapsed: {{elapsed_time}}"
20
- @step = 0
20
+ @step = current_step
21
21
  @times = []
22
22
  start
23
23
  end
@@ -35,7 +35,8 @@ module ConsoleProgress
35
35
  @elapsed_time = seconds_to_time(t - @start_time)
36
36
 
37
37
  @times << @step_time
38
- @avg_time = @times.reduce(0, :+) / @times.size
38
+ # @avg_time = @times.reduce(0, :+) / @times.size
39
+ @avg_time = median(@times)
39
40
 
40
41
  steps_left = @steps - @step
41
42
  @step = current_step + 1
@@ -71,6 +72,13 @@ module ConsoleProgress
71
72
  .join(':')
72
73
  end
73
74
 
75
+ # from https://stackoverflow.com/posts/14859546/revisions
76
+ def median(array)
77
+ sorted = array.sort
78
+ len = sorted.length
79
+ (sorted[(len - 1) / 2] + sorted[len / 2]) / 2.0
80
+ end
81
+
74
82
  def self.example
75
83
  eta = ConsoleProgress::ETA.new(100)
76
84
  eta.start
@@ -1,3 +1,3 @@
1
1
  module ConsoleProgress
2
- VERSION = "0.1.8"
2
+ VERSION = "0.1.9"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: console_progress
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.1.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Wiseley
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-11-21 00:00:00.000000000 Z
11
+ date: 2017-12-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler