expect-pty 0.9.4 → 0.9.5

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bd51e466710a92cea41212f9cb4477f73f586ff44f53fa57676be9562b59f037
4
- data.tar.gz: a848149d3069fafefffe5618c9293eed72b569dab3879a783edee292271a25c2
3
+ metadata.gz: fc988a8e70b1d6d216d390fc7e951862a19c24a70160d0d7de942b1acc3b96f1
4
+ data.tar.gz: aee179d58cb4ee6905f9b5269967e0585db71e9e864d76ebed7ebfa93c5c1556
5
5
  SHA512:
6
- metadata.gz: 19709a17b0f7a69db8d8eac19e6bec88259bd37475394a4a0d27e1406a33244bef839cc6627696c8b72a1df5b873b27c2ef55004003a07e66b3e82323d5322be
7
- data.tar.gz: f2806cb9db50e6b82bfe0c72a7affd28f1ab50b716688c1dc027aa75fff5c049fffe2f20348695b32a06cb41f1ec2fba426ccef8b4789a2304a388a1908d0e93
6
+ metadata.gz: 529cafb6a8548bb650689343fd4bf4f6b5e4d44361a6093f5c0df769eee49f6bf5ccbc1c2873ab57694fc8ee8bbaf71b4c0ec786f20c0ea0f286d3b42ffd2c3f
7
+ data.tar.gz: fe3036a9b6b015900ab6cf73f7029498a02140596b1dfee6e2def446405938de85210bb84f2c7e3193f5e32649ff465e1ddf4f14f0b6e0d04ad6e3744545754c
data/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 0.9.5 - 2026-10-21
6
+
7
+ - 无脱敏规则且旧尾部排空时直接交付独立字节副本,避免为普通日志分配等长掩码;保留规则切换、抑制输出与相邻隐藏区间的语义。
8
+
5
9
  ## 0.9.4 - 2026-10-19
6
10
 
7
11
  - 将字面未命中进度归一为内部 LiteralScan,供匹配与转接复用;大缓冲分块转接不再反复搜索已排除的范围,保留跨块转义与回调修改规则的行为。
@@ -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
@@ -2,5 +2,5 @@
2
2
 
3
3
  module Expect
4
4
  # Gem 与库共用的版本号;独立文件使 gemspec 无需加载完整会话实现。
5
- VERSION = "0.9.4"
5
+ VERSION = "0.9.5"
6
6
  end
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
4
+ version: 0.9.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - expect-pty contributors
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2026-10-19 00:00:00.000000000 Z
10
+ date: 2026-10-21 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: io-console