tty-progressbar 0.15.1 → 0.16.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.
- 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]
|
2
6
|
|
3
7
|
[][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
|