expect-pty 0.9.4 → 0.9.6
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 +8 -0
- data/lib/expect/redactor.rb +7 -0
- data/lib/expect/version.rb +1 -1
- metadata +10 -10
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 24f49a4a4e864cdcfb8bd248b9ca01d7de830098f0767a0a1b5829c2569fe386
|
|
4
|
+
data.tar.gz: 057d8e7efa345d73790a47e35390d92f643ec211746b064105cc1fb2c4da628f
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: e7c9b71e0c1f74b891f9773cf438ef09ef1e9496faa0414af7048b4090efe86f141f84aa72eca9f5a4e0f1b21f69889f3084a1922158b6addfc80346d91bb423
|
|
7
|
+
data.tar.gz: 220a9fda4d96aca8c632cceb408f4c1bcc705c79ab92cc177520c5ce72c534888c96282e5613110d84f07e6594eed5923b13bbfdc356def25c54a046ce3a1b96
|
data/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
## Unreleased
|
|
4
4
|
|
|
5
|
+
## 0.9.6 - 2026-10-23
|
|
6
|
+
|
|
7
|
+
- 移除 io-console、json、logger 和 stringio 的额外版本下限,沿用 Ruby 3.4+ 的运行时要求。
|
|
8
|
+
|
|
9
|
+
## 0.9.5 - 2026-10-21
|
|
10
|
+
|
|
11
|
+
- 无脱敏规则且旧尾部排空时直接交付独立字节副本,避免为普通日志分配等长掩码;保留规则切换、抑制输出与相邻隐藏区间的语义。
|
|
12
|
+
|
|
5
13
|
## 0.9.4 - 2026-10-19
|
|
6
14
|
|
|
7
15
|
- 将字面未命中进度归一为内部 LiteralScan,供匹配与转接复用;大缓冲分块转接不再反复搜索已排除的范围,保留跨块转义与回调修改规则的行为。
|
data/lib/expect/redactor.rb
CHANGED
|
@@ -74,6 +74,13 @@ module Expect
|
|
|
74
74
|
def append_chunk(data, visible:)
|
|
75
75
|
raise ArgumentError, "data must be a String" unless data.is_a?(String)
|
|
76
76
|
|
|
77
|
+
# 没有规则且旧尾部已排空时,原样交付独立字节副本,不构造等长掩码。
|
|
78
|
+
# 非空明文会分隔隐藏区间;空分片不能改变以后重新启用规则时的边界。
|
|
79
|
+
if @patterns.empty? && @pending.empty?
|
|
80
|
+
@masking = false unless data.empty?
|
|
81
|
+
return visible ? data.b : "".b
|
|
82
|
+
end
|
|
83
|
+
|
|
77
84
|
unless visible || data.empty?
|
|
78
85
|
@suppressed ||= "\0" * @pending.bytesize
|
|
79
86
|
@suppressed_until = @pending.bytesize + data.bytesize
|
data/lib/expect/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: expect-pty
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.9.
|
|
4
|
+
version: 0.9.6
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- expect-pty contributors
|
|
8
8
|
bindir: bin
|
|
9
9
|
cert_chain: []
|
|
10
|
-
date: 2026-10-
|
|
10
|
+
date: 2026-10-23 00:00:00.000000000 Z
|
|
11
11
|
dependencies:
|
|
12
12
|
- !ruby/object:Gem::Dependency
|
|
13
13
|
name: io-console
|
|
@@ -15,56 +15,56 @@ dependencies:
|
|
|
15
15
|
requirements:
|
|
16
16
|
- - ">="
|
|
17
17
|
- !ruby/object:Gem::Version
|
|
18
|
-
version: '0
|
|
18
|
+
version: '0'
|
|
19
19
|
type: :runtime
|
|
20
20
|
prerelease: false
|
|
21
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
22
22
|
requirements:
|
|
23
23
|
- - ">="
|
|
24
24
|
- !ruby/object:Gem::Version
|
|
25
|
-
version: '0
|
|
25
|
+
version: '0'
|
|
26
26
|
- !ruby/object:Gem::Dependency
|
|
27
27
|
name: json
|
|
28
28
|
requirement: !ruby/object:Gem::Requirement
|
|
29
29
|
requirements:
|
|
30
30
|
- - ">="
|
|
31
31
|
- !ruby/object:Gem::Version
|
|
32
|
-
version: '
|
|
32
|
+
version: '0'
|
|
33
33
|
type: :runtime
|
|
34
34
|
prerelease: false
|
|
35
35
|
version_requirements: !ruby/object:Gem::Requirement
|
|
36
36
|
requirements:
|
|
37
37
|
- - ">="
|
|
38
38
|
- !ruby/object:Gem::Version
|
|
39
|
-
version: '
|
|
39
|
+
version: '0'
|
|
40
40
|
- !ruby/object:Gem::Dependency
|
|
41
41
|
name: logger
|
|
42
42
|
requirement: !ruby/object:Gem::Requirement
|
|
43
43
|
requirements:
|
|
44
44
|
- - ">="
|
|
45
45
|
- !ruby/object:Gem::Version
|
|
46
|
-
version: '
|
|
46
|
+
version: '0'
|
|
47
47
|
type: :runtime
|
|
48
48
|
prerelease: false
|
|
49
49
|
version_requirements: !ruby/object:Gem::Requirement
|
|
50
50
|
requirements:
|
|
51
51
|
- - ">="
|
|
52
52
|
- !ruby/object:Gem::Version
|
|
53
|
-
version: '
|
|
53
|
+
version: '0'
|
|
54
54
|
- !ruby/object:Gem::Dependency
|
|
55
55
|
name: stringio
|
|
56
56
|
requirement: !ruby/object:Gem::Requirement
|
|
57
57
|
requirements:
|
|
58
58
|
- - ">="
|
|
59
59
|
- !ruby/object:Gem::Version
|
|
60
|
-
version: '
|
|
60
|
+
version: '0'
|
|
61
61
|
type: :runtime
|
|
62
62
|
prerelease: false
|
|
63
63
|
version_requirements: !ruby/object:Gem::Requirement
|
|
64
64
|
requirements:
|
|
65
65
|
- - ">="
|
|
66
66
|
- !ruby/object:Gem::Version
|
|
67
|
-
version: '
|
|
67
|
+
version: '0'
|
|
68
68
|
description: Automate interactive programs with PTY sessions, pattern matching, callbacks,
|
|
69
69
|
timeouts, logging and multi-session IO.
|
|
70
70
|
executables: []
|