tty-progressbar 0.15.1 → 0.16.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +12 -0
- data/ISSUE_TEMPLATE.md +23 -0
- data/PULL_REQUEST_TEMPLATE.md +18 -0
- data/README.md +4 -0
- data/lib/tty/progressbar.rb +2 -1
- data/lib/tty/progressbar/version.rb +3 -1
- data/spec/unit/formatter/bar_spec.rb +17 -0
- data/tty-progressbar.gemspec +2 -1
- metadata +20 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3538f92c577a1c9890b5389aed821f5f1f6de04521b291c01640e5a22d1e8d50
|
4
|
+
data.tar.gz: 752d77e450c845506e9b66453c2b9e780ced9239e7cf279a8fef4e4454c60d31
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ed90ceccfbddcecdda4e4fbbe0e56a732aa641949756c0de7c8e4accd4054293362991f9bea615fb1ca8e4665e670cda1242251608f3046b2e3eb013154c072d
|
7
|
+
data.tar.gz: 1d0913a024299a2b709d9bb892b68620cc19f527100f27577edc123b220e4b50f554d530afcc14a45e15a55f7aa7051f6751e9abdc4e1f6c45ce745de0100834
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,16 @@
|
|
1
1
|
# Change log
|
2
2
|
|
3
|
+
## [v0.16.0] - 2018-08-27
|
4
|
+
|
5
|
+
### Added
|
6
|
+
* Add strings-ansi dependency
|
7
|
+
|
8
|
+
### Changed
|
9
|
+
* Change tty-cursor dependency version
|
10
|
+
|
11
|
+
### Fixed
|
12
|
+
* Fix to handle ANSI codes in bar formatting to allow correct size calculation
|
13
|
+
|
3
14
|
## [v0.15.1] - 2018-07-19
|
4
15
|
|
5
16
|
### Fixed
|
@@ -184,6 +195,7 @@
|
|
184
195
|
|
185
196
|
* Initial implementation and release
|
186
197
|
|
198
|
+
[v0.16.0]: https://github.com/piotrmurach/tty-progressbar/compare/v0.15.1...v0.16.0
|
187
199
|
[v0.15.1]: https://github.com/piotrmurach/tty-progressbar/compare/v0.15.0...v0.15.1
|
188
200
|
[v0.15.0]: https://github.com/piotrmurach/tty-progressbar/compare/v0.14.0...v0.15.0
|
189
201
|
[v0.14.0]: https://github.com/piotrmurach/tty-progressbar/compare/v0.13.0...v0.14.0
|
data/ISSUE_TEMPLATE.md
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
### Are you in the right place?
|
2
|
+
* For issues or feature requests file a GitHub issue in this repository
|
3
|
+
* For general questions or discussion post in [Gitter](https://gitter.im/piotrmurach/tty)
|
4
|
+
|
5
|
+
### Describe the problem
|
6
|
+
A brief description of the issue/feature.
|
7
|
+
|
8
|
+
### Steps to reproduce the problem
|
9
|
+
```
|
10
|
+
Your code here to reproduce the issue
|
11
|
+
```
|
12
|
+
|
13
|
+
### Actual behaviour
|
14
|
+
What happened? This could be a description, log output, error raised etc...
|
15
|
+
|
16
|
+
### Expected behaviour
|
17
|
+
What did you expect to happen?
|
18
|
+
|
19
|
+
### Describe your environment
|
20
|
+
|
21
|
+
* OS version:
|
22
|
+
* Ruby version:
|
23
|
+
* TTY::ProgressBar version:
|
@@ -0,0 +1,18 @@
|
|
1
|
+
### Describe the change
|
2
|
+
What does this Pull Request do?
|
3
|
+
|
4
|
+
### Why are we doing this?
|
5
|
+
Any related context as to why is this is a desirable change.
|
6
|
+
|
7
|
+
### Benefits
|
8
|
+
How will the library improve?
|
9
|
+
|
10
|
+
### Drawbacks
|
11
|
+
Possible drawbacks applying this change.
|
12
|
+
|
13
|
+
### Requirements
|
14
|
+
Put an X between brackets on each line if you have done the item:
|
15
|
+
[] Tests written & passing locally?
|
16
|
+
[] Code style checked?
|
17
|
+
[] Rebased with `master` branch?
|
18
|
+
[] Documentaion updated?
|
data/README.md
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
<div align="center">
|
2
|
+
<a href="https://piotrmurach.github.io/tty" target="_blank"><img width="130" src="https://cdn.rawgit.com/piotrmurach/tty/master/images/tty.png" alt="tty logo" /></a>
|
3
|
+
</div>
|
4
|
+
|
1
5
|
# TTY::ProgressBar [![Gitter](https://badges.gitter.im/Join%20Chat.svg)][gitter]
|
2
6
|
|
3
7
|
[![Gem Version](https://badge.fury.io/rb/tty-progressbar.svg)][gem]
|
data/lib/tty/progressbar.rb
CHANGED
@@ -5,6 +5,7 @@ require 'forwardable'
|
|
5
5
|
require 'monitor'
|
6
6
|
require 'tty-cursor'
|
7
7
|
require 'tty-screen'
|
8
|
+
require 'strings-ansi'
|
8
9
|
require 'unicode/display_width'
|
9
10
|
|
10
11
|
require_relative 'progressbar/configuration'
|
@@ -58,7 +59,7 @@ module TTY
|
|
58
59
|
#
|
59
60
|
# @api public
|
60
61
|
def self.display_columns(value)
|
61
|
-
Unicode::DisplayWidth.of(value)
|
62
|
+
Unicode::DisplayWidth.of(Strings::ANSI.sanitize(value))
|
62
63
|
end
|
63
64
|
|
64
65
|
# Create progress bar
|
@@ -13,4 +13,21 @@ RSpec.describe TTY::ProgressBar, ':bar token' do
|
|
13
13
|
"\e[1G[=====]\n"
|
14
14
|
].join)
|
15
15
|
end
|
16
|
+
|
17
|
+
it "animates colors correctly" do
|
18
|
+
red = "\e[31m \e[0m"
|
19
|
+
green = "\e[32m \e[0m"
|
20
|
+
progress = TTY::ProgressBar.new("[:bar]", total: 5, complete: green,
|
21
|
+
incomplete: red, output: output)
|
22
|
+
|
23
|
+
5.times { progress.advance }
|
24
|
+
output.rewind
|
25
|
+
expect(output.read).to eq([
|
26
|
+
"\e[1G[#{green}#{red}#{red}#{red}#{red}]",
|
27
|
+
"\e[1G[#{green}#{green}#{red}#{red}#{red}]",
|
28
|
+
"\e[1G[#{green}#{green}#{green}#{red}#{red}]",
|
29
|
+
"\e[1G[#{green}#{green}#{green}#{green}#{red}]",
|
30
|
+
"\e[1G[#{green}#{green}#{green}#{green}#{green}]\n",
|
31
|
+
].join)
|
32
|
+
end
|
16
33
|
end
|
data/tty-progressbar.gemspec
CHANGED
@@ -19,7 +19,8 @@ Gem::Specification.new do |spec|
|
|
19
19
|
|
20
20
|
spec.required_ruby_version = '>= 2.0.0'
|
21
21
|
|
22
|
-
spec.add_dependency '
|
22
|
+
spec.add_dependency 'strings-ansi', '~> 0.1.0'
|
23
|
+
spec.add_dependency 'tty-cursor', '~> 0.6.0'
|
23
24
|
spec.add_dependency 'tty-screen', '~> 0.6.4'
|
24
25
|
spec.add_dependency 'unicode-display_width', '~> 1.3'
|
25
26
|
|
metadata
CHANGED
@@ -1,29 +1,43 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tty-progressbar
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.16.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Piotr Murach
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-08-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: strings-ansi
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 0.1.0
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 0.1.0
|
13
27
|
- !ruby/object:Gem::Dependency
|
14
28
|
name: tty-cursor
|
15
29
|
requirement: !ruby/object:Gem::Requirement
|
16
30
|
requirements:
|
17
31
|
- - "~>"
|
18
32
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
33
|
+
version: 0.6.0
|
20
34
|
type: :runtime
|
21
35
|
prerelease: false
|
22
36
|
version_requirements: !ruby/object:Gem::Requirement
|
23
37
|
requirements:
|
24
38
|
- - "~>"
|
25
39
|
- !ruby/object:Gem::Version
|
26
|
-
version: 0.
|
40
|
+
version: 0.6.0
|
27
41
|
- !ruby/object:Gem::Dependency
|
28
42
|
name: tty-screen
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -128,7 +142,9 @@ files:
|
|
128
142
|
- CHANGELOG.md
|
129
143
|
- CODE_OF_CONDUCT.md
|
130
144
|
- Gemfile
|
145
|
+
- ISSUE_TEMPLATE.md
|
131
146
|
- LICENSE.txt
|
147
|
+
- PULL_REQUEST_TEMPLATE.md
|
132
148
|
- README.md
|
133
149
|
- Rakefile
|
134
150
|
- appveyor.yml
|