Skip to content

Update: Bump the nuget-dependencies group with 4 updates - #20

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/nuget/dot-config/nuget-dependencies-f7cb9dc0cc
Open

Update: Bump the nuget-dependencies group with 4 updates#20
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/nuget/dot-config/nuget-dependencies-f7cb9dc0cc

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 8, 2026

Copy link
Copy Markdown
Contributor

Updated FsCheck.NUnit from 3.3.3 to 3.3.4.

Release notes

Sourced from FsCheck.NUnit's releases.

3.3.4

Fixed a bug in C# record type generation.

Commits viewable in compare view.

Updated fsharp-analyzers from 0.36.0 to 0.37.2.

Release notes

Sourced from fsharp-analyzers's releases.

0.37.2

Changed

Commits viewable in compare view.

Updated ProcessKit from 2.10.0 to 2.11.0.

Release notes

Sourced from ProcessKit's releases.

2.11.0

Added

  • ProcessGroup.MemberStats() exposes per-member PID, CPU time, resident memory, and optional I/O counters with native Windows and POSIX sampling; vanished members are omitted, and Windows retains unavailable metrics only for PIDs confirmed by a fresh Job membership query.
  • ResourceLimits.WithIoMax and ProcessGroupOptions.WithIoMax cap directional disk bandwidth and IOPS through Linux cgroup v2 io.max or Windows Job Object I/O rate control.
  • RunningProcess.StdoutChunksAsync streams stdout as byte-exact ReadOnlyMemory<byte> chunks with configurable channel backpressure.
  • Supervisor.LivenessMemory restarts a live child whose attributable process-tree peak memory remains above a configured byte threshold.
  • ResourceLimits.WithOomGroupKill makes Linux cgroup v2 kill a contained process tree as one unit on OOM.
  • RotatingFileSink provides bounded parent-side log rotation for stdout and stderr tees.
  • RunningProcess.ForwardParentSignals forwards parent interrupts into one graceful tree stop with automatic unsubscription.
  • ContentLengthSession provides byte-exact full-duplex framing for LSP, DAP, BSP, and similar live protocols.
  • JsonRpcSession drives an LSP/BSP/MCP-style JSON-RPC 2.0 server over that framing with id-correlated requests, per-request timeouts covering the whole call, notifications, an incoming message stream, source-generated JsonTypeInfo overloads for NativeAOT, and typed protocol failures including the new ProcessError.JsonRpc.
  • ProcessKit.Testing.FaultInjectingRunner adds scripted, first-N, and seeded deterministic failure scenarios with virtual-time latency.
  • A performance and scalability guide documents event-driven waits, buffer tuning, fleet sizing, and benchmark interpretation.

Changed

  • Supervisor.LivenessMemory now documents its intentional monotonic peak-memory contract: a transient peak is not forgiven by later lower usage, and LivenessFailures only delays the restart after the crossing.
  • Exec.outputAll/Exec.outputAllBytes now reject concurrency < 1 with ArgumentOutOfRangeException before running any command, instead of silently coercing it to sequential execution.

Fixed

  • POSIX Uid/Gid/Groups, KillOnParentDeath, and Pty now load their setpriv/setsid --ctty helper binaries only from the trusted system directories /usr/bin, /bin, /usr/sbin, /sbin and launch them by absolute path instead of searching the calling process's PATH, so a setpriv planted earlier on PATH can no longer run with the parent's (often root) privileges before the drop; a host carrying neither helper in those directories now returns the same typed ProcessError.Spawn/ProcessError.Unsupported it already returned when the helper was missing entirely, never a silent fallback.
  • Bounded chunk and protocol-frame overflow diagnostics now use neutral output wording instead of describing raw stdout chunks as protocol output.
  • Supervisor callback exceptions from StopWhen, GiveUpWhen, OnRestart, and OnStormPause now terminate supervision with a typed ProcessError.Io that preserves the available result/error context and performs normal teardown instead of escaping from RunAsync or SupervisionSession.Completion.
  • Throwing Retry/RetryBackoff classifiers now terminate with typed ProcessError.RetryPredicate, preserving the original attempt error instead of leaking a raw callback exception or starting another attempt.
  • POSIX LaunchDetached now kills the entire fresh session/process group when post-spawn Priority setup fails, then reaps its direct leader exactly once; descendants can no longer survive a detached launch that correctly returns ProcessError.Spawn.
  • JsonRpcSession now rejects incoming frames unless jsonrpc is the exact string "2.0", returning a typed ProcessError.Parse before malformed requests, notifications, or responses can be routed.
  • Pipeline construction now rejects KeepStdinOpen on every stage with ArgumentException. Previously, KeepStdinOpen on stage 0 without a stdin source left the pipe open and could hang the chain forever; every other placement — Stdin(source) combined with KeepStdinOpen() on stage 0, and KeepStdinOpen on any later stage — was silently ignored, since the pipeline exposes no handle for further writes and the pipe was still closed once its source drained. Both cases are now rejected at build time instead of accepted, a breaking change for previously-accepted .Pipe/Pipeline.create/Pipeline.pipe calls; run the command separately when interactive stdin is required.
  • RunningProcess.OutputEventsAsync() now rejects a second call on the same handle with InvalidOperationException, matching StdoutLinesAsync/StdoutChunksAsync, instead of silently handing out a second enumerator over the shared single-reader event channel.
  • Windows graceful stops and Signal.Int/Signal.Term now confirm that a window is still owned by the expected child immediately before posting WM_CLOSE, so a child window that closed and had its window handle reused by another application can no longer be closed on the child's behalf; a window the child still owns is closed exactly as before.
  • Windows Signal.Int/Signal.Term on a whole group now count only WM_CLOSE posts the OS accepted, so a group whose every post was refused reports the honest ProcessError.Unsupported instead of success — matching how the per-run signal path already counted.
  • Windows ProcessGroup.Suspend() and Resume() now report a ProcessError.Io naming the job members they failed to freeze or thaw, instead of claiming success, while a member that exited concurrently or whose PID was recycled stays a successful no-op.
  • Windows ProcessGroup.MemberStats() now binds each Job PID snapshot to a pre-sampling process identity, including inaccessible members, and omits exit/reuse generations.
  • Linux cgroup ProcessGroup.MemberStats() now preserves adopted and descendant members while pinning tracked/adopted or snapshot identities to omit recycled PIDs.
  • Pipeline relays now surface genuine upstream read failures instead of treating truncated downstream input as successful, while keeping expected broken-pipe and teardown races quiet.
  • Pipeline OutputTooLarge diagnostics now report only the byte limits that apply to raw captures, with LineLimit = None.
  • A supervision session stopped before any incarnation produced a result no longer starts one more child just to report one, and ends with the failure that kept the child from starting — or ProcessError.Cancelled when no incarnation was ever started.
  • Supervisor restarts now apply the restart policy to typed live-output pump failures and retain liveness-failure attribution without leaking it to later children.
  • Process-testing doubles now honour Command.CancelOn consistently for completion verbs.
  • DryRunRunner now models PTY commands with a merged terminal stream and successful resize operations, consistently with the other process-testing doubles.
  • PtySession now rejects null options with ArgumentNullException at its public entry points.
  • Relative path-form programs now resolve and launch against Command.CurrentDir consistently on every platform.
  • Dependency-vulnerability checks now keep native stderr out of the JSON report while preserving failure diagnostics.
  • ContentLengthSession now honours a configured Command.StreamBuffer for its incoming-frame backlog instead of silently ignoring it, bounding memory against a slow consumer, and refuses the lossy DropOldest/DropNewest full modes rather than silently discarding protocol frames; PtySession documents StreamBuffer as inapplicable instead of silently no-opping it.
  • CliClient.WithDefaults now rejects configurators that change the client's program instead of silently retargeting later invocations.
  • Output line handlers and tees now reject Null or Inherit destinations instead of silently receiving no output.
  • FakeProcess.Build() now hands each built handle its own stdin MemoryStream instead of sharing one across every Build() call on the same fake, so closing one handle's stdin no longer breaks writes on another already-built handle; StdinBytes still aggregates every built handle's writes.
  • Fixed incorrect cumulative totals (TotalLines, TotalBytes, OutputTooLarge message) reported for bounded-channel overflow in stdout streaming, event streaming, and content-length frame parsing.
  • Fixed terminal and shared-exit waits hanging behind abandoned bounded backpressure writers in stdout line/event streaming and Content-Length frame sessions; teardown cancellation now ends those pumps cleanly while preserving genuine pump errors.

Commits viewable in compare view.

Updated ProcessKit.Testing from 2.10.0 to 2.11.0.

Release notes

Sourced from ProcessKit.Testing's releases.

2.11.0

Added

  • ProcessGroup.MemberStats() exposes per-member PID, CPU time, resident memory, and optional I/O counters with native Windows and POSIX sampling; vanished members are omitted, and Windows retains unavailable metrics only for PIDs confirmed by a fresh Job membership query.
  • ResourceLimits.WithIoMax and ProcessGroupOptions.WithIoMax cap directional disk bandwidth and IOPS through Linux cgroup v2 io.max or Windows Job Object I/O rate control.
  • RunningProcess.StdoutChunksAsync streams stdout as byte-exact ReadOnlyMemory<byte> chunks with configurable channel backpressure.
  • Supervisor.LivenessMemory restarts a live child whose attributable process-tree peak memory remains above a configured byte threshold.
  • ResourceLimits.WithOomGroupKill makes Linux cgroup v2 kill a contained process tree as one unit on OOM.
  • RotatingFileSink provides bounded parent-side log rotation for stdout and stderr tees.
  • RunningProcess.ForwardParentSignals forwards parent interrupts into one graceful tree stop with automatic unsubscription.
  • ContentLengthSession provides byte-exact full-duplex framing for LSP, DAP, BSP, and similar live protocols.
  • JsonRpcSession drives an LSP/BSP/MCP-style JSON-RPC 2.0 server over that framing with id-correlated requests, per-request timeouts covering the whole call, notifications, an incoming message stream, source-generated JsonTypeInfo overloads for NativeAOT, and typed protocol failures including the new ProcessError.JsonRpc.
  • ProcessKit.Testing.FaultInjectingRunner adds scripted, first-N, and seeded deterministic failure scenarios with virtual-time latency.
  • A performance and scalability guide documents event-driven waits, buffer tuning, fleet sizing, and benchmark interpretation.

Changed

  • Supervisor.LivenessMemory now documents its intentional monotonic peak-memory contract: a transient peak is not forgiven by later lower usage, and LivenessFailures only delays the restart after the crossing.
  • Exec.outputAll/Exec.outputAllBytes now reject concurrency < 1 with ArgumentOutOfRangeException before running any command, instead of silently coercing it to sequential execution.

Fixed

  • POSIX Uid/Gid/Groups, KillOnParentDeath, and Pty now load their setpriv/setsid --ctty helper binaries only from the trusted system directories /usr/bin, /bin, /usr/sbin, /sbin and launch them by absolute path instead of searching the calling process's PATH, so a setpriv planted earlier on PATH can no longer run with the parent's (often root) privileges before the drop; a host carrying neither helper in those directories now returns the same typed ProcessError.Spawn/ProcessError.Unsupported it already returned when the helper was missing entirely, never a silent fallback.
  • Bounded chunk and protocol-frame overflow diagnostics now use neutral output wording instead of describing raw stdout chunks as protocol output.
  • Supervisor callback exceptions from StopWhen, GiveUpWhen, OnRestart, and OnStormPause now terminate supervision with a typed ProcessError.Io that preserves the available result/error context and performs normal teardown instead of escaping from RunAsync or SupervisionSession.Completion.
  • Throwing Retry/RetryBackoff classifiers now terminate with typed ProcessError.RetryPredicate, preserving the original attempt error instead of leaking a raw callback exception or starting another attempt.
  • POSIX LaunchDetached now kills the entire fresh session/process group when post-spawn Priority setup fails, then reaps its direct leader exactly once; descendants can no longer survive a detached launch that correctly returns ProcessError.Spawn.
  • JsonRpcSession now rejects incoming frames unless jsonrpc is the exact string "2.0", returning a typed ProcessError.Parse before malformed requests, notifications, or responses can be routed.
  • Pipeline construction now rejects KeepStdinOpen on every stage with ArgumentException. Previously, KeepStdinOpen on stage 0 without a stdin source left the pipe open and could hang the chain forever; every other placement — Stdin(source) combined with KeepStdinOpen() on stage 0, and KeepStdinOpen on any later stage — was silently ignored, since the pipeline exposes no handle for further writes and the pipe was still closed once its source drained. Both cases are now rejected at build time instead of accepted, a breaking change for previously-accepted .Pipe/Pipeline.create/Pipeline.pipe calls; run the command separately when interactive stdin is required.
  • RunningProcess.OutputEventsAsync() now rejects a second call on the same handle with InvalidOperationException, matching StdoutLinesAsync/StdoutChunksAsync, instead of silently handing out a second enumerator over the shared single-reader event channel.
  • Windows graceful stops and Signal.Int/Signal.Term now confirm that a window is still owned by the expected child immediately before posting WM_CLOSE, so a child window that closed and had its window handle reused by another application can no longer be closed on the child's behalf; a window the child still owns is closed exactly as before.
  • Windows Signal.Int/Signal.Term on a whole group now count only WM_CLOSE posts the OS accepted, so a group whose every post was refused reports the honest ProcessError.Unsupported instead of success — matching how the per-run signal path already counted.
  • Windows ProcessGroup.Suspend() and Resume() now report a ProcessError.Io naming the job members they failed to freeze or thaw, instead of claiming success, while a member that exited concurrently or whose PID was recycled stays a successful no-op.
  • Windows ProcessGroup.MemberStats() now binds each Job PID snapshot to a pre-sampling process identity, including inaccessible members, and omits exit/reuse generations.
  • Linux cgroup ProcessGroup.MemberStats() now preserves adopted and descendant members while pinning tracked/adopted or snapshot identities to omit recycled PIDs.
  • Pipeline relays now surface genuine upstream read failures instead of treating truncated downstream input as successful, while keeping expected broken-pipe and teardown races quiet.
  • Pipeline OutputTooLarge diagnostics now report only the byte limits that apply to raw captures, with LineLimit = None.
  • A supervision session stopped before any incarnation produced a result no longer starts one more child just to report one, and ends with the failure that kept the child from starting — or ProcessError.Cancelled when no incarnation was ever started.
  • Supervisor restarts now apply the restart policy to typed live-output pump failures and retain liveness-failure attribution without leaking it to later children.
  • Process-testing doubles now honour Command.CancelOn consistently for completion verbs.
  • DryRunRunner now models PTY commands with a merged terminal stream and successful resize operations, consistently with the other process-testing doubles.
  • PtySession now rejects null options with ArgumentNullException at its public entry points.
  • Relative path-form programs now resolve and launch against Command.CurrentDir consistently on every platform.
  • Dependency-vulnerability checks now keep native stderr out of the JSON report while preserving failure diagnostics.
  • ContentLengthSession now honours a configured Command.StreamBuffer for its incoming-frame backlog instead of silently ignoring it, bounding memory against a slow consumer, and refuses the lossy DropOldest/DropNewest full modes rather than silently discarding protocol frames; PtySession documents StreamBuffer as inapplicable instead of silently no-opping it.
  • CliClient.WithDefaults now rejects configurators that change the client's program instead of silently retargeting later invocations.
  • Output line handlers and tees now reject Null or Inherit destinations instead of silently receiving no output.
  • FakeProcess.Build() now hands each built handle its own stdin MemoryStream instead of sharing one across every Build() call on the same fake, so closing one handle's stdin no longer breaks writes on another already-built handle; StdinBytes still aggregates every built handle's writes.
  • Fixed incorrect cumulative totals (TotalLines, TotalBytes, OutputTooLarge message) reported for bounded-channel overflow in stdout streaming, event streaming, and content-length frame parsing.
  • Fixed terminal and shared-exit waits hanging behind abandoned bounded backpressure writers in stdout line/event streaming and Content-Length frame sessions; teardown cancellation now ends those pumps cleanly while preserving genuine pump errors.

Commits viewable in compare view.

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

Bumps FsCheck.NUnit from 3.3.3 to 3.3.4
Bumps fsharp-analyzers from 0.36.0 to 0.37.2
Bumps ProcessKit from 2.10.0 to 2.11.0
Bumps ProcessKit.Testing from 2.10.0 to 2.11.0

---
updated-dependencies:
- dependency-name: FsCheck.NUnit
  dependency-version: 3.3.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: nuget-dependencies
- dependency-name: fsharp-analyzers
  dependency-version: 0.37.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-dependencies
- dependency-name: ProcessKit
  dependency-version: 2.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-dependencies
- dependency-name: ProcessKit.Testing
  dependency-version: 2.11.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: nuget-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added .NET Pull requests that update .NET code dependencies Pull requests that update a dependency file labels Aug 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file .NET Pull requests that update .NET code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants