console 1.18.0 → 1.20.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
- checksums.yaml.gz.sig +0 -0
- data/lib/console/adapter.rb +9 -0
- data/lib/console/filter.rb +1 -1
- data/lib/console/output/encoder.rb +40 -0
- data/lib/console/output/json.rb +5 -1
- data/lib/console/output/split.rb +1 -1
- data/lib/console/output.rb +1 -1
- data/lib/console/progress.rb +2 -1
- data/lib/console/serialized/logger.rb +1 -1
- data/lib/console/terminal/logger.rb +1 -1
- data/lib/console/terminal/xterm.rb +1 -1
- data/lib/console/version.rb +2 -2
- data/license.md +4 -1
- data/readme.md +9 -1
- data.tar.gz.sig +0 -0
- metadata +10 -89
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d974c867b670b89c2b04c83f640f46217e9836e3eec7f92903bc062e6c59458c
|
4
|
+
data.tar.gz: 4bc1d803689cad17d85a36d7da8c172a63ea869e6fa060f9c85702c1da365b90
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1db5693110b3a7f48b17abdf58eb74ac5269f4748d0746df057c7dbe01ddee228db5bcc74bd581c1e9bddf94602943682feb4cf50c7b14312d23db47e5209206
|
7
|
+
data.tar.gz: 3209fa49d39e7de2040610187599b7b22e41af0da3c2749b7a7c939ce40d07c2101472fec9a47a20de754d216f780ab59f508a3b4ddc17dd5c251d4a94e215f3
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/lib/console/filter.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
# Released under the MIT License.
|
4
|
-
# Copyright, 2019-
|
4
|
+
# Copyright, 2019-2023, by Samuel Williams.
|
5
5
|
# Copyright, 2019, by Bryan Powell.
|
6
6
|
# Copyright, 2020, by Michael Adams.
|
7
7
|
# Copyright, 2021, by Robert Schulze.
|
@@ -0,0 +1,40 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Released under the MIT License.
|
4
|
+
# Copyright, 2023, by Samuel Williams.
|
5
|
+
|
6
|
+
module Console
|
7
|
+
module Output
|
8
|
+
class Encoder
|
9
|
+
def initialize(output, encoding = ::Encoding::UTF_8)
|
10
|
+
@output = output
|
11
|
+
@encoding = encoding
|
12
|
+
end
|
13
|
+
|
14
|
+
attr :output
|
15
|
+
|
16
|
+
attr :encoding
|
17
|
+
|
18
|
+
def call(subject = nil, *arguments, **options, &block)
|
19
|
+
subject = encode(subject)
|
20
|
+
arguments = encode(arguments)
|
21
|
+
options = encode(options)
|
22
|
+
|
23
|
+
@output.call(subject, *arguments, **options, &block)
|
24
|
+
end
|
25
|
+
|
26
|
+
def encode(value)
|
27
|
+
case value
|
28
|
+
when String
|
29
|
+
value.encode(@encoding, invalid: :replace, undef: :replace)
|
30
|
+
when Array
|
31
|
+
value.map{|item| encode(item)}
|
32
|
+
when Hash
|
33
|
+
value.transform_values{|item| encode(item)}
|
34
|
+
else
|
35
|
+
value
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
data/lib/console/output/json.rb
CHANGED
@@ -4,12 +4,16 @@
|
|
4
4
|
# Copyright, 2021-2022, by Samuel Williams.
|
5
5
|
|
6
6
|
require_relative '../serialized/logger'
|
7
|
+
require_relative 'encoder'
|
7
8
|
|
8
9
|
module Console
|
9
10
|
module Output
|
10
11
|
module JSON
|
11
12
|
def self.new(output, **options)
|
12
|
-
|
13
|
+
# The output encoder can prevent encoding issues (e.g. invalid UTF-8):
|
14
|
+
Output::Encoder.new(
|
15
|
+
Serialized::Logger.new(output, format: ::JSON, **options)
|
16
|
+
)
|
13
17
|
end
|
14
18
|
end
|
15
19
|
end
|
data/lib/console/output/split.rb
CHANGED
data/lib/console/output.rb
CHANGED
data/lib/console/progress.rb
CHANGED
@@ -1,7 +1,8 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
# Released under the MIT License.
|
4
|
-
# Copyright, 2020-
|
4
|
+
# Copyright, 2020-2023, by Samuel Williams.
|
5
|
+
# Copyright, 2022, by Anton Sozontov.
|
5
6
|
|
6
7
|
require_relative 'event/progress'
|
7
8
|
require_relative 'clock'
|
data/lib/console/version.rb
CHANGED
data/license.md
CHANGED
@@ -1,12 +1,15 @@
|
|
1
1
|
# MIT License
|
2
2
|
|
3
|
-
Copyright, 2019-
|
3
|
+
Copyright, 2019-2023, by Samuel Williams.
|
4
4
|
Copyright, 2019-2021, by Bryan Powell.
|
5
5
|
Copyright, 2019, by Cyril Roelandt.
|
6
6
|
Copyright, 2020, by Olle Jonsson.
|
7
7
|
Copyright, 2020, by Michael Adams.
|
8
8
|
Copyright, 2021, by Cédric Boutillier.
|
9
9
|
Copyright, 2021, by Robert Schulze.
|
10
|
+
Copyright, 2022, by Anton Sozontov.
|
11
|
+
Copyright, 2022, by William T. Nelson.
|
12
|
+
Copyright, 2023, by Felix Yan.
|
10
13
|
|
11
14
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
12
15
|
of this software and associated documentation files (the "Software"), to deal
|
data/readme.md
CHANGED
@@ -6,7 +6,7 @@ Provides beautiful console logging for Ruby applications. Implements fast, buffe
|
|
6
6
|
|
7
7
|
## Motivation
|
8
8
|
|
9
|
-
When Ruby decided to reverse the order of exception backtraces, I finally gave up using the built in logging and decided restore sanity to the output of my programs once and for all
|
9
|
+
When Ruby decided to reverse the order of exception backtraces, I finally gave up using the built in logging and decided restore sanity to the output of my programs once and for all\!
|
10
10
|
|
11
11
|
## Features
|
12
12
|
|
@@ -29,3 +29,11 @@ We welcome contributions to this project.
|
|
29
29
|
3. Commit your changes (`git commit -am 'Add some feature'`).
|
30
30
|
4. Push to the branch (`git push origin my-new-feature`).
|
31
31
|
5. Create new Pull Request.
|
32
|
+
|
33
|
+
### Developer Certificate of Origin
|
34
|
+
|
35
|
+
This project uses the [Developer Certificate of Origin](https://developercertificate.org/). All contributors to this project must agree to this document to have their contributions accepted.
|
36
|
+
|
37
|
+
### Contributor Covenant
|
38
|
+
|
39
|
+
This project is governed by [Contributor Covenant](https://www.contributor-covenant.org/). All contributors and participants agree to abide by its terms.
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,16 +1,19 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: console
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.20.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Samuel Williams
|
8
8
|
- Robert Schulze
|
9
9
|
- Bryan Powell
|
10
10
|
- Michael Adams
|
11
|
+
- Anton Sozontov
|
11
12
|
- Cyril Roelandt
|
12
13
|
- Cédric Boutillier
|
14
|
+
- Felix Yan
|
13
15
|
- Olle Jonsson
|
16
|
+
- William T. Nelson
|
14
17
|
autorequire:
|
15
18
|
bindir: bin
|
16
19
|
cert_chain:
|
@@ -43,22 +46,8 @@ cert_chain:
|
|
43
46
|
Q2K9NVun/S785AP05vKkXZEFYxqG6EW012U4oLcFl5MySFajYXRYbuUpH6AY+HP8
|
44
47
|
voD0MPg1DssDLKwXyt1eKD/+Fq0bFWhwVM/1XiAXL7lyYUyOq24KHgQ2Csg=
|
45
48
|
-----END CERTIFICATE-----
|
46
|
-
date: 2023-
|
49
|
+
date: 2023-08-03 00:00:00.000000000 Z
|
47
50
|
dependencies:
|
48
|
-
- !ruby/object:Gem::Dependency
|
49
|
-
name: fiber-local
|
50
|
-
requirement: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - ">="
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '0'
|
55
|
-
type: :runtime
|
56
|
-
prerelease: false
|
57
|
-
version_requirements: !ruby/object:Gem::Requirement
|
58
|
-
requirements:
|
59
|
-
- - ">="
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '0'
|
62
51
|
- !ruby/object:Gem::Dependency
|
63
52
|
name: fiber-annotation
|
64
53
|
requirement: !ruby/object:Gem::Requirement
|
@@ -74,89 +63,19 @@ dependencies:
|
|
74
63
|
- !ruby/object:Gem::Version
|
75
64
|
version: '0'
|
76
65
|
- !ruby/object:Gem::Dependency
|
77
|
-
name:
|
78
|
-
requirement: !ruby/object:Gem::Requirement
|
79
|
-
requirements:
|
80
|
-
- - ">="
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: '0'
|
83
|
-
type: :development
|
84
|
-
prerelease: false
|
85
|
-
version_requirements: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - ">="
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: '0'
|
90
|
-
- !ruby/object:Gem::Dependency
|
91
|
-
name: bake-test
|
92
|
-
requirement: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - ">="
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '0'
|
97
|
-
type: :development
|
98
|
-
prerelease: false
|
99
|
-
version_requirements: !ruby/object:Gem::Requirement
|
100
|
-
requirements:
|
101
|
-
- - ">="
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: '0'
|
104
|
-
- !ruby/object:Gem::Dependency
|
105
|
-
name: bake-test-external
|
106
|
-
requirement: !ruby/object:Gem::Requirement
|
107
|
-
requirements:
|
108
|
-
- - ">="
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
version: '0'
|
111
|
-
type: :development
|
112
|
-
prerelease: false
|
113
|
-
version_requirements: !ruby/object:Gem::Requirement
|
114
|
-
requirements:
|
115
|
-
- - ">="
|
116
|
-
- !ruby/object:Gem::Version
|
117
|
-
version: '0'
|
118
|
-
- !ruby/object:Gem::Dependency
|
119
|
-
name: bundler
|
66
|
+
name: fiber-local
|
120
67
|
requirement: !ruby/object:Gem::Requirement
|
121
68
|
requirements:
|
122
69
|
- - ">="
|
123
70
|
- !ruby/object:Gem::Version
|
124
71
|
version: '0'
|
125
|
-
type: :
|
72
|
+
type: :runtime
|
126
73
|
prerelease: false
|
127
74
|
version_requirements: !ruby/object:Gem::Requirement
|
128
75
|
requirements:
|
129
76
|
- - ">="
|
130
77
|
- !ruby/object:Gem::Version
|
131
78
|
version: '0'
|
132
|
-
- !ruby/object:Gem::Dependency
|
133
|
-
name: covered
|
134
|
-
requirement: !ruby/object:Gem::Requirement
|
135
|
-
requirements:
|
136
|
-
- - "~>"
|
137
|
-
- !ruby/object:Gem::Version
|
138
|
-
version: 0.18.1
|
139
|
-
type: :development
|
140
|
-
prerelease: false
|
141
|
-
version_requirements: !ruby/object:Gem::Requirement
|
142
|
-
requirements:
|
143
|
-
- - "~>"
|
144
|
-
- !ruby/object:Gem::Version
|
145
|
-
version: 0.18.1
|
146
|
-
- !ruby/object:Gem::Dependency
|
147
|
-
name: sus
|
148
|
-
requirement: !ruby/object:Gem::Requirement
|
149
|
-
requirements:
|
150
|
-
- - "~>"
|
151
|
-
- !ruby/object:Gem::Version
|
152
|
-
version: '0.14'
|
153
|
-
type: :development
|
154
|
-
prerelease: false
|
155
|
-
version_requirements: !ruby/object:Gem::Requirement
|
156
|
-
requirements:
|
157
|
-
- - "~>"
|
158
|
-
- !ruby/object:Gem::Version
|
159
|
-
version: '0.14'
|
160
79
|
description:
|
161
80
|
email:
|
162
81
|
executables: []
|
@@ -165,6 +84,7 @@ extra_rdoc_files: []
|
|
165
84
|
files:
|
166
85
|
- bake/console.rb
|
167
86
|
- lib/console.rb
|
87
|
+
- lib/console/adapter.rb
|
168
88
|
- lib/console/buffer.rb
|
169
89
|
- lib/console/capture.rb
|
170
90
|
- lib/console/clock.rb
|
@@ -178,6 +98,7 @@ files:
|
|
178
98
|
- lib/console/logger.rb
|
179
99
|
- lib/console/output.rb
|
180
100
|
- lib/console/output/default.rb
|
101
|
+
- lib/console/output/encoder.rb
|
181
102
|
- lib/console/output/json.rb
|
182
103
|
- lib/console/output/null.rb
|
183
104
|
- lib/console/output/sensitive.rb
|
@@ -207,7 +128,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
207
128
|
requirements:
|
208
129
|
- - ">="
|
209
130
|
- !ruby/object:Gem::Version
|
210
|
-
version:
|
131
|
+
version: '3.0'
|
211
132
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
212
133
|
requirements:
|
213
134
|
- - ">="
|
metadata.gz.sig
CHANGED
Binary file
|