tty-progressbar 0.14.0 → 0.18.0

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 (99) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +98 -21
  3. data/LICENSE.txt +1 -1
  4. data/README.md +511 -119
  5. data/lib/tty-progressbar.rb +2 -2
  6. data/lib/tty/progressbar.rb +216 -87
  7. data/lib/tty/progressbar/configuration.rb +124 -16
  8. data/lib/tty/progressbar/converter.rb +16 -19
  9. data/lib/tty/progressbar/formats.rb +120 -0
  10. data/lib/tty/progressbar/formatter.rb +33 -38
  11. data/lib/tty/progressbar/formatter/bar.rb +87 -29
  12. data/lib/tty/progressbar/formatter/byte_rate.rb +6 -20
  13. data/lib/tty/progressbar/formatter/current.rb +4 -19
  14. data/lib/tty/progressbar/formatter/current_byte.rb +9 -17
  15. data/lib/tty/progressbar/formatter/elapsed.rb +9 -18
  16. data/lib/tty/progressbar/formatter/estimated.rb +14 -18
  17. data/lib/tty/progressbar/formatter/estimated_time.rb +37 -0
  18. data/lib/tty/progressbar/formatter/mean_byte.rb +6 -20
  19. data/lib/tty/progressbar/formatter/mean_rate.rb +6 -20
  20. data/lib/tty/progressbar/formatter/percent.rb +10 -16
  21. data/lib/tty/progressbar/formatter/rate.rb +5 -19
  22. data/lib/tty/progressbar/formatter/total.rb +10 -16
  23. data/lib/tty/progressbar/formatter/total_byte.rb +14 -18
  24. data/lib/tty/progressbar/formatters.rb +53 -0
  25. data/lib/tty/progressbar/meter.rb +2 -2
  26. data/lib/tty/progressbar/multi.rb +69 -23
  27. data/lib/tty/progressbar/pipeline.rb +13 -6
  28. data/lib/tty/progressbar/timer.rb +89 -0
  29. data/lib/tty/progressbar/version.rb +3 -1
  30. metadata +65 -151
  31. data/.codeclimate.yml +0 -11
  32. data/.gitignore +0 -14
  33. data/.rspec +0 -3
  34. data/.travis.yml +0 -25
  35. data/CODE_OF_CONDUCT.md +0 -74
  36. data/Gemfile +0 -14
  37. data/Rakefile +0 -8
  38. data/appveyor.yml +0 -21
  39. data/examples/color.rb +0 -18
  40. data/examples/failure.rb +0 -12
  41. data/examples/iterator.rb +0 -5
  42. data/examples/lazy.rb +0 -6
  43. data/examples/multi/main_bar.rb +0 -13
  44. data/examples/multi/simple.rb +0 -13
  45. data/examples/simple.rb +0 -7
  46. data/examples/slow_process.rb +0 -29
  47. data/examples/speed.rb +0 -11
  48. data/examples/threaded.rb +0 -14
  49. data/examples/tokens.rb +0 -12
  50. data/spec/spec_helper.rb +0 -50
  51. data/spec/unit/advance_spec.rb +0 -25
  52. data/spec/unit/clear_spec.rb +0 -17
  53. data/spec/unit/complete_spec.rb +0 -16
  54. data/spec/unit/converter/to_bytes_spec.rb +0 -47
  55. data/spec/unit/converter/to_seconds_spec.rb +0 -15
  56. data/spec/unit/converter/to_time_spec.rb +0 -19
  57. data/spec/unit/custom_formatter_spec.rb +0 -26
  58. data/spec/unit/custom_token_spec.rb +0 -14
  59. data/spec/unit/events_spec.rb +0 -33
  60. data/spec/unit/finish_spec.rb +0 -15
  61. data/spec/unit/formatter/bar_spec.rb +0 -16
  62. data/spec/unit/formatter/byte_rate_spec.rb +0 -32
  63. data/spec/unit/formatter/current_byte_spec.rb +0 -16
  64. data/spec/unit/formatter/current_spec.rb +0 -14
  65. data/spec/unit/formatter/elapsed_spec.rb +0 -58
  66. data/spec/unit/formatter/estimated_spec.rb +0 -27
  67. data/spec/unit/formatter/mean_byte_spec.rb +0 -32
  68. data/spec/unit/formatter/mean_rate_spec.rb +0 -31
  69. data/spec/unit/formatter/percent_spec.rb +0 -16
  70. data/spec/unit/formatter/rate_spec.rb +0 -31
  71. data/spec/unit/formatter/total_byte_spec.rb +0 -16
  72. data/spec/unit/formatter/total_spec.rb +0 -16
  73. data/spec/unit/frequency_spec.rb +0 -27
  74. data/spec/unit/head_spec.rb +0 -32
  75. data/spec/unit/hide_cursor_spec.rb +0 -27
  76. data/spec/unit/inspect_spec.rb +0 -11
  77. data/spec/unit/iterate_spec.rb +0 -79
  78. data/spec/unit/log_spec.rb +0 -29
  79. data/spec/unit/meter_spec.rb +0 -70
  80. data/spec/unit/multi/advance_spec.rb +0 -123
  81. data/spec/unit/multi/events_spec.rb +0 -115
  82. data/spec/unit/multi/finish_spec.rb +0 -41
  83. data/spec/unit/multi/line_inset_spec.rb +0 -65
  84. data/spec/unit/multi/register_spec.rb +0 -35
  85. data/spec/unit/multi/stop_spec.rb +0 -15
  86. data/spec/unit/new_spec.rb +0 -66
  87. data/spec/unit/pipeline_spec.rb +0 -19
  88. data/spec/unit/ratio_spec.rb +0 -31
  89. data/spec/unit/reset_spec.rb +0 -31
  90. data/spec/unit/resize_spec.rb +0 -35
  91. data/spec/unit/set_current_spec.rb +0 -43
  92. data/spec/unit/start_spec.rb +0 -14
  93. data/spec/unit/stop_spec.rb +0 -19
  94. data/spec/unit/update_spec.rb +0 -22
  95. data/spec/unit/width_spec.rb +0 -21
  96. data/tasks/console.rake +0 -9
  97. data/tasks/coverage.rake +0 -9
  98. data/tasks/spec.rake +0 -27
  99. data/tty-progressbar.gemspec +0 -30
@@ -1,21 +0,0 @@
1
- RSpec.describe TTY::ProgressBar, '#width' do
2
- let(:output) { StringIO.new('', 'w+') }
3
-
4
- it "handles width exceeding terminal width" do
5
- progress = TTY::ProgressBar.new "[:bar]" do |config|
6
- config.output = output
7
- config.total = 5
8
- config.width = 1024
9
- end
10
- allow(TTY::Screen).to receive(:width).and_return(20)
11
- 5.times { progress.advance }
12
- output.rewind
13
- expect(output.read).to eq([
14
- "\e[1G[==== ]",
15
- "\e[1G[======= ]",
16
- "\e[1G[=========== ]",
17
- "\e[1G[============== ]",
18
- "\e[1G[==================]\n"
19
- ].join)
20
- end
21
- end
@@ -1,9 +0,0 @@
1
- desc 'Load gem inside irb console'
2
- task :console do
3
- require 'irb'
4
- require 'irb/completion'
5
- require_relative '../lib/tty-progressbar'
6
- ARGV.clear
7
- IRB.start
8
- end
9
- task :c => :console
@@ -1,9 +0,0 @@
1
- desc 'Measure code coverage'
2
- task :coverage do
3
- begin
4
- original, ENV['COVERAGE'] = ENV['COVERAGE'], 'true'
5
- Rake::Task['spec'].invoke
6
- ensure
7
- ENV['COVERAGE'] = original
8
- end
9
- end
@@ -1,27 +0,0 @@
1
- begin
2
- require 'rspec/core/rake_task'
3
-
4
- desc 'Run all specs'
5
- RSpec::Core::RakeTask.new(:spec) do |task|
6
- task.pattern = 'spec/{unit,integration}{,/*/**}/*_spec.rb'
7
- end
8
-
9
- namespace :spec do
10
- desc 'Run unit specs'
11
- RSpec::Core::RakeTask.new(:unit) do |task|
12
- task.pattern = 'spec/unit{,/*/**}/*_spec.rb'
13
- end
14
-
15
- desc 'Run integration specs'
16
- RSpec::Core::RakeTask.new(:integration) do |task|
17
- task.pattern = 'spec/integration{,/*/**}/*_spec.rb'
18
- end
19
- end
20
-
21
- rescue LoadError
22
- %w[spec spec:unit spec:integration].each do |name|
23
- task name do
24
- $stderr.puts "In order to run #{name}, do `gem install rspec`"
25
- end
26
- end
27
- end
@@ -1,30 +0,0 @@
1
- # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
3
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'tty/progressbar/version'
5
-
6
- Gem::Specification.new do |spec|
7
- spec.name = "tty-progressbar"
8
- spec.version = TTY::ProgressBar::VERSION
9
- spec.authors = ["Piotr Murach"]
10
- spec.email = [""]
11
- spec.summary = %q{A flexible progress bars drawing in terminal emulators.}
12
- spec.description = %q{A flexible progress bars drawing in terminal emulators.}
13
- spec.homepage = "https://piotrmurach.github.io/tty/"
14
- spec.license = "MIT"
15
-
16
- spec.files = `git ls-files -z`.split("\x0")
17
- spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
- spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
- spec.require_paths = ["lib"]
20
-
21
- spec.required_ruby_version = '>= 2.0.0'
22
-
23
- spec.add_dependency "tty-cursor", '~> 0.5.0'
24
- spec.add_dependency "tty-screen", '~> 0.6.4'
25
-
26
- spec.add_development_dependency 'bundler', '>= 1.5.0', '< 2.0'
27
- spec.add_development_dependency 'rspec', '~> 3.1'
28
- spec.add_development_dependency 'timecop', '~> 0.9.1'
29
- spec.add_development_dependency 'rake'
30
- end