fortschritt 0.2.2 → 0.3.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 8f425d2b3104d6a678b40d606fe087044c5a78d2
4
- data.tar.gz: 032e1ee974bae5f15d7845d2113c271601ac23df
2
+ SHA256:
3
+ metadata.gz: 81fee1c2e0809177d3d26efec9da20c494708a86c497b0fe3d27b8b9df72f173
4
+ data.tar.gz: 79f930361ad85f1d34aa8784aca4d072e058bdf985420966c8c2e59c18bc4a63
5
5
  SHA512:
6
- metadata.gz: 3ef7622fbc5a9e891bfa74e5f889ceec6aa94b7e73574272cfaaabd5394b8bdaa4b5c70af6bff254ba0fdc7f3e9b62648d886394e47b7ace2f3451d2fea6bc37
7
- data.tar.gz: 3b6802dbdbffe8a07e7bd83afe7d95e7160d1dac728cad3fe2fa43d17a3d15ac002198178db26957fad9b0a8c0e9d44c8a3417099937a5a6d3a64ee670d90574
6
+ metadata.gz: 66302674f968e7b9553d4709164bc27bb97970624f0b324e74138c5718b0fd4980b9c733bc919e2eae26dfd1411d1c87c1b3aece09fcb63c30c179f2ceb5cd9e
7
+ data.tar.gz: d59919fdbc0bc21695867fd277f6512bf65c938c1e26ad4250a25ef74090c4f29e98a8e7450d5815c6d30bf70adbb9e17ae9c7e5b524797aba18b875ec2d5bf3
data/README.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Fortschritt
2
2
 
3
+ * no colors
4
+ * no config
5
+ * no tty stuff
6
+ * no terminal size calculation
7
+ * no dependencies
8
+
3
9
  ## Installation
4
10
 
5
11
  Add this line to your application's Gemfile:
@@ -32,6 +38,22 @@ end
32
38
  # will print something like this: 1616/145096 → 00:13:21 → ETA 2016-02-04 18:11:50
33
39
  ```
34
40
 
41
+ ### Silent
42
+
43
+ If no output is required or wanted invoke `with_fortschritt` with the `silent: true` option
44
+
45
+ ```ruby
46
+ User.all.with_fortschritt(silent: true).find_each do |user|
47
+ user.fortschritt.valid?
48
+ end
49
+
50
+ # won't output any progress
51
+ ```
52
+
53
+ Please note, within a Rails application fortschritt will detect the `Rails.env.test?` environment and silent itself automatically.
54
+
55
+ Fortschritt will also never output anything to a non-tty STDOUT.
56
+
35
57
  ## Contributing
36
58
 
37
59
  Bug reports and pull requests are welcome on GitHub at https://github.com/xijo/fortschritt.
data/fortschritt.gemspec CHANGED
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
18
18
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_development_dependency "bundler", "~> 1.10"
22
- spec.add_development_dependency "rake", "~> 10.0"
21
+ spec.add_development_dependency "bundler", "> 1.10"
22
+ spec.add_development_dependency "rake", "~> 12.3.3"
23
23
  spec.add_development_dependency "rspec"
24
24
  end
data/lib/fortschritt.rb CHANGED
@@ -8,8 +8,8 @@ module Fortschritt
8
8
  @meter and @meter.increment
9
9
  end
10
10
 
11
- def self.init(total)
12
- @meter = Fortschritt::Meter.new(total)
11
+ def self.init(total, silent: false)
12
+ @meter = Fortschritt::Meter.new(total, silent: silent)
13
13
  end
14
14
 
15
15
  def self.printer
@@ -1,6 +1,6 @@
1
1
  module Enumerable
2
- def with_fortschritt
3
- Fortschritt.init(size)
2
+ def with_fortschritt(**opts)
3
+ Fortschritt.init(size, **opts)
4
4
  self
5
5
  end
6
6
  end
@@ -17,8 +17,8 @@ if defined?(Rails)
17
17
 
18
18
  extend ActiveSupport::Concern
19
19
 
20
- def with_fortschritt
21
- Fortschritt.init(count)
20
+ def with_fortschritt(**opts)
21
+ Fortschritt.init(size, **opts)
22
22
  self
23
23
  end
24
24
  end
@@ -1,13 +1,14 @@
1
1
  module Fortschritt
2
2
  class Meter
3
- attr_accessor :total, :done, :updated_at, :average_seconds
3
+ attr_accessor :total, :done, :updated_at, :average_seconds, :silent
4
4
 
5
- def initialize(total)
5
+ def initialize(total, silent: false)
6
6
  @total = total
7
7
  @done = 0
8
8
  @updated_at = Time.now
9
9
  @average_seconds = 0
10
10
  @started_at = Time.now
11
+ @silent = silent || !!(Rails.env.test? if defined?(Rails))
11
12
  end
12
13
 
13
14
  def increment
@@ -16,7 +17,7 @@ module Fortschritt
16
17
  @average_seconds = calculate_average_seconds(elapsed_seconds)
17
18
  @updated_at = @_now
18
19
  @done += 1
19
- print!
20
+ print! unless @silent
20
21
  end
21
22
 
22
23
  def completed?
@@ -1,7 +1,7 @@
1
1
  module Fortschritt
2
2
  class Printer
3
3
  def print(meter, stream = STDOUT)
4
- stream.print output(meter)
4
+ stream.print output(meter) if stream.tty?
5
5
  end
6
6
 
7
7
  def output(meter)
@@ -1,3 +1,3 @@
1
1
  module Fortschritt
2
- VERSION = '0.2.2'
2
+ VERSION = '0.3.6'
3
3
  end
metadata CHANGED
@@ -1,27 +1,27 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fortschritt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.3.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Johannes Opper
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-02-10 00:00:00.000000000 Z
11
+ date: 2021-02-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.10'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.10'
27
27
  - !ruby/object:Gem::Dependency
@@ -30,14 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: 12.3.3
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '10.0'
40
+ version: 12.3.3
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -76,7 +76,7 @@ files:
76
76
  homepage: https://github.com/xijo/fortschritt
77
77
  licenses: []
78
78
  metadata: {}
79
- post_install_message:
79
+ post_install_message:
80
80
  rdoc_options: []
81
81
  require_paths:
82
82
  - lib
@@ -91,10 +91,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
91
91
  - !ruby/object:Gem::Version
92
92
  version: '0'
93
93
  requirements: []
94
- rubyforge_project:
95
- rubygems_version: 2.5.1
96
- signing_key:
94
+ rubygems_version: 3.1.2
95
+ signing_key:
97
96
  specification_version: 4
98
97
  summary: non-fancy progress
99
98
  test_files: []
100
- has_rdoc: